7a85f9cf4d 
								
							 
						 
						
							
							
								
								llvm-mc: Fix llvm-mc -as-lex.  
							
							... 
							
							
							
							llvm-svn: 108644 
							
						 
						
							2010-07-18 18:31:28 +00:00  
				
					
						
							
							
								 
						
							
								02877d6e85 
								
							 
						 
						
							
							
								
								MC: Pass the target instance to the AsmParser constructor.  
							
							... 
							
							
							
							llvm-svn: 107426 
							
						 
						
							2010-07-01 20:41:56 +00:00  
				
					
						
							
							
								 
						
							
								70883c32ec 
								
							 
						 
						
							
							
								
								llvm-mc: Don't set NO_INSTALL on llvm-mc.  
							
							... 
							
							
							
							llvm-svn: 105837 
							
						 
						
							2010-06-11 22:00:08 +00:00  
				
					
						
							
							
								 
						
							
								174f57668f 
								
							 
						 
						
							
							
								
								Avoid calling outs() and fouts() when the stream isn't really needed.  
							
							... 
							
							
							
							llvm-svn: 104873 
							
						 
						
							2010-05-27 19:47:36 +00:00  
				
					
						
							
							
								 
						
							
								3ff1a06de6 
								
							 
						 
						
							
							
								
								MC: Add an MCLoggingStreamer, for use in debugging integrated-as mismatches.  
							
							... 
							
							
							
							llvm-svn: 104463 
							
						 
						
							2010-05-23 17:44:06 +00:00  
				
					
						
							
							
								 
						
							
								638cdb2db1 
								
							 
						 
						
							
							
								
								Currently, createMachOStreamer() is invoked directly in llvm-mc which  
							
							... 
							
							
							
							isn't ideal if we want to be able to use another object file format.
Add a createObjectStreamer() factory method so that the correct object
file streamer can be instantiated for a given target triple.
llvm-svn: 104318 
							
						 
						
							2010-05-21 12:54:43 +00:00  
				
					
						
							
							
								 
						
							
								e85262d651 
								
							 
						 
						
							
							
								
								Remove dead option.  
							
							... 
							
							
							
							llvm-svn: 104303 
							
						 
						
							2010-05-21 00:27:55 +00:00  
				
					
						
							
							
								 
						
							
								d7f09c7851 
								
							 
						 
						
							
							
								
								Extended the edis "IsBranch" property to call  
							
							... 
							
							
							
							instructions as well.  Added support for checking
this to the llvm-mc tester as well.
llvm-svn: 103454 
							
						 
						
							2010-05-11 01:27:08 +00:00  
				
					
						
							
							
								 
						
							
								4cd930f417 
								
							 
						 
						
							
							
								
								Fixed a sign-extension bug in the X86 disassembler  
							
							... 
							
							
							
							that was causing PC-relative branch targets to be
evaluated incorrectly.  Also added support for
checking operand values to the llvm-mc tester.
llvm-svn: 103128 
							
						 
						
							2010-05-05 22:47:27 +00:00  
				
					
						
							
							
								 
						
							
								8af6f765f5 
								
							 
						 
						
							
							
								
								Add CMake support for 'edis'.  
							
							... 
							
							
							
							llvm-svn: 101177 
							
						 
						
							2010-04-13 20:52:50 +00:00  
				
					
						
							
							
								 
						
							
								6b2b064d7a 
								
							 
						 
						
							
							
								
								Make the disassembler respect the assembler dialect when printing instructions,  
							
							... 
							
							
							
							patch by Marius Wachtler!
llvm-svn: 101160 
							
						 
						
							2010-04-13 18:41:17 +00:00  
				
					
						
							
							
								 
						
							
								2d03d3a8a7 
								
							 
						 
						
							
							
								
								Second try at integrating the edis tester.  This  
							
							... 
							
							
							
							time I use the LIBS variable, which is not subject
to a %.a -> -l% transformation, to link llvm-mc
against libEnhancedDisassembly.
llvm-mc -edis works the same as llvm-mc
-disassemble, but outputs tokens and operands.
llvm-svn: 101058 
							
						 
						
							2010-04-12 19:43:00 +00:00  
				
					
						
							
							
								 
						
							
								55ddc30f07 
								
							 
						 
						
							
							
								
								revert r100842  which broke several of the build bots.  
							
							... 
							
							
							
							llvm-svn: 100848 
							
						 
						
							2010-04-09 04:24:20 +00:00  
				
					
						
							
							
								 
						
							
								844a7febd3 
								
							 
						 
						
							
							
								
								Added a tester for the enhanced disassembler,  
							
							... 
							
							
							
							integrated into the llvm-mc testing tool.
llvm-svn: 100842 
							
						 
						
							2010-04-09 01:43:16 +00:00  
				
					
						
							
							
								 
						
							
								3d18e71ae8 
								
							 
						 
						
							
							
								
								tidy #includes.  
							
							... 
							
							
							
							llvm-svn: 100489 
							
						 
						
							2010-04-05 23:07:18 +00:00  
				
					
						
							
							
								 
						
							
								7012916275 
								
							 
						 
						
							
							
								
								fix an ugly wart in the MCInstPrinter api where the  
							
							... 
							
							
							
							raw_ostream to print an instruction to had to be specified
at MCInstPrinter construction time instead of being able
to pick at each call to printInstruction.
llvm-svn: 100307 
							
						 
						
							2010-04-04 05:04:31 +00:00  
				
					
						
							
							
								 
						
							
								9f59b3dd9b 
								
							 
						 
						
							
							
								
								remove some extraneous casts  
							
							... 
							
							
							
							llvm-svn: 100287 
							
						 
						
							2010-04-03 21:03:50 +00:00  
				
					
						
							
							
								 
						
							
								d821f4ac60 
								
							 
						 
						
							
							
								
								llvm-mc: Add a -mc-relax-all option, which relaxes every fixup. We always need  
							
							... 
							
							
							
							exactly two passes in that case, and don't ever need to recompute any layout,
so this is a nice baseline for relaxation performance.
llvm-svn: 99563 
							
						 
						
							2010-03-25 22:49:09 +00:00  
				
					
						
							
							
								 
						
							
								b09b8906cb 
								
							 
						 
						
							
							
								
								llvm-mc: Support -filetype=null, for timing purposes.  
							
							... 
							
							
							
							llvm-svn: 99349 
							
						 
						
							2010-03-23 23:47:12 +00:00  
				
					
						
							
							
								 
						
							
								d9d5b315ab 
								
							 
						 
						
							
							
								
								llvm-mc: Fix MCInstPrinter memory leaks.  
							
							... 
							
							
							
							llvm-svn: 99101 
							
						 
						
							2010-03-20 22:36:35 +00:00  
				
					
						
							
							
								 
						
							
								c5621ed07a 
								
							 
						 
						
							
							
								
								llvm-mc: Fix memory leak of MCAsmInfo.  
							
							... 
							
							
							
							llvm-svn: 99098 
							
						 
						
							2010-03-20 22:36:25 +00:00  
				
					
						
							
							
								 
						
							
								abf6e3657e 
								
							 
						 
						
							
							
								
								llvm-mc: Fix target selection for --disassemble to use GetTarget.  
							
							... 
							
							
							
							llvm-svn: 98973 
							
						 
						
							2010-03-19 18:07:50 +00:00  
				
					
						
							
							
								 
						
							
								90a7859ebc 
								
							 
						 
						
							
							
								
								fix an MCInstPrinter leak that jyasskin pointed out:  
							
							... 
							
							
							
							createAsmStreamer now takes ownership of the instprinter.
llvm-svn: 98939 
							
						 
						
							2010-03-19 05:48:53 +00:00  
				
					
						
							
							
								 
						
							
								144873437c 
								
							 
						 
						
							
							
								
								llvm-mc: Delete output files on error.  
							
							... 
							
							
							
							llvm-svn: 98445 
							
						 
						
							2010-03-13 19:31:47 +00:00  
				
					
						
							
							
								 
						
							
								322fec671b 
								
							 
						 
						
							
							
								
								llvm-mc: Support -n, useful for comparing -integrated-as output since the  
							
							... 
							
							
							
							compiler may not lead with the text section.
llvm-svn: 98418 
							
						 
						
							2010-03-13 02:20:57 +00:00  
				
					
						
							
							
								 
						
							
								4689211583 
								
							 
						 
						
							
							
								
								llvm-mc: Support -arch as a simplified form of -triple.  
							
							... 
							
							
							
							llvm-svn: 98417 
							
						 
						
							2010-03-13 02:20:38 +00:00  
				
					
						
							
							
								 
						
							
								ac77bf5d1e 
								
							 
						 
						
							
							
								
								remove MAI argument from createAsmStreamer since it  
							
							... 
							
							
							
							can get it from the context now.
llvm-svn: 98361 
							
						 
						
							2010-03-12 18:28:53 +00:00  
				
					
						
							
							
								 
						
							
								768ea2add2 
								
							 
						 
						
							
							
								
								change MCContext to always have an MCAsmInfo.  
							
							... 
							
							
							
							llvm-svn: 98293 
							
						 
						
							2010-03-11 22:53:35 +00:00  
				
					
						
							
							
								 
						
							
								c5ddbad237 
								
							 
						 
						
							
							
								
								MC: Provide MCAssembler with a TargetAsmBackend.  
							
							... 
							
							
							
							llvm-svn: 98222 
							
						 
						
							2010-03-11 01:34:27 +00:00  
				
					
						
							
							
								 
						
							
								741580a5bd 
								
							 
						 
						
							
							
								
								give MCCodeEmitters access to the current MCContext.  
							
							... 
							
							
							
							llvm-svn: 96038 
							
						 
						
							2010-02-12 23:12:47 +00:00  
				
					
						
							
							
								 
						
							
								75c9a4eeae 
								
							 
						 
						
							
							
								
								llvm-mc: Remove --show-fixups and always show as part of --show-encoding.  
							
							... 
							
							
							
							Also, fix a silly memory leak.
