diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-12-05 05:19:12 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-12-05 05:19:12 +0000 |
commit | 9155b1781508a5f0d3b0c5103dfe966222fe3dc3 (patch) | |
tree | 9c9f534be98e5e6e0162ce9edb36a7c5cb830511 /test/CodeGen | |
parent | 87234703e884cde21164aa93758ff1fb9cd95245 (diff) | |
download | llvm-9155b1781508a5f0d3b0c5103dfe966222fe3dc3.tar.gz llvm-9155b1781508a5f0d3b0c5103dfe966222fe3dc3.tar.bz2 llvm-9155b1781508a5f0d3b0c5103dfe966222fe3dc3.tar.xz |
Hide the stub created for MO_ExternalSymbol too.
given
declare void @llvm.memset.p0i8.i32(i8* nocapture, i8, i32, i32, i1)
declare void @foo()
define void @bar() {
call void @foo()
call void @llvm.memset.p0i8.i32(i8* null, i8 0, i32 188, i32 1, i1 false)
ret void
}
We used to produce
L_foo$stub:
.indirect_symbol _foo
.ascii "\364\364\364\364\364"
_memset$stub:
.indirect_symbol _memset
.ascii "\364\364\364\364\364"
We not produce a private stub for memset too.
Stubs are not needed with recent linkers, but we still produce them for darwin8.
Thanks to David Fang for confirming that gcc used to do this too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196468 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen')
-rw-r--r-- | test/CodeGen/X86/memset-2.ll | 4 | ||||
-rw-r--r-- | test/CodeGen/X86/sibcall-5.ll | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/test/CodeGen/X86/memset-2.ll b/test/CodeGen/X86/memset-2.ll index d0a3c7a74b..a87ef2e15a 100644 --- a/test/CodeGen/X86/memset-2.ll +++ b/test/CodeGen/X86/memset-2.ll @@ -5,7 +5,7 @@ declare void @llvm.memset.i32(i8*, i8, i32, i32) nounwind define fastcc void @t1() nounwind { entry: ; CHECK-LABEL: t1: -; CHECK: calll _memset +; CHECK: calll L_memset$stub call void @llvm.memset.p0i8.i32(i8* null, i8 0, i32 188, i32 1, i1 false) unreachable } @@ -13,7 +13,7 @@ entry: define fastcc void @t2(i8 signext %c) nounwind { entry: ; CHECK-LABEL: t2: -; CHECK: calll _memset +; CHECK: calll L_memset$stub call void @llvm.memset.p0i8.i32(i8* undef, i8 %c, i32 76, i32 1, i1 false) unreachable } diff --git a/test/CodeGen/X86/sibcall-5.ll b/test/CodeGen/X86/sibcall-5.ll index 9424b61e36..c04af234b1 100644 --- a/test/CodeGen/X86/sibcall-5.ll +++ b/test/CodeGen/X86/sibcall-5.ll @@ -8,7 +8,7 @@ define double @foo(double %a) nounwind readonly ssp { entry: ; X32-LABEL: foo: -; X32: jmp _sin$stub +; X32: jmp L_sin$stub ; X64-LABEL: foo: ; X64: jmp _sin @@ -18,7 +18,7 @@ entry: define float @bar(float %a) nounwind readonly ssp { ; X32-LABEL: bar: -; X32: jmp _sinf$stub +; X32: jmp L_sinf$stub ; X64-LABEL: bar: ; X64: jmp _sinf @@ -27,9 +27,9 @@ entry: ret float %0 } -; X32-LABEL: _sin$stub: +; X32-LABEL: L_sin$stub: ; X32-NEXT: .indirect_symbol _sin -; X32-LABEL: _sinf$stub: +; X32-LABEL: L_sinf$stub: ; X32-NEXT: .indirect_symbol _sinf declare float @sinf(float) nounwind readonly |