aboutsummaryrefslogtreecommitdiffstats
path: root/x86/TargetPrinter.ml
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2018-03-08 12:20:03 +0100
committerBernhard Schommer <bernhardschommer@gmail.com>2018-03-08 12:20:03 +0100
commitbbf922a184764a8f79b9e45dd302879568504703 (patch)
treed9fe5aa10687b4eadfd7dd2ca6aa41037fe490a6 /x86/TargetPrinter.ml
parent263d7fe07538c35ea371bc77198803a29e7aaf34 (diff)
downloadcompcert-kvx-bbf922a184764a8f79b9e45dd302879568504703.tar.gz
compcert-kvx-bbf922a184764a8f79b9e45dd302879568504703.zip
Fix register naming for stack pointer.
It should be 'esp' respectively 'rsp' for x86, 'r13' for arm and 'sp' for riscV. Bug 23176.
Diffstat (limited to 'x86/TargetPrinter.ml')
-rw-r--r--x86/TargetPrinter.ml7
1 files changed, 4 insertions, 3 deletions
diff --git a/x86/TargetPrinter.ml b/x86/TargetPrinter.ml
index 97af0cab..1bb8c226 100644
--- a/x86/TargetPrinter.ml
+++ b/x86/TargetPrinter.ml
@@ -811,11 +811,12 @@ module Target(System: SYSTEM):TARGET =
begin match ef with
| EF_annot(kind,txt, targs) ->
begin match (P.to_int kind) with
- | 1 -> let annot = annot_text preg_annot "sp" (camlstring_of_coqstring txt) args in
+ | 1 -> let annot = annot_text preg_annot "esp" (camlstring_of_coqstring txt) args in
fprintf oc "%s annotation: %S\n" comment annot
| 2 -> let lbl = new_label () in
- fprintf oc "%a: " label lbl;
- add_ais_annot lbl preg_ais_annot "r1" (camlstring_of_coqstring txt) args
+ fprintf oc "%a: \n" label lbl;
+ let sp = if Archi.ptr64 then "rsp" else "esp" in
+ add_ais_annot lbl preg_ais_annot sp (camlstring_of_coqstring txt) args
| _ -> assert false
end
| EF_debug(kind, txt, targs) ->