aboutsummaryrefslogtreecommitdiffstats
path: root/powerpc/Machregs.v
diff options
context:
space:
mode:
authorMichael Schmidt <github@mschmidt.me>2015-12-15 10:47:47 +0100
committerMichael Schmidt <github@mschmidt.me>2015-12-15 10:47:47 +0100
commitd830772b1d61c638fe2197755a2b77f7321118a9 (patch)
treee9318eb0b53afeafc019df84a510ce9d1ef078a6 /powerpc/Machregs.v
parentccb5562d254b3a82cc0b09b35126aac05edcc1aa (diff)
downloadcompcert-kvx-d830772b1d61c638fe2197755a2b77f7321118a9.tar.gz
compcert-kvx-d830772b1d61c638fe2197755a2b77f7321118a9.zip
bug 17752, add constant propagation for builtins
Diffstat (limited to 'powerpc/Machregs.v')
-rw-r--r--powerpc/Machregs.v4
1 files changed, 3 insertions, 1 deletions
diff --git a/powerpc/Machregs.v b/powerpc/Machregs.v
index 7137bce2..4ee6493c 100644
--- a/powerpc/Machregs.v
+++ b/powerpc/Machregs.v
@@ -163,7 +163,7 @@ Fixpoint destroyed_by_clobber (cl: list string): list mreg :=
Definition destroyed_by_builtin (ef: external_function): list mreg :=
match ef with
| EF_builtin id sg =>
- if string_dec id "__builtin64_set_spr" then R10::nil
+ if string_dec id "__builtin_set_spr64" then R10::nil
else if string_dec id "__builtin_atomic_exchange" then R10::nil
else if string_dec id "__builtin_atomic_compare_exchange" then R10::R11::nil
else F13 :: nil
@@ -221,7 +221,9 @@ Definition builtin_constraints (ef: external_function) :
match ef with
| EF_builtin id sg =>
if string_dec id "__builtin_get_spr" then OK_const :: nil
+ else if string_dec id "__builtin_get_spr64" then OK_const :: nil
else if string_dec id "__builtin_set_spr" then OK_const :: OK_default :: nil
+ else if string_dec id "__builtin_set_spr64" then OK_const :: OK_default :: nil
else if string_dec id "__builtin_prefetch" then OK_default :: OK_const :: OK_const :: nil
else if string_dec id "__builtin_dcbtls" then OK_default :: OK_const :: nil
else if string_dec id "__builtin_icbtls" then OK_default :: OK_const :: nil