aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/CommandLineTest.cpp
diff options
context:
space:
mode:
authorChangpeng Fang <Changpeng.Fang@amd.com>2022-03-09 10:14:05 -0800
committerChangpeng Fang <Changpeng.Fang@amd.com>2022-03-09 10:14:05 -0800
commit0f20a35b9e4bf4fdc4fb5ff2b5f9beee48081e9c (patch)
tree626a76639a8fe86e35646ff9064a67063d8ad693 /llvm/unittests/Support/CommandLineTest.cpp
parent33fb23f728146cd9a1b8a0bf74c666fb2eeffbb5 (diff)
downloadllvm-0f20a35b9e4bf4fdc4fb5ff2b5f9beee48081e9c.zip
llvm-0f20a35b9e4bf4fdc4fb5ff2b5f9beee48081e9c.tar.gz
llvm-0f20a35b9e4bf4fdc4fb5ff2b5f9beee48081e9c.tar.bz2
AMDGPU: Set up User SGPRs for queue_ptr only when necessary
Summary: In general, we need queue_ptr for aperture bases and trap handling, and user SGPRs have to be set up to hold queue_ptr. In current implementation, user SGPRs are set up unnecessarily for some cases. If the target has aperture registers, queue_ptr is not needed to reference aperture bases. For trap handling, if target suppots getDoorbellID, queue_ptr is also not necessary. Futher, code object version 5 introduces new kernel ABI which passes queue_ptr as an implicit kernel argument, so user SGPRs are no longer necessary for queue_ptr. Based on the trap handling document: https://llvm.org/docs/AMDGPUUsage.html#amdgpu-trap-handler-for-amdhsa-os-v4-onwards-table, llvm.debugtrap does not need queue_ptr, we remove queue_ptr suport for llvm.debugtrap in the backend. Reviewers: sameerds, arsenm Fixes: SWDEV-307189 Differential Revision: https://reviews.llvm.org/D119762
Diffstat (limited to 'llvm/unittests/Support/CommandLineTest.cpp')
0 files changed, 0 insertions, 0 deletions