llvm-project/llvm/lib/Target/NVPTX
Tim Shen 8f9f026965 [NVPTX] Enable StructuredCFG for NVPTX
Summary:
Make NVPTX require structured CFG. Added a temporary flag to
"roll back" the behavior for easy deployment.

Combined with D45008, this fixes several internal Nvidia GPU test
failures that we suspect to be ptxas miscompiles (PR27738).

Reviewers: jlebar

Subscribers: jholewinski, sanjoy, llvm-commits, hiraditya

Differential Revision: https://reviews.llvm.org/D45070

llvm-svn: 328885
2018-03-30 17:51:03 +00:00
..
InstPrinter
MCTargetDesc
TargetInfo Add backend name to Target to enable runtime info to be fed back into TableGen 2017-11-15 23:55:44 +00:00
CMakeLists.txt
LLVMBuild.txt
ManagedStringPool.h
NVPTX.h
NVPTX.td [CUDA] Added rudimentary support for CUDA-9 and sm_70. 2017-09-07 18:14:32 +00:00
NVPTXAllocaHoisting.cpp
NVPTXAllocaHoisting.h
NVPTXAsmPrinter.cpp [IR][CodeGen] Remove dependency on EVT from IR/Function.cpp. Move EVT to CodeGen layer. 2018-03-29 17:21:10 +00:00
NVPTXAsmPrinter.h
NVPTXAssignValidGlobalNames.cpp [NVPTX] Assign valid global names 2017-12-04 14:19:33 +00:00
NVPTXFrameLowering.cpp Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
NVPTXFrameLowering.h Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
NVPTXGenericToNVVM.cpp [IR][CodeGen] Remove dependency on EVT from IR/Function.cpp. Move EVT to CodeGen layer. 2018-03-29 17:21:10 +00:00
NVPTXISelDAGToDAG.cpp [NVPTX] TblGen-ized lowering of WMMA intrinsics. 2018-03-15 21:40:56 +00:00
NVPTXISelDAGToDAG.h [NVPTX] TblGen-ized lowering of WMMA intrinsics. 2018-03-15 21:40:56 +00:00
NVPTXISelLowering.cpp [IR][CodeGen] Remove dependency on EVT from IR/Function.cpp. Move EVT to CodeGen layer. 2018-03-29 17:21:10 +00:00
NVPTXISelLowering.h TLI: Allow using PSV for intrinsic mem operands 2017-12-14 22:34:10 +00:00
NVPTXImageOptimizer.cpp
NVPTXInstrFormats.td
NVPTXInstrInfo.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
NVPTXInstrInfo.h Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
NVPTXInstrInfo.td [NVPTX] TblGen-ized lowering of WMMA intrinsics. 2018-03-15 21:40:56 +00:00
NVPTXIntrinsics.td [NVPTX] Make tensor shape part of WMMA intrinsic's name. 2018-03-21 21:55:02 +00:00
NVPTXLowerAggrCopies.cpp [Memcpy Loop Lowering] Remove the fixed int8 lowering. 2017-12-18 15:31:14 +00:00
NVPTXLowerAggrCopies.h
NVPTXLowerAlloca.cpp
NVPTXLowerArgs.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
NVPTXMCExpr.cpp Avoid int to string conversion in Twine or raw_ostream contexts. 2017-12-28 16:58:54 +00:00
NVPTXMCExpr.h
NVPTXMachineFunctionInfo.h
NVPTXPeephole.cpp MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
NVPTXPrologEpilogPass.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
NVPTXRegisterInfo.cpp Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
NVPTXRegisterInfo.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
NVPTXRegisterInfo.td
NVPTXReplaceImageHandles.cpp MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
NVPTXSection.h
NVPTXSubtarget.cpp
NVPTXSubtarget.h [NVPTX] Removed always-true predicates in NVPTX. 2018-02-28 18:51:22 +00:00
NVPTXTargetMachine.cpp [NVPTX] Enable StructuredCFG for NVPTX 2018-03-30 17:51:03 +00:00
NVPTXTargetMachine.h (Re-landing) Expose a TargetMachine::getTargetTransformInfo function 2017-12-22 18:21:59 +00:00
NVPTXTargetObjectFile.h Move TargetLoweringObjectFile from CodeGen to Target to fix layering 2018-03-23 23:58:19 +00:00
NVPTXTargetTransformInfo.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
NVPTXTargetTransformInfo.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
NVPTXUtilities.cpp
NVPTXUtilities.h
NVVMIntrRange.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
NVVMReflect.cpp
cl_common_defines.h