summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCParser
Commit message (Collapse)AuthorAgeFilesLines
* Factor some code to parseSectionFlags and fix the default type of a section.Rafael Espindola2010-11-251-49/+58
| | | | llvm-svn: 120145
* Behave a bit more like gnu as and use the symbol (instead of the section)Rafael Espindola2010-11-241-3/+9
| | | | | | for any relocation to a symbol defined in a tls section. llvm-svn: 120121
* Add basic CFI methods to the streamer interface.Rafael Espindola2010-11-221-7/+19
| | | | llvm-svn: 119972
* Added support for the Mach-O .symbol_resolver directive. rdar://8673046Kevin Enderby2010-11-191-0/+2
| | | | llvm-svn: 119816
* Add support for .int.Rafael Espindola2010-11-171-0/+2
| | | | llvm-svn: 119512
* Add support for .2byte, .4byte and .8byte.Rafael Espindola2010-11-171-0/+6
| | | | | | Fixes PR8631. llvm-svn: 119511
* Add .loc methods to the streamer.Rafael Espindola2010-11-161-4/+3
| | | | | | | Next: Add support for the !HasDotLocAndDotFile case to the MCAsmStreamer and then switch codegen to use it. llvm-svn: 119384
* Parse and ignore some .cfi_* directives.Rafael Espindola2010-11-161-0/+95
| | | | llvm-svn: 119362
* Fix PR8565.Rafael Espindola2010-11-151-6/+25
| | | | | | | | | | | This moves most of the isUsed logic to the MCSymbol itself. With this we get a bit more relaxed about allowing definitions after uses: uses that don't evaluate their argument immediately (jmp foo) are accepted. ddunbar, this was the smallest compromise I could think of that lets us accept gcc (and clang!) assembly. llvm-svn: 119144
* Parse and record the gnu_unique_object type.Rafael Espindola2010-11-131-0/+1
| | | | llvm-svn: 118980
* Parse and remember discriminators in .loc line. I try to output them withRafael Espindola2010-11-131-1/+7
| | | | | | | another patch. This lets us parse a bit more of the gcc 4.5 output. llvm-svn: 118975
* gnu as support both % and @ before types, do the same.Rafael Espindola2010-11-121-10/+4
| | | | llvm-svn: 118893
* Mark labels declared in tls sections as STT_TLS. This matches the behavior ofRafael Espindola2010-11-111-1/+0
| | | | | | gas. llvm-svn: 118818
* Initial comdat implementation.Rafael Espindola2010-11-111-5/+7
| | | | llvm-svn: 118805
* Fixed version of 118639 with an extra assert to catch similar problemsRafael Espindola2010-11-091-3/+2
| | | | | | earlier. Implicit bool -> int conversions are evil! llvm-svn: 118651
* Revert previous patch. Missed a case.Rafael Espindola2010-11-091-2/+3
| | | | llvm-svn: 118645
* Remove IsExplicit. It was always false.Rafael Espindola2010-11-091-3/+2
| | | | llvm-svn: 118639
* Fix typo.Daniel Dunbar2010-11-081-1/+1
| | | | llvm-svn: 118421
* Set default flags for .rodata.Rafael Espindola2010-11-081-1/+3
| | | | llvm-svn: 118395
* Add support for expressions in .sleb/.uleb directives.Rafael Espindola2010-11-021-31/+7
| | | | llvm-svn: 118023
* Add support for .value.Rafael Espindola2010-11-011-0/+2
| | | | llvm-svn: 117922
* Implement .weakref.Rafael Espindola2010-11-011-0/+28
| | | | llvm-svn: 117911
* Improvements to .section parsing:Rafael Espindola2010-10-281-10/+38
| | | | | | | | | | * If we have a M or a G, reject sections without the type * Only parse the flag specific arguments if we have M or G * Parse the corresponding arguments for M and G We ignore the G arguments and flag for now. llvm-svn: 117608
* Add support for the .string directive.Rafael Espindola2010-10-281-8/+10
| | | | llvm-svn: 117592
* Use the IDVal directly as there's no need to convert to std::string.Roman Divacky2010-10-281-2/+2
| | | | | | Pointed out by Chris! llvm-svn: 117557
* Implement .equ directive as a synonym to .set.Roman Divacky2010-10-281-6/+6
| | | | llvm-svn: 117553
* Set default type and flags for .init and .fini.Rafael Espindola2010-10-271-1/+9
| | | | llvm-svn: 117471
* Add support for the .symver directive. This is really ugly, but most of it isRafael Espindola2010-10-271-0/+30
| | | | | | contained in the ELF object writer. llvm-svn: 117448
* Add support for .ident.Rafael Espindola2010-10-261-0/+32
| | | | llvm-svn: 117389
* MC/AsmParser: Fix relative precedence of {+,-} and comparison ops.Daniel Dunbar2010-10-251-12/+14
| | | | llvm-svn: 117299
* MC/AsmLexer: Fix bug in source location for Slash token.Daniel Dunbar2010-10-251-1/+1
| | | | llvm-svn: 117298
* Remove remaining uses of ATTRIBUTE_UNUSED on variables, and delete threeChandler Carruth2010-10-201-2/+0
| | | | | | #includes in the process. llvm-svn: 116919
* Fix spelling.Bill Wendling2010-10-191-1/+1
| | | | llvm-svn: 116804
* MC/AsmParser: Report .stabs directive as unsupported.Daniel Dunbar2010-10-161-0/+9
| | | | llvm-svn: 116659
* MC-COFF: Add COFFAsmParser. Completes PR8343.Michael J. Spencer2010-10-093-1/+150
| | | | llvm-svn: 116150
* Fix Whitespace.Michael J. Spencer2010-10-091-58/+58
| | | | llvm-svn: 116149
* MC: Move ParseDirectiveELFType into ELFAsmParser. COFF uses .type for ↵Michael J. Spencer2010-10-092-49/+49
| | | | | | something else. llvm-svn: 116142
* Add support for a fill value in the .zero directive.Rafael Espindola2010-10-051-1/+8
| | | | llvm-svn: 115655
* Incorporate suggestions by Daniel Dunbar after his review. Thanks Daniel!Kevin Enderby2010-10-041-1/+1
| | | | | | | | | | | | | | | | 1) Changed ValidateDwarfFileNumber() to isValidDwarfFileNumber() to be better named. Since it is just a predicate and isn't actually changing any state. 2) Added a missing return in the comments for setCurrentDwarfLoc() in include/llvm/MC/MCContext.h for fix formatting. 3) Changed clearDwarfLocSeen() to ClearDwarfLocSeen() since it does change state. 4) Simplified the last test in isValidDwarfFileNumber() to just a one line boolean test of MCDwarfFiles[FileNumber] != 0 for the final return statement. llvm-svn: 115551
* Add hook in MCSection to decide when to use "optimized nops", for eachJan Wen Voung2010-10-041-6/+1
| | | | | | | section kind. Previously, optimized nops were only used for MachO. Also added tests for ELF and COFF. llvm-svn: 115523
* This is the last major patch to implement support for the .loc directiveKevin Enderby2010-09-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | and output the dwarf line number tables. This contains the code to emit and encode the dwarf line tables from the previously gathered information in the MCLineSection objects. This contains all the details to encode the line and address deltas into the dwarf line table. To do this an MCDwarfLineAddrFragment has been added. Also this moves the interface code out of Mach-O streamer into MCDwarf so it should be useable by other object file formats. There is now one call to be made from an MCObjectStreamer EmitInstruction() method: MCLineEntry::Make(this, getCurrentSection()); to create a line entry after each instruction is assembled. And one call call to be made from an MCObjectStreamer Finish() method: MCDwarfFileTable::Emit(this, DwarfLineSection); when getContext().hasDwarfFiles() is true and is passed a object file specific MCSection where to emit the dwarf file and the line tables. This appears to now be correct for 32-bit targets, at least x86. But the relocation entries for 64-bit Darwin needs some further work which is next up to work on. So for now the 64-bit Mach-O target does not output the dwarf file and line tables. llvm-svn: 115157
* Have ELFAsmParser.cpp use the already parsed "Size" (entry size) when Jan Wen Voung2010-09-301-1/+2
| | | | | | constructing a section. Test for a few cases also included. llvm-svn: 115132
* Test commit - Deleted some whitespace at the end of a line.Jan Wen Voung2010-09-301-1/+1
| | | | llvm-svn: 115122
* change the protocol TargetAsmPArser::MatchInstruction method to take anChris Lattner2010-09-291-9/+3
| | | | | | | MCStreamer to emit into instead of an MCInst to fill in. This allows the matcher extra flexibility and is more convenient. llvm-svn: 115014
* Make sure .text doesn't produce extra alignment.Rafael Espindola2010-09-271-9/+3
| | | | llvm-svn: 114895
* MC/AsmParser: Handle exponents in floating point literals.Daniel Dunbar2010-09-271-9/+30
| | | | llvm-svn: 114861
* Push twines deeper into SourceMgr's error handling methods.Benjamin Kramer2010-09-271-9/+6
| | | | llvm-svn: 114847
* MC/AsmParser: Handle a missed case of floating literals in the lexer.Daniel Dunbar2010-09-241-1/+1
| | | | llvm-svn: 114733
* MC/AsmParser: Support .single and .double for embedding floating point literals.Daniel Dunbar2010-09-241-0/+56
| | | | | | | - I believe more modern 'gas' supports a more enhanced set of arithmetic on them, but for now the only thing we can do is emit them as data. llvm-svn: 114719
* MC/Lexer: Add 'Real' token type for floating point literals.Daniel Dunbar2010-09-241-5/+24
| | | | llvm-svn: 114718
OpenPOWER on IntegriCloud