llvm-svn: 95752 
							
						 
						
							2010-02-10 01:41:14 +00:00  
				
					
						
							
							
								 
						
							
								9a0a46163d 
								
							 
						 
						
							
							
								
								llvm-mc: Add --show-fixups option, for displaying the instruction fixup information in the asm comments.  
							
							... 
							
							
							
							llvm-svn: 95710 
							
						 
						
							2010-02-09 23:00:14 +00:00  
				
					
						
							
							
								 
						
							
								e3ee332fe0 
								
							 
						 
						
							
							
								
								llvm-mc: Add --show-inst option, for showing the MCInst inline with the assembly  
							
							... 
							
							
							
							output.
llvm-svn: 95227 
							
						 
						
							2010-02-03 18:18:30 +00:00  
				
					
						
							
							
								 
						
							
								6a6f9cc634 
								
							 
						 
						
							
							
								
								Fixed the disassembler so it accepts multiple  
							
							... 
							
							
							
							instructions on a single line.  Also made it a
bit more forgiving when it reports errors.
llvm-svn: 95197 
							
						 
						
							2010-02-03 03:46:41 +00:00  
				
					
						
							
							
								 
						
							
								823aed16f9 
								
							 
						 
						
							
							
								
								make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.  
							
							... 
							
							
							
							llvm-svn: 94378 
							
						 
						
							2010-01-24 20:43:08 +00:00  
				
					
						
							
							
								 
						
							
								0522eb2160 
								
							 
						 
						
							
							
								
								pass "-fasm-verbose" into createAsmStreamer.  
							
							... 
							
							
							
							llvm-svn: 94165 
							
						 
						
							2010-01-22 07:06:15 +00:00  
				
					
						
							
							
								 
						
							
								7ba0661f27 
								
							 
						 
						
							
							
								
								Stop building RTTI information for *most* llvm libraries.  Notable  
							
							... 
							
							
							
							missing ones are libsupport, libsystem and libvmcore.  libvmcore is
currently blocked on bugpoint, which uses EH.  Once it stops using
EH, we can switch it off.
This #if 0's out 3 unit tests, because gtest requires RTTI information.
Suggestions welcome on how to fix this.
llvm-svn: 94164 
							
						 
						
							2010-01-22 06:49:46 +00:00  
				
					
						
							
							
								 
						
							
								5b0e01c54e 
								
							 
						 
						
							
							
								
								move some files out of the llvm-mc tool into the MCParser library so  
							
							... 
							
							
							
							other tools can link it.
llvm-svn: 94131 
							
						 
						
							2010-01-22 01:58:08 +00:00  
				
					
						
							
							
								 
						
							
								00646cfbd4 
								
							 
						 
						
							
							
								
								create a new MCParser library and move some stuff into it.  
							
							... 
							
							
							
							llvm-svn: 94129 
							
						 
						
							2010-01-22 01:44:57 +00:00  
				
					
						
							
							
								 
						
							
								6401c883c4 
								
							 
						 
						
							
							
								
								remove some confused code that used strtoull  
							
							... 
							
							
							
							llvm-svn: 94128 
							
						 
						
							2010-01-22 01:17:12 +00:00  
				
					
						
							
							
								 
						
							
								7a77eae2f3 
								
							 
						 
						
							
							
								
								Moved handling of inclusion from the AsmLexer to  
							
							... 
							
							
							
							the AsmParser, breaking AsmLexer's dependence on
SourceMgr.
llvm-svn: 94054 
							
						 
						
							2010-01-21 00:19:58 +00:00  
				
					
						
							
							
								 
						
							
								177934e021 
								
							 
						 
						
							
							
								
								Changed the AsmParser to handle error messages itself  
							
							... 
							
							
							
							rather than passing them off to the AsmLexer to handle.
This means the AsmLexer no longer requires a SourceMgr
to do error handling.
llvm-svn: 94047 
							
						 
						
							2010-01-20 23:19:55 +00:00  
				
					
						
							
							
								 
						
							
								1a0eeb6e06 
								
							 
						 
						
							
							
								
								Promoted the reference to the SourceMgr from AsmLexer  
							
							... 
							
							
							
							into AsmParser, in preparation for making AsmLexer
independent of the SourceMgr
llvm-svn: 94043 
							
						 
						
							2010-01-20 22:45:23 +00:00  
				
					
						
							
							
								 
						
							
								70855e42e6 
								
							 
						 
						
							
							
								
								Modified MCAsmLexer to return error information upward  
							
							... 
							
							
							
							rather than printing it locally, reducing its dependence
on SourceMgr.
llvm-svn: 94041 
							
						 
						
							2010-01-20 22:18:24 +00:00  
				
					
						
							
							
								 
						
							
								38caaf14c1 
								
							 
						 
						
							
							
								
								give createAsmStreamer an 'isLittleEndian' argument.  
							
							... 
							
							
							
							llvm-svn: 93986 
							
						 
						
							2010-01-20 06:39:07 +00:00  
				
					
						
							
							
								 
						
							
								936b0d3144 
								
							 
						 
						
							
							
								
								Promoted the getTok() method to MCAsmParser so that  
							
							... 
							
							
							
							the two token accessor functions are declared consistently.
Modified the clients of MCAsmParser to reflect this change.
llvm-svn: 93916 
							
						 
						
							2010-01-19 21:44:56 +00:00  
				
					
						
							
							
								 
						
							
								686ed8d248 
								
							 
						 
						
							
							
								
								Added a Lex function to the AsmParser, to allow handling  
							
							... 
							
							
							
							of include directives to occur within the parser itself.
This will break the lexer's dependency on a SourceMgr as
input.
llvm-svn: 93899 
							
						 
						
							2010-01-19 20:22:31 +00:00  
				
					
						
							
							
								 
						
							
								c35681b298 
								
							 
						 
						
							
							
								
								Generalize mcasmstreamer data emission APIs to take an address space  
							
							... 
							
							
							
							identifier.  There is no way to work around it.
llvm-svn: 93896 
							
						 
						
							2010-01-19 19:46:13 +00:00  
				
					
						
							
							
								 
						
							
								0c65fd4902 
								
							 
						 
						
							
							
								
								add a "MCStreamer::EmitFill" method, and move the default implementation  
							
							... 
							
							
							
							(which just iteratively emits bytes) to MCStreamer.
llvm-svn: 93888 
							
						 
						
							2010-01-19 18:45:47 +00:00  
				
					
						
							
							
								 
						
							
								ab9cd3e132 
								
							 
						 
						
							
							
								
								fix parsing .comm directives on systems which do not represent alignments  
							
							... 
							
							
							
							as a power of 2.  This fixes MC/AsmParser/directive_comm.s
llvm-svn: 93867 
							
						 
						
							2010-01-19 06:22:22 +00:00  
				
					
						
							
							
								 
						
							
								e17df0b7f0 
								
							 
						 
						
							
							
								
								fix a bug in range information for $42, eliminate an  
							
							... 
							
							
							
							unneeded argument from ParseExpression.
llvm-svn: 93536 
							
						 
						
							2010-01-15 19:39:23 +00:00  
				
					
						
							
							
								 
						
							
								528d00b913 
								
							 
						 
						
							
							
								
								extend MCAsmParser::ParseExpression and ParseParenExpression  
							
							... 
							
							
							
							to return range information for subexpressions.  Use this to
provide range info for several new X86Operands.
llvm-svn: 93534 
							
						 
						
							2010-01-15 19:28:38 +00:00  
				
					
						
							
							
								 
						
							
								14bf521792 
								
							 
						 
						
							
							
								
								add virtual methods to get the start/end of a MCParsedAsmOperand,  
							
							... 
							
							
							
							the default implementation returns "unknown".
llvm-svn: 93470 
							
						 
						
							2010-01-14 22:29:57 +00:00  
				
					
						
							
							
								 
						
							
								f29c0b6880 
								
							 
						 
						
							
							
								
								Split the TargetAsmParser "ParseInstruction" interface in half:  
							
							... 
							
							
							
							the new ParseInstruction method just parses and returns a list of
target operands.  A new MatchInstruction interface is used to
turn the operand list into an MCInst.
This requires new/deleting all the operands, but it also gives 
targets the ability to use polymorphic operands if they want to. 
llvm-svn: 93469 
							
						 
						
							2010-01-14 22:21:20 +00:00  
				
					
						
							
							
								 
						
							
								77fd677111 
								
							 
						 
						
							
							
								
								prune #includes in TargetAsmParser.h  
							
							... 
							
							
							
							Pass in SMLoc of instr opcode into ParseInstruction.
Make AsmToken be a class, not a struct.
llvm-svn: 93457 
							
						 
						
							2010-01-14 21:32:45 +00:00  
				
					
						
							
							
								 
						
							
								ae606a1d1d 
								
							 
						 
						
							
							
								
								Mark some debug variables as 'unused' to quiet compiler and analyzer.  
							
							... 
							
							
							
							llvm-svn: 92183 
							
						 
						
							2009-12-28 01:34:57 +00:00  
				
					
						
							
							
								 
						
							
								b257d24f62 
								
							 
						 
						
							
							
								
								rename HexDisassembler -> Disassembler, it works on any input  
							
							... 
							
							
							
							integer encoding (0123, 0b10101, 42, etc).
