llvm-6502/lib/Target/NVPTX
Akira Hatanaka f09378397e [MCInstPrinter] Enable MCInstPrinter to change its behavior based on the
per-function subtarget.

Currently, code-gen passes the default or generic subtarget to the constructors
of MCInstPrinter subclasses (see LLVMTargetMachine::addPassesToEmitFile), which
enables some targets (AArch64, ARM, and X86) to change their instprinter's
behavior based on the subtarget feature bits. Since the backend can now use
different subtargets for each function, instprinter has to be changed to use the
per-function subtarget rather than the default subtarget.

This patch takes the first step towards enabling instprinter to change its
behavior based on the per-function subtarget. It adds a bit "PassSubtarget" to
AsmWriter which tells table-gen to pass a reference to MCSubtargetInfo to the
various print methods table-gen auto-generates. 

I will follow up with changes to instprinters of AArch64, ARM, and X86.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@233411 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-27 20:36:02 +00:00
..
InstPrinter [MCInstPrinter] Enable MCInstPrinter to change its behavior based on the 2015-03-27 20:36:02 +00:00
MCTargetDesc two or more, use a for. 2015-03-18 23:15:49 +00:00
TargetInfo
cl_common_defines.h Update a couple of header inclusion guards 2014-05-31 21:26:09 +00:00
CMakeLists.txt NVPTX: Remove dead code. 2015-03-02 13:16:28 +00:00
LLVMBuild.txt Update libdeps in NVPTXCodeGen, since r225944. 2015-01-14 23:01:36 +00:00
Makefile
ManagedStringPool.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
NVPTX.h [PM] Remove a bunch of stale TTI creation method declarations. I nuked 2015-02-01 00:22:15 +00:00
NVPTX.td [NVPTX] Add target options for PTX 3.2/4.0 and SM 5.0 (Maxwell) 2014-06-27 18:35:18 +00:00
NVPTXAllocaHoisting.cpp NVPTX: move NVPTXAllocaHoisting into the cpp file 2015-03-10 19:20:52 +00:00
NVPTXAllocaHoisting.h NVPTX: move NVPTXAllocaHoisting into the cpp file 2015-03-10 19:20:52 +00:00
NVPTXAsmPrinter.cpp Disabling warnings for MSVC build to enable /W4 use. 2015-03-24 23:37:10 +00:00
NVPTXAsmPrinter.h Fix uses of reserved identifiers starting with an underscore followed by an uppercase letter 2015-03-16 18:06:57 +00:00
NVPTXAssignValidGlobalNames.cpp [PM] Remove the old 'PassManager.h' header file at the top level of 2015-02-13 10:01:29 +00:00
NVPTXFavorNonGenericAddrSpaces.cpp [opaque pointer type] more gep API migration 2015-03-14 19:53:33 +00:00
NVPTXFrameLowering.cpp Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXFrameLowering.h Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXGenericToNVVM.cpp Opaque Pointer Types: GEP API migrations to specify the gep type explicitly 2015-03-24 23:34:31 +00:00
NVPTXImageOptimizer.cpp [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
NVPTXInstrFormats.td [NVPTX] Add more surface/texture intrinsics, including CUDA unified texture fetch 2014-07-17 11:59:04 +00:00
NVPTXInstrInfo.cpp Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXInstrInfo.h Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXInstrInfo.td Migrate NVPTXISelDAGToDAG's getSubtarget to a runOnMachineFunction 2015-01-30 01:40:59 +00:00
NVPTXIntrinsics.td NVPTX: support direct f16 <-> f64 conversions via intrinsics. 2014-07-18 08:30:10 +00:00
NVPTXISelDAGToDAG.cpp Simplify boolean expressions with true and false using clang-tidy 2015-03-23 16:26:23 +00:00
NVPTXISelDAGToDAG.h Recommit r232027 with PR22883 fixed: Add infrastructure for support of multiple memory constraints. 2015-03-13 12:45:09 +00:00
NVPTXISelLowering.cpp Simplify boolean expressions with true and false using clang-tidy 2015-03-23 16:26:23 +00:00
NVPTXISelLowering.h Make each target map all inline assembly memory constraints to InlineAsm::Constraint_m. NFC. 2015-03-16 13:13:41 +00:00
NVPTXLowerAggrCopies.cpp Move unreferenced passes into the cpp file 2015-03-09 15:50:58 +00:00
NVPTXLowerAggrCopies.h Move unreferenced passes into the cpp file 2015-03-09 15:50:58 +00:00
NVPTXLowerStructArgs.cpp Don't use LLVM_LIBRARY_VISIBILITY in cpp files. 2015-03-10 20:07:44 +00:00
NVPTXMachineFunctionInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
NVPTXMCExpr.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:41:26 +00:00
NVPTXMCExpr.h Fix uses of reserved identifiers starting with an underscore followed by an uppercase letter 2015-03-16 18:06:57 +00:00
NVPTXPrologEpilogPass.cpp Migrate a bare getSubtarget call to query the MachineFunction 2015-01-30 01:50:09 +00:00
NVPTXRegisterInfo.cpp Have getCalleeSavedRegs take a non-null MachineFunction all the 2015-03-11 21:41:28 +00:00
NVPTXRegisterInfo.h Have getCalleeSavedRegs take a non-null MachineFunction all the 2015-03-11 21:41:28 +00:00
NVPTXRegisterInfo.td [NVPTX] Rename registers %fl -> %fd and %rl -> %rd 2014-07-16 16:26:58 +00:00
NVPTXReplaceImageHandles.cpp Remove all use of getDrvInterface off of NVPTXSubtarget and clean 2015-02-19 00:08:23 +00:00
NVPTXSection.h Close unique sections when switching away from them. 2015-03-27 15:01:40 +00:00
NVPTXSubtarget.cpp Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXSubtarget.h Remove all use of is64bit off of NVPTXSubtarget and clean up code 2015-02-19 00:08:27 +00:00
NVPTXTargetMachine.cpp Simplify the query for a subtarget in the NVPTX pass manager. 2015-03-21 03:13:03 +00:00
NVPTXTargetMachine.h Remove the target independent TargetMachine::getSubtarget and 2015-03-21 04:22:23 +00:00
NVPTXTargetObjectFile.h Remove useless .debug_macinfo section setup. 2015-03-02 19:52:42 +00:00
NVPTXTargetTransformInfo.cpp [PM] Switch the TargetMachine interface from accepting a pass manager 2015-01-31 11:17:59 +00:00
NVPTXTargetTransformInfo.h [multiversion] Switch the TTI queries from TargetMachine to Subtarget 2015-02-01 14:22:17 +00:00
NVPTXUtilities.cpp Simplify boolean expressions with true and false using clang-tidy 2015-03-23 16:26:23 +00:00
NVPTXUtilities.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
NVPTXVector.td Replace neverHasSideEffects=1 with hasSideEffects=0 in all .td files. 2014-11-26 00:46:26 +00:00
NVVMReflect.cpp Re-sort includes with sort-includes.py and insert raw_ostream.h where it's used. 2015-03-23 19:32:43 +00:00