summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/patches/patch-03-enable-armv6-clrex.diff
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/patches/patch-03-enable-armv6-clrex.diff')
-rw-r--r--contrib/llvm/patches/patch-03-enable-armv6-clrex.diff20
1 files changed, 20 insertions, 0 deletions
diff --git a/contrib/llvm/patches/patch-03-enable-armv6-clrex.diff b/contrib/llvm/patches/patch-03-enable-armv6-clrex.diff
new file mode 100644
index 0000000..574e3bd
--- /dev/null
+++ b/contrib/llvm/patches/patch-03-enable-armv6-clrex.diff
@@ -0,0 +1,20 @@
+For now, enable the clrex instruction for armv6, until upstream
+implements this properly.
+
+Submitted by: rdivacky
+
+Introduced here: http://svnweb.freebsd.org/changeset/base/275362
+
+Index: lib/Target/ARM/ARMInstrInfo.td
+===================================================================
+--- lib/Target/ARM/ARMInstrInfo.td
++++ lib/Target/ARM/ARMInstrInfo.td
+@@ -4640,7 +4640,7 @@ def STLEXD : AIstlex<0b01, (outs GPR:$Rd),
+
+ def CLREX : AXI<(outs), (ins), MiscFrm, NoItinerary, "clrex",
+ [(int_arm_clrex)]>,
+- Requires<[IsARM, HasV7]> {
++ Requires<[IsARM, HasV6]> {
+ let Inst{31-0} = 0b11110101011111111111000000011111;
+ }
+
OpenPOWER on IntegriCloud