llvm-svn: 91934 
							
						 
						
							2009-12-22 22:50:29 +00:00  
				
					
						
							
							
								 
						
							
								e3437b33f5 
								
							 
						 
						
							
							
								
								just discard the debug output from the disassembler.  
							
							... 
							
							
							
							llvm-svn: 91933 
							
						 
						
							2009-12-22 22:47:43 +00:00  
				
					
						
							
							
								 
						
							
								778f92ab02 
								
							 
						 
						
							
							
								
								specify what is invalid about it  
							
							... 
							
							
							
							llvm-svn: 91901 
							
						 
						
							2009-12-22 07:03:21 +00:00  
				
					
						
							
							
								 
						
							
								502f0f11e0 
								
							 
						 
						
							
							
								
								reject invalid input with a caret, e.g.:  
							
							... 
							
							
							
							simple-tests.txt:16:1: error: invalid instruction
0xff 0xff
^
llvm-svn: 91898 
							
						 
						
							2009-12-22 06:58:29 +00:00  
				
					
						
							
							
								 
						
							
								dd0c01b5de 
								
							 
						 
						
							
							
								
								various cleanups, make the disassemble reject lines with too much  
							
							... 
							
							
							
							data on them, for example:
	addb	%al, (%rax)
simple-tests.txt:11:5: error: excess data detected in input
0 0 0 0 0 
    ^
llvm-svn: 91896 
							
						 
						
							2009-12-22 06:56:51 +00:00  
				
					
						
							
							
								 
						
							
								8879918722 
								
							 
						 
						
							
							
								
								If you thought that it didn't make sense for the disassembler  
							
							... 
							
							
							
							to not produce caret diagnostics, you were right!
llvm-svn: 91895 
							
						 
						
							2009-12-22 06:45:48 +00:00  
				
					
						
							
							
								 
						
							
								dc9845b79a 
								
							 
						 
						
							
							
								
								rewrite the file parser for the disassembler, implementing support for  
							
							... 
							
							
							
							comments.  Also, check in a simple testcase for the disassembler,
including a test for r91864
llvm-svn: 91894 
							
						 
						
							2009-12-22 06:37:58 +00:00  
				
					
						
							
							
								 
						
							
								72cbaa2ecb 
								
							 
						 
						
							
							
								
								don't crash on blank lines, rename some variables.  
							
							... 
							
							
							
							llvm-svn: 91892 
							
						 
						
							2009-12-22 06:24:00 +00:00  
				
					
						
							
							
								 
						
							
								187220e3f5 
								
							 
						 
						
							
							
								
								Update CMake build to include HexDisassembler.cpp.  
							
							... 
							
							
							
							llvm-svn: 91589 
							
						 
						
							2009-12-17 06:35:17 +00:00  
				
					
						
							
							
								 
						
							
								7e64550747 
								
							 
						 
						
							
							
								
								Test harness for the LLVM disassembler.  When invoked  
							
							... 
							
							
							
							with -disassemble, llvm-mc now accepts lines of the
form
0x00 0x00
and passes the resulting bytes to the disassembler for
the chosen (or default) target, printing the result.
llvm-svn: 91579 
							
						 
						
							2009-12-17 01:49:59 +00:00  
				
					
						
							
							
								 
						
							
								e0856c5f40 
								
							 
						 
						
							
							
								
								Line this up as well.  
							
							... 
							
							
							
							llvm-svn: 85748 
							
						 
						
							2009-11-01 22:08:51 +00:00  
				
					
						
							
							
								 
						
							
								b244909ad4 
								
							 
						 
						
							
							
								
								Fix whitespace.  
							
							... 
							
							
							
							llvm-svn: 85747 
							
						 
						
							2009-11-01 22:07:54 +00:00  
				
					
						
							
							
								 
						
							
								56869f22c4 
								
							 
						 
						
							
							
								
								Move DataTypes.h to include/llvm/System, update all users. This breaks the last  
							
							... 
							
							
							
							direct inclusion edge from System to Support.
llvm-svn: 85086 
							
						 
						
							2009-10-26 01:35:46 +00:00  
				
					
						
							
							
								 
						
							
								c3bd60e393 
								
							 
						 
						
							
							
								
								MC: Remove unneeded context argument to MCExpr::Evaluate*.  
							
							... 
							
							
							
							llvm-svn: 84233 
							
						 
						
							2009-10-16 01:57:52 +00:00  
				
					
						
							
							
								 
						
							
								5f339244fb 
								
							 
						 
						
							
							
								
								MC: Tweak variable assignment diagnostics, and make reassignment of non-absolute  
							
							... 
							
							
							
							variables and symbols invalid.
llvm-svn: 84232 
							
						 
						
							2009-10-16 01:57:39 +00:00  
				
					
						
							
							
								 
						
							
								d20cda028a 
								
							 
						 
						
							
							
								
								MC: When parsing a variable reference, substitute absolute variables immediately  
							
							... 
							
							
							
							since they are allowed to be redefined.
llvm-svn: 84230 
							
						 
						
							2009-10-16 01:34:54 +00:00  
				
					
						
							
							
								 
						
							
								351a7ef01a 
								
							 
						 
						
							
							
								
								add a new DirectiveMap stringmap, which allows more efficient dispatching  
							
							... 
							
							
							
							to directive handlers and allows for easier extensibility.
I only switched a few over for now.
llvm-svn: 82926 
							
						 
						
							2009-09-27 21:16:52 +00:00  
				
					
						
							
							
								 
						
							
								10a1cfd0f9 
								
							 
						 
						
							
							
								
								avoid copying MCAsmInfo by value, add an (extremely low prio) fixme.  
							
							... 
							
							
							
							llvm-svn: 82911 
							
						 
						
							2009-09-27 19:38:39 +00:00  
				
					
						
							
							
								 
						
							
								4479034537 
								
							 
						 
						
							
							
								
								Add an intel syntax MCInstPrinter implementation.  You can now  
							
							... 
							
							
							
							transcode from AT&T to intel syntax with "llvm-mc foo.s -output-asm-variant=1"
llvm-svn: 82385 
							
						 
						
							2009-09-20 07:17:49 +00:00  
				
					
						
							
							
								 
						
							
								ecd879a2d5 
								
							 
						 
						
							
							
								
								Fixed some problems with the logic of parsing line comments by adding  
							
							... 
							
							
							
							isAtStartOfComment and using that instead in two places where a loop
to check if the char was in MAI.getCommentString().
llvm-svn: 82059 
							
						 
						
							2009-09-16 18:08:00 +00:00  
				
					
						
							
							
								 
						
							
								c6a889d0b6 
								
							 
						 
						
							
							
								
								use an accessor to simplify code.  
							
							... 
							
							
							
							llvm-svn: 81997 
							
						 
						
							2009-09-16 04:12:47 +00:00  
				
					
						
							
							
								 
						
							
								11b2fc9ea4 
								
							 
						 
						
							
							
								
								Change MCAsmStreamer to take an MCInstPrinter instead of a  
							
							... 
							
							
							
							full AsmPrinter, and change TargetRegistry to keep track
of registered MCInstPrinters.
llvm-mc is still linking in the entire
target foo to get the code emitter stuff, but this is an
important step in the right direction.
llvm-svn: 81754 
							
						 
						
							2009-09-14 03:02:37 +00:00  
				
					
						
							
							
								 
						
							
								ce4bec8e0c 
								
							 
						 
						
							
							
								
								Added the ParseInstruction() hook for target specific assembler directives so  
							
							... 
							
							
							
							that things like .word can be parsed as target specific.  Moved parsing .word
out of AsmParser.cpp into X86AsmParser.cpp as it is 2 bytes on X86 and 4 bytes
for other targets that support the .word directive.
llvm-svn: 81461 
							
						 
						
							2009-09-10 20:51:44 +00:00  
				
					
						
							
							
								 
						
							
								a944234a1e 
								
							 
						 
						
							
							
								
								MC: Give target specific parsers access to the MCStreamer.  
							
							... 
							
							
							
							llvm-svn: 81416 
							
						 
						
							2009-09-10 00:59:15 +00:00  
				
					
						
							
							
								 
						
							
								63951ada31 
								
							 
						 
						
							
							
								
								Fix an integer truncation noticed by MSVC.  
							
							... 
							
							
							
							llvm-svn: 81109 
							
						 
						
							2009-09-06 09:35:10 +00:00  
				
					
						
							
							
								 
						
							
								9c0f7fc746 
								
							 
						 
						
							
							
								
								Added AsmToken enum constants to MCAsmLexer.h for '[', ']', '{', and '}' in  
							
							... 
							
							
							
							preparation of supporting other targets. Then changed the lexer to parse these
as tokens.
llvm-svn: 81050 
							
						 
						
							2009-09-04 22:40:31 +00:00  
				
					
						
							
							
								 
						
							
								f92f9909c4 
								
							 
						 
						
							
							
								
								Added the AsmToken::Hash enum constant to MCAsmLexer.h in preparation of  
							
							... 
							
							
							
							supporting other targets.  Changed the code to pass MCAsmInfo to the parser
and the lexer.  Then changed the lexer to use CommentString from MCAsmInfo
instead of a literal '#' character.
llvm-svn: 81046 
							
						 
						
							2009-09-04 21:45:34 +00:00  
				
					
						
							
							
								 
						
							
								7d91218c75 
								
							 
						 
						
							
							
								
								Removed the non-target independent AsmToken::Register enum constant  
							
							... 
							
							
							
							from MCAsmLexer.h in preparation of supporting other targets.  Changed the
