diff options
| author | Wei Ding <wei.ding2@amd.com> | 2017-02-22 20:05:06 +0000 |
|---|---|---|
| committer | Wei Ding <wei.ding2@amd.com> | 2017-02-22 20:05:06 +0000 |
| commit | 4991d3570f254ef2ddba14a6b9638998227b5199 (patch) | |
| tree | 3ecd9711cc6bb6fffa7685a2c7d7697d707be087 /llvm/lib/Target | |
| parent | 4ae5ec8268a54d698af32c0309526c50a5443d11 (diff) | |
| download | bcm5719-llvm-4991d3570f254ef2ddba14a6b9638998227b5199.tar.gz bcm5719-llvm-4991d3570f254ef2ddba14a6b9638998227b5199.zip | |
AMDGPU : Update TrapCode based on Trap Handler ABI.
Differential Revision: http://reviews.llvm.org/D30232
llvm-svn: 295867
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h | 16 | ||||
| -rw-r--r-- | llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/Target/AMDGPU/SIInstrInfo.td | 6 | ||||
| -rw-r--r-- | llvm/lib/Target/AMDGPU/SIInstructions.td | 4 |
4 files changed, 16 insertions, 12 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h index 8f1aaa1d893..1b874b97b27 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h +++ b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h @@ -74,15 +74,19 @@ public: TrapHandlerAbiHsa = 1 }; - enum TrapCode { - TrapCodeBreakPoint = 0, - TrapCodeLLVMTrap = 1, - TrapCodeLLVMDebugTrap = 2, - TrapCodeHSADebugTrap = 3 + enum TrapID { + TrapIDHardwareReserved = 0, + TrapIDHSADebugTrap = 1, + TrapIDLLVMTrap = 2, + TrapIDLLVMDebugTrap = 3, + TrapIDDebugBreakpoint = 7, + TrapIDDebugReserved8 = 8, + TrapIDDebugReservedFE = 0xfe, + TrapIDDebugReservedFF = 0xff }; enum TrapRegValues { - TrapCodeLLVMTrapRegValue = 1 + LLVMTrapHandlerRegValue = 1 }; protected: diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp index 83ee856b4fe..b266d16a92c 100644 --- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp +++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp @@ -1804,7 +1804,7 @@ MachineBasicBlock *SITargetLowering::EmitInstrWithCustomInserter( .addReg(AMDGPU::SGPR0_SGPR1, RegState::Implicit); } else { switch (TrapType) { - case SISubtarget::TrapCodeLLVMTrap: + case SISubtarget::TrapIDLLVMTrap: BuildMI(*BB, MI, DL, TII->get(AMDGPU::S_ENDPGM)); break; case SISubtarget::TrapCodeLLVMDebugTrap: { diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.td b/llvm/lib/Target/AMDGPU/SIInstrInfo.td index 279745db467..e832a0658d1 100644 --- a/llvm/lib/Target/AMDGPU/SIInstrInfo.td +++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.td @@ -632,9 +632,9 @@ def DSTOMOD { int NONE = 0; } -def TRAPTYPE { - int LLVM_TRAP = 1; - int LLVM_DEBUG_TRAP = 2; +def TRAPID{ + int LLVM_TRAP = 2; + int LLVM_DEBUG_TRAP = 3; } //===----------------------------------------------------------------------===// diff --git a/llvm/lib/Target/AMDGPU/SIInstructions.td b/llvm/lib/Target/AMDGPU/SIInstructions.td index 4bd759012a3..5d147b24ec9 100644 --- a/llvm/lib/Target/AMDGPU/SIInstructions.td +++ b/llvm/lib/Target/AMDGPU/SIInstructions.td @@ -391,12 +391,12 @@ def SI_PC_ADD_REL_OFFSET : SPseudoInstSI < let Predicates = [isGCN] in { def : Pat< (trap), - (S_TRAP_PSEUDO TRAPTYPE.LLVM_TRAP) + (S_TRAP_PSEUDO TRAPID.LLVM_TRAP) >; def : Pat< (debugtrap), - (S_TRAP_PSEUDO TRAPTYPE.LLVM_DEBUG_TRAP) + (S_TRAP_PSEUDO TRAPID.LLVM_DEBUG_TRAP) >; def : Pat< |

