fdbea5107b5a8249421fd5e603a31f40f05ea25f |
|
29-Jul-2013 |
Nico Rieck <nico.rieck@gmail.com> |
Use proper section suffix for COFF weak symbols 32-bit symbols have "_" as global prefix, but when forming the name of COMDAT sections this prefix is ignored. The current behavior assumes that this prefix is always present which is not the case for 64-bit and names are truncated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
99cb622041a0839c7dfcf0263c5102a305a0fdb5 |
|
18-Jun-2013 |
Bill Wendling <isanbard@gmail.com> |
Use pointers to the MCAsmInfo and MCRegInfo. Someone may want to do something crazy, like replace these objects if they change or something. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184175 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
cc5a882c96af6e36bc029b7ff69f62f94e2d041d |
|
29-May-2013 |
Bill Wendling <isanbard@gmail.com> |
Don't reach into the middle of TargetMachine and cache one of its ivars. Not only does this break encapsulation, it's gross. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182876 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
8caffc1e75b34d97bbb225322243e5bad0f379bf |
|
19-Apr-2013 |
Anton Korobeynikov <asl@math.spbu.ru> |
Do not mangle in MS-way the globals with magic \001 in the name. Based on the patch by David Nadlinger! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Use the new script to sort the includes of every file under lib. Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
3574eca1b02600bac4e625297f4ecf745f4c4f32 |
|
08-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Move TargetData to DataLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
c5252da873d547a19069eaf9030fec203f128f66 |
|
14-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix Doxygen issues: * wrap code blocks in \code ... \endcode; * refer to parameter names in paragraphs correctly (\arg is not what most people want -- it starts a new paragraph); * use \param instead of \arg to document parameters in order to be consistent with the rest of the codebase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/Mangler.cpp
|
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
|