Files
clang-p2996/llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm-debug.ll
Pierre van Houtryve d656b20632 [AMDGPU][SplitModule] Cleanup CallsExternal Handling (#106528)
- Don't treat inline ASM as indirect calls
- Remove call to alias testing, which was broken (only working by pure
luck right now) and isn't needed anyway. GlobalOpt should take care of
them for us.
2024-10-11 08:37:20 +02:00

29 lines
700 B
LLVM

; REQUIRES: asserts
; RUN: llvm-split -o %t %s -j 2 -mtriple amdgcn-amd-amdhsa -amdgpu-module-splitting-no-externalize-address-taken -debug-only=amdgpu-split-module 2>&1 | FileCheck %s
; CHECK: [!] callgraph is incomplete for ptr @A - analyzing function
; CHECK-NEXT: found inline assembly
; CHECK-NOT: indirect call found
@addrthief = global [2 x ptr] [ptr @HelperA, ptr @HelperB]
define internal void @HelperA() {
ret void
}
define internal void @HelperB() {
ret void
}
define amdgpu_kernel void @A() {
call void asm sideeffect "v_mov_b32 v0, 7", "~{v0}"()
call void @HelperA()
ret void
}
define amdgpu_kernel void @B(ptr %out) {
call void @HelperB()
ret void
}