diff options
| author | Chris Lattner <sabre@nondot.org> | 2009-07-14 18:17:16 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2009-07-14 18:17:16 +0000 |
| commit | 8c9a96b96671b77181f32836d8427e6de1ca5ec1 (patch) | |
| tree | 871751d8e5bb55f7b6f580f86f87ae6e1ec5260c /llvm/test | |
| parent | 4c21caa656839b43f5a1f87a7ca77cfae59937ec (diff) | |
| download | bcm5719-llvm-8c9a96b96671b77181f32836d8427e6de1ca5ec1.tar.gz bcm5719-llvm-8c9a96b96671b77181f32836d8427e6de1ca5ec1.zip | |
Reapply my previous asmprinter changes now with more testing and two
additional bug fixes:
1. The bug that everyone hit was a problem in the asmprinter where it
would remove $stub but keep the L prefix on a name when emitting the
indirect symbol. This is easy to fix by keeping the name of the stub
and the name of the symbol in a StringMap instead of just keeping a
StringSet and trying to reconstruct it late.
2. There was a problem printing the personality function. The current
logic to print out the personality function from the DWARF information
is a bit of a cesspool right now that duplicates a bunch of other
logic in the asm printer. The short version of it is that it depends
on emitting both the L and _ prefix for symbols (at least on darwin)
and until I can untangle it, it is best to switch the mangler back to
emitting both prefixes.
llvm-svn: 75646
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/PowerPC/private.ll | 10 | ||||
| -rw-r--r-- | llvm/test/CodeGen/X86/private-2.ll | 2 |
2 files changed, 5 insertions, 7 deletions
diff --git a/llvm/test/CodeGen/PowerPC/private.ll b/llvm/test/CodeGen/PowerPC/private.ll index a36adf58a8c..30cf938e63b 100644 --- a/llvm/test/CodeGen/PowerPC/private.ll +++ b/llvm/test/CodeGen/PowerPC/private.ll @@ -6,12 +6,10 @@ ; RUN: grep .Lbaz: %t ; RUN: grep lis.*\.Lbaz %t ; RUN: llvm-as < %s | llc -mtriple=powerpc-apple-darwin > %t -; RUN: grep Lfoo: %t -; RUN: grep bl.*\Lfoo %t -; RUN: grep Lbaz: %t -; RUN: grep lis.*\Lbaz %t - -declare void @foo() nounwind +; RUN: grep L_foo: %t +; RUN: grep bl.*\L_foo %t +; RUN: grep L_baz: %t +; RUN: grep lis.*\L_baz %t define private void @foo() nounwind { ret void diff --git a/llvm/test/CodeGen/X86/private-2.ll b/llvm/test/CodeGen/X86/private-2.ll index 689fe34bab1..74781285677 100644 --- a/llvm/test/CodeGen/X86/private-2.ll +++ b/llvm/test/CodeGen/X86/private-2.ll @@ -1,4 +1,4 @@ -; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin10 | grep L_ZZ20 +; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin10 | grep L__ZZ20 ; Quote should be outside of private prefix. ; rdar://6855766x |

