diff options
author | Philip Reames <preames@rivosinc.com> | 2023-01-09 17:41:31 -0800 |
---|---|---|
committer | Philip Reames <listmail@philipreames.com> | 2023-01-09 17:43:44 -0800 |
commit | a8d22190e2c763cb9f38dcf2155a474a35c83620 (patch) | |
tree | 4e62e4393e9e7dd2df74ed9afee8605cffc22e52 /llvm/lib/Target/XCore | |
parent | 6d0c3eb49d01b94a51b6c15c7423cb15af89792e (diff) | |
download | llvm-a8d22190e2c763cb9f38dcf2155a474a35c83620.zip llvm-a8d22190e2c763cb9f38dcf2155a474a35c83620.tar.gz llvm-a8d22190e2c763cb9f38dcf2155a474a35c83620.tar.bz2 |
[XCore] Use the newly introduced generic MEMBARRIER node [not quite nfc]
The target node being removed did not have side effects; the generic one does. Nothing in the code indicates the lack was intentional, so this is probably fixing a bug.
Diffstat (limited to 'llvm/lib/Target/XCore')
-rw-r--r-- | llvm/lib/Target/XCore/XCoreISelLowering.cpp | 3 | ||||
-rw-r--r-- | llvm/lib/Target/XCore/XCoreISelLowering.h | 3 | ||||
-rw-r--r-- | llvm/lib/Target/XCore/XCoreInstrInfo.td | 7 |
3 files changed, 2 insertions, 11 deletions
diff --git a/llvm/lib/Target/XCore/XCoreISelLowering.cpp b/llvm/lib/Target/XCore/XCoreISelLowering.cpp index 8cc05fd..c686a23 100644 --- a/llvm/lib/Target/XCore/XCoreISelLowering.cpp +++ b/llvm/lib/Target/XCore/XCoreISelLowering.cpp @@ -64,7 +64,6 @@ getTargetNodeName(unsigned Opcode) const case XCoreISD::BR_JT32 : return "XCoreISD::BR_JT32"; case XCoreISD::FRAME_TO_ARGS_OFFSET : return "XCoreISD::FRAME_TO_ARGS_OFFSET"; case XCoreISD::EH_RETURN : return "XCoreISD::EH_RETURN"; - case XCoreISD::MEMBARRIER : return "XCoreISD::MEMBARRIER"; } return nullptr; } @@ -928,7 +927,7 @@ LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const { SDValue XCoreTargetLowering:: LowerATOMIC_FENCE(SDValue Op, SelectionDAG &DAG) const { SDLoc DL(Op); - return DAG.getNode(XCoreISD::MEMBARRIER, DL, MVT::Other, Op.getOperand(0)); + return DAG.getNode(ISD::MEMBARRIER, DL, MVT::Other, Op.getOperand(0)); } SDValue XCoreTargetLowering:: diff --git a/llvm/lib/Target/XCore/XCoreISelLowering.h b/llvm/lib/Target/XCore/XCoreISelLowering.h index 45c21fb..cfd0619 100644 --- a/llvm/lib/Target/XCore/XCoreISelLowering.h +++ b/llvm/lib/Target/XCore/XCoreISelLowering.h @@ -79,9 +79,6 @@ namespace llvm { // Exception handler return. The stack is restored to the first // followed by a jump to the second argument. EH_RETURN, - - // Memory barrier. - MEMBARRIER }; } diff --git a/llvm/lib/Target/XCore/XCoreInstrInfo.td b/llvm/lib/Target/XCore/XCoreInstrInfo.td index 23f80b1..e596966 100644 --- a/llvm/lib/Target/XCore/XCoreInstrInfo.td +++ b/llvm/lib/Target/XCore/XCoreInstrInfo.td @@ -82,11 +82,6 @@ def callseq_start : SDNode<"ISD::CALLSEQ_START", SDT_XCoreCallSeqStart, def callseq_end : SDNode<"ISD::CALLSEQ_END", SDT_XCoreCallSeqEnd, [SDNPHasChain, SDNPOptInGlue, SDNPOutGlue]>; -def SDT_XCoreMEMBARRIER : SDTypeProfile<0, 0, []>; - -def XCoreMemBarrier : SDNode<"XCoreISD::MEMBARRIER", SDT_XCoreMEMBARRIER, - [SDNPHasChain]>; - //===----------------------------------------------------------------------===// // Instruction Pattern Stuff //===----------------------------------------------------------------------===// @@ -365,7 +360,7 @@ let usesCustomInserter = 1 in { let hasSideEffects = 1, isMeta = 1 in def Int_MemBarrier : PseudoInstXCore<(outs), (ins), "#MEMBARRIER", - [(XCoreMemBarrier)]>; + [(membarrier)]>; //===----------------------------------------------------------------------===// // Instructions |