X86AsmParser code to reflect this by removing AsmLexer::LexPercent and looking
for AsmToken::Percent when parsing in places that used AsmToken::Register.
Then changed X86ATTAsmParser::ParseRegister to parse out registers as an
AsmToken::Percent followed by an AsmToken::Identifier.
llvm-svn: 80929 
							
						 
						
							2009-09-03 17:15:07 +00:00  
				
					
						
							
							
								 
						
							
								41bf56de79 
								
							 
						 
						
							
							
								
								TAI -> MAI  
							
							... 
							
							
							
							llvm-svn: 80899 
							
						 
						
							2009-09-03 06:13:54 +00:00  
				
					
						
							
							
								 
						
							
								897ffadd2d 
								
							 
						 
						
							
							
								
								llvm-mc: Pass values to MCStreamer as MCExprs, not MCValues.  
							
							... 
							
							
							
							llvm-svn: 80578 
							
						 
						
							2009-08-31 08:09:28 +00:00  
				
					
						
							
							
								 
						
							
								b7b2097aac 
								
							 
						 
						
							
							
								
								llvm-mc: Simplify EmitAssignment ('.set' is identical to '=').  
							
							... 
							
							
							
							llvm-svn: 80577 
							
						 
						
							2009-08-31 08:09:09 +00:00  
				
					
						
							
							
								 
						
							
								b12b33051d 
								
							 
						 
						
							
							
								
								llvm-mc: Remove MCAsmParser::Parse[Paren]RelocatableExpression.  
							
							... 
							
							
							
							llvm-svn: 80576 
							
						 
						
							2009-08-31 08:08:50 +00:00  
				
					
						
							
							
								 
						
							
								7c82d56930 
								
							 
						 
						
							
							
								
								llvm-mc: Add MCAsmParser::Parse[Paren]Expression forms which return an MCExpr.  
							
							... 
							
							
							
							llvm-svn: 80574 
							
						 
						
							2009-08-31 08:08:17 +00:00  
				
					
						
							
							
								 
						
							
								940cda2590 
								
							 
						 
						
							
							
								
								llvm-mc: Add MCAsmParser::getContext.  
							
							... 
							
							
							
							llvm-svn: 80571 
							
						 
						
							2009-08-31 08:07:44 +00:00  
				
					
						
							
							
								 
						
							
								f363645da2 
								
							 
						 
						
							
							
								
								llvm-mc: Switch MCExpr construction to using static member functions, and taking the MCContext (which now owns all MCExprs).  
							
							... 
							
							
							
							llvm-svn: 80569 
							
						 
						
							2009-08-31 08:07:22 +00:00  
				
					
						
							
							
								 
						
							
								115e4d6d7b 
								
							 
						 
						
							
							
								
								llvm-mc: Move AsmExpr into MC lib (as MCExpr).  
							
							... 
							
							
							
							llvm-svn: 80567 
							
						 
						
							2009-08-31 08:06:59 +00:00  
				
					
						
							
							
								 
						
							
								6a715dccdf 
								
							 
						 
						
							
							
								
								llvm-mc: MCStreamer cleanups. - Remove EmitLocalSymbol, this is unsupported for now.  
							
							... 
							
							
							
							- Switch Emit{CommonSymbol,Zerofill} to take alignment in bytes (for consistency).
llvm-svn: 80484 
							
						 
						
							2009-08-30 06:17:16 +00:00  
				
					
						
							
							
								 
						
							
								96abad185d 
								
							 
						 
						
							
							
								
								llvm-mc: Emit .lcomm as .zerofill.  
							
							... 
							
							
							
							llvm-svn: 80343 
							
						 
						
							2009-08-28 05:48:46 +00:00  
				
					
						
							
							
								 
						
							
								e48a69b2a3 
								
							 
						 
						
							
							
								
								llvm-mc: Unique zero fill sections.  
							
							... 
							
							
							
							llvm-svn: 80342 
							
						 
						
							2009-08-28 05:48:29 +00:00  
				
					
						
							
							
								 
						
							
								8d38b8d20c 
								
							 
						 
						
							
							
								
								Revert r80305, I forgot a dependent change.  
							
							... 
							
							
							
							--- Reverse-merging r80305 into '.':
U    tools/llvm-mc/AsmParser.cpp
llvm-svn: 80309 
							
						 
						
							2009-08-27 23:58:10 +00:00  
				
					
						
							
							
								 
						
							
								ba33ff294e 
								
							 
						 
						
							
							
								
								llvm-mc: Unique sections in .zerofill.  
							
							... 
							
							
							
							llvm-svn: 80305 
							
						 
						
							2009-08-27 23:45:06 +00:00  
				
					
						
							
							
								 
						
							
								c7c5f9fa86 
								
							 
						 
						
							
							
								
								llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.  
							
							... 
							
							
							
							- No relocations yet, of course.
llvm-svn: 80235 
							
						 
						
							2009-08-27 08:17:51 +00:00  
				
					
						
							
							
								 
						
							
								d18dd1d5f8 
								
							 
						 
						
							
							
								
								llvm-mc: Only show instruction encodings with --show-encoding.  
							
							... 
							
							
							
							llvm-svn: 80230 
							
						 
						
							2009-08-27 07:56:39 +00:00  
				
					
						
							
							
								 
						
							
								81cb753298 
								
							 
						 
						
							
							
								
								llvm-mc: Tweak MCCodeEmitter skeleton.  
							
							... 
							
							
							
							llvm-svn: 80193 
							
						 
						
							2009-08-27 01:34:22 +00:00  
				
					
						
							
							
								 
						
							
								65105174a6 
								
							 
						 
						
							
							
								
								Sketch TargetRegistry support for MCCodeEmitter abstract interface.  
							
							... 
							
							
							
							- Of course, nothing actually can provide this interface yet.
llvm-svn: 80188 
							
						 
						
							2009-08-27 00:51:57 +00:00  
				
					
						
							
							
								 
						
							
								4d7b2e3307 
								
							 
						 
						
							
							
								
								llvm-mc/Mach-O: Unique sections properly, so we don't get duplicate text  
							
							... 
							
							
							
							sections, etc.
 - The quick and dirty way, just clone the TargetLoweringObjectFile
   code. Eventually this should be shared... somehow.
llvm-svn: 80168 
							
						 
						
							2009-08-26 22:49:51 +00:00  
				
					
						
							
							
								 
						
							
								e73b267301 
								
							 
						 
						
							
							
								
								llvm-mc/Mach-O: Don't put assembler temporary labels in the symbol table.  
							
							... 
							
							
							
							- I moved section creation back into AsmParser. I think policy decisions like
   this should be pushed higher, not lower, when possible (in addition the
   assembler has flags which change this behavior, for example).
llvm-svn: 80162 
							
						 
						
							2009-08-26 22:13:22 +00:00  
				
					
						
							
							
								 
						
							
								90398bd222 
								
							 
						 
						
							
							
								
								llvm-mc: Make MCValue take const MCSymbol*s.  
							
							... 
							
							
							
							llvm-svn: 80078 
							
						 
						
							2009-08-26 09:16:46 +00:00  
				
					
						
							
							
								 
						
							
								18f3c9b994 
								
							 
						 
						
							
							
								
								llvm-mc: Make non-sensical max bytes to .align an error.  
							
							... 
							
							
							
							Also, warn about overflow in alignment values.
llvm-svn: 80077 
							
						 
						
							2009-08-26 09:16:34 +00:00  
				
					
						
							
							
								 
						
							
								61a8796ddb 
								
							 
						 
						
							
							
								
								Make LLVM command-line tools overwrite their output files without -f.  
							
							... 
							
							
							
							This is conventional command-line tool behavior. -f now just means
"enable binary output on terminals".
Add a -f option to llvm-extract and llvm-link, for consistency.
Remove F_Force from raw_fd_ostream and enable overwriting and
truncating by default. Introduce an F_Excl flag to permit users to
enable a failure when the file already exists. This flag is
currently unused.
Update Makefiles and documentation accordingly.
llvm-svn: 79990 
							
						 
						
							2009-08-25 15:34:52 +00:00  
				
					
						
							
							
								 
						
							
								9e6f1f160a 
								
							 
						 
						
							
							
								
								Change raw_fd_ostream to take flags as an optional bitmask  
							
							... 
							
							
							
							instead of as two bools.  Use this to add a F_Append flag
which has the obvious behavior.
Other unrelated changes conflated into this patch:
1. REmove EH stuff from llvm-dis and llvm-as, the try blocks
   are dead.
2. Simplify the filename inference code in llvm-as/llvm-dis,
   because raw_fd_ostream does the right thing with '-'.
3. Switch machine verifier to use raw_ostream instead of ostream
   (Which is the thing that needed append in the first place).
