correct selection requirements for thumb2 vs. arm versions of the barrier intrinsics
authorJim Grosbach <grosbach@apple.com>
Mon, 14 Dec 2009 19:24:11 +0000 (19:24 +0000)
committerJim Grosbach <grosbach@apple.com>
Mon, 14 Dec 2009 19:24:11 +0000 (19:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91313 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrInfo.td
lib/Target/ARM/ARMInstrThumb2.td

index 814f50656f544b2e49986416f7f91800b8a6e836..8f947febb61ca66d6078d3f821d2d335deb09926 100644 (file)
@@ -1579,7 +1579,7 @@ def Int_MemBarrierV7 : AInoP<(outs), (ins),
                         Pseudo, NoItinerary,
                         "dmb", "",
                         [(ARMMemBarrier)]>,
-                        Requires<[HasV7]> {
+                        Requires<[IsARM, HasV7]> {
   let Inst{31-4} = 0xf57ff05;
   // FIXME: add support for options other than a full system DMB
   let Inst{3-0} = 0b1111;
@@ -1589,7 +1589,7 @@ def Int_SyncBarrierV7 : AInoP<(outs), (ins),
                         Pseudo, NoItinerary,
                         "dsb", "",
                         [(ARMSyncBarrier)]>,
-                        Requires<[HasV7]> {
+                        Requires<[IsARM, HasV7]> {
   let Inst{31-4} = 0xf57ff04;
   // FIXME: add support for options other than a full system DSB
   let Inst{3-0} = 0b1111;
index 0f2024f4fa815e8ad1a0aacb98fc48c6083ec05b..a2aa1c03e937afb09b893d9b2505ce2f41e4a780 100644 (file)
@@ -1073,14 +1073,16 @@ let hasSideEffects = 1 in {
 def t2Int_MemBarrierV7 : AInoP<(outs), (ins),
                         Pseudo, NoItinerary,
                         "dmb", "",
-                        [(ARMMemBarrier)]> {
+                        [(ARMMemBarrier)]>,
+                        Requires<[IsThumb2]> {
   // FIXME: add support for options other than a full system DMB
 }
 
 def t2Int_SyncBarrierV7 : AInoP<(outs), (ins),
                         Pseudo, NoItinerary,
                         "dsb", "",
-                        [(ARMSyncBarrier)]> {
+                        [(ARMSyncBarrier)]>,
+                        Requires<[IsThumb2]> {
   // FIXME: add support for options other than a full system DSB
 }
 }