diff options
author | Justin Fargnoli <jfargnoli@nvidia.com> | 2024-10-10 12:57:43 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-10 12:57:43 -0700 |
commit | d832a1c744fddad93ec4d8d2739c2a49a3623e02 (patch) | |
tree | f30253a910f76c5586f380e4b53a1e10f7b392ec /lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp | |
parent | a4916d200518ac077be93995af18bd80fcb89cc2 (diff) | |
download | llvm-d832a1c744fddad93ec4d8d2739c2a49a3623e02.zip llvm-d832a1c744fddad93ec4d8d2739c2a49a3623e02.tar.gz llvm-d832a1c744fddad93ec4d8d2739c2a49a3623e02.tar.bz2 |
[NVPTX] Only run LowerUnreachable when necessary (#109868)
Before CUDA 12.3 `ptxas` did not recognize that the trap instruction
terminates a basic block. Instead, it would assume that control flow
continued to the next instruction. The next instruction could be in the
block that's lexically below it. This would lead to phantom CFG edges
being created within ptxas.
[NVPTX: Lower unreachable to exit to allow ptxas to accurately
reconstruct the
CFG.](https://github.com/llvm/llvm-project/commit/1ee4d880e8760256c606fe55b7af85a4f70d006d)
added the LowerUnreachable pass to NVPTX to work around this. Several
other WAR patches followed.
This bug in `ptxas` was fixed in CUDA 12.3 and is thus impossible to
encounter when targeting PTX ISA v8.3+
This commit reverts the WARs for the `ptxas` bug when targeting PTX ISA
v8.3+
CC @maleadt
Diffstat (limited to 'lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp')
0 files changed, 0 insertions, 0 deletions