llvm-svn: 79807 
							
						 
						
							2009-08-23 02:51:22 +00:00  
				
					
						
							
							
								 
						
							
								7b26fce23e 
								
							 
						 
						
							
							
								
								Rename TargetAsmInfo (and its subclasses) to MCAsmInfo.  
							
							... 
							
							
							
							llvm-svn: 79763 
							
						 
						
							2009-08-22 20:48:53 +00:00  
				
					
						
							
							
								 
						
							
								6860ac7375 
								
							 
						 
						
							
							
								
								llvm-mc: Clean up some handling of symbol/section association to be more correct  
							
							... 
							
							
							
							(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 
							
						 
						
							2009-08-22 07:22:36 +00:00  
				
					
						
							
							
								 
						
							
								67dfb1de23 
								
							 
						 
						
							
							
								
								llvm-mc: Improve handling of implicit alignment for magic section directives  
							
							... 
							
							
							
							(e.g., .objc_message_refs).
 - Just emit a .align when we see the directive; this isn't exactly what 'as'
   does but in practice it should be ok, at least for now. See FIXME.
llvm-svn: 79697 
							
						 
						
							2009-08-21 23:30:15 +00:00  
				
					
						
							
							
								 
						
							
								4abcccb965 
								
							 
						 
						
							
							
								
								llvm-mc: In a .fill directive, still honor .align even if invalid maximum bytes  
							
							... 
							
							
							
							count is given (this matches 'as').
llvm-svn: 79683 
							
						 
						
							2009-08-21 23:01:53 +00:00  
				
					
						
							
							
								 
						
							
								8e5edd81bb 
								
							 
						 
						
							
							
								
								llvm-mc: Accept .fill size of 8.  
							
							... 
							
							
							
							llvm-svn: 79635 
							
						 
						
							2009-08-21 15:43:35 +00:00  
				
					
						
							
							
								 
						
							
								3016db39dd 
								
							 
						 
						
							
							
								
								llvm-mc: Start MCAssembler and MCMachOStreamer.  
							
							... 
							
							
							
							- 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 
							
						 
						
							2009-08-21 09:11:24 +00:00  
				
					
						
							
							
								 
						
							
								9df5f33818 
								
							 
						 
						
							
							
								
								llvm-mc: Various section parsing fixes.  
							
							... 
							
							
							
							- Add missing flags for various Objective-C sections.
 - Fix names for [non_]lazy_symbol_pointer (these are misspelled in the manual).
 - .symbol_stub does not have the self modifying code flag set (this appears to
   be wrong in the manual?).
 - Add implicit alignment values; not yet used.
Also, call MCStreamer::Finish at the end of a successful parse.
llvm-svn: 79611 
							
						 
						
							2009-08-21 08:34:18 +00:00  
				
					
						
							
							
								 
						
							
								ad8b653f93 
								
							 
						 
						
							
							
								
								Don't install llvm-mc by default.  
							
							... 
							
							
							
							llvm-svn: 79604 
							
						 
						
							2009-08-21 07:28:33 +00:00  
				
					
						
							
							
								 
						
							
								5c947db79c 
								
							 
						 
						
							
							
								
								Fix a commento.  
							
							... 
							
							
							
							llvm-svn: 79427 
							
						 
						
							2009-08-19 16:25:53 +00:00  
				
					
						
							
							
								 
						
							
								a61e93d4b5 
								
							 
						 
						
							
							
								
								give MCAsmStreamer a TargetAsmInfo.  
							
							... 
							
							
							
							llvm-svn: 79222 
							
						 
						
							2009-08-17 04:23:44 +00:00  
				
					
						
							
							
								 
						
							
								ef668c169b 
								
							 
						 
						
							
							
								
								llvm-mc: Support escaped characters in string literals (for .ascii and .asciz)  
							
							... 
							
							
							
							llvm-svn: 79010 
							
						 
						
							2009-08-14 18:19:52 +00:00  
				
					
						
							
							
								 
						
							
								80d484e7cc 
								
							 
						 
						
							
							
								
								Update llvm-mc / MCAsmStreamer to print the instruction using the actual target  
							
							... 
							
							
							
							specific printer (this only works on x86, for now).
 - This makes it possible to do some correctness checking of the parsing and
   matching, since we can compare the results of 'as' on the original input, to
   those of 'as' on the output from llvm-mc.
 - In theory, we could now have an easy ATT -> Intel syntax converter. :)
llvm-svn: 78986 
							
						 
						
							2009-08-14 03:48:55 +00:00  
				
					
						
							
							
								 
						
							
								cbf4faf48d 
								
							 
						 
						
							
							
								
								llvm-mc: Move MCAsmToken::getLoc() into MC library where it belongs.  
							
							... 
							
							
							
							llvm-svn: 78980 
							
						 
						
							2009-08-14 02:18:40 +00:00  
				
					
						
							
							
								 
						
							
								7f8a9ebc8d 
								
							 
						 
						
							
							
								
								llvm-mc: Fix a crash on invalid due to a typo in relocatable expression  
							
							... 
							
							
							
							evaluation.
llvm-svn: 78692 
							
						 
						
							2009-08-11 17:47:52 +00:00  
				
					
						
							
							
								 
						
							
								ba95a7cd8d 
								
							 
						 
						
							
							
								
								llvm-mc: Accept .word as a synonym for .short  
							
							... 
							
							
							
							llvm-svn: 78641 
							
						 
						
							2009-08-11 04:44:00 +00:00  
				
					
						
							
							
								 
						
							
								cd4eee5443 
								
							 
						 
						
							
							
								
								llvm-mc: Honor -o option (and add -f).  
							
							... 
							
							
							
							llvm-svn: 78640 
							
						 
						
							2009-08-11 04:34:48 +00:00  
				
					
						
							
							
								 
						
							
								a4b069ce00 
								
							 
						 
						
							
							
								
								llvm-mc: Sketch parsing for .file, .line, and .loc. No streamer hooks for these  
							
							... 
							
							
							
							yet (I'm not even sure what they do).
llvm-svn: 78639 
							
						 
						
							2009-08-11 04:24:50 +00:00  
				
					
						
							
							
								 
						
							
								9af747b421 
								
							 
						 
						
							
							
								
								llvm-mc: Fix darwin .section parsing. It was skipping the section name and a ','  
							
							... 
							
							
							
							(and outputting a diagnostic pointing at the wrong place), all of which lead to
much confusion.
llvm-svn: 78637 
							
						 
						
							2009-08-11 03:42:33 +00:00  
				
					
						
							
							
								 
						
							
								6c20391d38 
								
							 
						 
						
							
							
								
								split MachO section handling stuff out to its out .h/.cpp file.  
							
							... 
							
							
							
							llvm-svn: 78576 
							
						 
						
							2009-08-10 18:15:01 +00:00  
				
					
						
							
							
								 
						
							
								97189e5d04 
								
							 
						 
						
							
							
								
								add a fixme  
							
							... 
							
							
							
							llvm-svn: 78575 
							
						 
						
							2009-08-10 18:05:55 +00:00  
				
					
						
							
							
								 
						
							
								cb307a27bf 
								
							 
						 
						
							
							
								
								Make the big switch: Change MCSectionMachO to represent a section *semantically*  
							
							... 
							
							
							
							instead of syntactically as a string.  This means that it keeps track of the 
segment, section, flags, etc directly and asmprints them in the right format.
This also includes parsing and validation support for llvm-mc and 
"attribute(section)", so we should now start getting errors about invalid 
section attributes from the compiler instead of the assembler on darwin.
Still todo: 
1) Uniquing of darwin mcsections
2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h]
3) there are a few FIXMEs, for example what is the syntax to get the
   S_GB_ZEROFILL segment type?
llvm-svn: 78547 
							
						 
						
							2009-08-10 01:39:42 +00:00  
				
					
						
							
							
								 
						
							
								591105c540 
								
							 
						 
						
							
							
								
								sink the 'name' and 'isdirective' state out of MCSection into its derived classes.  
							
							... 
							
							
							
							This totally optimizes PIC16 sections by not having an 'isdirective' bit anymore!! ;-)
llvm-svn: 78517 
							
						 
						
							2009-08-08 23:39:42 +00:00  
				
					
						
							
							
								 
						
							
								089b7de20d 
								
							 
						 
						
							
							
								
								switch this to create coff sections for now, it doesn't really matter for  
							
							... 
							
							
							
							llvm-mc's purpose yet and we'll want to switch to creating semantic sections
at some point.
llvm-svn: 78509 
							
						 
						
							2009-08-08 22:38:48 +00:00  
				
					
						
							
							
								 
						
							
								7641cf8e4d 
								
							 
						 
						
							
							
								
								Always initialize AsmConds.  
							
							... 
							
							
							
							llvm-svn: 78463 
							
						 
						
							2009-08-08 11:26:50 +00:00  
				
					
						
							
							
								 
						
							
								d9f952948e 
								
							 
						 
						
							
							
								
								Added Mac OS X assembler style conditional assembly.  I may come back and see if  
							
							... 
							
							
							
							I can clean this up a bit more and do way with the TheCondState and just use
the top element on the TheCondStack if not empty.  Also may tweak the code
around ParseConditionalAssemblyDirectives() to simplify the AsmParser code.
llvm-svn: 78423 
							
						 
						
							2009-08-07 22:46:00 +00:00  
				
					
						
							
							
								 
						
							
								719d235520 
								
							 
						 
						
							
							
								
								Remove now unused arguments from TargetRegistry::lookupTarget.  
							
							... 
							
							
							
							llvm-svn: 77950 
							
						 
						
							2009-08-03 04:20:57 +00:00  
				
					
						
							
							
								 
						
							
								73d577c933 
								
							 
						 
						
							
							
								
								Make SectionKind::get() private.  
							
							... 
							
							
							
							llvm-svn: 77835 
							
						 
						
							2009-08-02 00:02:44 +00:00  
				
					
						
							
							
								 
						
							
								a61c05adc0 
								
							 
						 
						
							
							
								
								update for API change.  
							
							... 
							
							
							
							llvm-svn: 77804 
							
						 
						
							2009-08-01 21:14:30 +00:00  
				
					
						
							
							
								 
						
							
								95bad379a9 
								
							 
						 
						
							
							
								
								All MCSections are now required to have a SectionKind.  
							
							... 
							
							
							
							llvm-svn: 77787 
							
						 
						
							2009-08-01 18:25:49 +00:00  
				
					
						
							
							
								 
						
							
								c54ecb384d 
								
							 
						 
						
							
							
								
								llvm-mc: More quoted identifier support.  
							
							... 
							
							
							
							llvm-svn: 77761 
							
						 
						
							2009-08-01 00:48:30 +00:00  
				
					
						
							
							
								 
						
							
								9ee33ca28e 
								
							 
						 
						
							
							
								
								llvm-mc: Support quoted identifiers.  
							
							... 
							
							
							
							- Uses MCAsmToken::getIdentifier which returns the (sub)string representing the
   meaningfull contents a string or identifier token.
 - Directives aren't done yet.
