Add instruction encoding for DMB/DSB

llvm-svn: 91053
This commit is contained in:
Jim Grosbach 2009-12-10 18:35:32 +00:00
parent 5b747a169e
commit fed78ccfb5
1 changed files with 11 additions and 3 deletions

View File

@ -1574,18 +1574,26 @@ def MOVCCi : AI1<0b1101, (outs GPR:$dst),
//
// memory barriers protect the atomic sequences
let isBarrier = 1 in {
let isBarrier = 1, isPredicable = 0 in {
def Int_MemBarrierV7 : AI<(outs), (ins),
Pseudo, NoItinerary,
"dmb", "",
[(ARMMemBarrier)]>,
Requires<[HasV7]>;
Requires<[HasV7]> {
let Inst{31-4} = 0xf57ff05;
// FIXME: add support for options other than a full system DMB
let Inst{3-0} = 0b1111;
}
def Int_SyncBarrierV7 : AI<(outs), (ins),
Pseudo, NoItinerary,
"dsb", "",
[(ARMSyncBarrier)]>,
Requires<[HasV7]>;
Requires<[HasV7]> {
let Inst{31-4} = 0xf57ff04;
// FIXME: add support for options other than a full system DSB
let Inst{3-0} = 0b1111;
}
}
//===----------------------------------------------------------------------===//