summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mangler.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Create the new linker type "linker_private_weak_def_auto".Bill Wendling2010-08-201-1/+2
| | | | | | | | | | | 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). llvm-svn: 111684
* Implement the "linker_private_weak" linkage type. This will be used forBill Wendling2010-07-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 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. llvm-svn: 107433
* Revert r107205 and r107207.Bill Wendling2010-06-291-5/+0
| | | | llvm-svn: 107215
* Introducing the "linker_weak" linkage type. This will be used for Objective-CBill Wendling2010-06-291-0/+5
| | | | | | | | | | | | | | | | | | | 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". llvm-svn: 107205
* Add support for assemblers that don't support periods in a nameMon P Wang2010-04-291-5/+8
| | | | llvm-svn: 102594
* Rip out the 'is temporary' nonsense from the MCContext interface toChris Lattner2010-03-301-4/+1
| | | | | | | | | 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. llvm-svn: 99902
* move fastcall/stdcall mangling up into Mangler.Chris Lattner2010-03-121-9/+59
| | | | llvm-svn: 98384
* finally give Mangler a getSymbol method, which returns an MCSymbolChris Lattner2010-03-121-0/+13
| | | | | | for a global instead of messing around with string buffers. llvm-svn: 98366
* make the mangler take an MCContext instead of an MAI.Chris Lattner2010-03-121-4/+6
| | | | | | No functionality change. llvm-svn: 98363
* stop the CBE from using Mangler::appendMangledName, which is a private ↵Chris Lattner2010-01-171-2/+2
| | | | | | function, it is mangling types, which don't matter how they are done. llvm-svn: 93692
* Get MCSymbol out of the mangling business, and move all the logicChris Lattner2010-01-171-4/+95
| | | | | | | | | | | 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. llvm-svn: 93690
* factor this code better how that the string version of getNameWithPrefixChris Lattner2010-01-171-28/+8
| | | | | | takes a twine. llvm-svn: 93687
* now that mangler is in libtarget, it can use MCAsmInfo instead of clientsChris Lattner2010-01-171-21/+25
| | | | | | having to pass various fields from it in. Simplify. llvm-svn: 93686
* move the mangler into libtarget from vmcore.Chris Lattner2010-01-161-0/+104
llvm-svn: 93664
OpenPOWER on IntegriCloud