llvm-svn: 77739 
							
						 
						
							2009-07-31 21:55:09 +00:00  
				
					
						
							
							
								 
						
							
								4b21d044a4 
								
							 
						 
						
							
							
								
								fix some more issues where we expected GetSection to do "get or create"  
							
							... 
							
							
							
							llvm-svn: 77700 
							
						 
						
							2009-07-31 18:27:48 +00:00  
				
					
						
							
							
								 
						
							
								0f5a6fc38b 
								
							 
						 
						
							
							
								
								fix a bunch of failing tests now that MCContext::GetSection doesn't create sections.  
							
							... 
							
							
							
							llvm-svn: 77689 
							
						 
						
							2009-07-31 17:47:16 +00:00  
				
					
						
							
							
								 
						
							
								fdbad74423 
								
							 
						 
						
							
							
								
								Update CMakeLists  
							
							... 
							
							
							
							llvm-svn: 77385 
							
						 
						
							2009-07-28 22:46:39 +00:00  
				
					
						
							
							
								 
						
							
								e1fdb0e8ce 
								
							 
						 
						
							
							
								
								Move X86 instruction parsing into X86/AsmParser.  
							
							... 
							
							
							
							llvm-svn: 77384 
							
						 
						
							2009-07-28 22:40:46 +00:00  
				
					
						
							
							
								 
						
							
								c43267a472 
								
							 
						 
						
							
							
								
								Make expression parsing and error/warning reporting available through the  
							
							... 
							
							
							
							generic MCAsmParser interface.
llvm-svn: 77381 
							
						 
						
							2009-07-28 22:22:31 +00:00  
				
					
						
							
							
								 
						
							
								f59ee96a16 
								
							 
						 
						
							
							
								
								Provide generic MCAsmParser when constructing target specific parsers.  
							
							... 
							
							
							
							llvm-svn: 77362 
							
						 
						
							2009-07-28 20:47:52 +00:00  
				
					
						
							
							
								 
						
							
								d806996191 
								
							 
						 
						
							
							
								
								Switch X86 assembly parser to using the generic lexer interface.  
							
							... 
							
							
							
							llvm-svn: 77341 
							
						 
						
							2009-07-28 18:17:26 +00:00  
				
					
						
							
							
								 
						
							
								6d1e79dded 
								
							 
						 
						
							
							
								
								Expose Tokens to target specific assembly parsers.  
							
							... 
							
							
							
							llvm-svn: 77337 
							
						 
						
							2009-07-28 17:58:44 +00:00  
				
					
						
							
							
								 
						
							
								bc79816f28 
								
							 
						 
						
							
							
								
								Switch AsmLexer::Lex to returning a reference to the current token.  
							
							... 
							
							
							
							llvm-svn: 77328 
							
						 
						
							2009-07-28 16:56:42 +00:00  
				
					
						
							
							
								 
						
							
								ee4465cf82 
								
							 
						 
						
							
							
								
								Drop some AsmLexer methods in favor of their AsmToken equivalents.  
							
							... 
							
							
							
							llvm-svn: 77323 
							
						 
						
							2009-07-28 16:38:40 +00:00  
				
					
						
							
							
								 
						
							
								f2dcd77253 
								
							 
						 
						
							
							
								
								llvm-mc: Sink token enum into AsmToken.  
							
							... 
							
							
							
							llvm-svn: 77322 
							
						 
						
							2009-07-28 16:08:33 +00:00  
				
					
						
							
							
								 
						
							
								8368f4e8a4 
								
							 
						 
						
							
							
								
								llvm-mc: Factor AsmToken class out of AsmLexer.  
							
							... 
							
							
							
							llvm-svn: 77292 
							
						 
						
							2009-07-28 03:00:54 +00:00  
				
					
						
							
							
								 
						
							
								5cf338ad60 
								
							 
						 
						
							
							
								
								llvm-mc: Stop uniqueing string tokens, nothing actually uses this.  
							
							... 
							
							
							
							llvm-svn: 77287 
							
						 
						
							2009-07-28 00:58:50 +00:00  
				
					
						
							
							
								 
						
							
								eb6bb32bef 
								
							 
						 
						
							
							
								
								llvm-mc: Implement .abort fully in the front end  
							
							... 
							
							
							
							llvm-svn: 77272 
							
						 
						
							2009-07-27 23:20:52 +00:00  
				
					
						
							
							
								 
						
							
								52d03b252e 
								
							 
						 
						
							
							
								
								llvm-mc: Move AsmLexer::getCurStrVal to StringRef based API.  
							
							... 
							
							
							
							- My DFS traversal of LLVM is, at least for now, nearly complete! :)
llvm-svn: 77258 
							
						 
						
							2009-07-27 21:49:56 +00:00  
				
					
						
							
							
								 
						
							
								ee01b242e8 
								
							 
						 
						
							
							
								
								Factor commonality in triple match routines into helper template for registering  
							
							... 
							
							
							
							classes, and migrate existing targets over.
llvm-svn: 77126 
							
						 
						
							2009-07-26 05:03:33 +00:00  
				
					
						
							
							
								 
						
							
								47d679151b 
								
							 
						 
						
							
							
								
								Add TargetRegistry::lookupTarget.  
							
							... 
							
							
							
							- This is a simplified mechanism which just looks up a target based on the
   target triple, with a few additional flags.
 - Remove getClosestStaticTargetForModule, the moral equivalent is now:
     lookupTarget(Mod->getTargetTriple, true, false, ...);
 - This no longer does the fuzzy matching with target data (based on endianness
   and pointer width) that getClosestStaticTargetForModule was doing, but this
   was deemed unnecessary.
llvm-svn: 77111 
							
						 
						
							2009-07-26 02:12:58 +00:00  
				
					
						
							
							
								 
						
							
								5bf72e20eb 
								
							 
						 
						
							
							
								
								Convert StringMap to using StringRef for its APIs.  
							
							... 
							
							
							
							- Yay for '-'s and simplifications!
 - I kept StringMap::GetOrCreateValue for compatibility purposes, this can
   eventually go away. Likewise the StringMapEntry Create functions still follow
   the old style.
 - NIFC.
llvm-svn: 76888 
							
						 
						
							2009-07-23 18:17:34 +00:00  
				
					
						
							
							
								 
						
							
								ee5513582d 
								
							 
						 
						
							
							
								
								Removed the DumpSymbolsandMacros and LoadSymbolsandMacros MCStreamer API as  
							
							... 
							
							
							
							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 
							
						 
						
							2009-07-20 20:25:37 +00:00  
				
					
						
							
							
								 
						
							
								2b11c7de4a 
								
							 
						 
						
							
							
								
								Add MCAsmLexer interface.  
							
							... 
							
							
							
							- This provides the AsmLexer interface to the target specific assembly parsers.
llvm-svn: 76460 
							
						 
						
							2009-07-20 20:01:54 +00:00  
				
					
						
							
							
								 
						
							
								3c2a893ac7 
								
							 
						 
						
							
							
								
								Add MCAsmParser interface.  
							
							... 
							
							
							
							- This provides the AsmParser interface to the target specific assembly
   parsers.
llvm-svn: 76453 
							
						 
						
							2009-07-20 18:55:04 +00:00  
				
					
						
							
							
								 
						
							
								7b1a4c18ea 
								
							 
						 
						
							
							
								
								llvm-mc: Default -triple to LLVM_HOSTTRIPLE.  
							
							... 
							
							
							
							llvm-svn: 76260 
							
						 
						
							2009-07-17 22:51:20 +00:00  
				
					
						
							
							
								 
						
							
								8c6bad2f66 
								
							 
						 
						
							
							
								
								llvm-mc: Add -triple, and start fetching the target asm printer.  
							
							... 
							
							
							
							llvm-svn: 76257 
							
						 
						
							2009-07-17 22:38:58 +00:00  
				
					
						
							
							
								 
						
							
								dd27e5e10a 
								
							 
						 
						
							
							
								
								Removed the SubsectionsViaSymbols MCStreamer API and replaced it with a generic  
							
							... 
							
							
							
							EmitAssemblerFlag API which takes a value from the added AssemblerFlag
enumerated constants.
llvm-svn: 76087 
							
						 
						
							2009-07-16 17:56:39 +00:00  
				
					
						
							
							
								 
						
							
								7bef8bc320 
								
							 
						 
						
							
							
								
								Clean up the definition of Str in AsmParser::ParseDirectiveDarwinDumpOrLoad  
							
							... 
							
							
							
							so it is defined with a lifetime that is as short as possible.
