Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | MC/Mach-O: Start emitting fixups/relocations for instructions. | Daniel Dunbar | 2010-02-13 | 1 | -2/+13 | |
| | | | | llvm-svn: 96095 | |||||
* | MCAssembler: Switch MCAsmFixup to storing MCFixupKind instead of just a size. | Daniel Dunbar | 2010-02-13 | 1 | -1/+2 | |
| | | | | llvm-svn: 96094 | |||||
* | MC/Mach-O: Implement EmitValue using data fragments + fixups instead of fill ↵ | Daniel Dunbar | 2010-02-13 | 1 | -1/+17 | |
| | | | | | | fragment. llvm-svn: 96091 | |||||
* | MC: First cut at MCFixup, for getting fixup/relocation information out of an ↵ | Daniel Dunbar | 2010-02-09 | 1 | -1/+2 | |
| | | | | | | MCCodeEmitter. llvm-svn: 95708 | |||||
* | add scaffolding for target-specific MCExprs. | Chris Lattner | 2010-02-08 | 1 | -0/+1 | |
| | | | | llvm-svn: 95559 | |||||
* | MC/Mach-O: Set SOME_INSTRUCTIONS bit for sections. | Daniel Dunbar | 2010-02-02 | 1 | -2/+2 | |
| | | | | llvm-svn: 95135 | |||||
* | mcstreamerize gprel32 emission. | Chris Lattner | 2010-01-25 | 1 | -4/+3 | |
| | | | | llvm-svn: 94452 | |||||
* | mcstreamerize .file and .file. This also fixes an issue where the | Chris Lattner | 2010-01-25 | 1 | -0/+8 | |
| | | | | | | | normal form of .file would fail if the filename had a weird character in it. llvm-svn: 94437 | |||||
* | add symbol attribute support for the ELF .type directive. | Chris Lattner | 2010-01-25 | 1 | -0/+6 | |
| | | | | llvm-svn: 94435 | |||||
* | emit the .size directive for global variables on ELF through | Chris Lattner | 2010-01-25 | 1 | -0/+3 | |
| | | | | | | mcstreamer. llvm-svn: 94416 | |||||
* | mcize lcomm, simplify .comm, extend both to support 64-bit sizes. | Chris Lattner | 2010-01-23 | 1 | -2/+5 | |
| | | | | llvm-svn: 94299 | |||||
* | move the various directive enums out of the MCStreamer class | Chris Lattner | 2010-01-23 | 1 | -32/+20 | |
| | | | | | | into a new MCDirectives.h file. llvm-svn: 94294 | |||||
* | mcstreamerize .no_dead_strip and .reference for static ctors/dtors. | Chris Lattner | 2010-01-23 | 1 | -0/+1 | |
| | | | | llvm-svn: 94290 | |||||
* | Generalize mcasmstreamer data emission APIs to take an address space | Chris Lattner | 2010-01-19 | 1 | -5/+6 | |
| | | | | | | identifier. There is no way to work around it. llvm-svn: 93896 | |||||
* | Add a note for the macho streamer and remove a used of the mangler from the ↵ | Nate Begeman | 2010-01-17 | 1 | -0/+2 | |
| | | | | | | soon to be defunct machowriter pass. llvm-svn: 93670 | |||||
* | Pass StringRef by value. | Daniel Dunbar | 2009-11-06 | 1 | -2/+2 | |
| | | | | llvm-svn: 86251 | |||||
* | MC: Set symbol values in MachO MCStreamer. | Daniel Dunbar | 2009-10-16 | 1 | -1/+3 | |
| | | | | llvm-svn: 84236 | |||||
* | MC: Switch assembler API to using MCExpr instead of MCValue. | Daniel Dunbar | 2009-10-16 | 1 | -12/+2 | |
| | | | | llvm-svn: 84234 | |||||
* | MC: Remove unneeded context argument to MCExpr::Evaluate*. | Daniel Dunbar | 2009-10-16 | 1 | -2/+1 | |
| | | | | llvm-svn: 84233 | |||||
* | llvm-mc: Pass values to MCStreamer as MCExprs, not MCValues. | Daniel Dunbar | 2009-08-31 | 1 | -16/+20 | |
| | | | | llvm-svn: 80578 | |||||
* | llvm-mc: Simplify EmitAssignment ('.set' is identical to '='). | Daniel Dunbar | 2009-08-31 | 1 | -5/+2 | |
| | | | | llvm-svn: 80577 | |||||
* | llvm-mc: Switch MCInst to storing an MCExpr* instead of an MCValue. | Daniel Dunbar | 2009-08-31 | 1 | -2/+27 | |
| | | | | | | Also, use MCInst::print instead of custom code in MCAsmPrinter. llvm-svn: 80575 | |||||
* | llvm-mc: Make MCSymbolData symbol member const. | Daniel Dunbar | 2009-08-31 | 1 | -1/+1 | |
| | | | | llvm-svn: 80573 | |||||
* | llvm-mc: Add MCContext to MCAssembler. | Daniel Dunbar | 2009-08-31 | 1 | -1/+1 | |
| | | | | llvm-svn: 80572 | |||||
* | llvm-mc: MCStreamer cleanups. - Remove EmitLocalSymbol, this is unsupported ↵ | Daniel Dunbar | 2009-08-30 | 1 | -14/+6 | |
| | | | | | | | | for now. - Switch Emit{CommonSymbol,Zerofill} to take alignment in bytes (for consistency). llvm-svn: 80484 | |||||
* | llvm-mc: .lsym is more unsupported than unimplemented, pending a use case ↵ | Daniel Dunbar | 2009-08-28 | 1 | -5/+5 | |
| | | | | | | | | appearing. Also, all one of the file level flags are implemented. llvm-svn: 80352 | |||||
* | llvm-mc: Support .comm emission. | Daniel Dunbar | 2009-08-28 | 1 | -2/+7 | |
| | | | | llvm-svn: 80351 | |||||
* | llvm-mc: Support .zerofill emission. | Daniel Dunbar | 2009-08-28 | 1 | -1/+21 | |
| | | | | | | - I'm still trying to figure out the cleanest way to implement this and match the assembler, currently there are some substantial differences. llvm-svn: 80347 | |||||
* | llvm-mc: Factor getSectionData out of SwitchSection. | Daniel Dunbar | 2009-08-28 | 1 | -7/+11 | |
| | | | | llvm-svn: 80344 | |||||
* | llvm-mc: Emit .lcomm as .zerofill. | Daniel Dunbar | 2009-08-28 | 1 | -3/+2 | |
| | | | | llvm-svn: 80343 | |||||
* | llvm-mc: Add const to EmitZeroFill section argument. | Daniel Dunbar | 2009-08-28 | 1 | -2/+2 | |
| | | | | llvm-svn: 80341 | |||||
* | llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions. | Daniel Dunbar | 2009-08-27 | 1 | -5/+24 | |
| | | | | | | - No relocations yet, of course. llvm-svn: 80235 | |||||
* | llvm-mc/Mach-O: Set .subsections_via_symbols flag properly. | Daniel Dunbar | 2009-08-26 | 1 | -1/+8 | |
| | | | | llvm-svn: 80144 | |||||
* | llvm-mc: Add symbol entries for undefined symbols used in .fill and .org. | Daniel Dunbar | 2009-08-26 | 1 | -2/+10 | |
| | | | | llvm-svn: 80086 | |||||
* | llvm-mc/Mach-O: Set addresses for symbols. | Daniel Dunbar | 2009-08-26 | 1 | -0/+1 | |
| | | | | llvm-svn: 80065 | |||||
* | llvm-mc: Improve indirect symbol support (add the indirect index table). | Daniel Dunbar | 2009-08-26 | 1 | -0/+2 | |
| | | | | llvm-svn: 80059 | |||||
* | llvm-mc/Mach-O: Preliminary support for indirect symbols. | Daniel Dunbar | 2009-08-24 | 1 | -4/+11 | |
| | | | | | | | | | - The indirect table itself isn't being filled in yet. - This isn't factored properly and is rather FIXMEd, but at the moment I'm more focused on figuring out what it needs to do. llvm-svn: 79910 | |||||
* | llvm-mc/Mach-O: Support symbol attributes. | Daniel Dunbar | 2009-08-24 | 1 | -3/+80 | |
| | | | | | | | | - This is mostly complete, the main thing missing is .indirect_symbol support (which would be straight-forward, except that the way it is implemented in 'as' makes getting an exact .o match interesting). llvm-svn: 79899 | |||||
* | prune some redundant #includes. | Chris Lattner | 2009-08-22 | 1 | -10/+9 | |
| | | | | llvm-svn: 79746 | |||||
* | llvm-mc/Mach-O: Improve symbol table support: | Daniel Dunbar | 2009-08-22 | 1 | -1/+8 | |
| | | | | | | | | | | | | - Honor .globl. - Set symbol type and section correctly ('nm' now works), and order symbols appropriately. - Take care to the string table so that the .o matches 'as' exactly (for ease of testing). llvm-svn: 79740 | |||||
* | llvm-mc/Mach-O: Sketch symbol table support. | Daniel Dunbar | 2009-08-22 | 1 | -4/+33 | |
| | | | | | | | | | | | - The only .s syntax this honors right now is emitting labels, and some parts of the symbol table generation are wrong or faked. - This is enough to get nm to report such symbols... incorrectly, but still. Also, fixed byte emission to extend the previous fragment if possible. llvm-svn: 79739 | |||||
* | llvm-mc: Clean up some handling of symbol/section association to be more correct | Daniel Dunbar | 2009-08-22 | 1 | -6/+5 | |
| | | | | | | | | | (external was really undefined and there wasn't an explicit representation for absolute symbols). - This still needs some cleanup to how the absolute "pseudo" section is dealt with, but I haven't figured out the nicest approach yet. llvm-svn: 79733 | |||||
* | llvm-mc/Mach-O: Support .o emission for .org and .align. | Daniel Dunbar | 2009-08-21 | 1 | -1/+3 | |
| | | | | llvm-svn: 79684 | |||||
* | llvm-mc/Mach-O: Support byte and fill value emission. | Daniel Dunbar | 2009-08-21 | 1 | -4/+10 | |
| | | | | llvm-svn: 79652 | |||||
* | llvm-mc: Start MCAssembler and MCMachOStreamer. | Daniel Dunbar | 2009-08-21 | 1 | -0/+170 | |
- Together these form the (Mach-O) back end of the assembler. - MCAssembler is the actual assembler backend, which is designed to have a reasonable API. This will eventually grow to support multiple object file implementations, but for now its Mach-O/i386 only. - MCMachOStreamer adapts the MCStreamer "actions" API to the MCAssembler API, e.g. converting the various directives into fragments, managing state like the current section, and so on. - llvm-mc will use the new backend via '-filetype=obj', which may eventually be, but is not yet, since I hear that people like assemblers which actually assemble. - The only thing that works at the moment is changing sections. For the time being I have a Python Mach-O dumping tool in test/scripts so this stuff can be easily tested, eventually I expect to replace this with a real LLVM tool. - More doxyments to come. I assume that since this stuff doesn't touch any of the things which are part of 2.6 that it is ok to put this in not so long before the freeze, but if someone objects let me know, I can pull it. llvm-svn: 79612 |