Skip to content

Commit 1922435

Browse files
committed
[NVPTX] Cleanups
- Remove dead code in InstPrinter - Capitalization and improve Table comments - Update fence->membar lowering
1 parent 91c8b7e commit 1922435

File tree

2 files changed

+10
-20
lines changed

2 files changed

+10
-20
lines changed

llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -256,18 +256,6 @@ void NVPTXInstPrinter::printLdStCode(const MCInst *MI, int OpNum,
256256
report_fatal_error(OS.str());
257257
break;
258258
}
259-
} else if (!strcmp(Modifier, "sc")) {
260-
auto Ordering =
261-
NVPTX::Ordering(static_cast<NVPTX::OrderingUnderlyingType>(Imm));
262-
switch (Ordering) {
263-
// TODO: refactor fence insertion in ISelDagToDag instead of here
264-
// as part of implementing atomicrmw seq_cst.
265-
case NVPTX::Ordering::SequentiallyConsistent:
266-
O << "fence.sc.sys;\n\t";
267-
break;
268-
default:
269-
break;
270-
}
271259
} else if (!strcmp(Modifier, "addsp")) {
272260
switch (Imm) {
273261
case NVPTX::PTXLdStInstCode::GLOBAL:

llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -717,10 +717,10 @@ static unsigned int getCodeAddrSpace(MemSDNode *N) {
717717
struct OperationOrderings {
718718
NVPTX::OrderingUnderlyingType InstrOrdering;
719719
NVPTX::OrderingUnderlyingType FenceOrdering;
720-
OperationOrderings(NVPTX::Ordering o = NVPTX::Ordering::NotAtomic,
721-
NVPTX::Ordering f = NVPTX::Ordering::NotAtomic)
722-
: InstrOrdering(static_cast<NVPTX::OrderingUnderlyingType>(o)),
723-
FenceOrdering(static_cast<NVPTX::OrderingUnderlyingType>(f)) {}
720+
OperationOrderings(NVPTX::Ordering O = NVPTX::Ordering::NotAtomic,
721+
NVPTX::Ordering F = NVPTX::Ordering::NotAtomic)
722+
: InstrOrdering(static_cast<NVPTX::OrderingUnderlyingType>(O)),
723+
FenceOrdering(static_cast<NVPTX::OrderingUnderlyingType>(F)) {}
724724
};
725725

726726
static OperationOrderings
@@ -734,6 +734,8 @@ getOperationOrderings(MemSDNode *N, const NVPTXSubtarget *Subtarget) {
734734
// clang-format off
735735

736736
// Lowering for Load/Store Operations (note: AcquireRelease Loads or Stores error).
737+
// Note: uses of Relaxed in the Atomic column of this table refer
738+
// to LLVM AtomicOrdering::Monotonic.
737739
//
738740
// | Atomic | Volatile | Statespace | PTX sm_60- | PTX sm_70+ |
739741
// |---------|----------|--------------------|------------|------------------------------|
@@ -1155,7 +1157,7 @@ bool NVPTXDAGToDAGISel::tryLoad(SDNode *N) {
11551157
case NVPTX::Ordering::SequentiallyConsistent: {
11561158
unsigned Op = Subtarget->hasMemoryOrdering()
11571159
? NVPTX::atomic_thread_fence_seq_cst_sys
1158-
: NVPTX::atomic_thread_fence_seq_cst_sys_membar;
1160+
: NVPTX::INT_MEMBAR_SYS;
11591161
Chain = SDValue(CurDAG->getMachineNode(Op, dl, MVT::Other, Chain), 0);
11601162
break;
11611163
}
@@ -1318,7 +1320,7 @@ bool NVPTXDAGToDAGISel::tryLoadVector(SDNode *N) {
13181320
case NVPTX::Ordering::SequentiallyConsistent: {
13191321
unsigned Op = Subtarget->hasMemoryOrdering()
13201322
? NVPTX::atomic_thread_fence_seq_cst_sys
1321-
: NVPTX::atomic_thread_fence_seq_cst_sys_membar;
1323+
: NVPTX::INT_MEMBAR_SYS;
13221324
Chain = SDValue(CurDAG->getMachineNode(Op, DL, MVT::Other, Chain), 0);
13231325
break;
13241326
}
@@ -1990,7 +1992,7 @@ bool NVPTXDAGToDAGISel::tryStore(SDNode *N) {
19901992
case NVPTX::Ordering::SequentiallyConsistent: {
19911993
unsigned Op = Subtarget->hasMemoryOrdering()
19921994
? NVPTX::atomic_thread_fence_seq_cst_sys
1993-
: NVPTX::atomic_thread_fence_seq_cst_sys_membar;
1995+
: NVPTX::INT_MEMBAR_SYS;
19941996
Chain = SDValue(CurDAG->getMachineNode(Op, dl, MVT::Other, Chain), 0);
19951997
break;
19961998
}
@@ -2150,7 +2152,7 @@ bool NVPTXDAGToDAGISel::tryStoreVector(SDNode *N) {
21502152
case NVPTX::Ordering::SequentiallyConsistent: {
21512153
unsigned Op = Subtarget->hasMemoryOrdering()
21522154
? NVPTX::atomic_thread_fence_seq_cst_sys
2153-
: NVPTX::atomic_thread_fence_seq_cst_sys_membar;
2155+
: NVPTX::INT_MEMBAR_SYS;
21542156
Chain = SDValue(CurDAG->getMachineNode(Op, DL, MVT::Other, Chain), 0);
21552157
break;
21562158
}

0 commit comments

Comments
 (0)