1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 04:52:54 +02:00
llvm-mirror/lib/Target/AMDGPU
Oliver Stannard 93adbfee25 Refactor backend diagnostics for unsupported features
The BPF and WebAssembly backends had identical code for emitting errors
for unsupported features, and AMDGPU had very similar code. This merges
them all into one DiagnosticInfo subclass, that can be used by any
backend.

There should be minimal functional changes here, but some AMDGPU tests
have been updated for the new format of errors (it used a slightly
different format to BPF and WebAssembly). The AMDGPU error messages will
now benefit from having precise source locations when debug info is
available.

The implementation of DiagnosticInfoUnsupported::print must be in
lib/Codegen rather than in the existing file in lib/IR/ to avoid
introducing a dependency from IR to CodeGen.

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

llvm-svn: 258951
2016-01-27 17:30:33 +00:00
..
AsmParser Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
InstPrinter Remove autoconf support 2016-01-26 21:29:08 +00:00
MCTargetDesc Remove autoconf support 2016-01-26 21:29:08 +00:00
TargetInfo Remove autoconf support 2016-01-26 21:29:08 +00:00
Utils Remove autoconf support 2016-01-26 21:29:08 +00:00
AMDGPU.h Correctly initialize SIAnnotateControlFlow 2016-01-20 15:48:27 +00:00
AMDGPU.td AMDGPU/SI: Stoney has only 16 LDS banks 2016-01-27 11:19:45 +00:00
AMDGPUAlwaysInlinePass.cpp
AMDGPUAnnotateKernelFeatures.cpp AMDGPU: Add llvm.amdgcn.dispatch.ptr intrinsic 2015-11-26 00:43:29 +00:00
AMDGPUAnnotateUniformValues.cpp AMDGPU/SI: Select constant loads with non-uniform addresses to MUBUF instructions 2015-12-15 20:55:55 +00:00
AMDGPUAsmPrinter.cpp Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
AMDGPUAsmPrinter.h AMDGPU: Emit note directive for HSA even if there are no functions 2016-01-12 17:18:17 +00:00
AMDGPUCallingConv.td AMDGPU/SI: Add support for non-void functions 2016-01-13 17:23:04 +00:00
AMDGPUFrameLowering.cpp AMDGPU: Fix old comments that mention AMDIL 2016-01-20 21:22:21 +00:00
AMDGPUFrameLowering.h AMDGPU: Create emergency stack slots during frame lowering 2015-11-06 18:17:45 +00:00
AMDGPUInstrInfo.cpp Make a bunch of static arrays const. 2015-10-18 05:15:34 +00:00
AMDGPUInstrInfo.h
AMDGPUInstrInfo.td AMDGPU/SI: Add support for non-void functions 2016-01-13 17:23:04 +00:00
AMDGPUInstructions.td AMDGPU: Tidy minor td file issues 2016-01-26 04:49:22 +00:00
AMDGPUIntrinsicInfo.cpp [llvm-tblgen] Avoid StringMatcher for GCC and MS builtin names 2016-01-27 01:43:12 +00:00
AMDGPUIntrinsicInfo.h
AMDGPUIntrinsics.td AMDGPU: Move AMDGPU intrinsics only used by R600 2016-01-26 04:49:24 +00:00
AMDGPUISelDAGToDAG.cpp Refactor backend diagnostics for unsupported features 2016-01-27 17:30:33 +00:00
AMDGPUISelLowering.cpp Refactor backend diagnostics for unsupported features 2016-01-27 17:30:33 +00:00
AMDGPUISelLowering.h AMDGPU: Remove more unused intrinsics 2016-01-23 05:42:38 +00:00
AMDGPUMachineFunction.cpp AMDGPU/SI: Add getShaderType() function to Utils/ 2015-12-15 16:26:16 +00:00
AMDGPUMachineFunction.h AMDGPU/SI: Emit HSA kernels with symbol type STT_AMDGPU_HSA_KERNEL 2015-11-06 11:45:14 +00:00
AMDGPUMCInstLower.cpp AMDGPU/SI: Fix encoding for FLAT_SCRATCH registers on VI 2015-12-21 18:44:27 +00:00
AMDGPUMCInstLower.h
AMDGPUOpenCLImageTypeLoweringPass.cpp
AMDGPUPromoteAlloca.cpp AMDGPU: Fix crash with invariant markers 2016-01-22 19:47:54 +00:00
AMDGPURegisterInfo.cpp
AMDGPURegisterInfo.h
AMDGPURegisterInfo.td
AMDGPUSubtarget.cpp AMDGPU: Fix default device handling 2016-01-27 02:17:49 +00:00
AMDGPUSubtarget.h AMDGPU: Fix default device handling 2016-01-27 02:17:49 +00:00
AMDGPUTargetMachine.cpp AMDGPU: Fix default device handling 2016-01-27 02:17:49 +00:00
AMDGPUTargetMachine.h
AMDGPUTargetObjectFile.cpp AMDGPU/SI: Emit constant variables in the .hsatext section when targeting HSA 2015-12-15 22:39:36 +00:00
AMDGPUTargetObjectFile.h AMDGPU/SI: Emit constant arrays in the .text section 2015-12-10 02:13:01 +00:00
AMDGPUTargetTransformInfo.cpp AMDGPU: Fix getRegisterBitWidth for vectors 2015-12-24 05:14:55 +00:00
AMDGPUTargetTransformInfo.h AMDGPU: Override getCFInstrCost 2015-12-16 18:37:19 +00:00
AMDILCFGStructurizer.cpp Normalize MBB's successors' probabilities in several locations. 2015-12-13 09:26:17 +00:00
AMDKernelCodeT.h
CaymanInstructions.td
CIInstructions.td AMDGPU: Tidy minor td file issues 2016-01-26 04:49:22 +00:00
CMakeLists.txt Refactor backend diagnostics for unsupported features 2016-01-27 17:30:33 +00:00
EvergreenInstructions.td AMDGPU: Remove random TGSI intrinsic 2016-01-22 18:42:44 +00:00
LLVMBuild.txt AMDGPU: Fix old comments that mention AMDIL 2016-01-20 21:22:21 +00:00
Processors.td AMDGPU/SI: Stoney has only 16 LDS banks 2016-01-27 11:19:45 +00:00
R600ClauseMergePass.cpp
R600ControlFlowFinalizer.cpp Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
R600Defines.h
R600EmitClauseMarkers.cpp
R600ExpandSpecialInstrs.cpp
R600InstrFormats.td
R600InstrInfo.cpp
R600InstrInfo.h
R600Instructions.td AMDGPU: Remove more unused intrinsics 2016-01-23 05:42:38 +00:00
R600Intrinsics.td AMDGPU: Move AMDGPU intrinsics only used by R600 2016-01-26 04:49:24 +00:00
R600ISelLowering.cpp AMDGPU: Restore AMDGPU prefixed rsq intrinsic for now 2016-01-26 04:14:16 +00:00
R600ISelLowering.h
R600MachineFunctionInfo.cpp
R600MachineFunctionInfo.h
R600MachineScheduler.cpp
R600MachineScheduler.h
R600OptimizeVectorRegisters.cpp AMDGPU: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:07:10 +00:00
R600Packetizer.cpp [Packetizer] Add AliasAnalysis as a parameter to the packetizer 2015-12-14 20:35:13 +00:00
R600RegisterInfo.cpp
R600RegisterInfo.h
R600RegisterInfo.td
R600Schedule.td
R600TextureIntrinsicsReplacer.cpp AMDGPU: Rename some r600 intrinsics to use correct TargetPrefix 2016-01-22 19:00:09 +00:00
R700Instructions.td
SIAnnotateControlFlow.cpp AMDGPU: Change control flow intrinsics to use amdgcn prefix 2016-01-22 18:42:55 +00:00
SIDefines.h AMDGPU/SI: Add new target attribute InitialPSInputAddr 2016-01-13 11:45:36 +00:00
SIFixControlFlowLiveIntervals.cpp
SIFixSGPRCopies.cpp AMDGPU/SI: Fold operands with sub-registers 2016-01-07 17:10:29 +00:00
SIFixSGPRLiveRanges.cpp AMDGPU: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:07:10 +00:00
SIFoldOperands.cpp AMDGPU/SI: Fix a bug in SIFoldOperands 2016-01-13 11:44:29 +00:00
SIFrameLowering.cpp AMDGPU/SI: Do not move scratch resource register on Tonga & Iceland 2016-01-05 20:42:49 +00:00
SIFrameLowering.h AMDGPU: Remove SIPrepareScratchRegs 2015-11-30 21:15:53 +00:00
SIInsertWaits.cpp AMDGPU/SI: Remove ending s_endpgm from non-void functions 2016-01-13 17:23:12 +00:00
SIInstrFormats.td AMDGPU/SI: Add 64-bit versions of v_nop and v_clrexcp 2015-10-06 15:57:53 +00:00
SIInstrInfo.cpp AMDGPU/SI: Add SI Machine Scheduler 2016-01-13 16:10:10 +00:00
SIInstrInfo.h AMDGPU/SI: Add SI Machine Scheduler 2016-01-13 16:10:10 +00:00
SIInstrInfo.td AMDGPU/SI: Fix commuting of 32-bit VOPC instructions 2016-01-27 15:53:52 +00:00
SIInstructions.td AMDGPU: Tidy minor td file issues 2016-01-26 04:49:22 +00:00
SIIntrinsics.td AMDGPU: Remove old sample intrinsics 2016-01-26 04:38:08 +00:00
SIISelLowering.cpp Refactor backend diagnostics for unsupported features 2016-01-27 17:30:33 +00:00
SIISelLowering.h AMDGPU: Remove old sample intrinsics 2016-01-26 04:38:08 +00:00
SILoadStoreOptimizer.cpp
SILowerControlFlow.cpp AMDGPU: Fix adding redundant m0 uses 2015-10-21 22:37:51 +00:00
SILowerI1Copies.cpp
SIMachineFunctionInfo.cpp AMDGPU/SI: Add s_waitcnt at the end of non-void functions 2016-01-13 17:23:09 +00:00
SIMachineFunctionInfo.h AMDGPU/SI: Add s_waitcnt at the end of non-void functions 2016-01-13 17:23:09 +00:00
SIMachineScheduler.cpp RegisterPressure: Make liveness tracking subregister aware 2016-01-20 00:23:26 +00:00
SIMachineScheduler.h RegisterPressure: Make liveness tracking subregister aware 2016-01-20 00:23:26 +00:00
SIRegisterInfo.cpp AMDGPU/SI: Add SI Machine Scheduler 2016-01-13 16:10:10 +00:00
SIRegisterInfo.h AMDGPU/SI: Add SI Machine Scheduler 2016-01-13 16:10:10 +00:00
SIRegisterInfo.td AMDGPU: Make v32i8/v64i8 illegal types 2016-01-26 04:43:48 +00:00
SISchedule.td
SIShrinkInstructions.cpp AMDGPU: Add MachineInstr overloads for instruction format tests 2015-10-20 04:35:43 +00:00
SITypeRewriter.cpp AMDGPU/SI: Fix crash when inline assembly is used in a graphics shader 2016-01-06 22:01:04 +00:00
VIInstrFormats.td
VIInstructions.td AMDGPU/SI: Move VI SMEM pattern back into VIInstructions.td 2016-01-04 20:23:10 +00:00