mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-01 08:28:19 +00:00
Expand ATOMIC_LOAD and ATOMIC_STORE for architectures I don't know well enough to fix properly.
llvm-svn: 138751
This commit is contained in:
parent
a5a8e59643
commit
6d27cb5e01
@ -596,6 +596,7 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM)
|
||||
setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32, Expand);
|
||||
// ARMv6 Thumb1 (except for CPUs that support dmb / dsb) and earlier use
|
||||
// the default expansion.
|
||||
// FIXME: This should be checking for v6k, not just v6.
|
||||
if (Subtarget->hasDataBarrier() ||
|
||||
(Subtarget->hasV6Ops() && !Subtarget->isThumb())) {
|
||||
// membarrier needs custom lowering; the rest are legal and handled
|
||||
|
@ -153,6 +153,9 @@ AlphaTargetLowering::AlphaTargetLowering(TargetMachine &TM)
|
||||
setOperationAction(ISD::JumpTable, MVT::i64, Custom);
|
||||
setOperationAction(ISD::JumpTable, MVT::i32, Custom);
|
||||
|
||||
setOperationAction(ISD::ATOMIC_LOAD, MVT::i32, Expand);
|
||||
setOperationAction(ISD::ATOMIC_STORE, MVT::i32, Expand);
|
||||
|
||||
setStackPointerRegisterToSaveRestore(Alpha::R30);
|
||||
|
||||
setJumpBufSize(272);
|
||||
|
@ -178,6 +178,9 @@ MipsTargetLowering(MipsTargetMachine &TM)
|
||||
setOperationAction(ISD::MEMBARRIER, MVT::Other, Custom);
|
||||
setOperationAction(ISD::ATOMIC_FENCE, MVT::Other, Custom);
|
||||
|
||||
setOperationAction(ISD::ATOMIC_LOAD, MVT::i32, Expand);
|
||||
setOperationAction(ISD::ATOMIC_STORE, MVT::i32, Expand);
|
||||
|
||||
setInsertFencesForAtomic(true);
|
||||
|
||||
if (Subtarget->isSingleFloat())
|
||||
|
@ -365,6 +365,9 @@ PPCTargetLowering::PPCTargetLowering(PPCTargetMachine &TM)
|
||||
setOperationAction(ISD::BUILD_VECTOR, MVT::v4f32, Custom);
|
||||
}
|
||||
|
||||
setOperationAction(ISD::ATOMIC_LOAD, MVT::i32, Expand);
|
||||
setOperationAction(ISD::ATOMIC_STORE, MVT::i32, Expand);
|
||||
|
||||
setBooleanContents(ZeroOrOneBooleanContent);
|
||||
|
||||
if (TM.getSubtarget<PPCSubtarget>().isPPC64()) {
|
||||
|
Loading…
Reference in New Issue
Block a user