summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCObjectFileInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Mips direct object exception handling regressionJack Carter2013-04-011-3/+4
| | | | | | | | | | | | | | | | | Revision 177141 caused a regression in all but mips64 little endian. That is because none of the other Mips targets had test cases checking the contents of the .eh_frame section. This patch fixes both the llvm code and adds an assembler test case to include the current 4 flavors. The test cases unfortunately rely on llvm-objdump. A preferable method would be to use a pretty printer output such as what readelf -wf <elf_file> would give. I also changed the name of the test case to correct a typo. llvm-svn: 178506
* Fix the FDE encoding to be relative on ELF.Rafael Espindola2013-03-151-6/+6
| | | | | | | | | | | | This is a very late complement to r130637 which fixed this on x86_64. Fixes pr15448. Since it looks like that every elf architecture uses this encoding when using cfi, make it the default for elf. Just exclude mips64el. It has a lovely .ll -> .o test (ef_frame.ll) that tests that nothing changes in the binary content of the .eh_frame produced by llc. Oblige it. llvm-svn: 177141
* Allow optionally generating pubnames section in DWARF info. IntroduceKrzysztof Parzyszek2013-02-121-0/+12
| | | | | | option "generate-dwarf-pubnames" to control it, set to "false" by default. llvm-svn: 174981
* Add AArch64 as an experimental target.Tim Northover2013-01-311-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for AArch64 (ARM's 64-bit architecture) to LLVM in the "experimental" category. Currently, it won't be built unless requested explicitly. This initial commit should have support for: + Assembly of all scalar (i.e. non-NEON, non-Crypto) instructions (except the late addition CRC instructions). + CodeGen features required for C++03 and C99. + Compilation for the "small" memory model: code+static data < 4GB. + Absolute and position-independent code. + GNU-style (i.e. "__thread") TLS. + Debugging information. The principal omission, currently, is performance tuning. This patch excludes the NEON support also reviewed due to an outbreak of batshit insanity in our legal department. That will be committed soon bringing the changes to precisely what has been approved. Further reviews would be gratefully received. llvm-svn: 174054
* Split address information for DWARF5 split dwarf proposal. This involvesEric Christopher2013-01-151-0/+3
| | | | | | | | | | | | | | | using the DW_FORM_GNU_addr_index and a separate .debug_addr section which stays in the executable and is fully linked. Sneak in two other small changes: a) Print out the debug_str_offsets.dwo section. b) Change form we're expecting the entries in the debug_str_offsets.dwo section to take from ULEB128 to U32. Add tests for all of this in the fission-cu.ll test. llvm-svn: 172578
* PowerPC: EH adjustmentsAdhemerval Zanella2013-01-091-10/+7
| | | | | | | | | This patch adjust the r171506 to make all DWARF enconding pc-relative for PPC64. It also adds the R_PPC64_REL32 relocation handling in MCJIT (since the eh_frame will not generate PIC-relative relocation) and also adds the emission of stubs created by the TTypeEncoding. llvm-svn: 171979
* PowerPC: Fix eh_frame relocation for PIC Adhemerval Zanella2013-01-041-0/+11
| | | | | | | | | This patch fixes the PPC eh_frame definitions for the personality and frame unwinding for PIC objects. It makes PIC build correctly creates relative relocations in the '.rela.eh_frame' segments and thus avoiding a text relocation that generates a DT_TEXTREL segments in link phase. llvm-svn: 171506
* Add section information for the DWARF5 split debug proposalEric Christopher2013-01-041-0/+3
| | | | | | string offset section. llvm-svn: 171474
* Use the new script to sort the includes of every file under lib.Chandler Carruth2012-12-031-1/+1
| | | | | | | | | | | | | | | | | 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. =] llvm-svn: 169131
* Add the rest of the experimental fission sections to MC.Eric Christopher2012-11-301-0/+13
| | | | llvm-svn: 168986
* Add brief support for the fission .debug_info.dwo section forEric Christopher2012-11-281-0/+5
| | | | | | ELF output. llvm-svn: 168764
* Add comments.Eric Christopher2012-11-281-0/+4
| | | | llvm-svn: 168763
* Add names for the accelerator table sections so that they canEric Christopher2012-10-081-0/+12
| | | | | | be emitted if they're wanted on elf platforms. llvm-svn: 165432
* Support for generating ELF objects on Windows.Andrew Kaylor2012-10-021-0/+1
| | | | | | This adds 'elf' as a recognized target triple environment value and overrides the default generated object format on Windows platforms if that value is present. This patch also enables MCJIT tests on Windows using the new environment value. llvm-svn: 165030
* Emit dtors into proper section while compiling in vcpp-compatible mode.Anton Korobeynikov2012-09-231-6/+14
| | | | | | Patch by Kai! llvm-svn: 164476
* Fix for .pdata and .xdata section attributes on COFF.Anton Korobeynikov2012-08-081-4/+2
| | | | | | Patch by kai@redstar.de ! llvm-svn: 161487
* Tidy up. Trailing whitespace.Jim Grosbach2012-05-111-1/+1
| | | | llvm-svn: 156602
* Use the correct section types on Solaris for unwind data on both x86 and x86-64.David Chisnall2012-04-101-3/+8
| | | | | | Patch by Dmitri Shubin! llvm-svn: 154391
* Emit global ctors into .CRT$XCU instead of .ctors on Win32. Patch by Joe Groff!Michael J. Spencer2012-02-231-6/+16
| | | | llvm-svn: 151289
* Generate the correct EH frame section types on Solaris, this time without ↵David Chisnall2012-02-171-1/+8
| | | | | | breaking other platforms... llvm-svn: 150819
* Revert r150814. It turns out that there is a good reason for this after all...David Chisnall2012-02-171-26/+22
| | | | llvm-svn: 150818
* Don't lazily allocate eh_frame. We're not lazily allocating things like the ↵David Chisnall2012-02-171-22/+26
| | | | | | | | LSDA, which are only used when the eh frame is used, so this lazy allocation doesn't really make sense. Fix the type of eh_frame on Solaris so that Sun ld doesn't fail to combine them (thus making it impossible for the unwind library to find them and breaking exceptions). llvm-svn: 150814
* Add support for implicit TLS model used with MS VC runtime.Anton Korobeynikov2012-02-111-0/+6
| | | | | | Patch by Kai Nacke! llvm-svn: 150307
* Properly emit ctors / dtors with priorities into desired sectionsAnton Korobeynikov2012-01-251-7/+1
| | | | | | | | and let linker handle the rest. This finally fixes PR5329 llvm-svn: 148990
* Emit the ctors in the proper order on ARM/EABI.Anton Korobeynikov2011-12-031-0/+6
| | | | | | | | Maybe some targets should use this as well. Patch by Evgeniy Stepanov! llvm-svn: 145781
* Tidy up. 80 columns.Jim Grosbach2011-11-151-6/+6
| | | | llvm-svn: 144649
* Remove the pubnames section, no one consumes it.Eric Christopher2011-11-091-12/+0
| | | | llvm-svn: 144169
* Add the support code to enable the dwarf accelerator tables. Upcoming patchesEric Christopher2011-11-071-2/+24
| | | | | | | | to fix the types section (all types, not just global types), and testcases. The code to do the final emission is disabled by default. llvm-svn: 143923
* On an ELF system, ".debug_str" is mergeable and contains null terminated stringsNick Lewycky2011-10-261-2/+3
| | | | | | composed of one byte characters. llvm-svn: 143044
* Fix grammar, noticed by Duncan.Bill Wendling2011-08-291-1/+1
| | | | llvm-svn: 138764
* Initialize CompactUnwindSection so that other targets won't use an ↵Bill Wendling2011-08-291-1/+2
| | | | | | uninitialized value. llvm-svn: 138752
* X86 is the only target that uses coff format. This should fixes test ↵Evan Cheng2011-07-201-2/+3
| | | | | | failures running on Windows, Cygwin, or MingW hosts. llvm-svn: 135639
* Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc.Evan Cheng2011-07-201-1/+52
| | | | | | | 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
* Initialize the EHFrameSection pointer to zero.Benjamin Kramer2011-07-201-0/+1
| | | | | | This should fix the spurious buildbot errors. llvm-svn: 135594
* Add MCObjectFileInfo and sink the MCSections initialization code fromEvan Cheng2011-07-201-0/+500
TargetLoweringObjectFileImpl down to MCObjectFileInfo. TargetAsmInfo is done to one last method. It's *almost* gone! llvm-svn: 135569
OpenPOWER on IntegriCloud