llvm-svn: 76082 
							
						 
						
							2009-07-16 17:17:46 +00:00  
				
					
						
							
							
								 
						
							
								693fbb8fee 
								
							 
						 
						
							
							
								
								implement .include in the lexer/parser instead of passing it into the streamer.  
							
							... 
							
							
							
							llvm-svn: 75896 
							
						 
						
							2009-07-16 06:14:39 +00:00  
				
					
						
							
							
								 
						
							
								09ea5709a2 
								
							 
						 
						
							
							
								
								Added llvm-mc support for parsing the .dump and .load directives.  
							
							... 
							
							
							
							llvm-svn: 75786 
							
						 
						
							2009-07-15 15:30:11 +00:00  
				
					
						
							
							
								 
						
							
								d1ea5393c9 
								
							 
						 
						
							
							
								
								Added llvm-mc support for parsing the .include directive.  
							
							... 
							
							
							
							llvm-svn: 75711 
							
						 
						
							2009-07-14 23:21:55 +00:00  
				
					
						
							
							
								 
						
							
								cbe475dfe8 
								
							 
						 
						
							
							
								
								Added llvm-mc support for parsing the .lsym directive.  
							
							... 
							
							
							
							llvm-svn: 75685 
							
						 
						
							2009-07-14 21:35:03 +00:00  
				
					
						
							
							
								 
						
							
								4c21caa656 
								
							 
						 
						
							
							
								
								Added llvm-mc support for parsing the .desc directive.  
							
							... 
							
							
							
							llvm-svn: 75645 
							
						 
						
							2009-07-14 18:17:10 +00:00  
				
					
						
							
							
								 
						
							
								56523ceba1 
								
							 
						 
						
							
							
								
								Added llvm-mc support for parsing the .abort directive.  
							
							... 
							
							
							
							llvm-svn: 75545 
							
						 
						
							2009-07-13 23:15:14 +00:00  
				
					
						
							
							
								 
						
							
								c9d93ef2c6 
								
							 
						 
						
							
							
								
								add llvm-mc support for parsing the .subsections_via_symbols directive.  
							
							... 
							
							
							
							llvm-svn: 75500 
							
						 
						
							2009-07-13 21:03:15 +00:00  
				
					
						
							
							
								 
						
							
								a797d376de 
								
							 
						 
						
							
							
								
								silence vc++ warning.  
							
							... 
							
							
							
							llvm-svn: 75394 
							
						 
						
							2009-07-11 22:32:37 +00:00  
				
					
						
							
							
								 
						
							
								07cadaf113 
								
							 
						 
						
							
							
								
								add support for .zerofill, patch by Kevin Enderby!  
							
							... 
							
							
							
							llvm-svn: 75301 
							
						 
						
							2009-07-10 22:20:30 +00:00  
				
					
						
							
							
								 
						
							
								28ad7547d2 
								
							 
						 
						
							
							
								
								add llvm-mc support for parsing the .lcomm directive, patch by Kevin Enderby!  
							
							... 
							
							
							
							llvm-svn: 75148 
							
						 
						
							2009-07-09 17:25:12 +00:00  
				
					
						
							
							
								 
						
							
								a1e11f530e 
								
							 
						 
						
							
							
								
								Implement parsing support for the .comm directive.  Patch by  
							
							... 
							
							
							
							Kevin Enderby!
llvm-svn: 74944 
							
						 
						
							2009-07-07 20:30:46 +00:00  
				
					
						
							
							
								 
						
							
								73f3611be9 
								
							 
						 
						
							
							
								
								implement error recovery in the llvm-mc parser.  Feel the power!  
							
							... 
							
							
							
							llvm-svn: 74728 
							
						 
						
							2009-07-02 21:53:43 +00:00  
				
					
						
							
							
								 
						
							
								0224b65f0a 
								
							 
						 
						
							
							
								
								llvm-mc/x86: Fix various nit-picky bugs in displacement parsing.  
							
							... 
							
							
							
							- Test case to follow.
