diff options
author | Reid Kleckner <rnk@google.com> | 2017-10-10 00:57:36 +0000 |
---|---|---|
committer | Reid Kleckner <rnk@google.com> | 2017-10-10 00:57:36 +0000 |
commit | 726d93c06ce9c05a0601a8c0dc6ed49d2150c1e6 (patch) | |
tree | b6a599221877810c55c4811f64063f4d0317d568 /test/CodeGen/X86/GlobalISel | |
parent | 520952c51d50ff6bd8aaa0955f06011986ea3ebd (diff) | |
download | llvm-726d93c06ce9c05a0601a8c0dc6ed49d2150c1e6.tar.gz |
[MC] Suppress .Lcfi labels when emitting textual assembly
Summary:
This suppresses the generation of .Lcfi labels in our textual assembler.
It was annoying that this generated cascading .Lcfi labels:
llc foo.ll -o - | llvm-mc | llvm-mc
After three trips through MCAsmStreamer, we'd have three labels in the
output when none are necessary. We should only bother creating the
labels and frame data when making a real object file.
This supercedes D38605, which moved the entire .seh_ implementation into
MCObjectStreamer.
This has the advantage that we do more checking when emitting textual
assembly, as a minor efficiency cost. Outputting textual assembly is not
performance critical, so this shouldn't matter.
Reviewers: majnemer, MatzeB
Subscribers: qcolombet, nemanjai, javed.absar, eraman, hiraditya, JDevlieghere, llvm-commits
Differential Revision: https://reviews.llvm.org/D38638
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315259 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/GlobalISel')
-rw-r--r-- | test/CodeGen/X86/GlobalISel/add-scalar.ll | 3 | ||||
-rw-r--r-- | test/CodeGen/X86/GlobalISel/brcond.ll | 1 | ||||
-rw-r--r-- | test/CodeGen/X86/GlobalISel/callingconv.ll | 24 | ||||
-rw-r--r-- | test/CodeGen/X86/GlobalISel/frameIndex.ll | 1 |
4 files changed, 0 insertions, 29 deletions
diff --git a/test/CodeGen/X86/GlobalISel/add-scalar.ll b/test/CodeGen/X86/GlobalISel/add-scalar.ll index 3222848ef46..64a6313023b 100644 --- a/test/CodeGen/X86/GlobalISel/add-scalar.ll +++ b/test/CodeGen/X86/GlobalISel/add-scalar.ll @@ -11,12 +11,9 @@ define i64 @test_add_i64(i64 %arg1, i64 %arg2) { ; X32-LABEL: test_add_i64: ; X32: # BB#0: ; X32-NEXT: pushl %ebp -; X32-NEXT: .Lcfi0: ; X32-NEXT: .cfi_def_cfa_offset 8 -; X32-NEXT: .Lcfi1: ; X32-NEXT: .cfi_offset %ebp, -8 ; X32-NEXT: movl %esp, %ebp -; X32-NEXT: .Lcfi2: ; X32-NEXT: .cfi_def_cfa_register %ebp ; X32-NEXT: movl 16(%ebp), %eax ; X32-NEXT: movl 20(%ebp), %edx diff --git a/test/CodeGen/X86/GlobalISel/brcond.ll b/test/CodeGen/X86/GlobalISel/brcond.ll index 463c79b9727..917ee6f5bd8 100644 --- a/test/CodeGen/X86/GlobalISel/brcond.ll +++ b/test/CodeGen/X86/GlobalISel/brcond.ll @@ -21,7 +21,6 @@ define i32 @test_1(i32 %a, i32 %b, i32 %tValue, i32 %fValue) { ; X32-LABEL: test_1: ; X32: # BB#0: # %entry ; X32-NEXT: pushl %eax -; X32-NEXT: .Lcfi0: ; X32-NEXT: .cfi_def_cfa_offset 8 ; X32-NEXT: movl {{[0-9]+}}(%esp), %eax ; X32-NEXT: cmpl %eax, {{[0-9]+}}(%esp) diff --git a/test/CodeGen/X86/GlobalISel/callingconv.ll b/test/CodeGen/X86/GlobalISel/callingconv.ll index 9a02c608675..4100a7217ac 100644 --- a/test/CodeGen/X86/GlobalISel/callingconv.ll +++ b/test/CodeGen/X86/GlobalISel/callingconv.ll @@ -113,7 +113,6 @@ define <8 x i32> @test_v8i32_args(<8 x i32> %arg1, <8 x i32> %arg2) { ; X32-LABEL: test_v8i32_args: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi0: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: movups 16(%esp), %xmm1 ; X32-NEXT: movaps %xmm2, %xmm0 @@ -133,7 +132,6 @@ define void @test_trivial_call() { ; X32-LABEL: test_trivial_call: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi1: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: calll trivial_callee ; X32-NEXT: addl $12, %esp @@ -142,7 +140,6 @@ define void @test_trivial_call() { ; X64-LABEL: test_trivial_call: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi0: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: callq trivial_callee ; X64-NEXT: popq %rax @@ -156,7 +153,6 @@ define void @test_simple_arg_call(i32 %in0, i32 %in1) { ; X32-LABEL: test_simple_arg_call: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi2: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: movl 16(%esp), %eax ; X32-NEXT: movl 20(%esp), %ecx @@ -169,7 +165,6 @@ define void @test_simple_arg_call(i32 %in0, i32 %in1) { ; X64-LABEL: test_simple_arg_call: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi1: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: movl %edi, %eax ; X64-NEXT: movl %esi, %edi @@ -186,7 +181,6 @@ define void @test_simple_arg8_call(i32 %in0) { ; X32-LABEL: test_simple_arg8_call: ; X32: # BB#0: ; X32-NEXT: subl $44, %esp -; X32-NEXT: .Lcfi3: ; X32-NEXT: .cfi_def_cfa_offset 48 ; X32-NEXT: movl 48(%esp), %eax ; X32-NEXT: movl %eax, (%esp) @@ -204,7 +198,6 @@ define void @test_simple_arg8_call(i32 %in0) { ; X64-LABEL: test_simple_arg8_call: ; X64: # BB#0: ; X64-NEXT: subq $24, %rsp -; X64-NEXT: .Lcfi2: ; X64-NEXT: .cfi_def_cfa_offset 32 ; X64-NEXT: movl %edi, (%rsp) ; X64-NEXT: movl %edi, 8(%rsp) @@ -225,7 +218,6 @@ define i32 @test_simple_return_callee() { ; X32-LABEL: test_simple_return_callee: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi4: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: movl $5, %eax ; X32-NEXT: movl %eax, (%esp) @@ -237,7 +229,6 @@ define i32 @test_simple_return_callee() { ; X64-LABEL: test_simple_return_callee: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi3: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: movl $5, %edi ; X64-NEXT: callq simple_return_callee @@ -254,7 +245,6 @@ define <8 x i32> @test_split_return_callee(<8 x i32> %arg1, <8 x i32> %arg2) { ; X32-LABEL: test_split_return_callee: ; X32: # BB#0: ; X32-NEXT: subl $44, %esp -; X32-NEXT: .Lcfi5: ; X32-NEXT: .cfi_def_cfa_offset 48 ; X32-NEXT: movaps %xmm0, (%esp) # 16-byte Spill ; X32-NEXT: movaps %xmm1, 16(%esp) # 16-byte Spill @@ -269,7 +259,6 @@ define <8 x i32> @test_split_return_callee(<8 x i32> %arg1, <8 x i32> %arg2) { ; X64-LABEL: test_split_return_callee: ; X64: # BB#0: ; X64-NEXT: subq $40, %rsp -; X64-NEXT: .Lcfi4: ; X64-NEXT: .cfi_def_cfa_offset 48 ; X64-NEXT: movaps %xmm0, (%rsp) # 16-byte Spill ; X64-NEXT: movaps %xmm1, 16(%rsp) # 16-byte Spill @@ -289,7 +278,6 @@ define void @test_indirect_call(void()* %func) { ; X32-LABEL: test_indirect_call: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi6: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: calll *16(%esp) ; X32-NEXT: addl $12, %esp @@ -298,7 +286,6 @@ define void @test_indirect_call(void()* %func) { ; X64-LABEL: test_indirect_call: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi5: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: callq *%rdi ; X64-NEXT: popq %rax @@ -312,17 +299,12 @@ define void @test_abi_exts_call(i8* %addr) { ; X32-LABEL: test_abi_exts_call: ; X32: # BB#0: ; X32-NEXT: pushl %ebx -; X32-NEXT: .Lcfi7: ; X32-NEXT: .cfi_def_cfa_offset 8 ; X32-NEXT: pushl %esi -; X32-NEXT: .Lcfi8: ; X32-NEXT: .cfi_def_cfa_offset 12 ; X32-NEXT: pushl %eax -; X32-NEXT: .Lcfi9: ; X32-NEXT: .cfi_def_cfa_offset 16 -; X32-NEXT: .Lcfi10: ; X32-NEXT: .cfi_offset %esi, -12 -; X32-NEXT: .Lcfi11: ; X32-NEXT: .cfi_offset %ebx, -8 ; X32-NEXT: movl 16(%esp), %eax ; X32-NEXT: movb (%eax), %bl @@ -342,9 +324,7 @@ define void @test_abi_exts_call(i8* %addr) { ; X64-LABEL: test_abi_exts_call: ; X64: # BB#0: ; X64-NEXT: pushq %rbx -; X64-NEXT: .Lcfi6: ; X64-NEXT: .cfi_def_cfa_offset 16 -; X64-NEXT: .Lcfi7: ; X64-NEXT: .cfi_offset %rbx, -16 ; X64-NEXT: movb (%rdi), %al ; X64-NEXT: movzbl %al, %ebx @@ -368,7 +348,6 @@ define void @test_variadic_call_1(i8** %addr_ptr, i32* %val_ptr) { ; X32-LABEL: test_variadic_call_1: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi12: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: movl 16(%esp), %eax ; X32-NEXT: movl 20(%esp), %ecx @@ -383,7 +362,6 @@ define void @test_variadic_call_1(i8** %addr_ptr, i32* %val_ptr) { ; X64-LABEL: test_variadic_call_1: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi8: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: movq (%rdi), %rdi ; X64-NEXT: movl (%rsi), %esi @@ -402,7 +380,6 @@ define void @test_variadic_call_2(i8** %addr_ptr, double* %val_ptr) { ; X32-LABEL: test_variadic_call_2: ; X32: # BB#0: ; X32-NEXT: subl $12, %esp -; X32-NEXT: .Lcfi13: ; X32-NEXT: .cfi_def_cfa_offset 16 ; X32-NEXT: movl 16(%esp), %eax ; X32-NEXT: movl 20(%esp), %ecx @@ -421,7 +398,6 @@ define void @test_variadic_call_2(i8** %addr_ptr, double* %val_ptr) { ; X64-LABEL: test_variadic_call_2: ; X64: # BB#0: ; X64-NEXT: pushq %rax -; X64-NEXT: .Lcfi9: ; X64-NEXT: .cfi_def_cfa_offset 16 ; X64-NEXT: movq (%rdi), %rdi ; X64-NEXT: movq (%rsi), %rcx diff --git a/test/CodeGen/X86/GlobalISel/frameIndex.ll b/test/CodeGen/X86/GlobalISel/frameIndex.ll index a9ec94defea..7b2a050f153 100644 --- a/test/CodeGen/X86/GlobalISel/frameIndex.ll +++ b/test/CodeGen/X86/GlobalISel/frameIndex.ll @@ -15,7 +15,6 @@ define i32* @allocai32() { ; X32-LABEL: allocai32: ; X32: # BB#0: ; X32-NEXT: pushl %eax -; X32-NEXT: .Lcfi0: ; X32-NEXT: .cfi_def_cfa_offset 8 ; X32-NEXT: movl %esp, %eax ; X32-NEXT: popl %ecx |