hanchenye-llvm-project/llvm/lib/Target/AMDGPU
Stanislav Mekhanoshin 81598117b6 Replace addEarlyAsPossiblePasses callback with adjustPassManager
This change introduces adjustPassManager target callback giving a
target an opportunity to tweak PassManagerBuilder before pass
managers are populated.

This generalizes and replaces addEarlyAsPossiblePasses target
callback. In particular that can be used to add custom passes to
extension points other than EP_EarlyAsPossible.

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

llvm-svn: 293189
2017-01-26 16:49:08 +00:00
..
AsmParser [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-21 00:53:49 +00:00
Disassembler AMDGPU: Fix handling of 16-bit immediates 2016-12-10 00:39:12 +00:00
InstPrinter AMDGPU: Change vintrp printing 2016-12-14 16:36:12 +00:00
MCTargetDesc [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
TargetInfo Move the global variables representing each Target behind accessor function 2016-10-09 23:00:34 +00:00
Utils AMDGPU: Set call_convention bit in kernel_code_t 2017-01-25 20:21:57 +00:00
AMDGPU.h [AMDGPU] Add VGPR copies post regalloc fix pass 2017-01-24 17:46:17 +00:00
AMDGPU.td Enable FeatureFlatForGlobal on Volcanic Islands 2017-01-24 22:02:15 +00:00
AMDGPUAlwaysInlinePass.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
AMDGPUAnnotateKernelFeatures.cpp AMDGPU : Add trap handler support. 2017-01-24 06:41:21 +00:00
AMDGPUAnnotateUniformValues.cpp [AMDGPU] Scalarization of global uniform loads. 2016-12-08 17:28:47 +00:00
AMDGPUAsmPrinter.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
AMDGPUAsmPrinter.h [AMDGPU] Fix obsolete comments, spotted by Malcolm Parsons. (NFC) 2017-01-23 23:41:16 +00:00
AMDGPUCallLowering.cpp AMDGPU/SI: Fix file header 2016-12-21 19:06:24 +00:00
AMDGPUCallLowering.h GlobalISel: pass Function to lowerFormalArguments directly (NFC). 2016-09-21 12:57:35 +00:00
AMDGPUCallingConv.td
AMDGPUCodeGenPrepare.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
AMDGPUFrameLowering.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
AMDGPUFrameLowering.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
AMDGPUISelDAGToDAG.cpp AMDGPU: Remove modifiers from v_div_scale_* 2017-01-19 06:04:12 +00:00
AMDGPUISelLowering.cpp Revert "In visitSTORE, always use FindBetterChain, rather than only when UseAA is enabled." 2017-01-26 16:46:13 +00:00
AMDGPUISelLowering.h AMDGPU: Check nsz instead of unsafe math 2017-01-25 06:27:02 +00:00
AMDGPUInstrInfo.cpp MachineScheduler: Export function to construct "default" scheduler. 2016-11-28 20:11:54 +00:00
AMDGPUInstrInfo.h MachineScheduler: Export function to construct "default" scheduler. 2016-11-28 20:11:54 +00:00
AMDGPUInstrInfo.td AMDGPU/R600: Serialize vector trunc stores to private AS 2017-01-20 21:24:26 +00:00
AMDGPUInstructions.td [AMDGPU] Implement f16 fcopysign and fcopysign(f32, f64) 2017-01-13 19:49:25 +00:00
AMDGPUIntrinsicInfo.cpp AMDGPU: Change fdiv lowering based on !fpmath metadata 2016-07-19 23:16:53 +00:00
AMDGPUIntrinsicInfo.h AMDGPU: Change fdiv lowering based on !fpmath metadata 2016-07-19 23:16:53 +00:00
AMDGPUIntrinsics.td AMDGPU: Remove read_workdim intrinsic 2016-07-25 20:17:02 +00:00
AMDGPUMCInstLower.cpp [AMDGPU] Add wave barrier builtin 2016-11-15 19:00:15 +00:00
AMDGPUMCInstLower.h Reapply "AMDGPU: Support using tablegened MC pseudo expansions" 2016-10-06 17:19:11 +00:00
AMDGPUMachineFunction.cpp AMDGPU: Make AMDGPUMachineFunction fields private 2016-07-26 16:45:58 +00:00
AMDGPUMachineFunction.h AMDGPU/SI: Set correct value for amd_kernel_code_t::kernarg_segment_alignment 2016-12-06 21:53:10 +00:00
AMDGPUOpenCLImageTypeLoweringPass.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
AMDGPUPTNote.h [AMDGPU] Bump up n_type for metadata v2 2017-01-25 20:47:17 +00:00
AMDGPUPromoteAlloca.cpp AMDGPU/SI: Give up in promote alloca when a pointer may be captured. 2017-01-24 19:06:28 +00:00
AMDGPURegisterInfo.cpp
AMDGPURegisterInfo.h
AMDGPURegisterInfo.td
AMDGPURuntimeMetadata.h [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
AMDGPUSubtarget.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
AMDGPUSubtarget.h AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
AMDGPUTargetMachine.cpp Replace addEarlyAsPossiblePasses callback with adjustPassManager 2017-01-26 16:49:08 +00:00
AMDGPUTargetMachine.h Replace addEarlyAsPossiblePasses callback with adjustPassManager 2017-01-26 16:49:08 +00:00
AMDGPUTargetObjectFile.cpp Target: Change various section classifiers in TargetLoweringObjectFile to take a GlobalObject. 2016-10-24 19:23:39 +00:00
AMDGPUTargetObjectFile.h Target: Change various section classifiers in TargetLoweringObjectFile to take a GlobalObject. 2016-10-24 19:23:39 +00:00
AMDGPUTargetTransformInfo.cpp [X86] updating TTI costs for arithmetic instructions on X86\SLM arch. 2017-01-11 08:23:37 +00:00
AMDGPUTargetTransformInfo.h [X86] updating TTI costs for arithmetic instructions on X86\SLM arch. 2017-01-11 08:23:37 +00:00
AMDGPUUnifyMetadata.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
AMDILCFGStructurizer.cpp [AMDGPU] Fix build broken in r292688. 2017-01-21 01:34:25 +00:00
AMDKernelCodeT.h
BUFInstructions.td AMDGPU/SI: Add a MachineMemOperand when lowering llvm.amdgcn.buffer.load.* 2016-12-20 17:19:44 +00:00
CIInstructions.td [AMDGPU] Refactor VOP1 and VOP2 instruction TD definitions 2016-09-23 09:08:07 +00:00
CMakeLists.txt [AMDGPU] Add VGPR copies post regalloc fix pass 2017-01-24 17:46:17 +00:00
CaymanInstructions.td AMDGPU: Select mulhi 24-bit instructions 2016-08-27 01:32:27 +00:00
DSInstructions.td AMDGPU: Add VI i16 support 2016-11-10 16:02:37 +00:00
EvergreenInstructions.td ADMGPU/EG,CM: Implement _noret global atomics 2017-01-16 21:20:13 +00:00
FLATInstructions.td AMDGPU: split ret/noret patterns for global atomics 2016-12-23 15:34:51 +00:00
GCNHazardRecognizer.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
GCNHazardRecognizer.h AMDGPU/SI: Handle hazard with s_rfe_b64 2016-10-27 23:50:21 +00:00
GCNSchedStrategy.cpp [AMDGPU] Fix typo in GCNSchedStrategy 2017-01-26 10:51:47 +00:00
GCNSchedStrategy.h AMDGPU/SI: Implement a custom MachineSchedStrategy 2016-08-29 19:42:52 +00:00
LLVMBuild.txt
MIMGInstructions.td AMDGPU/SI: Add a MachineMemOperand to MIMG instructions 2016-12-20 15:52:17 +00:00
Processors.td AMDGPU: Refactor processor definition to use ISA version features 2016-10-26 16:37:56 +00:00
R600ClauseMergePass.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
R600ControlFlowFinalizer.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
R600Defines.h
R600EmitClauseMarkers.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
R600ExpandSpecialInstrs.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
R600FrameLowering.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-12 22:23:53 +00:00
R600FrameLowering.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
R600ISelLowering.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
R600ISelLowering.h AMDGPU: Fix i1 fp_to_int 2016-07-22 17:01:21 +00:00
R600InstrFormats.td AMDGPU/R600: Convert buffer id to VTX_READ input 2016-08-15 21:38:30 +00:00
R600InstrInfo.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
R600InstrInfo.h Finish renaming remaining analyzeBranch functions 2016-09-14 20:43:16 +00:00
R600Instructions.td AMDGPU/R600: Serialize vector trunc stores to private AS 2017-01-20 21:24:26 +00:00
R600Intrinsics.td AMDGPU: Fix TargetPrefix for remaining r600 intrinsics 2016-07-15 21:27:08 +00:00
R600MachineFunctionInfo.cpp AMDGPU: Delete more dead code 2016-07-22 17:01:25 +00:00
R600MachineFunctionInfo.h AMDGPU: Delete more dead code 2016-07-22 17:01:25 +00:00
R600MachineScheduler.cpp
R600MachineScheduler.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
R600OptimizeVectorRegisters.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-12 22:23:53 +00:00
R600Packetizer.cpp Fix spelling mistakes in AMDGPU target comments. NFC. 2016-11-18 11:04:02 +00:00
R600RegisterInfo.cpp
R600RegisterInfo.h
R600RegisterInfo.td
R600Schedule.td
R700Instructions.td
SIAnnotateControlFlow.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIDebuggerInsertNops.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIDefines.h AMDGPU: Fix handling of 16-bit immediates 2016-12-10 00:39:12 +00:00
SIFixControlFlowLiveIntervals.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIFixSGPRCopies.cpp [CodeGen] Rename MachineInstrBuilder::addOperand. NFC 2017-01-13 09:58:52 +00:00
SIFixVGPRCopies.cpp [AMDGPU] Add VGPR copies post regalloc fix pass 2017-01-24 17:46:17 +00:00
SIFoldOperands.cpp AMDGPU: Fix folding immediates into mac src2 2017-01-11 22:00:02 +00:00
SIFrameLowering.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
SIFrameLowering.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
SIISelLowering.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
SIISelLowering.h AMDGPU: Custom lower more vector operations 2017-01-23 23:09:58 +00:00
SIInsertSkips.cpp AMDGPU: Remove spurious out branches after a kill 2017-01-24 22:18:39 +00:00
SIInsertWaits.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-21 00:53:49 +00:00
SIInstrFormats.td AMDGPU: Fix vintrp disassembly 2016-12-10 00:29:55 +00:00
SIInstrInfo.cpp AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
SIInstrInfo.h AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
SIInstrInfo.td AMDGPU: Add replacement export intrinsics 2017-01-17 07:26:53 +00:00
SIInstructions.td AMDGPU : Add trap handler support. 2017-01-24 06:41:21 +00:00
SIIntrinsics.td AMDGPU: Refactor exp instructions 2016-12-05 20:23:10 +00:00
SILoadStoreOptimizer.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-21 00:53:49 +00:00
SILowerControlFlow.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
SILowerI1Copies.cpp [CodeGen] Rename MachineInstrBuilder::addOperand. NFC 2017-01-13 09:58:52 +00:00
SIMachineFunctionInfo.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
SIMachineFunctionInfo.h AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
SIMachineScheduler.cpp AMDGPU: Fixed '!NodePtr->isKnownSentinel()' assert 2016-12-22 16:06:32 +00:00
SIMachineScheduler.h [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-21 00:53:49 +00:00
SIOptimizeExecMasking.cpp AMDGPU: Fix use-after-free in SIOptimizeExecMasking 2016-10-07 08:40:14 +00:00
SIRegisterInfo.cpp AMDGPU add support for spilling to a user sgpr pointed buffers 2017-01-25 01:25:13 +00:00
SIRegisterInfo.h [AMDGPU] Do not allow register coalescer to create big superregs 2017-01-18 17:30:05 +00:00
SIRegisterInfo.td AMDGPU: Make AllocationPriority of SGPRs higher than VGPRs 2016-12-14 16:52:06 +00:00
SISchedule.td AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
SIShrinkInstructions.cpp [CodeGen] Rename MachineInstrBuilder::addOperand. NFC 2017-01-13 09:58:52 +00:00
SITypeRewriter.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIWholeQuadMode.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
SMInstructions.td [AMDGPU] Scalarization of global uniform loads. 2016-12-08 17:28:47 +00:00
SOPInstructions.td AMDGPU/SI: Implement sendmsghalt intrinsic 2017-01-04 18:06:55 +00:00
VIInstrFormats.td [AMDGPU] Refactor VOP1 and VOP2 instruction TD definitions 2016-09-23 09:08:07 +00:00
VIInstructions.td AMDGPU: Add VI i16 support 2016-11-10 16:02:37 +00:00
VOP1Instructions.td [AMDGPU] Assembler: SDWA/DPP should not accept scalar registers and immediate operands 2017-01-11 11:46:30 +00:00
VOP2Instructions.td [AMDGPU] Add subtarget features for SDWA/DPP 2017-01-20 10:01:25 +00:00
VOP3Instructions.td AMDGPU: Remove modifiers from v_div_scale_* 2017-01-19 06:04:12 +00:00
VOPCInstructions.td [AMDGPU] Add subtarget features for SDWA/DPP 2017-01-20 10:01:25 +00:00
VOPInstructions.td [AMDGPU] Add subtarget features for SDWA/DPP 2017-01-20 10:01:25 +00:00