summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/TargetLoweringObjectFile.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove some dead code and tidy things up now that vectors use ConstantDataVectorChris Lattner2012-02-061-17/+0
| | | | | | instead of always using ConstantVector. llvm-svn: 149912
* C++, CBE, and TLOF support for ConstantDataSequentialChris Lattner2012-01-241-5/+18
| | | | llvm-svn: 148805
* Add 'llvm_unreachable' to passify GCC's understanding of the constraintsChandler Carruth2012-01-101-0/+1
| | | | | | | | of several newly un-defaulted switches. This also helps optimizers (including LLVM's) recognize that every case is covered, and we should assume as much. llvm-svn: 147861
* Remove unnecessary default cases in switches that cover all enum values.David Blaikie2012-01-101-2/+0
| | | | llvm-svn: 147855
* Move global variables in TargetMachine into new TargetOptions class. As an APINick Lewycky2011-12-021-3/+3
| | | | | | | | | | | | change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow. One small functionality change in PTX. PTX had commented out the machine verifier parts in their copy of printAndVerify. That now calls the version in LLVMTargetMachine. Users of PTX who need verification disabled should rely on not passing the command-line flag to enable it. llvm-svn: 145714
* Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc.Evan Cheng2011-07-201-18/+2
| | | | | | | There is still a bit more refactoring left to do in Targets. But we are now very close to fixing all the layering issues in MC. llvm-svn: 135611
* Add MCObjectFileInfo and sink the MCSections initialization code fromEvan Cheng2011-07-201-27/+8
| | | | | | | | TargetLoweringObjectFileImpl down to MCObjectFileInfo. TargetAsmInfo is done to one last method. It's *almost* gone! llvm-svn: 135569
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-181-3/+3
| | | | llvm-svn: 135375
* Fix up TargetLoweringObjectFile ctors to properly initialize fields.Evan Cheng2011-07-131-26/+26
| | | | llvm-svn: 135068
* Use the presence of the __compact_unwind section to indicate that a targetBill Wendling2011-06-231-1/+0
| | | | | | supports compact unwind info instead of having a separate flag indicating this. llvm-svn: 133685
* Add a flag that indicates whether a target supports compact unwind info or not.Bill Wendling2011-06-221-0/+1
| | | | llvm-svn: 133662
* Add a __LD,__compact_unwind section.Bill Wendling2011-06-221-0/+1
| | | | | | | | If the linker supports it, this will hold the CIE and FDE information in a compact format. The implementation of the compact unwinding emission is coming soon. llvm-svn: 133658
* Fix a FIXME by making GlobalVariable::getInitializer() return aJay Foad2011-06-191-2/+2
| | | | | | const Constant *. llvm-svn: 133400
* Remove a flag that would set the ".eh" symbol as .globl. MachO was the only oneBill Wendling2011-05-051-1/+0
| | | | | | | | who used this flag, and it now emits CFI and doesn't emit this anymore. All other targets left this flag "false". <rdar://problem/8486371> llvm-svn: 130918
* GCC uses a different encoding of pointers in the FDE when usingRafael Espindola2011-05-011-1/+1
| | | | | | -fno-dwarf2-cfi-asm. Implement the same behavior. llvm-svn: 130637
* Remove unnecessary argument.Rafael Espindola2011-04-271-1/+1
| | | | llvm-svn: 130343
* Rename getPersonalityPICSymbol to getCFIPersonalitySymbol, document it, andRafael Espindola2011-04-271-5/+4
| | | | | | | | | | | | | | | | | | give it a bit more responsibility. Also implement it for MachO. If hacked to use cfi, 32 bit MachO will produce .cfi_personality 155, L___gxx_personality_v0$non_lazy_ptr and 64 bit will produce .cfi_presonality ___gxx_personality_v0 The general idea is that .cfi_personality gets passed the final symbol. It is up to codegen to produce it if using indirect representation (like 32 bit MachO), but it is up to MC to decide which relocations to create. llvm-svn: 130341
* Remove unused arguments.Rafael Espindola2011-04-201-3/+2
| | | | llvm-svn: 129844
* MSVC needs the return 0 to compile.Francois Pichet2011-04-161-0/+1
| | | | llvm-svn: 129640
* Put each personality function in a section. This fixes the gnu ld warning:Rafael Espindola2011-04-161-0/+12
| | | | | | error in foo.o; no .eh_frame_hdr table will be created. llvm-svn: 129635
* Add 129518 back with a fix for when we are producing eh just because of ↵Rafael Espindola2011-04-151-1/+1
| | | | | | | | | debug info. Change ELF systems to use CFI for producing the EH tables. This reduces the size of the clang binary in Debug builds from 690MB to 679MB. llvm-svn: 129571
* Revert r129518, "Change ELF systems to use CFI for producing the EH tables. ↵NAKAMURA Takumi2011-04-151-1/+1
| | | | | | | | This reduces the" It broke several builds. llvm-svn: 129557
* Change ELF systems to use CFI for producing the EH tables. This reduces theRafael Espindola2011-04-141-1/+1
| | | | | | size of the clang binary in Debug builds from 690MB to 679MB. llvm-svn: 129518
* Delay the creation of eh_frame so that the user can change the defaults.Rafael Espindola2011-01-231-1/+0
| | | | | | Add support for SHT_X86_64_UNWIND. llvm-svn: 124059
* minor change to rafael's recent patches: if something isChris Lattner2011-01-181-1/+7
| | | | | | | constant but requires a unique address, we can still put it in a readonly section, just not a mergable one. llvm-svn: 123711
* Only put unnamed_addr constants in mergeable sections. Fixes PR8297.Rafael Espindola2011-01-161-1/+1
| | | | llvm-svn: 123585
* the latest assembler that runs on powerpc 10.4 machines doesn'tChris Lattner2010-09-271-0/+1
| | | | | | | 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
* Eliminate unnecessary uses of getZExtValue().Dan Gohman2010-06-181-1/+1
| | | | llvm-svn: 106279
* rename llvm::llvm_report_error -> llvm::report_fatal_errorChris Lattner2010-04-071-1/+1
| | | | llvm-svn: 100709
* fix GetOrCreateTemporarySymbol to require a name, clientsChris Lattner2010-03-171-1/+1
| | | | | | | should use CreateTempSymbol() if they don't care about the name. llvm-svn: 98712
* finally give Mangler a getSymbol method, which returns an MCSymbolChris Lattner2010-03-121-10/+1
| | | | | | for a global instead of messing around with string buffers. llvm-svn: 98366
* make TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner2010-03-121-5/+1
| | | | | | | just make unnamed temp symbols instead of having to come up with its own names. llvm-svn: 98324
* fix a fixme in TargetLoweringObjectFile::getExprForDwarfReferenceChris Lattner2010-03-111-12/+18
| | | | | | | | | 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
* rename getSymbolForDwarf* to getExprForDwarf* since it returnsChris Lattner2010-03-111-6/+7
| | | | | | | | | an MCExpr and not an MCSymbol. Change it to take an MCStreamer, which is currently unused. No functionality change. llvm-svn: 98278
* move three lowering hooks from MAI to TLOF and make one of themChris Lattner2010-03-101-0/+4
| | | | | | | semantic instead of syntactic. This completes MCization of darwin/x86[-64]! llvm-svn: 98145
* set the temporary bit on MCSymbols correctly.Chris Lattner2010-03-101-1/+6
| | | | llvm-svn: 98124
* Make error statement more personal.Bill Wendling2010-02-161-1/+1
| | | | llvm-svn: 96410
* Move TLOF implementations to libCodegen to resolve layering violation.Anton Korobeynikov2010-02-151-842/+0
| | | | llvm-svn: 96288
* Add suffix for stubs, so we won't have name clashes with private symbols.Anton Korobeynikov2010-02-151-0/+1
| | | | llvm-svn: 96286
* Preliminary patch to improve dwarf EH generation - Hooks to return ↵Anton Korobeynikov2010-02-151-28/+89
| | | | | | Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there llvm-svn: 96285
* Simplify some uses of str(n)cmp with StringRef.Benjamin Kramer2010-01-221-21/+21
| | | | llvm-svn: 94189
* stop using the .lcomm pseudoop on darwin, instead, directly use theChris Lattner2010-01-191-4/+12
| | | | | | .zerofill directive. Streamerize its generation. llvm-svn: 93868
* make TLOF subclassify BSS based on linkage type into private, externalChris Lattner2010-01-191-2/+7
| | | | | | and everything else (weak). llvm-svn: 93846
* fix a significant difference between llvm and gcc on ELF systems:Chris Lattner2010-01-191-2/+4
| | | | | | | | GCC would put weak zero initialized mutable data in the .bss section, we would put it into a crasy '.gnu.linkonce.b.test,"aw",@nobits' section. Fixing this will allow simplifications next up. llvm-svn: 93844
* introduce a section kind for common linkage. Use this to slightlyChris Lattner2010-01-191-2/+6
| | | | | | | | | simplify and commonize some of the asmprinter logic for globals. This also avoids printing the MCSection for .zerofill, which broke the llvm-gcc build. llvm-svn: 93843
* Cleanup handling of .zerofill on darwin:Chris Lattner2010-01-191-0/+8
| | | | | | | | | | | | | 1. TargetLoweringObjectFileMachO should decide if something goes in zerofill instead of having every target do it. 2. TargetLoweringObjectFileMachO should assign said symbols to the right MCSection, the asmprinters should just emit to the right section. 3. Since all zerofill stuff goes through mcstreamer anymore, MAI can have a bool "haszerofill" instead of having the textual directive to emit. llvm-svn: 93838
* Get MCSymbol out of the mangling business, and move all the logicChris Lattner2010-01-171-10/+3
| | | | | | | | | | | 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
* move the mangler into libtarget from vmcore.Chris Lattner2010-01-161-1/+2
| | | | llvm-svn: 93664
* fix build failure.Chris Lattner2010-01-161-1/+1
| | | | llvm-svn: 93628
* remove a couple of actively incorrect uses of getMangledName.Chris Lattner2010-01-161-1/+2
| | | | llvm-svn: 93627
OpenPOWER on IntegriCloud