diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/stack-size-section.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/stack-size-section.ll | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/X86/stack-size-section.ll b/llvm/test/CodeGen/X86/stack-size-section.ll index 80fa2ccf6cc..7e7ba5b9d4e 100644 --- a/llvm/test/CodeGen/X86/stack-size-section.ll +++ b/llvm/test/CodeGen/X86/stack-size-section.ll @@ -2,7 +2,7 @@ ; CHECK-LABEL: func1: ; CHECK-NEXT: .Lfunc_begin0: -; CHECK: .section .stack_sizes,"",@progbits +; CHECK: .section .stack_sizes,"o",@progbits ; CHECK-NEXT: .quad .Lfunc_begin0 ; CHECK-NEXT: .byte 8 define void @func1(i32, i32) #0 { @@ -13,7 +13,7 @@ define void @func1(i32, i32) #0 { ; CHECK-LABEL: func2: ; CHECK-NEXT: .Lfunc_begin1: -; CHECK: .section .stack_sizes,"",@progbits +; CHECK: .section .stack_sizes,"o",@progbits ; CHECK-NEXT: .quad .Lfunc_begin1 ; CHECK-NEXT: .byte 24 define void @func2() #0 { @@ -22,6 +22,23 @@ define void @func2() #0 { ret void } +; Check that we still put .stack_sizes into the corresponding COMDAT group if any. +; CHECK: .section .text._Z4fooTIiET_v,"axG",@progbits,_Z4fooTIiET_v,comdat +; CHECK: .section .stack_sizes,"Go",@progbits,_Z4fooTIiET_v,comdat,.text._Z4fooTIiET_v,unique,1 +$_Z4fooTIiET_v = comdat any +define linkonce_odr dso_local i32 @_Z4fooTIiET_v() comdat { + ret i32 0 +} + +; Check that we assign a unique ID to .stack_sizes if it is linked with a unique .text section. +; CHECK: .section .text.func3,"ax",@progbits +; CHECK: .section .stack_sizes,"o",@progbits,.text.func3,unique,2 +define dso_local i32 @func3() section ".text.func3" { + %1 = alloca i32, align 4 + store i32 0, i32* %1, align 4 + ret i32 0 +} + ; CHECK-LABEL: dynalloc: ; CHECK-NOT: .section .stack_sizes define void @dynalloc(i32 %N) #0 { |

