mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
[AMDGPU] Fix compilation failure when IR contains comdat
Remove a useless SwitchSection which also causes compilation failure when IR contains comdat. The SwitchSection is useless because the current section is already correct text section for the function therefore no need to switch. It causes compilation failure for comdat because functions with comdat has specific text section, not the default .text section. Since HIP uses comdat, this bug caused failures for HIP. Differential Revision: https://reviews.llvm.org/D46770 llvm-svn: 332137
This commit is contained in:
parent
0a4f88e840
commit
be274cfd1b
@ -197,8 +197,6 @@ void AMDGPUAsmPrinter::EmitFunctionBodyStart() {
|
||||
amd_kernel_code_t KernelCode;
|
||||
if (STM.isAmdCodeObjectV2(*MF)) {
|
||||
getAmdKernelCode(KernelCode, CurrentProgramInfo, *MF);
|
||||
|
||||
OutStreamer->SwitchSection(getObjFileLowering().getTextSection());
|
||||
getTargetStreamer()->EmitAMDKernelCodeT(KernelCode);
|
||||
}
|
||||
|
||||
|
19
test/CodeGen/AMDGPU/comdat.ll
Normal file
19
test/CodeGen/AMDGPU/comdat.ll
Normal file
@ -0,0 +1,19 @@
|
||||
; RUN: llc -mtriple amdgcn-amd-amdhsa -filetype=obj <%s \
|
||||
; RUN: | llvm-readobj -symbols - | FileCheck %s
|
||||
|
||||
; CHECK: Name: func1
|
||||
; CHECK: Section: .text.func1
|
||||
|
||||
; CHECK: Name: func2
|
||||
; CHECK: Section: .text.func2
|
||||
|
||||
$func1 = comdat any
|
||||
$func2 = comdat any
|
||||
|
||||
define amdgpu_kernel void @func1() local_unnamed_addr comdat {
|
||||
ret void
|
||||
}
|
||||
|
||||
define amdgpu_kernel void @func2() local_unnamed_addr comdat {
|
||||
ret void
|
||||
}
|
Loading…
Reference in New Issue
Block a user