summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-mc/AsmParser.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move X86 instruction parsing into X86/AsmParser.Daniel Dunbar2009-07-281-2/+1
| | | | llvm-svn: 77384
* Switch AsmLexer::Lex to returning a reference to the current token.Daniel Dunbar2009-07-281-2/+2
| | | | llvm-svn: 77328
* Drop some AsmLexer methods in favor of their AsmToken equivalents.Daniel Dunbar2009-07-281-19/+18
| | | | llvm-svn: 77323
* llvm-mc: Sink token enum into AsmToken.Daniel Dunbar2009-07-281-98/+98
| | | | llvm-svn: 77322
* llvm-mc: Implement .abort fully in the front endDaniel Dunbar2009-07-271-5/+12
| | | | llvm-svn: 77272
* llvm-mc: Move AsmLexer::getCurStrVal to StringRef based API.Daniel Dunbar2009-07-271-90/+91
| | | | | | - My DFS traversal of LLVM is, at least for now, nearly complete! :) llvm-svn: 77258
* Removed the DumpSymbolsandMacros and LoadSymbolsandMacros MCStreamer API asKevin Enderby2009-07-201-6/+8
| | | | | | | | | the parsing of the .dump and .load should be done in the assembly parser and not have any need for an MCStreamer API. Changed the code for now so these just produce an error saying these specific directives are not yet implemented since they are likely no longer used and may never need to be implemented. llvm-svn: 76462
* Add MCAsmParser interface.Daniel Dunbar2009-07-201-1/+3
| | | | | | | - This provides the AsmParser interface to the target specific assembly parsers. llvm-svn: 76453
* Removed the SubsectionsViaSymbols MCStreamer API and replaced it with a genericKevin Enderby2009-07-161-1/+1
| | | | | | | EmitAssemblerFlag API which takes a value from the added AssemblerFlag enumerated constants. llvm-svn: 76087
* Clean up the definition of Str in AsmParser::ParseDirectiveDarwinDumpOrLoadKevin Enderby2009-07-161-3/+1
| | | | | | so it is defined with a lifetime that is as short as possible. llvm-svn: 76082
* implement .include in the lexer/parser instead of passing it into the streamer.Chris Lattner2009-07-161-7/+13
| | | | llvm-svn: 75896
* Added llvm-mc support for parsing the .dump and .load directives.Kevin Enderby2009-07-151-0/+29
| | | | llvm-svn: 75786
* Added llvm-mc support for parsing the .include directive.Kevin Enderby2009-07-141-0/+24
| | | | llvm-svn: 75711
* Added llvm-mc support for parsing the .lsym directive.Kevin Enderby2009-07-141-0/+32
| | | | llvm-svn: 75685
* Added llvm-mc support for parsing the .desc directive.Kevin Enderby2009-07-141-0/+33
| | | | llvm-svn: 75645
* Added llvm-mc support for parsing the .abort directive.Kevin Enderby2009-07-131-0/+25
| | | | llvm-svn: 75545
* add llvm-mc support for parsing the .subsections_via_symbols directive.Kevin Enderby2009-07-131-0/+16
| | | | llvm-svn: 75500
* silence vc++ warning.Chris Lattner2009-07-111-1/+1
| | | | llvm-svn: 75394
* add support for .zerofill, patch by Kevin Enderby!Chris Lattner2009-07-101-0/+94
| | | | llvm-svn: 75301
* add llvm-mc support for parsing the .lcomm directive, patch by Kevin Enderby!Chris Lattner2009-07-091-11/+14
| | | | llvm-svn: 75148
* Implement parsing support for the .comm directive. Patch byChris Lattner2009-07-071-0/+59
| | | | | | Kevin Enderby! llvm-svn: 74944
* implement error recovery in the llvm-mc parser. Feel the power!Chris Lattner2009-07-021-4/+11
| | | | llvm-svn: 74728
* llvm-mc/x86: Fix bug in disambiguation of displacement operand, introduced by meDaniel Dunbar2009-07-021-0/+13
| | | | | | | | | | | | | (I think). - We weren't properly parsing the leading parenthesized expression in something like 'push (4)(%eax)'. - Added ParseParenRelocatableExpression to support this. I suspect we should just use lookahead, though. - Test case to follow. llvm-svn: 74685
* llvm-mc: Emit parsed instructions to the MCStreamer.Daniel Dunbar2009-07-011-2/+1
| | | | llvm-svn: 74594
* llvm-mc: Introduce method to match a parsed x86 instruction into an MCInst.Daniel Dunbar2009-06-301-1/+1
| | | | llvm-svn: 74573
* llvm-mc: Accept relocatable expressions for .org, assignments, .byte, etc.Daniel Dunbar2009-06-301-12/+16
| | | | llvm-svn: 74498
* llvm-mc: Evaluation for relocatable expressions.Daniel Dunbar2009-06-301-0/+12
| | | | llvm-svn: 74496
* Normalize SourceMgr messages.Daniel Dunbar2009-06-301-7/+11
| | | | | | | | | | | | - Don't print "Parsing" in front of every message. - Take additional "type" argument which is prepended to the message (with ": ") if given. - Update clients to print errors (warnings) as: <filename>:<line number>: error(warning): ... llvm-svn: 74489
* llvm-mc: Parse symbol attribute directives.Daniel Dunbar2009-06-301-0/+55
| | | | llvm-svn: 74487
* llvm-mc: Parse .{,b,p2}align{,w,l} directives.Daniel Dunbar2009-06-291-2/+96
| | | | llvm-svn: 74478
* llvm-mc: Diagnose misuse (mix) of defined symbols and labels.Daniel Dunbar2009-06-291-6/+40
| | | | | | | | | | | | | | | | | - For example, we diagnose errors on: -- a: a = 10 -- - For now we reject code like: -- .long a a = 10 -- which "as" accepts (on Darwin). llvm-svn: 74476
* Fix uninitialized variable warning.Daniel Dunbar2009-06-291-1/+1
| | | | llvm-svn: 74457
* MC: Improve expression parsing and implement evaluation of absolute expressions.Daniel Dunbar2009-06-291-31/+118
| | | | llvm-svn: 74448
* MC: Parse .org directives.Daniel Dunbar2009-06-251-1/+30
| | | | llvm-svn: 74218
* MC: Parse .set and assignments.Daniel Dunbar2009-06-251-2/+51
| | | | llvm-svn: 74208
* Basic .s parsing for .asci[iz], .fill, .space, {.byte, .short, ... }Daniel Dunbar2009-06-241-1/+149
| | | | | | | - Includes some DG tests in test/MC/AsmParser, which are rather primitive since we don't have a -verify mode yet. llvm-svn: 74139
* implement a bunch of synonyms for section switching.Chris Lattner2009-06-241-3/+112
| | | | llvm-svn: 74062
* add support for parsing and emitting .section directives. We can now parse Chris Lattner2009-06-241-1/+34
| | | | | | | things like: .section __TEXT,__cstring,cstring_literals llvm-svn: 74058
* add trivial support for passing label definitions through the MCStreamer.Chris Lattner2009-06-241-0/+6
| | | | | | | This is suboptimal in several aspects, see the commented out assertion. I need to talk to Daniel about this. llvm-svn: 74057
* make the lexer unique strings it lexes instead of passing them back asChris Lattner2009-06-241-1/+1
| | | | | | std::strings. llvm-svn: 74036
* Start flushing out MCContext.Daniel Dunbar2009-06-231-0/+2
| | | | | | - Lives inside new library lib/MC (LLVMMC.a) llvm-svn: 74013
* refactor a bunch of X86 specific stuff out to its own file.Chris Lattner2009-06-231-197/+5
| | | | llvm-svn: 73982
* implement a trivial binary expression parser, we can now parse all of ↵Chris Lattner2009-06-231-3/+57
| | | | | | 176.gcc.llc.s llvm-svn: 73950
* process memory operands with a parenthesized expression for a displacement,Chris Lattner2009-06-221-2/+12
| | | | | | like "(4+5)(%eax)". llvm-svn: 73878
* Implement full support for parsing primary expressions. We can now parseChris Lattner2009-06-221-3/+37
| | | | | | | | | | | all of health and voronoi (ignoring directives). We only get 409 lines into 176.gcc though because we don't have binary operators yet: Parsing 176.gcc.llc.s:409: unexpected token in operand list movsbl _arityvec+1(,%edi,8), %eax ^ llvm-svn: 73877
* implement parser support for '*' operands, as in "call *%eax".Chris Lattner2009-06-221-6/+13
| | | | llvm-svn: 73876
* implement memory operand parsing.Chris Lattner2009-06-221-14/+130
| | | | llvm-svn: 73875
* start implementing some simple operand parsing.Chris Lattner2009-06-221-14/+115
| | | | llvm-svn: 73867
* rename SourceMgr::PrintError to PrintMessage.Chris Lattner2009-06-211-2/+12
| | | | llvm-svn: 73861
* set up the top-level parsing loop.Chris Lattner2009-06-211-0/+54
| | | | llvm-svn: 73860
OpenPOWER on IntegriCloud