32811bef956e0fae4329e6515420d85f7e510660 |
|
17-Aug-2012 |
Bill Wendling <isanbard@gmail.com> |
Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to make it more consistent with its intended semantics. The `linker_private_weak_def_auto' linkage type was meant to automatically hide globals which never had their addresses taken. It has nothing to do with the `linker_private' linkage type, which outputs the symbols with a `l' (ell) prefix among other things. The intended semantic is more like the `linkonce_odr' linkage type. Change the name of the linkage type to `linkonce_odr_auto_hide'. And therefore changing the semantics so that it produces the correct output for the linker. Note: The old linkage name `linker_private_weak_def_auto' will still parse but is not a synonym for `linkonce_odr_auto_hide'. This should be removed in 4.0. <rdar://problem/11754934> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
3420e7f360dab7712a9ec4f51d233c7e73642ec7 |
|
07-Apr-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Output UTF-8-encoded characters as identifier characters into assembly by default. This is a behaviour configurable in the MCAsmInfo. I've decided to turn it on by default in (possibly optimistic) hopes that most assemblers are reasonably sane. If this proves a problem, switching to default seems reasonable. I'm not sure if this is the opportune place to test, but it seemed good to make sure it was tested somewhere. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e |
|
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
ef1860a117b4a35918eb9793a7b94715e12a3a42 |
|
11-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove std::string version of getNameWithPrefix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
55ae515f9db484125a23429d4906c5edaf9f10d2 |
|
21-Aug-2010 |
Bill Wendling <isanbard@gmail.com> |
Create the new linker type "linker_private_weak_def_auto". It's similar to "linker_private_weak", but it's known that the address of the object is not taken. For instance, functions that had an inline definition, but the compiler decided not to inline it. Note, unlike linker_private and linker_private_weak, linker_private_weak_def_auto may have only default visibility. The symbols are removed by the linker from the final linked image (executable or dynamic library). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
5e721d768254a920b78b9129d79a84c0163cb3f4 |
|
01-Jul-2010 |
Bill Wendling <isanbard@gmail.com> |
Implement the "linker_private_weak" linkage type. This will be used for Objective-C metadata types which should be marked as "weak", but which the linker will remove upon final linkage. However, this linkage isn't specific to Objective-C. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". Currently only supported on Darwin platforms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
07d317711781d8c9268f7d6afcf1ba7eadf1d127 |
|
30-Jun-2010 |
Bill Wendling <isanbard@gmail.com> |
Revert r107205 and r107207. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
207855cff9b4811004b9720f28a5bd0adf3784b7 |
|
29-Jun-2010 |
Bill Wendling <isanbard@gmail.com> |
Introducing the "linker_weak" linkage type. This will be used for Objective-C metadata types which should be marked as "weak", but which the linker will remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
b9a01bcf486814a44098745920d43daaf9f7c260 |
|
29-Apr-2010 |
Mon P Wang <wangmp@apple.com> |
Add support for assemblers that don't support periods in a name git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102594 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
9b97a73dedf736e14b04a3d1a153f10d25b2507b |
|
30-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
Rip out the 'is temporary' nonsense from the MCContext interface to create symbols. It is extremely error prone and a source of a lot of the remaining integrated assembler bugs on x86-64. This fixes rdar://7807601. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
8a29fa6e02c8a76a71f43fc8bf4e51dd12bac4bc |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
move fastcall/stdcall mangling up into Mangler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98384 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
73ff564d65e9c748562c5734d1f72a2a233f0275 |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
finally give Mangler a getSymbol method, which returns an MCSymbol for a global instead of messing around with string buffers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
5ef31a039dbb9c36cfd78442b3554d1b6974ec4c |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make the mangler take an MCContext instead of an MAI. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
0bd58b0e81961313828aa9ac484ab6b0d6c8d970 |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
stop the CBE from using Mangler::appendMangledName, which is a private function, it is mangling types, which don't matter how they are done. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
acd03ae6791fc0fb9f1b05247a1dc082b46b8d8b |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Get MCSymbol out of the mangling business, and move all the logic to Mangler. Now MCSymbol just decides whether to slap quotes around a symbol when printing it. This also fixes some weirdness where two MCSymbols could be created for the same symbol, if one needed to be mangled and got mangled to the other one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
ff240053bfeb1901a70b2f4842e7f46f9278c354 |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
factor this code better how that the string version of getNameWithPrefix takes a twine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93687 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
c0dba723d119adc8c7b49c6d0e97d10eac4428fc |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
now that mangler is in libtarget, it can use MCAsmInfo instead of clients having to pass various fields from it in. Simplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
45111d160cf0910030eeb6a949c69273502e5ad5 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
move the mangler into libtarget from vmcore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|