aboutsummaryrefslogtreecommitdiff
path: root/lib/MC
AgeCommit message (Collapse)Author
2010-09-06MCELF: Align symtab, relocation sections and section headers properly. Patch ↵Benjamin Kramer
by Krister Wombell. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113155 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Get rid of "passing signed into unsigned parameter" warning on PPC.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112995 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add AsmParser support for the ELF .previous directive. Patch by Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112849 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Allow MCSA_WeakRef in ELF. Patch by Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112834 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Fix .debug_range for linux. Patch by Krister Wombell.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112830 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-31Use absolute label for DW_AT_stmt_list if a target does not prefer offset here.Devang Patel
This patch was developed on top of original patch by Artur Pietrek. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112678 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-31This is the second of three patches to implement support for the .loc directiveKevin Enderby
and output the dwarf line number tables. This takes the current loc info after an instruction is assembled and saves the needed info into an object that has vector and for each section. These objects will be used for the final patch to build and emit the encoded dwarf line number tables. Again for now this is only in the Mach-O streamer but at some point will move to a more generic place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112668 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-31Allow creation of SHT_NULL sections, from Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112605 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-30MCELF: The value of all common symbols is the offset from the start of the ↵Benjamin Kramer
section. Patch by Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112492 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-30The value is offset from the start of the section for non-common symbols, ↵Benjamin Kramer
submitted by Jordan Gordeev. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112473 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-30Index external symbols by symbol table instead of parent section, by Roman ↵Benjamin Kramer
Divacky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112472 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-30Mark all common symbols external. This is not exactly correct but it lets appsBenjamin Kramer
link for now and can be adjusted later. Patch by Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112471 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-28squish dead code.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112350 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-27MCELF: Port EmitInstruction changes from MachO streamer. Patch by Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112260 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-27MCELF: Always overwrite FixedValue.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112259 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26MCELF: Fix a thinko of mine.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112203 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26MCELF: Compensate for the addend on i386. Patch by Roman Divacky, with some ↵Benjamin Kramer
cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112197 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-25MCELF: Use precomputed symbol indices, patch by Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112079 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-25MC: Fix inconsistant naming in COFF object writer. Patch by Cameron Esfahani.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112076 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24Change the parsing of .loc back to allow the LineNumber field to be optional asKevin Enderby
it is with other assemblers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111967 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24Fix COFF x86-64 relocations. PR7960.Michael J. Spencer
Multiple symbol reloc handling part of the patch by Cameron Esfahani. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111963 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24First bit of support for the dwarf .loc directive. This patch updates theKevin Enderby
needed parsing for the .loc directive and saves the current info from that into the context. The next patch will take the current loc info after an instruction is assembled and save that info into a vector for each section for use to build the line number tables. The patch after that will encode the info from those vectors into the output file as the dwarf line tables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111956 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24MC/AsmParser: Change ParseExpression to use ParseIdentifier(), to supportDaniel Dunbar
dollars in identifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111946 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24MC/Parser: Accept leading dollar signs in identifiers.Daniel Dunbar
- Implemented by manually splicing the tokens. If this turns out to be problematically platform specific, a more elegant solution would be to implement some context dependent lexing support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111934 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24Relocate against parent if the symbol is not in section or it's a common ↵Benjamin Kramer
symbol, from Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111925 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24fix rdar://7997827 - Accept and ignore LL and ULL suffixes on integer literals.Chris Lattner
Also fix 0b010 syntax to actually work while we're at it :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111876 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Fix thinko. Having no tests is great ...Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111848 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Reduce code duplication.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111846 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23ELFObjectWriter: Run ComputeSymbolTable before recording relocations. This ↵Benjamin Kramer
way we can use the information it has computed and don't have to recompute the same stuff over and over again. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111844 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Add the symbol offset to the relocation value when we relocate against ↵Benjamin Kramer
section. By Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111824 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Use the proper relocation section + cleanup, from Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111819 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Revert part of my last commit. the mingw32 build bot doesn't seem to like it.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111793 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23Workaround broken jump tables on x86-64 COFF.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111792 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-21MC: Add partial x86-64 support to COFF.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111728 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19MCELF: Count the section orders properly. Patch by Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111517 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-18MC/ELF: Allow null values in virtual sections, ELF doesn't use specialDaniel Dunbar
directives for putting contents in .bss, for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111376 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17Remove dead code. Fixes a GCC warning.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111271 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17Sketch i386 relocations handling, from Roman Divacky.Benjamin Kramer
Hello world builds & runs now on i386/ELF with -integrated-as. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111264 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17Use the correct entry size for relocation entries, from Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111259 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17Differentiate between RELA and REL relocations, from Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111252 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17One baby step towards i386 ELF, from Roman Divacky.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111247 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17Try to silence a overeager GCC warning.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111214 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17A round of minor cleanups for ELFObjectWriter.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111213 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Silence warnings and simplify code. Eliminate a 32/64 bit portability issue.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111201 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Fixes for generation of ELF relocations. Patch by Roman Divacky.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111183 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Fix a few warnings in and detabify MCELFStreamer and ELFObjectWriter.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111175 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Add ELF ObjectWriter and Streamer support.Matt Fleming
I forgot to add these files in commit 111172. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111174 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Add ELF ObjectWriter and Streamer support.Matt Fleming
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111172 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Layout helper function.Matt Fleming
Introduce a helper method to add a section to the end of a layout. This will be used by the ELF ObjectWriter code to add the metadata sections (symbol table, etc) to the end of an object file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111171 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16Record a symbol's size which is needed for ELF symbol tables.Matt Fleming
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111170 91177308-0d34-0410-b5e6-96231b3b80d8