summaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
AgeCommit message (Collapse)Author
2011-02-21Fix to correctly support attribute((section("__DATA, __common"))).Stuart Hastings
Radar 9012638. llvm-svn: 126127
2011-02-18Reapply r114997 now that the buildbots have been updated.Bill Wendling
llvm-svn: 125960
2011-02-14Switch llvm to using comdats. For now always use groups with a singleRafael Espindola
section. llvm-svn: 125526
2011-01-23Delay the creation of eh_frame so that the user can change the defaults.Rafael Espindola
Add support for SHT_X86_64_UNWIND. llvm-svn: 124059
2011-01-23Remove more duplicated code.Rafael Espindola
llvm-svn: 124056
2011-01-23Remove duplicated code.Rafael Espindola
llvm-svn: 124054
2010-12-10Fixed version of 121434 with no new memory leaks.Rafael Espindola
llvm-svn: 121471
2010-12-10Revert my previous patch to make the valgrind bots happy.Rafael Espindola
llvm-svn: 121461
2010-12-09Initial support for the cfi directives. This is just enough to getRafael Espindola
f: .cfi_startproc nop .cfi_endproc assembled (on ELF). llvm-svn: 121434
2010-11-09Fixed version of 118639 with an extra assert to catch similar problemsRafael Espindola
earlier. Implicit bool -> int conversions are evil! llvm-svn: 118651
2010-10-27COFF: Add IMAGE_SCN_MEM_READ to text sections.Michael J. Spencer
There are currently 100 references to COFF::IMAGE_SCN in 6 files and 11 different functions. Section to attribute mapping really needs to happen in one place to avoid problems like this. llvm-svn: 117473
2010-10-27Fix whitespace.Michael J. Spencer
llvm-svn: 117472
2010-10-19lib/CodeGen/TargetLoweringObjectFileImpl.cpp: Tweak to emit ↵NAKAMURA Takumi
".{section}${name}" instead of ".{section}$linkonce_{name}" for linkonce sections. It seems GNU ld/PECOFF relies on section names, linking with g++'s libstdc++.a would fail. llvm-svn: 116791
2010-10-08Do not check that the bodies of two defs of same linkonce global are the same.Anton Korobeynikov
Such a check does not make any sense in presense of inlining and other compiler-dependent stuff. This should fix bunch of warnings on mingw32. llvm-svn: 116113
2010-09-28Revert r114997. It was causing a failure on darwin10-selfhost.Bill Wendling
llvm-svn: 115002
2010-09-28Fix a FIXME. _foo.eh symbols are currently always exported so that the linkerBill Wendling
knows about them. This is not necessary on 10.6 and later. llvm-svn: 114997
2010-09-27the latest assembler that runs on powerpc 10.4 machines doesn'tChris Lattner
support aligned comm. Detect when compiling for 10.4 and don't emit an alignment for comm. THis will hopefully fix PR8198. llvm-svn: 114817
2010-08-30two changes:Chris Lattner
1) nuke ConstDataCoalSection, which is dead. 2) revise my previous patch for rdar://8018335, which was completely wrong. Specifically, it doesn't make sense to mark __TEXT,__const_coal as PURE_INSTRUCTIONS, because it is for readonly data. templates (it turns out) go to const_coal_nt. The real fix for rdar://8018335 was to give ConstTextCoalSection a section kind of ReadOnly instead of Text. llvm-svn: 112496
2010-07-15fix the definitions of ConstTextCoalSection/ConstDataCoalSectionChris Lattner
to keep "Text" in sync with the "pure instructions" section attribute. Lack of this attribute was preventing the assembler from emitting multibyte noops instructions for templates (and inlines, and other coalesced stuff) and was causing the assembler to mismatch .o files. This fixes rdar://8018335 llvm-svn: 108461
2010-07-06Fix a major regression on COFF targets introduced by r103267: 'discardable' ↵Anton Korobeynikov
section means that it is used only during the program load and can be discarded afterwards. This way *only* debug sections can be discarded, but not the opposite. Seems like the copy-and-pasto from ELF code, since there it contains the reverse flag ('alloc'). llvm-svn: 107658
2010-07-01MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by MichaelDaniel Dunbar
Spencer! llvm-svn: 107418
2010-06-29Revert r107205 and r107207.Bill Wendling
llvm-svn: 107215
2010-06-29Introducing the "linker_weak" linkage type. This will be used for Objective-CBill Wendling
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
2010-05-25Add support for initialized global data for darwin tls. Update commentsEric Christopher
and testcases accordingly. llvm-svn: 104635
2010-05-22Add full bss data support for darwin tls variables.Eric Christopher
llvm-svn: 104414
2010-05-17More data/parsing support for tls directives. Add a few more testcasesEric Christopher
and cleanup comments as well. llvm-svn: 103985
2010-05-17Add some section and constant support for darwin TLS.Eric Christopher
llvm-svn: 103974
2010-05-07add COFF support for COMDAT sections, patch by Nathan Jeffords!Chris Lattner
llvm-svn: 103304
2010-05-07switch MCSectionCOFF from a syntactic to semantic representation,Chris Lattner
patch by Peter Housel! llvm-svn: 103267
2010-04-13add llvm codegen support for -ffunction-sections and -fdata-sections,Chris Lattner
patch by Sylvere Teissier! llvm-svn: 101106
2010-04-08delete a forwarding function.Chris Lattner
llvm-svn: 100815
2010-04-08move elf section uniquing to MCContext. Along the wayChris Lattner
merge XCore's section into MCSectionELF llvm-svn: 100812
2010-04-08remove the TargetLoweringObjectFileMachO::getMachoSectionChris Lattner
api and update clients to use MCContext instead. llvm-svn: 100808
2010-04-08move macho section uniquing from MCParser and TLOF to MCContext whereChris Lattner
the compiler and asmparser now unique to the same sections. This fixes rdar://7835021. llvm-svn: 100807
2010-04-07rename llvm::llvm_report_error -> llvm::report_fatal_errorChris Lattner
llvm-svn: 100709
2010-03-30Rip out the 'is temporary' nonsense from the MCContext interface toChris Lattner
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
2010-03-15Now that the default for Darwin platforms is to place the LSDA into the TEXTBill Wendling
section, remove the target-specific code that performs this. llvm-svn: 98580
2010-03-15use Mang->getSymbol() more.Chris Lattner
llvm-svn: 98577
2010-03-15fix MCSectionELF to not leak memory, just like I did for MCSymbol.Chris Lattner
MCSectionMachO is already fine (yay for fixed size arrays?), MCSectionCOFF still leaks. llvm-svn: 98537
2010-03-11fix a fixme in TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner
where we used ot create an MCSymbol for ".". Now emit an assembler temporary label and reference it instead of "." textually. rdar://7739457 llvm-svn: 98292
2010-03-11rename getSymbolForDwarf* to getExprForDwarf* since it returnsChris Lattner
an MCExpr and not an MCSymbol. Change it to take an MCStreamer, which is currently unused. No functionality change. llvm-svn: 98278
2010-03-10Add a bit along with the MCSymbols stored in the MachineModuleInfo maps thatBill Wendling
indicates that an MCSymbol is external or not. (It's true if it's external.) This will be used to specify the correct information to add to non-lazy pointers. That will be explained further when this bit is used. llvm-svn: 98199
2010-03-10move three lowering hooks from MAI to TLOF and make one of themChris Lattner
semantic instead of syntactic. This completes MCization of darwin/x86[-64]! llvm-svn: 98145
2010-03-10set the temporary bit on MCSymbols correctly.Chris Lattner
llvm-svn: 98124
2010-03-07tidy upChris Lattner
llvm-svn: 97895
2010-03-05Don't emit global symbols into the (__TEXT,__ustring) section on Darwin. ThisCharles Davis
is a workaround for <rdar://problem/7672401/> (which I filed). This let's us build Wine on Darwin, and it gets the Qt build there a little bit further (so Doug says). llvm-svn: 97845
2010-03-03Revert...Bill Wendling
--- Reverse-merging r97592 into '.': U lib/CodeGen/TargetLoweringObjectFileImpl.cpp llvm-svn: 97657
2010-03-02Okay. One last attempt:Bill Wendling
Place the LSDA into the TEXT section on Mach-O. This saves space. llvm-svn: 97592
2010-02-27The TType is always absptr on Mach-O...at least for now.Bill Wendling
llvm-svn: 97295
2010-02-21It turned out that we failed to emit proper symbol stubs on non-x86/darwin ↵Anton Korobeynikov
for ages (we emitted a reference to a stub, but no stub was emitted). The code inside x86-32/macho target objfile lowering should actually be the generic one - move it there. This (I really, really hope) should fix EH issues on ppc/darwin and arm/darwin. llvm-svn: 96755