1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/lib/Target/NVPTX
Matthias Braun f96b4d234c CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses
Re-apply this patch, hopefully I will get away without any warnings
in the constructor now.

This patch removes the MachineFunctionAnalysis. Instead we keep a
map from IR Function to MachineFunction in the MachineModuleInfo.

This allows the insertion of ModulePasses into the codegen pipeline
without breaking it because the MachineFunctionAnalysis gets dropped
before a module pass.

Peak memory should stay unchanged without a ModulePass in the codegen
pipeline: Previously the MachineFunction was freed at the end of a codegen
function pipeline because the MachineFunctionAnalysis was dropped; With
this patch the MachineFunction is freed after the AsmPrinter has
finished.

Differential Revision: http://reviews.llvm.org/D23736

llvm-svn: 279602
2016-08-24 01:52:46 +00:00
..
InstPrinter
MCTargetDesc Delete MCCodeGenInfo. 2016-06-30 18:25:11 +00:00
TargetInfo
cl_common_defines.h
CMakeLists.txt [NVPTX] Renamed NVPTXLowerKernelArgs -> NVPTXLowerArgs. NFC. 2016-07-20 21:44:07 +00:00
LLVMBuild.txt [NVPTX] Enable the load-store vectorizer on nvptx. 2016-07-20 22:11:36 +00:00
ManagedStringPool.h
NVPTX.h [NVPTX] Renamed NVPTXLowerKernelArgs -> NVPTXLowerArgs. NFC. 2016-07-20 21:44:07 +00:00
NVPTX.td [NVPTX] Add sm_60, sm_61, sm_62 targets to LLVM. 2016-07-06 21:06:10 +00:00
NVPTXAllocaHoisting.cpp CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses 2016-08-24 01:52:46 +00:00
NVPTXAllocaHoisting.h
NVPTXAsmPrinter.cpp Replace a few more "fall through" comments with LLVM_FALLTHROUGH 2016-08-17 20:30:52 +00:00
NVPTXAsmPrinter.h
NVPTXAssignValidGlobalNames.cpp
NVPTXFavorNonGenericAddrSpaces.cpp
NVPTXFrameLowering.cpp MachineFunction: Return reference for getFrameInfo(); NFC 2016-07-28 18:40:00 +00:00
NVPTXFrameLowering.h
NVPTXGenericToNVVM.cpp CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses 2016-08-24 01:52:46 +00:00
NVPTXImageOptimizer.cpp
NVPTXInferAddressSpaces.cpp [NVPTX] Switch nvptx-use-infer-addrspace to true. 2016-08-19 20:46:45 +00:00
NVPTXInstrFormats.td
NVPTXInstrInfo.cpp Rename AnalyzeBranch* to analyzeBranch*. 2016-07-15 14:41:04 +00:00
NVPTXInstrInfo.h Rename AnalyzeBranch* to analyzeBranch*. 2016-07-15 14:41:04 +00:00
NVPTXInstrInfo.td [SelectionDAG] Rename fextend -> fpextend, fround -> fpround, frnd -> fround 2016-08-18 20:08:15 +00:00
NVPTXIntrinsics.td NVPTX: Remove the legacy ptx intrinsics 2016-07-07 16:40:17 +00:00
NVPTXISelDAGToDAG.cpp [NVPTX] Improve lowering of byval args of device functions. 2016-07-20 18:39:47 +00:00
NVPTXISelDAGToDAG.h
NVPTXISelLowering.cpp [SelectionDAG] Rename fextend -> fpextend, fround -> fpround, frnd -> fround 2016-08-18 20:08:15 +00:00
NVPTXISelLowering.h
NVPTXLowerAggrCopies.cpp CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses 2016-08-24 01:52:46 +00:00
NVPTXLowerAggrCopies.h
NVPTXLowerAlloca.cpp
NVPTXLowerArgs.cpp [NVPTX] Renamed NVPTXLowerKernelArgs -> NVPTXLowerArgs. NFC. 2016-07-20 21:44:07 +00:00
NVPTXMachineFunctionInfo.h
NVPTXMCExpr.cpp
NVPTXMCExpr.h
NVPTXPeephole.cpp
NVPTXPrologEpilogPass.cpp MachineFunction: Return reference for getFrameInfo(); NFC 2016-07-28 18:40:00 +00:00
NVPTXRegisterInfo.cpp [NVPTX] Use untyped (.b) integer registers in PTX. 2016-08-12 22:02:19 +00:00
NVPTXRegisterInfo.h
NVPTXRegisterInfo.td
NVPTXReplaceImageHandles.cpp
NVPTXSection.h
NVPTXSubtarget.cpp
NVPTXSubtarget.h
NVPTXTargetMachine.cpp CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses 2016-08-24 01:52:46 +00:00
NVPTXTargetMachine.h
NVPTXTargetObjectFile.h
NVPTXTargetTransformInfo.cpp NVPTX: Remove the legacy ptx intrinsics 2016-07-07 16:40:17 +00:00
NVPTXTargetTransformInfo.h
NVPTXUtilities.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
NVPTXUtilities.h
NVPTXVector.td
NVVMIntrRange.cpp NVPTX: Remove the legacy ptx intrinsics 2016-07-07 16:40:17 +00:00
NVVMReflect.cpp