aboutsummaryrefslogtreecommitdiffstats
path: root/aarch64
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2021-04-12 18:23:13 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2021-04-12 18:23:13 +0200
commit1ea73601db2afc4ea4f5442ac3dbcdd8e1749c17 (patch)
treec67c99467204923004da1f552ad3131913b7cac6 /aarch64
parente37d655db0ec3d2c002e200c3e70a1997e39a458 (diff)
downloadcompcert-kvx-1ea73601db2afc4ea4f5442ac3dbcdd8e1749c17.tar.gz
compcert-kvx-1ea73601db2afc4ea4f5442ac3dbcdd8e1749c17.zip
collision of registers
Diffstat (limited to 'aarch64')
-rw-r--r--aarch64/Machregs.v2
-rw-r--r--aarch64/TargetPrinter.ml4
2 files changed, 3 insertions, 3 deletions
diff --git a/aarch64/Machregs.v b/aarch64/Machregs.v
index 3d27f48f..bfe23e83 100644
--- a/aarch64/Machregs.v
+++ b/aarch64/Machregs.v
@@ -158,7 +158,7 @@ Definition destroyed_by_builtin (ef: external_function): list mreg :=
match ef with
| EF_memcpy sz al => R15 :: R17 :: R29 :: nil
| EF_inline_asm txt sg clob => destroyed_by_clobber clob
- | EF_profiling _ _ => R15 :: R17 :: nil
+ | EF_profiling _ _ => R15 :: R17 :: R29 :: nil
| _ => nil
end.
diff --git a/aarch64/TargetPrinter.ml b/aarch64/TargetPrinter.ml
index 9ec1d563..53959152 100644
--- a/aarch64/TargetPrinter.ml
+++ b/aarch64/TargetPrinter.ml
@@ -231,8 +231,8 @@ module Target (*: TARGET*) =
fprintf oc "%s:\n" lbl;
fprintf oc " ldaxr x17, [x15]\n";
fprintf oc " add x17, x17, 1\n";
- fprintf oc " stlxr w17, x17, [x15]\n";
- fprintf oc " cbnz w17, %s\n" lbl;
+ fprintf oc " stlxr w29, x17, [x15]\n";
+ fprintf oc " cbnz w29, %s\n" lbl;
fprintf oc "%s end profiling %a %d\n" comment
Profilingaux.pp_id id kind;;