llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-backend-amdgpu Author: Scott Linder (slinder1) <details> <summary>Changes</summary> The verifier ensures function !dbg metadata is unique across the module, so ensure the old nameless function we leave behind doesn't violate this invariant. Removing the function via e.g. eraseFromParent seems like a better option, but doesn't seem to be legal from a FunctionPass. --- Full diff: https://github.com/llvm/llvm-project/pull/126147.diff 2 Files Affected: - (modified) llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp (+1) - (modified) llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll (+3-3) ``````````diff diff --git a/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp b/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp index e9d009baa20af2..09412d1b0f1cc9 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp @@ -132,6 +132,7 @@ class PreloadKernelArgInfo { NF->setAttributes(AL); F.replaceAllUsesWith(NF); F.setCallingConv(CallingConv::C); + F.clearMetadata(); return NF; } diff --git a/llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll b/llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll index fe110cbcafc465..4b47a218f1be45 100644 --- a/llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll +++ b/llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll @@ -1,7 +1,7 @@ -; RUN: not --crash opt -mtriple=amdgcn-amd-amdhsa -mcpu=gfx940 -passes='amdgpu-attributor,function(amdgpu-lower-kernel-arguments)' -amdgpu-kernarg-preload-count=16 -S < %s 2>&1 | FileCheck %s +; RUN: opt -mtriple=amdgcn-amd-amdhsa -mcpu=gfx940 -passes='amdgpu-attributor,function(amdgpu-lower-kernel-arguments)' -amdgpu-kernarg-preload-count=16 -S < %s 2>&1 | FileCheck %s -; CHECK: function declaration may only have a unique !dbg attachment -; CHECK-NEXT: ptr @0 +; CHECK: define amdgpu_kernel void @preload_block_count_x{{.*}} !dbg ![[#]] +; CHECK-NOT: declare void @0{{.*}} !dbg ![[#]] define amdgpu_kernel void @preload_block_count_x(ptr addrspace(1) %out) !dbg !4 { %imp_arg_ptr = call ptr addrspace(4) @llvm.amdgcn.implicitarg.ptr() `````````` </details> https://github.com/llvm/llvm-project/pull/126147 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits