summaryrefslogtreecommitdiff
path: root/powerpc
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-08-28 09:21:22 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-08-28 09:21:22 +0000
commit58045010316833fe838e8fa52bea1220126b760b (patch)
tree8f34e25bfb84e88448932650dd982b6a407d0d21 /powerpc
parent1e39c09cd2b680b7ba5a5fd8436a0ec514762c02 (diff)
Cold feet: suppress builtins for load with reservation/store conditional, use case is unclear.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2622 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'powerpc')
-rw-r--r--powerpc/Asmexpand.ml6
-rw-r--r--powerpc/CBuiltins.ml6
2 files changed, 1 insertions, 11 deletions
diff --git a/powerpc/Asmexpand.ml b/powerpc/Asmexpand.ml
index 7a45452..c003bcd 100644
--- a/powerpc/Asmexpand.ml
+++ b/powerpc/Asmexpand.ml
@@ -418,12 +418,6 @@ let expand_builtin_inline name args res =
emit (Pisync)
| "__builtin_trap", [], _ ->
emit (Ptrap)
- | "__builtin_lwar", [IR addr], [IR res] ->
- emit (Plwarx(res, GPR0, addr))
- | "__builtin_stwc", [IR addr; IR src], [IR res] ->
- emit (Pstwcx_(src, GPR0, addr));
- emit (Pmfcr res);
- emit (Prlwinm(res, res, Z.of_uint 3, _1))
(* Vararg stuff *)
| "__builtin_va_start", [IR a], _ ->
expand_builtin_va_start a
diff --git a/powerpc/CBuiltins.ml b/powerpc/CBuiltins.ml
index 53d84f7..8840d2c 100644
--- a/powerpc/CBuiltins.ml
+++ b/powerpc/CBuiltins.ml
@@ -84,11 +84,7 @@ let builtins = {
"__builtin_isync",
(TVoid [], [], false);
"__builtin_trap",
- (TVoid [], [], false);
- "__builtin_lwar",
- (TInt(IUInt, []), [TPtr(TInt(IUInt, [AConst]), [])], false);
- "__builtin_stwc",
- (TInt(IInt, []), [TPtr(TInt(IUInt, []), []); TInt(IUInt, [])], false)
+ (TVoid [], [], false)
]
}