llvm-svn: 74687 
							
						 
						
							2009-07-02 02:26:39 +00:00  
				
					
						
							
							
								 
						
							
								9bff6531fd 
								
							 
						 
						
							
							
								
								llvm-mc/x86: Fix bug in disambiguation of displacement operand, introduced by me  
							
							... 
							
							
							
							(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 
							
						 
						
							2009-07-02 02:09:07 +00:00  
				
					
						
							
							
								 
						
							
								36a2007059 
								
							 
						 
						
							
							
								
								llvm-mc/x86: Factor out ParseX86Register.  
							
							... 
							
							
							
							llvm-svn: 74684 
							
						 
						
							2009-07-02 01:58:24 +00:00  
				
					
						
							
							
								 
						
							
								142f104b29 
								
							 
						 
						
							
							
								
								llvm-mc/x86: Rename X86Operand::ScaleReg to IndexReg and make order consistent  
							
							... 
							
							
							
							with syntax.
llvm-svn: 74679 
							
						 
						
							2009-07-02 00:51:52 +00:00  
				
					
						
							
							
								 
						
							
								b442e04259 
								
							 
						 
						
							
							
								
								llvm-mc: Add some more doxyments.  
							
							... 
							
							
							
							llvm-svn: 74607 
							
						 
						
							2009-07-01 15:14:50 +00:00  
				
					
						
							
							
								 
						
							
								9c4809a887 
								
							 
						 
						
							
							
								
								llvm-mc: Fill in the rest of tokens for 'as-lex' mode.  
							
							... 
							
							
							
							llvm-svn: 74598 
							
						 
						
							2009-07-01 06:56:54 +00:00  
				
					
						
							
							
								 
						
							
								0d5fc9a5b0 
								
							 
						 
						
							
							
								
								Rename MCValue::isConstant to isAbsolute.  
							
							... 
							
							
							
							llvm-svn: 74596 
							
						 
						
							2009-07-01 06:48:00 +00:00  
				
					
						
							
							
								 
						
							
								e4dfc89615 
								
							 
						 
						
							
							
								
								add some of the new tokens, others are still missing.  
							
							... 
							
							
							
							llvm-svn: 74595 
							
						 
						
							2009-07-01 06:36:49 +00:00  
				
					
						
							
							
								 
						
							
								fc35841077 
								
							 
						 
						
							
							
								
								llvm-mc: Emit parsed instructions to the MCStreamer.  
							
							... 
							
							
							
							llvm-svn: 74594 
							
						 
						
							2009-07-01 06:35:48 +00:00  
				
					
						
							
							
								 
						
							
								d0a08e0430 
								
							 
						 
						
							
							
								
								llvm-mc: Introduce method to match a parsed x86 instruction into an MCInst.  
							
							... 
							
							
							
							llvm-svn: 74573 
							
						 
						
							2009-06-30 23:38:38 +00:00  
				
					
						
							
							
								 
						
							
								cfcdf5c1ac 
								
							 
						 
						
							
							
								
								llvm-mc: Accept relocatable expressions when parsing displacements and  
							
							... 
							
							
							
							immediates.
llvm-svn: 74568 
							
						 
						
							2009-06-30 23:02:44 +00:00  
				
					
						
							
							
								 
						
							
								8561b6aea0 
								
							 
						 
						
							
							
								
								llvm-mc: Symbols in a relocatable expression of the (a - b + cst) form are  
							
							... 
							
							
							
							allowed to be undefined when the expression is seen, we cannot enforce the
same-section requirement until the entire assembly file has been seen.
llvm-svn: 74565 
							
						 
						
							2009-06-30 22:49:27 +00:00  
				
					
						
							
							
								 
						
							
								3971273aa2 
								
							 
						 
						
							
							
								
								Suppress may-be-used-uninitialized warning.  
							
							... 
							
							
							
							llvm-svn: 74529 
							
						 
						
							2009-06-30 16:02:47 +00:00  
				
					
						
							
							
								 
						
							
								16f652876f 
								
							 
						 
						
							
							
								
								Fix CMake build  
							
							... 
							
							
							
							llvm-svn: 74527 
							
						 
						
							2009-06-30 14:37:26 +00:00  
				
					
						
							
							
								 
						
							
								75630b355a 
								
							 
						 
						
							
							
								
								llvm-mc: Accept relocatable expressions for .org, assignments, .byte, etc.  
							
							... 
							
							
							
							llvm-svn: 74498 
							
						 
						
							2009-06-30 02:10:03 +00:00  
				
					
						
							
							
								 
						
							
								19f847fa68 
								
							 
						 
						
							
							
								
								llvm-mc: Rewrite binary subtraction for relocatable expressions, we can't always  
							
							... 
							
							
							
							legally negate an MCValue.
llvm-svn: 74497 
							
						 
						
							2009-06-30 02:08:27 +00:00  
				
					
						
							
							
								 
						
							
								bd4bf3d4f7 
								
							 
						 
						
							
							
								
								llvm-mc: Evaluation for relocatable expressions.  
							
							... 
							
							
							
							llvm-svn: 74496 
							
						 
						
							2009-06-30 01:49:52 +00:00  
				
					
						
							
							
								 
						
							
								c9dc78ae40 
								
							 
						 
						
							
							
								
								Normalize SourceMgr messages.  
							
							... 
							
							
							
							- 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 
							
						 
						
							2009-06-30 00:49:23 +00:00  
				
					
						
							
							
								 
						
							
								a5508c893a 
								
							 
						 
						
							
							
								
								llvm-mc: Parse symbol attribute directives.  
							
							... 
							
							
							
							llvm-svn: 74487 
							
						 
						
							2009-06-30 00:33:19 +00:00  
				
					
						
							
							
								 
						
							
								cc566a714b 
								
							 
						 
						
							
							
								
								llvm-mc: Parse .{,b,p2}align{,w,l} directives.  
							
							... 
							
							
							
							llvm-svn: 74478 
							
						 
						
							2009-06-29 23:46:59 +00:00  
				
					
						
							
							
								 
						
							
								ae7ac01059 
								
							 
						 
						
							
							
								
								llvm-mc: Diagnose misuse (mix) of defined symbols and labels.  
							
							... 
							
							
							
							- 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 
							
						 
						
							2009-06-29 23:43:14 +00:00  
				
					
						
							
							
								 
						
							
								5992b4a211 
								
							 
						 
						
							
							
								
								llvm-mc: Recognize C++ style comments.  
							
							... 
							
							
							
							llvm-svn: 74463 
							
						 
						
							2009-06-29 22:00:57 +00:00  
				
					
						
							
							
								 
						
							
								6b22f9ca45 
								
							 
						 
						
							
							
								
								llvm-mc: Recognize C++ style comments.  
							
							... 
							
							
							
							llvm-svn: 74462 
							
						 
						
							2009-06-29 21:58:22 +00:00  
				
					
						
							
							
								 
						
							
								231898baf5 
								
							 
						 
						
							
							
								
								Fix uninitialized variable warning.  
							
							... 
							
							
							
							llvm-svn: 74457 
							
						 
						
							2009-06-29 21:14:21 +00:00  
				
					
						
							
							
								 
						
							
								84bfd7b184 
								
							 
						 
						
							
							
								
								MC: Improve expression parsing and implement evaluation of absolute expressions  
							
							... 
							
							
							
							(missed files).
llvm-svn: 74450 
							
						 
						
							2009-06-29 20:40:36 +00:00  
				
					
						
							
							
								 
						
							
								7e8d6c7215 
								
							 
						 
						
							
							
								
								MC: Improve expression parsing and implement evaluation of absolute expressions.  
							
							... 
							
							
							
							llvm-svn: 74448 
							
						 
						
							2009-06-29 20:37:27 +00:00  
				
					
						
							
							
								 
						
							
								4a5a561a24 
								
							 
						 
						
							
							
								
								MC: Parse .org directives.  
							
							... 
							
							
							
							llvm-svn: 74218 
							
						 
						
							2009-06-25 22:44:51 +00:00  
				
					
						
							
							
								 
						
							
								2d2ee150eb 
								
							 
						 
						
							
							
								
								MC: Parse .set and assignments.  
							
							... 
							
							
							
							llvm-svn: 74208 
							
						 
						
							2009-06-25 21:56:11 +00:00  
				
					
						
							
							
								 
						
							
								a10e519e04 
								
							 
						 
						
							
							
								
								Basic .s parsing for .asci[iz], .fill, .space, {.byte, .short, ... }  
							
							... 
							
							
							
							- Includes some DG tests in test/MC/AsmParser, which are rather primitive since
   we don't have a -verify mode yet.
llvm-svn: 74139 
							
						 
						
							2009-06-24 23:30:00 +00:00  
				
					
						
							
							
								 
						
							
								f7ebca4db6 
								
							 
						 
						
							
							
								
								implement a bunch of synonyms for section switching.  
							
							... 
							
							
							
							llvm-svn: 74062 
							
						 
						
							2009-06-24 05:13:15 +00:00  
				
					
						
							
							
								 
						
							
								bedf6c2995 
								
							 
						 
						
							
							
								
								add support for parsing and emitting .section directives.  We can now parse  
							
							... 
							
							
							
							things like:
.section __TEXT,__cstring,cstring_literals
llvm-svn: 74058 
							
						 
						
							2009-06-24 04:43:34 +00:00  
				
					
						
							
							
								 
						
							
								3f5738d599 
								
							 
						 
						
							
							
								
								add trivial support for passing label definitions through the MCStreamer.  
							
							... 
							
							
							
							This is suboptimal in several aspects, see the commented out assertion.
I need to talk to Daniel about this.
llvm-svn: 74057 
							
						 
						
							2009-06-24 04:31:49 +00:00  
				
					
						
							
							
								 
						
							
								92ffdd15f8 
								
							 
						 
						
							
							
								
								create an MCStreamer and provide it to AsmParser.  
							
							... 
							
							
							
							llvm-svn: 74039 
							
						 
						
							2009-06-24 00:52:40 +00:00  
				
					
						
							
							
								 
						
							
								4c501fc196 
								
							 
						 
						
							
							
								
								make the lexer unique strings it lexes instead of passing them back as  
							
							... 
							
							
							
							std::strings.
llvm-svn: 74036 
							
						 
						
							2009-06-24 00:33:19 +00:00  
				
					
						
							
							
								 
						
							
								ca29e4d7f4 
								
							 
						 
						
							
							
								
								Start flushing out MCContext.  
							
							... 
							
							
							
							- Lives inside new library lib/MC (LLVMMC.a)
llvm-svn: 74013 
							
						 
						
							2009-06-23 22:01:43 +00:00  
				
					
						
							
							
								 
						
							
								3417d71ff4 
								
							 
						 
						
							
							
								
								refactor a bunch of X86 specific stuff out to its own file.  
							
							... 
							
							
							
							llvm-svn: 73982 
							
						 
						
							2009-06-23 18:41:30 +00:00  
				
					
						
							
							
								 
						
							
								f97d8bbe73 
								
							 
						 
						
							
							
								
								implement a trivial binary expression parser, we can now parse all of 176.gcc.llc.s  
							
							... 
							
							
							
							llvm-svn: 73950 
							
						 
						
							2009-06-23 05:57:07 +00:00  
				
					
						
							
							
								 
						
							
								9ec76a0b79 
								
							 
						 
						
							
							
								
								get a definition of strull on windows, thanks to Howard Su.  
							
							... 
							
							
							
							llvm-svn: 73929 
							
						 
						
							2009-06-23 00:24:36 +00:00  
				
					
						
							
							
								 
						
							
								376c6f16de 
								
							 
						 
						
							
							
								
								Include cstdio to get EOF, needed with gcc-4.4.  
							
							... 
							
							
							
							llvm-svn: 73879 
							
						 
						
							2009-06-22 06:59:32 +00:00  
				
					
						
							
							
								 
						
							
								1d1fe918de 
								
							 
						 
						
							
							
								
								process memory operands with a parenthesized expression for a displacement,  
							
							... 
							
							
							
							like "(4+5)(%eax)".
llvm-svn: 73878 
							
						 
						
							2009-06-22 06:35:58 +00:00  
				
					
						
							
							
								 
						
							
								7fdbce7a60 
								
							 
						 
						
							
							
								
								Implement full support for parsing primary expressions.  We can now parse  
							
							... 
							
							
							
							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 
							
						 
						
							2009-06-22 06:32:03 +00:00  
				
					
						
							
							
								 
						
							
								a7b51ed5e6 
								
							 
						 
						
							
							
								
								implement parser support for '*' operands, as in "call *%eax".  
							
							... 
							
							
							
							llvm-svn: 73876 
							
						 
						
							2009-06-22 06:02:13 +00:00  
				
					
						
							
							
								 
						
							
								78db36271c 
								
							 
						 
						
							
							
								
								implement memory operand parsing.  
							
							... 
							
							
							
							llvm-svn: 73875 
							
						 
						
							2009-06-22 05:51:26 +00:00  
				
					
						
							
							
								 
						
							
								e5074c46b2 
								
							 
						 
						
							
							
								
								start implementing some simple operand parsing.  
							
							... 
							
							
							
							llvm-svn: 73867 
							
						 
						
							2009-06-22 01:29:09 +00:00  
				
					
						
							
							
								 
						
							
								2adc9e739c 
								
							 
						 
						
							
							
								
								rename SourceMgr::PrintError to PrintMessage.  
							
							... 
							
							
							
							llvm-svn: 73861 
							
						 
						
							2009-06-21 21:22:11 +00:00  
				
					
						
							
							
								 
						
							
								36e0212c16 
								
							 
						 
						
							
							
								
								set up the top-level parsing loop.  
							
							... 
							
							
							
							llvm-svn: 73860 
							
						 
						
							2009-06-21 20:54:55 +00:00  
				
					
						
							
							
								 
						
							
								b013345338 
								
							 
						 
						
							
							
								
								stub out parser for asm files.  Change invariant on lexer to always  
							
							... 
							
							
							
							print its error message when it returns an asmtok::Error token.
Compute a proper error code for llvm-mc in 'lex' mode.  Add new
-as-lex option to enable lexing mode (vs parsing mode).
llvm-svn: 73859 
							
						 
						
							2009-06-21 20:16:42 +00:00  
				
					
						
							
							
								 
						
							
								419a97491a 
								
							 
						 
						
							
							
								
								add string literals.  
							
							... 
							
							
							
							llvm-svn: 73858 
							
						 
						
							2009-06-21 19:56:35 +00:00  
				
					
						
							
							
								 
						
							
								99f0b60f45 
								
							 
						 
						
							
							
								
								hopefully fix the build on linux.  
							
							... 
							
							
							
							llvm-svn: 73857 
							
						 
						
							2009-06-21 19:43:50 +00:00  
				
					
						
							
							
								 
						
							
								d0765617d2 
								
							 
						 
						
							
							
								
								implement enough of a lexer to get through Olden/health/Output/health.llc.s  
							
							... 
							
							
							
							without errors.
llvm-svn: 73855 
							
						 
						
							2009-06-21 19:21:25 +00:00  
				
					
						
							
							
								 
						
							
								d485848229 
								
							 
						 
						
							
							
								
								oh yeah, cmake needs to be told explicitly about new files :)  
							
							... 
							
							
							
							llvm-svn: 73849 
							
						 
						
							2009-06-21 07:19:34 +00:00  
				
					
						
							
							
								 
						
							
								c8dfbcbb31 
								
							 
						 
						
							
							
								
								some baby steps.  
							
							... 
							
							
							
							llvm-svn: 73848 
							
						 
						
							2009-06-21 07:19:10 +00:00  
				
					
						
							
							
								 
						
							
								d70e15b46f 
								
							 
						 
						
							
							
								
								start wiring up support for asm parsing.  
							
							... 
							
							
							
							llvm-svn: 73846 
							
						 
						
							2009-06-21 05:22:37 +00:00  
				
					
						
							
							
								 
						
							
								2cce7d5988 
								
							 
						 
						
							
							
								
								fix build problem pointed out by John Thompson!  
							
							... 
							
							
							
							llvm-svn: 73739 
							
						 
						
							2009-06-18 23:46:04 +00:00  
				
					
						
							
							
								 
						
							
								c7ab953177 
								
							 
						 
						
							
							
								
								fix file header  
							
							... 
							
							
							
							llvm-svn: 73733 
							
						 
						
							2009-06-18 23:05:21 +00:00  
				
					
						
							
							
								 
						
							
								8dd8a52533 
								
							 
						 
						
							
							
								
								Add a skeleton driver for new machine code level fun.  llvm-mc is meant  
							
							... 
							
							
							
							to be a test driver of other components in the system, which will develop
over time.
llvm-svn: 73732 
							
						 
						
							2009-06-18 23:04:45 +00:00