47af30c937 
								
							 
						 
						
							
							
								
								Add support for an opaque type  
							
							... 
							
							
							
							llvm-svn: 444 
							
						 
						
							2001-09-07 16:32:43 +00:00  
				
					
						
							
							
								 
						
							
								dea211ea67 
								
							 
						 
						
							
							
								
								Remove #include of nonexistant header file  
							
							... 
							
							
							
							llvm-svn: 443 
							
						 
						
							2001-09-07 16:32:10 +00:00  
				
					
						
							
							
								 
						
							
								1e6912a13f 
								
							 
						 
						
							
							
								
								* Slot calc is now simpler and not based on module analyzer.  
							
							... 
							
							
							
							* Add new SC_DEBUG option to enable debugging of why stuff doesn't work
llvm-svn: 442 
							
						 
						
							2001-09-07 16:31:52 +00:00  
				
					
						
							
							
								 
						
							
								ce4cd006c1 
								
							 
						 
						
							
							
								
								Module analyzer no longer has to iterate over constant pool  
							
							... 
							
							
							
							llvm-svn: 441 
							
						 
						
							2001-09-07 16:31:23 +00:00  
				
					
						
							
							
								 
						
							
								c6b06c4f9b 
								
							 
						 
						
							
							
								
								Simplify code by eliminating need to hang onto constant pool references  
							
							... 
							
							
							
							llvm-svn: 440 
							
						 
						
							2001-09-07 16:31:04 +00:00  
				
					
						
							
							
								 
						
							
								4d30f4bb6c 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 412 
							
						 
						
							2001-08-31 20:59:58 +00:00  
				
					
						
							
							
								 
						
							
								8ae325420f 
								
							 
						 
						
							
							
								
								Added directory LiveVar/  
							
							... 
							
							
							
							llvm-svn: 410 
							
						 
						
							2001-08-28 23:29:31 +00:00  
				
					
						
							
							
								 
						
							
								10db4c2551 
								
							 
						 
						
							
							
								
								Added nonterminals for arithmetic operations where one operand is constant.  
							
							... 
							
							
							
							llvm-svn: 406 
							
						 
						
							2001-08-28 23:25:46 +00:00  
				
					
						
							
							
								 
						
							
								59a091870a 
								
							 
						 
						
							
							
								
								Makefile for InstrSched/  
							
							... 
							
							
							
							llvm-svn: 403 
							
						 
						
							2001-08-28 23:17:22 +00:00  
				
					
						
							
							
								 
						
							
								27713047f4 
								
							 
						 
						
							
							
								
								Remove source list.  
							
							... 
							
							
							
							llvm-svn: 402 
							
						 
						
							2001-08-28 23:16:59 +00:00  
				
					
						
							
							
								 
						
							
								ebfa4bd437 
								
							 
						 
						
							
							
								
								Added directory InstrSched.  
							
							... 
							
							
							
							llvm-svn: 401 
							
						 
						
							2001-08-28 23:16:13 +00:00  
				
					
						
							
							
								 
						
							
								245b5b0691 
								
							 
						 
						
							
							
								
								Major changes too hard to document :-)  
							
							... 
							
							
							
							llvm-svn: 400 
							
						 
						
							2001-08-28 23:12:57 +00:00  
				
					
						
							
							
								 
						
							
								23e59b70cd 
								
							 
						 
						
							
							
								
								Extensive additions for supporting instruction scheduling.  
							
							... 
							
							
							
							llvm-svn: 398 
							
						 
						
							2001-08-28 23:10:41 +00:00  
				
					
						
							
							
								 
						
							
								742086f200 
								
							 
						 
						
							
							
								
								Added class MachineSchedInfo and several supporting classes  
							
							... 
							
							
							
							as a machine description for instruction scheduling.
llvm-svn: 397 
							
						 
						
							2001-08-28 23:09:36 +00:00  
				
					
						
							
							
								 
						
							
								3148b83485 
								
							 
						 
						
							
							
								
								Implementation of instruction scheduling for LLVM.  
							
							... 
							
							
							
							Currently schedules one basic block at a time.
llvm-svn: 396 
							
						 
						
							2001-08-28 23:07:19 +00:00  
				
					
						
							
							
								 
						
							
								138c3bb667 
								
							 
						 
						
							
							
								
								Class that encapsulates priority heuristics for instruction scheduling.  
							
							... 
							
							
							
							llvm-svn: 395 
							
						 
						
							2001-08-28 23:06:49 +00:00  
				
					
						
							
							
								 
						
							
								754c4dd6ae 
								
							 
						 
						
							
							
								
								Scheduling DAG for instruction scheduling.  Currently for a single basic block.  
							
							... 
							
							
							
							llvm-svn: 394 
							
						 
						
							2001-08-28 23:06:02 +00:00  
				
					
						
							
							
								 
						
							
								8641f9dca0 
								
							 
						 
						
							
							
								
								Moved debug options declaration to header file, and moved  
							
							... 
							
							
							
							a function to MachineInstr.cpp.
llvm-svn: 393 
							
						 
						
							2001-08-28 23:04:38 +00:00  
				
					
						
							
							
								 
						
							
								5f72f42aee 
								
							 
						 
						
							
							
								
								Moved function PrintMachineInstructions here.  
							
							... 
							
							
							
							llvm-svn: 392 
							
						 
						
							2001-08-28 23:02:39 +00:00  
				
					
						
							
							
								 
						
							
								1143eff628 
								
							 
						 
						
							
							
								
								analyze() now checks to see that we don't analyze the same method twice.  
							
							... 
							
							
							
							Needs a mechnanism to override this check (e.g., after a transformation).
llvm-svn: 391 
							
						 
						
							2001-08-28 22:36:35 +00:00  
				
					
						
							
							
								 
						
							
								b6970c305f 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 390 
							
						 
						
							2001-08-28 22:35:21 +00:00  
				
					
						
							
							
								 
						
							
								b6aa2334f4 
								
							 
						 
						
							
							
								
								I suck  
							
							... 
							
							
							
							llvm-svn: 385 
							
						 
						
							2001-08-27 18:54:45 +00:00  
				
					
						
							
							
								 
						
							
								53bbf0783b 
								
							 
						 
						
							
							
								
								Initial checkin of TargetData code  
							
							... 
							
							
							
							llvm-svn: 384 
							
						 
						
							2001-08-27 16:00:15 +00:00  
				
					
						
							
							
								 
						
							
								74a5857531 
								
							 
						 
						
							
							
								
								Remove target specific stuff from Type classes  
							
							... 
							
							
							
							llvm-svn: 383 
							
						 
						
							2001-08-27 15:52:13 +00:00  
				
					
						
							
							
								 
						
							
								21a6f5fe7f 
								
							 
						 
						
							
							
								
								Remove target specific method from MemAccessInst class  
							
							... 
							
							
							
							llvm-svn: 382 
							
						 
						
							2001-08-27 15:51:43 +00:00  
				
					
						
							
							
								 
						
							
								6c5cbe3f60 
								
							 
						 
						
							
							
								
								Convert to use the new factored out TargetData class  
							
							... 
							
							
							
							llvm-svn: 381 
							
						 
						
							2001-08-27 15:51:16 +00:00  
				
					
						
							
							
								 
						
							
								8dd99f33ea 
								
							 
						 
						
							
							
								
								Factor code out to the TargetData class  
							
							... 
							
							
							
							llvm-svn: 380 
							
						 
						
							2001-08-27 15:50:41 +00:00  
				
					
						
							
							
								 
						
							
								f93e63a189 
								
							 
						 
						
							
							
								
								Support passing a data pointer to annotation factory methods  
							
							... 
							
							
							
							llvm-svn: 376 
							
						 
						
							2001-08-27 05:19:10 +00:00  
				
					
						
							
							
								 
						
							
								827c2a1d7c 
								
							 
						 
						
							
							
								
								Demolish explicit source list  
							
							... 
							
							
							
							llvm-svn: 375 
							
						 
						
							2001-08-27 05:18:35 +00:00  
				
					
						
							
							
								 
						
							
								2c1a98ef08 
								
							 
						 
						
							
							
								
								Lots of new functionality  
							
							... 
							
							
							
							llvm-svn: 372 
							
						 
						
							2001-08-27 05:16:50 +00:00  
				
					
						
							
							
								 
						
							
								f04f646c1b 
								
							 
						 
						
							
							
								
								Remove explicit source list  
							
							... 
							
							
							
							llvm-svn: 371 
							
						 
						
							2001-08-25 20:40:32 +00:00  
				
					
						
							
							
								 
						
							
								439465583a 
								
							 
						 
						
							
							
								
								Make sure noone branches to the entry node of the method  
							
							... 
							
							
							
							llvm-svn: 369 
							
						 
						
							2001-08-24 14:56:34 +00:00  
				
					
						
							
							
								 
						
							
								3885a2db4f 
								
							 
						 
						
							
							
								
								Add annotation support  
							
							... 
							
							
							
							llvm-svn: 366 
							
						 
						
							2001-08-23 17:07:56 +00:00  
				
					
						
							
							
								 
						
							
								a0484c8eeb 
								
							 
						 
						
							
							
								
								Handle case where there is no exit node from a flowgraph  
							
							... 
							
							
							
							llvm-svn: 365 
							
						 
						
							2001-08-23 17:07:19 +00:00  
				
					
						
							
							
								 
						
							
								01a45c6c96 
								
							 
						 
						
							
							
								
								Changed an assertion message  
							
							... 
							
							
							
							llvm-svn: 364 
							
						 
						
							2001-08-23 17:06:38 +00:00  
				
					
						
							
							
								 
						
							
								d7ff578767 
								
							 
						 
						
							
							
								
								Initial checkin of interpreter  
							
							... 
							
							
							
							llvm-svn: 361 
							
						 
						
							2001-08-23 17:05:04 +00:00  
				
					
						
							
							
								 
						
							
								11e97b08f0 
								
							 
						 
						
							
							
								
								LV code on machine instructions  
							
							... 
							
							
							
							llvm-svn: 360 
							
						 
						
							2001-08-20 21:12:49 +00:00  
				
					
						
							
							
								 
						
							
								ec1a5411d7 
								
							 
						 
						
							
							
								
								LV info on machine instructions  
							
							... 
							
							
							
							llvm-svn: 359 
							
						 
						
							2001-08-20 21:11:01 +00:00  
				
					
						
							
							
								 
						
							
								1700068262 
								
							 
						 
						
							
							
								
								Always set isDef for operand in position resultPos.  
							
							... 
							
							
							
							llvm-svn: 357 
							
						 
						
							2001-08-13 16:32:45 +00:00  
				
					
						
							
							
								 
						
							
								6dec5fe042 
								
							 
						 
						
							
							
								
								Changed SetMachineOpernad calls in Set3OperandsFromInstr so that the  
							
							... 
							
							
							
							result position is a def (i.e., added true to the end of call) -- Ruchira
llvm-svn: 356 
							
						 
						
							2001-08-13 16:26:28 +00:00  
				
					
						
							
							
								 
						
							
								20429a47e5 
								
							 
						 
						
							
							
								
								Changed case 64 to make the first arg of phi a defintion  
							
							... 
							
							
							
							llvm-svn: 355 
							
						 
						
							2001-08-13 16:24:01 +00:00  
				
					
						
							
							
								 
						
							
								c82322c526 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 351 
							
						 
						
							2001-08-07 21:01:23 +00:00  
				
					
						
							
							
								 
						
							
								4ac2975f5a 
								
							 
						 
						
							
							
								
								added a default isDef arg to SetMachineOperand method - Ruchira  
							
							... 
							
							
							
							llvm-svn: 350 
							
						 
						
							2001-08-07 20:16:52 +00:00  
				
					
						
							
							
								 
						
							
								22db4f9b7c 
								
							 
						 
						
							
							
								
								Add CC operand as 4th operand of SUBcc, and mark it as a def.  
							
							... 
							
							
							
							llvm-svn: 348 
							
						 
						
							2001-08-06 21:06:10 +00:00  
				
					
						
							
							
								 
						
							
								45317ad6cc 
								
							 
						 
						
							
							
								
								Also, move burg rule to Makefile.common.  
							
							... 
							
							
							
							llvm-svn: 346 
							
						 
						
							2001-08-06 19:06:56 +00:00  
				
					
						
							
							
								 
						
							
								ed242ccea0 
								
							 
						 
						
							
							
								
								Better still, lets move pathname for Burg to Makefile.common.  
							
							... 
							
							
							
							llvm-svn: 344 
							
						 
						
							2001-08-06 19:01:45 +00:00  
				
					
						
							
							
								 
						
							
								058ff319fd 
								
							 
						 
						
							
							
								
								Use full pathname for burg.  
							
							... 
							
							
							
							llvm-svn: 342 
							
						 
						
							2001-08-06 18:53:26 +00:00  
				
					
						
							
							
								 
						
							
								527c8955de 
								
							 
						 
						
							
							
								
								Simplify command line options, and add option for printing  
							
							... 
							
							
							
							machine instructions without debugging info.
llvm-svn: 340 
							
						 
						
							2001-07-31 21:53:25 +00:00  
				
					
						
							
							
								 
						
							
								c746fbb806 
								
							 
						 
						
							
							
								
								Added tree nodes for Phi instructions.  
							
							... 
							
							
							
							llvm-svn: 338 
							
						 
						
							2001-07-31 21:50:29 +00:00  
				
					
						
							
							
								 
						
							
								1c73bc1c1f 
								
							 
						 
						
							
							
								
								Generate tree nodes for Phi instructions.  
							
							... 
							
							
							
							llvm-svn: 337 
							
						 
						
							2001-07-31 21:49:53 +00:00  
				
					
						
							
							
								 
						
							
								ff7070bbb9 
								
							 
						 
						
							
							
								
								Allow machine instructions with variable numbers of arguments.  
							
							... 
							
							
							
							This is used only by Phi for now.
llvm-svn: 336 
							
						 
						
							2001-07-31 21:49:28 +00:00  
				
					
						
							
							
								 
						
							
								e335821b08 
								
							 
						 
						
							
							
								
								Generate dummy Phi machine instruction, plus a bug fix for BrCond(boolreg).  
							
							... 
							
							
							
							llvm-svn: 334 
							
						 
						
							2001-07-31 21:46:57 +00:00  
				
					
						
							
							
								 
						
							
								da0c7d89bc 
								
							 
						 
						
							
							
								
								Record machine instructions in the vector for each basic block.  
							
							... 
							
							
							
							llvm-svn: 331 
							
						 
						
							2001-07-30 18:48:43 +00:00  
				
					
						
							
							
								 
						
							
								32b5d841ba 
								
							 
						 
						
							
							
								
								Added vector of machine instructions for the basic block.  
							
							... 
							
							
							
							llvm-svn: 330 
							
						 
						
							2001-07-30 18:47:24 +00:00  
				
					
						
							
							
								 
						
							
								3f14c66890 
								
							 
						 
						
							
							
								
								Remove some gross stuff  
							
							... 
							
							
							
							llvm-svn: 328 
							
						 
						
							2001-07-28 17:52:53 +00:00  
				
					
						
							
							
								 
						
							
								e0c6a09883 
								
							 
						 
						
							
							
								
								Allow vararg method types with 0 fixed types  
							
							... 
							
							
							
							llvm-svn: 327 
							
						 
						
							2001-07-28 17:52:35 +00:00  
				
					
						
							
							
								 
						
							
								e76a335f5b 
								
							 
						 
						
							
							
								
								Make error msg nicer  
							
							... 
							
							
							
							llvm-svn: 326 
							
						 
						
							2001-07-28 17:52:14 +00:00  
				
					
						
							
							
								 
						
							
								b62b602fe2 
								
							 
						 
						
							
							
								
								Enable the elimination of method prototypes that are not referenced  
							
							... 
							
							
							
							llvm-svn: 325 
							
						 
						
							2001-07-28 17:51:49 +00:00  
				
					
						
							
							
								 
						
							
								f324dc82a1 
								
							 
						 
						
							
							
								
								* Make sure that the size of the type field can also control the output  
							
							... 
							
							
							
							instruction pattern.
llvm-svn: 324 
							
						 
						
							2001-07-28 17:51:21 +00:00  
				
					
						
							
							
								 
						
							
								5bdab0f9ad 
								
							 
						 
						
							
							
								
								* Add calls to failure template so that it is actually possible to debug  
							
							... 
							
							
							
							why bytecode parsing is failing.  Just put a breakpoint in the failure
  templates.
llvm-svn: 323 
							
						 
						
							2001-07-28 17:50:18 +00:00  
				
					
						
							
							
								 
						
							
								2091efbc0a 
								
							 
						 
						
							
							
								
								* Fix bugs  
							
							... 
							
							
							
							llvm-svn: 322 
							
						 
						
							2001-07-28 17:49:02 +00:00  
				
					
						
							
							
								 
						
							
								26e50dc0c3 
								
							 
						 
						
							
							
								
								* Enable the use of escaped literal strings  
							
							... 
							
							
							
							* Unresolved variable names now have the correct line number for their
  error messages
* Rename Def* to Value*
* Check for symbol table collisions before inserting values
* Remove the STRING keyword
* Enable the use of string literals to initialize constant arrays
* Enable the use of extended constants in more locations: eg ret [int] [4, 5]
* Allow method prototypes to appear in the constant pool of the program
* Support varargs methods better.  Enable varargs methods with 0 fixed
  arguments
* Allow the entire method prototype to optionally be specified in a call inst
llvm-svn: 321 
							
						 
						
							2001-07-28 17:48:55 +00:00  
				
					
						
							
							
								 
						
							
								50204f5daa 
								
							 
						 
						
							
							
								
								Added UltraSparcInstrInfo class to specialize class MachineInstrInfo.  
							
							... 
							
							
							
							Relevant changes elsewhere:
Added MachineInstrInfo class and moved instruction-related members there.
Added several fields to MachineInstrDescriptor (and renamed it from
MachineInstrInfo.  Latency fields are to support scheduling.
llvm-svn: 311 
							
						 
						
							2001-07-28 04:19:10 +00:00  
				
					
						
							
							
								 
						
							
								985b6e3d13 
								
							 
						 
						
							
							
								
								Eliminate unused function.  
							
							... 
							
							
							
							llvm-svn: 310 
							
						 
						
							2001-07-28 04:15:45 +00:00  
				
					
						
							
							
								 
						
							
								150460321e 
								
							 
						 
						
							
							
								
								Bug fixes:  
							
							... 
							
							
							
							Store bool result in register after SetCC if the bool value
is used by anything other than a branch.
Forward-substitute operand of a VM instruction for which no
machine instruction is generated (e.g., Cast).
Other changes due to changes to classes TargetMachine and MachineInstr.
llvm-svn: 309 
							
						 
						
							2001-07-28 04:15:15 +00:00  
				
					
						
							
							
								 
						
							
								c429691751 
								
							 
						 
						
							
							
								
								Added MachineInstrInfo class and moved instruction-related members there.  
							
							... 
							
							
							
							Added several fields to MachineInstrDescriptor (and renamed it from
MachineInstrInfo.  Latency fields are to support scheduling.
llvm-svn: 308 
							
						 
						
							2001-07-28 04:09:37 +00:00  
				
					
						
							
							
								 
						
							
								bff682dfac 
								
							 
						 
						
							
							
								
								Eliminate separate enum for operand register type.  
							
							... 
							
							
							
							Use union for alternative data for different operand types.
Add iterator over Value* operands in a MachineInstr.
llvm-svn: 307 
							
						 
						
							2001-07-28 04:06:37 +00:00  
				
					
						
							
							
								 
						
							
								ee998be490 
								
							 
						 
						
							
							
								
								Don't write out constants that do not have a name, they will be inlined.  
							
							... 
							
							
							
							llvm-svn: 305 
							
						 
						
							2001-07-26 16:29:38 +00:00  
				
					
						
							
							
								 
						
							
								252afbaf33 
								
							 
						 
						
							
							
								
								Refactor some of the constant stuff so that we can return complex constant  
							
							... 
							
							
							
							values directly.  This was causing test failures. :(
llvm-svn: 304 
							
						 
						
							2001-07-26 16:29:15 +00:00  
				
					
						
							
							
								 
						
							
								89d4dfbfba 
								
							 
						 
						
							
							
								
								Add an arg to insertVal to allow us to prevent builtin types from being ignored  
							
							... 
							
							
							
							when they are inserted.
Ignore constant values without names.  If they are used, they will be inlined.
llvm-svn: 303 
							
						 
						
							2001-07-26 16:28:37 +00:00  
				
					
						
							
							
								 
						
							
								90e0d464ba 
								
							 
						 
						
							
							
								
								Add support for extern varargs methods & varargs method calls  
							
							... 
							
							
							
							llvm-svn: 297 
							
						 
						
							2001-07-25 22:47:55 +00:00  
				
					
						
							
							
								 
						
							
								42b5a8a6e5 
								
							 
						 
						
							
							
								
								Add support for extern varargs methods & varargs method calls  
							
							... 
							
							
							
							Remove tool generated files
llvm-svn: 296 
							
						 
						
							2001-07-25 22:47:46 +00:00  
				
					
						
							
							
								 
						
							
								c4d6aca02e 
								
							 
						 
						
							
							
								
								Fix a bug when compiling 'shl ubyte * %var, ubyte 2'  
							
							... 
							
							
							
							llvm-svn: 295 
							
						 
						
							2001-07-25 22:47:32 +00:00  
				
					
						
							
							
								 
						
							
								fd7f856670 
								
							 
						 
						
							
							
								
								Fixed a bug exposed when doing something like this:   <program> -notanoption --help  
							
							... 
							
							
							
							llvm-svn: 293 
							
						 
						
							2001-07-25 18:40:49 +00:00  
				
					
						
							
							
								 
						
							
								6988791c1e 
								
							 
						 
						
							
							
								
								Changed printValue() to print constant value if the value is a constant.  
							
							... 
							
							
							
							llvm-svn: 292 
							
						 
						
							2001-07-24 18:21:21 +00:00  
				
					
						
							
							
								 
						
							
								9f18119edb 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 291 
							
						 
						
							2001-07-24 17:14:13 +00:00  
				
					
						
							
							
								 
						
							
								46c73465b6 
								
							 
						 
						
							
							
								
								Doh!  Wrong Optional flag.  :(  
							
							... 
							
							
							
							llvm-svn: 290 
							
						 
						
							2001-07-23 23:14:23 +00:00  
				
					
						
							
							
								 
						
							
								81cc83df03 
								
							 
						 
						
							
							
								
								Add a comment indicating that there is documentation of the library  
							
							... 
							
							
							
							llvm-svn: 289 
							
						 
						
							2001-07-23 23:04:07 +00:00  
				
					
						
							
							
								 
						
							
								4fdde2cc62 
								
							 
						 
						
							
							
								
								Minor changes to implementation of CommandLine library to let users override  
							
							... 
							
							
							
							options forced by different  subclasses of Option
llvm-svn: 286 
							
						 
						
							2001-07-23 23:02:45 +00:00  
				
					
						
							
							
								 
						
							
								ab0cc40796 
								
							 
						 
						
							
							
								
								CommandLine library cleanup.  No longer use getValue/setValue, instead, just treat the commandline  
							
							... 
							
							
							
							args as the objects they represent and the "right thing" will happen
llvm-svn: 283 
							
						 
						
							2001-07-23 19:27:24 +00:00  
				
					
						
							
							
								 
						
							
								0d005997fd 
								
							 
						 
						
							
							
								
								Doh!  Wrong accessor.  Caused 'can not read bytecode' errors.  :(  
							
							... 
							
							
							
							llvm-svn: 282 
							
						 
						
							2001-07-23 18:51:23 +00:00  
				
					
						
							
							
								 
						
							
								78a307b170 
								
							 
						 
						
							
							
								
								Eliminated the Unique class in favor of NonCopyable and NonCopyableV  
							
							... 
							
							
							
							llvm-svn: 280 
							
						 
						
							2001-07-23 18:26:21 +00:00  
				
					
						
							
							
								 
						
							
								e2472bbf6c 
								
							 
						 
						
							
							
								
								Moved inline/llvm/Tools/* to include/llvm/Support/*  
							
							... 
							
							
							
							llvm-svn: 279 
							
						 
						
							2001-07-23 17:46:59 +00:00  
				
					
						
							
							
								 
						
							
								36a57d31e3 
								
							 
						 
						
							
							
								
								Initial checkin  
							
							... 
							
							
							
							llvm-svn: 278 
							
						 
						
							2001-07-23 17:17:47 +00:00  
				
					
						
							
							
								 
						
							
								44187dbff1 
								
							 
						 
						
							
							
								
								Clean up hash table usage  
							
							... 
							
							
							
							Remove opaque pointer used for C compatibility which isn't an issue
llvm-svn: 275 
							
						 
						
							2001-07-23 03:50:57 +00:00  
				
					
						
							
							
								 
						
							
								d8f1cc98e8 
								
							 
						 
						
							
							
								
								Removal of the redundant CompileContext wrapper  
							
							... 
							
							
							
							llvm-svn: 274 
							
						 
						
							2001-07-23 03:09:03 +00:00  
				
					
						
							
							
								 
						
							
								0af2464a78 
								
							 
						 
						
							
							
								
								Large scale changes to implement new command line argument facility  
							
							... 
							
							
							
							llvm-svn: 272 
							
						 
						
							2001-07-23 02:35:57 +00:00  
				
					
						
							
							
								 
						
							
								f2d1e79276 
								
							 
						 
						
							
							
								
								Remove dependence on command line library.  Silly anyway.  
							
							... 
							
							
							
							llvm-svn: 271 
							
						 
						
							2001-07-22 18:36:00 +00:00  
				
					
						
							
							
								 
						
							
								9c0f8f24e0 
								
							 
						 
						
							
							
								
								Privatize LLCOptions.  It had no business being visible to the entire  
							
							... 
							
							
							
							program.
llvm-svn: 267 
							
						 
						
							2001-07-22 04:40:02 +00:00  
				
					
						
							
							
								 
						
							
								b299068101 
								
							 
						 
						
							
							
								
								Eliminate lots of unnecessary #includes and forward decls  
							
							... 
							
							
							
							there are probably more to kill
llvm-svn: 261 
							
						 
						
							2001-07-21 23:24:48 +00:00  
				
					
						
							
							
								 
						
							
								7769970e16 
								
							 
						 
						
							
							
								
								Eliminate many unneccesary #includes  
							
							... 
							
							
							
							llvm-svn: 260 
							
						 
						
							2001-07-21 22:59:56 +00:00  
				
					
						
							
							
								 
						
							
								7cad6f14b8 
								
							 
						 
						
							
							
								
								Make code fit in 80 columns more  
							
							... 
							
							
							
							llvm-svn: 259 
							
						 
						
							2001-07-21 22:57:05 +00:00  
				
					
						
							
							
								 
						
							
								eb68f3263c 
								
							 
						 
						
							
							
								
								Remove unneccesary #includes  
							
							... 
							
							
							
							llvm-svn: 258 
							
						 
						
							2001-07-21 22:53:35 +00:00  
				
					
						
							
							
								 
						
							
								293e80559c 
								
							 
						 
						
							
							
								
								Exterminate nasty Cisms  
							
							... 
							
							
							
							llvm-svn: 257 
							
						 
						
							2001-07-21 22:42:09 +00:00  
				
					
						
							
							
								 
						
							
								bdb56b1639 
								
							 
						 
						
							
							
								
								Refer to include/llvm/CodeGen not Codegen  
							
							... 
							
							
							
							llvm-svn: 256 
							
						 
						
							2001-07-21 22:32:34 +00:00  
				
					
						
							
							
								 
						
							
								e696d62ce3 
								
							 
						 
						
							
							
								
								Make sure we build all of the code!  
							
							... 
							
							
							
							llvm-svn: 254 
							
						 
						
							2001-07-21 21:04:03 +00:00  
				
					
						
							
							
								 
						
							
								dd511760d9 
								
							 
						 
						
							
							
								
								Renamed include/llvm/Codegen to include/llvm/CodeGen  
							
							... 
							
							
							
							llvm-svn: 253 
							
						 
						
							2001-07-21 20:58:30 +00:00  
				
					
						
							
							
								 
						
							
								7f95c9e33a 
								
							 
						 
						
							
							
								
								Fix code to be in a consistent style  
							
							... 
							
							
							
							llvm-svn: 252 
							
						 
						
							2001-07-21 20:09:07 +00:00  
				
					
						
							
							
								 
						
							
								93547c3231 
								
							 
						 
						
							
							
								
								Remove getTempValuesForMachineCode from the Instruction interface  
							
							... 
							
							
							
							to remove dependency on <vector>
llvm-svn: 250 
							
						 
						
							2001-07-21 20:04:10 +00:00  
				
					
						
							
							
								 
						
							
								720ff31ab4 
								
							 
						 
						
							
							
								
								Moved LLC subdir to the tools top level directory  
							
							... 
							
							
							
							llvm-svn: 248 
							
						 
						
							2001-07-21 19:33:01 +00:00  
				
					
						
							
							
								 
						
							
								7309d66d73 
								
							 
						 
						
							
							
								
								Add new ctor for ConstPoolBool  
							
							... 
							
							
							
							llvm-svn: 246 
							
						 
						
							2001-07-21 19:16:08 +00:00  
				
					
						
							
							
								 
						
							
								77ba32f4cc 
								
							 
						 
						
							
							
								
								Add new constructor for const pool bool  
							
							... 
							
							
							
							llvm-svn: 245 
							
						 
						
							2001-07-21 19:15:26 +00:00  
				
					
						
							
							
								 
						
							
								55406840e2 
								
							 
						 
						
							
							
								
								Add support for casts  
							
							... 
							
							
							
							llvm-svn: 244 
							
						 
						
							2001-07-21 19:10:49 +00:00  
				
					
						
							
							
								 
						
							
								2c6f274188 
								
							 
						 
						
							
							
								
								More functionality, renamed API  
							
							... 
							
							
							
							llvm-svn: 241 
							
						 
						
							2001-07-21 19:07:19 +00:00  
				
					
						
							
							
								 
						
							
								6ee77c851e 
								
							 
						 
						
							
							
								
								Utility routines for simpler access to the value of an integer constant.  
							
							... 
							
							
							
							llvm-svn: 236 
							
						 
						
							2001-07-21 12:44:00 +00:00  
				
					
						
							
							
								 
						
							
								4d709951bb 
								
							 
						 
						
							
							
								
								Program options class.  
							
							... 
							
							
							
							llvm-svn: 235 
							
						 
						
							2001-07-21 12:43:07 +00:00  
				
					
						
							
							
								 
						
							
								656823944e 
								
							 
						 
						
							
							
								
								Description of the SPARC as a target architecture.  
							
							... 
							
							
							
							llvm-svn: 233 
							
						 
						
							2001-07-21 12:42:19 +00:00  
				
					
						
							
							
								 
						
							
								3414e78e29 
								
							 
						 
						
							
							
								
								Base clas for a description of a target architecture.  
							
							... 
							
							
							
							llvm-svn: 232 
							
						 
						
							2001-07-21 12:42:08 +00:00  
				
					
						
							
							
								 
						
							
								ab9e557102 
								
							 
						 
						
							
							
								
								Instruction selection via pattern matching on instruction trees using BURG.  
							
							... 
							
							
							
							llvm-svn: 231 
							
						 
						
							2001-07-21 12:41:50 +00:00  
				
					
						
							
							
								 
						
							
								9c049ca36c 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 230 
							
						 
						
							2001-07-21 12:41:01 +00:00  
				
					
						
							
							
								 
						
							
								aa576e5b8b 
								
							 
						 
						
							
							
								
								Added CodeGen, LLC, and Support.  
							
							... 
							
							
							
							llvm-svn: 229 
							
						 
						
							2001-07-21 12:40:37 +00:00  
				
					
						
							
							
								 
						
							
								aa4c7b56f8 
								
							 
						 
						
							
							
								
								Add isIntegral() method to SignedIntType and UnsignedIntType.  
							
							... 
							
							
							
							llvm-svn: 224 
							
						 
						
							2001-07-21 12:32:48 +00:00  
				
					
						
							
							
								 
						
							
								0452d48c50 
								
							 
						 
						
							
							
								
								Compute and cache information about the storage size and layout  
							
							... 
							
							
							
							of structures.  This information is machine-dependent.
llvm-svn: 222 
							
						 
						
							2001-07-20 21:09:17 +00:00  
				
					
						
							
							
								 
						
							
								75cc5a26a2 
								
							 
						 
						
							
							
								
								Provide uniform access to the pointer operand and to the index  
							
							... 
							
							
							
							operands (if any) for different types of MemAccessInst's.
llvm-svn: 221 
							
						 
						
							2001-07-20 21:07:06 +00:00  
				
					
						
							
							
								 
						
							
								3e2394cdad 
								
							 
						 
						
							
							
								
								Added a representation of the machine instructions generated  
							
							... 
							
							
							
							for a VM instruction.
llvm-svn: 220 
							
						 
						
							2001-07-20 21:05:02 +00:00  
				
					
						
							
							
								 
						
							
								85090922f4 
								
							 
						 
						
							
							
								
								Start of expression analysis support  
							
							... 
							
							
							
							llvm-svn: 219 
							
						 
						
							2001-07-20 19:17:55 +00:00  
				
					
						
							
							
								 
						
							
								9655e54d21 
								
							 
						 
						
							
							
								
								Implement ensureTypeAvailable  
							
							... 
							
							
							
							Implement ConstPoolInt class
llvm-svn: 215 
							
						 
						
							2001-07-20 19:16:02 +00:00  
				
					
						
							
							
								 
						
							
								4f6031f3e7 
								
							 
						 
						
							
							
								
								Add support for constant propogation of multiplies  
							
							... 
							
							
							
							llvm-svn: 214 
							
						 
						
							2001-07-20 19:15:36 +00:00  
				
					
						
							
							
								 
						
							
								5e5abe3eaa 
								
							 
						 
						
							
							
								
								Factor out WriteAsOperand.  
							
							... 
							
							
							
							llvm-svn: 213 
							
						 
						
							2001-07-20 19:15:21 +00:00  
				
					
						
							
							
								 
						
							
								1caf0bbd4e 
								
							 
						 
						
							
							
								
								Add a comment.  
							
							... 
							
							
							
							llvm-svn: 212 
							
						 
						
							2001-07-20 19:15:08 +00:00  
				
					
						
							
							
								 
						
							
								197390e985 
								
							 
						 
						
							
							
								
								Fix nasty typo  
							
							... 
							
							
							
							llvm-svn: 204 
							
						 
						
							2001-07-20 04:39:07 +00:00  
				
					
						
							
							
								 
						
							
								3e37ec7c0a 
								
							 
						 
						
							
							
								
								Support external methods  
							
							... 
							
							
							
							llvm-svn: 200 
							
						 
						
							2001-07-15 21:43:45 +00:00  
				
					
						
							
							
								 
						
							
								a7620d9656 
								
							 
						 
						
							
							
								
								Implement forward/external declarations for methods.  
							
							... 
							
							
							
							llvm-svn: 196 
							
						 
						
							2001-07-15 06:35:59 +00:00  
				
					
						
							
							
								 
						
							
								17f729e269 
								
							 
						 
						
							
							
								
								Implement forward/external declarations for methods.  Also, emit an error if a method  
							
							... 
							
							
							
							is defined more than once, instead of crashing.
llvm-svn: 195 
							
						 
						
							2001-07-15 06:35:53 +00:00  
				
					
						
							
							
								 
						
							
								d06dd69e73 
								
							 
						 
						
							
							
								
								Add support for assembly printing fp constants  
							
							... 
							
							
							
							llvm-svn: 191 
							
						 
						
							2001-07-15 00:18:39 +00:00  
				
					
						
							
							
								 
						
							
								4d44c2ba81 
								
							 
						 
						
							
							
								
								Add support to the bytecode writer to recognize floating point constants  
							
							... 
							
							
							
							llvm-svn: 190 
							
						 
						
							2001-07-15 00:17:23 +00:00  
				
					
						
							
							
								 
						
							
								f435e200b1 
								
							 
						 
						
							
							
								
								Add support to the bytecode reader to recognize floating point constants  
							
							... 
							
							
							
							llvm-svn: 189 
							
						 
						
							2001-07-15 00:17:18 +00:00  
				
					
						
							
							
								 
						
							
								212f70d92e 
								
							 
						 
						
							
							
								
								Add support to the parser to recognize floating point constants  
							
							... 
							
							
							
							llvm-svn: 188 
							
						 
						
							2001-07-15 00:17:01 +00:00  
				
					
						
							
							
								 
						
							
								f2a738cfe2 
								
							 
						 
						
							
							
								
								* ValueHolder now takes 3 arguments  
							
							... 
							
							
							
							* Added a few methods to ConstantPool
* ConstPoolVal no longer derives from Value
* Method & Module multiply inherit from SymTabValue & Value now
* Added a GetElementPtrInst::isStructSelector() method
llvm-svn: 184 
							
						 
						
							2001-07-14 06:13:19 +00:00  
				
					
						
							
							
								 
						
							
								5451c9e977 
								
							 
						 
						
							
							
								
								Add knowledge about the struct form of the GetElementPtr instruction  
							
							... 
							
							
							
							llvm-svn: 183 
							
						 
						
							2001-07-14 06:11:51 +00:00  
				
					
						
							
							
								 
						
							
								5b1200bf8e 
								
							 
						 
						
							
							
								
								Remove dependency on the structure of ValueHolder.  
							
							... 
							
							
							
							llvm-svn: 182 
							
						 
						
							2001-07-14 06:11:26 +00:00  
				
					
						
							
							
								 
						
							
								dbfb7d8042 
								
							 
						 
						
							
							
								
								* The parent of a constant pool is a symtabvalue, not a value.  
							
							... 
							
							
							
							llvm-svn: 181 
							
						 
						
							2001-07-14 06:10:49 +00:00  
				
					
						
							
							
								 
						
							
								32e96bcb54 
								
							 
						 
						
							
							
								
								The parent of a constant pool is a symtabvalue, not a value.  
							
							... 
							
							
							
							llvm-svn: 180 
							
						 
						
							2001-07-14 06:10:33 +00:00  
				
					
						
							
							
								 
						
							
								56f73d45f5 
								
							 
						 
						
							
							
								
								Added some comments, preparing to add global variables and method prototypes  
							
							... 
							
							
							
							llvm-svn: 179 
							
						 
						
							2001-07-14 06:10:16 +00:00  
				
					
						
							
							
								 
						
							
								5446f8a542 
								
							 
						 
						
							
							
								
								* The parent of a constant pool is a SymTabValue, not a value.  
							
							... 
							
							
							
							llvm-svn: 178 
							
						 
						
							2001-07-14 06:08:51 +00:00  
				
					
						
							
							
								 
						
							
								5a2d2b1f0a 
								
							 
						 
						
							
							
								
								Made the following changes:  
							
							... 
							
							
							
							* ValueHolder became a 3 argument template.  This allows for BasicBlock to
  use the value holder arg as a typesafe parent pointer.
* SymTabValue no longer inherits from Value
* Method does not inherit from only SymTabValue.  Now it inherits from both
  STV & Value.
* Module does not inherit from only SymTabValue.  Now it inherits from both
  STV & Value.
* Updated the SymTabValue.h file to reference SymTabValue instead of STDef
  in several places
* Added isArraySelector & isStructSelector to GetElementPtr instruction
llvm-svn: 177 
							
						 
						
							2001-07-14 06:07:58 +00:00  
				
					
						
							
							
								 
						
							
								2e9fee4702 
								
							 
						 
						
							
							
								
								Add DebugValue member.  
							
							... 
							
							
							
							llvm-svn: 175 
							
						 
						
							2001-07-12 23:35:26 +00:00  
				
					
						
							
							
								 
						
							
								d6c5a769ea 
								
							 
						 
						
							
							
								
								Don't clean out the type plane of the constant pool... this is a hack.  FIXME  
							
							... 
							
							
							
							llvm-svn: 172 
							
						 
						
							2001-07-09 19:38:52 +00:00  
				
					
						
							
							
								 
						
							
								d9c40e355e 
								
							 
						 
						
							
							
								
								Make sure that types go in the constant pool if they are used.  
							
							... 
							
							
							
							llvm-svn: 171 
							
						 
						
							2001-07-09 19:38:36 +00:00  
				
					
						
							
							
								 
						
							
								62ecb4a137 
								
							 
						 
						
							
							
								
								Implementation of Store & GetElementPtr  
							
							... 
							
							
							
							llvm-svn: 164 
							
						 
						
							2001-07-08 23:22:50 +00:00  
				
					
						
							
							
								 
						
							
								31feae8550 
								
							 
						 
						
							
							
								
								Implement checking for new instructions  
							
							... 
							
							
							
							llvm-svn: 163 
							
						 
						
							2001-07-08 21:18:49 +00:00  
				
					
						
							
							
								 
						
							
								d8bebcd517 
								
							 
						 
						
							
							
								
								Implemented shl, shl, & load instructions  
							
							... 
							
							
							
							llvm-svn: 161 
							
						 
						
							2001-07-08 21:10:27 +00:00  
				
					
						
							
							
								 
						
							
								49c643262e 
								
							 
						 
						
							
							
								
								Moved Cast from being a Unary instruction to being an "Other" instruction  
							
							... 
							
							
							
							llvm-svn: 160 
							
						 
						
							2001-07-08 19:03:27 +00:00  
				
					
						
							
							
								 
						
							
								fb8ed0cf3a 
								
							 
						 
						
							
							
								
								Use the CDG to mark branches alive on demand.  
							
							... 
							
							
							
							llvm-svn: 159 
							
						 
						
							2001-07-08 18:38:36 +00:00  
				
					
						
							
							
								 
						
							
								1547114cbf 
								
							 
						 
						
							
							
								
								Fixed post dominator frontiers!  Yaay!  
							
							... 
							
							
							
							llvm-svn: 157 
							
						 
						
							2001-07-08 05:54:09 +00:00  
				
					
						
							
							
								 
						
							
								a682182f64 
								
							 
						 
						
							
							
								
								Neg instruction removed.  Cast instruction implemented.  
							
							... 
							
							
							
							llvm-svn: 156 
							
						 
						
							2001-07-08 04:57:15 +00:00  
				
					
						
							
							
								 
						
							
								1fd1a3a7b4 
								
							 
						 
						
							
							
								
								Removing unnecesary file  
							
							... 
							
							
							
							llvm-svn: 154 
							
						 
						
							2001-07-07 20:54:19 +00:00  
				
					
						
							
							
								 
						
							
								87d478287b 
								
							 
						 
						
							
							
								
								Convert BinaryOperand and UnaryOperator to only take instruction types of  
							
							... 
							
							
							
							the appropriate enum
llvm-svn: 153 
							
						 
						
							2001-07-07 20:17:23 +00:00  
				
					
						
							
							
								 
						
							
								b1ca9cbceb 
								
							 
						 
						
							
							
								
								Broad superficial changes:  
							
							... 
							
							
							
							* Renamed getOpcode to getOpcodeName
* Changed getOpcodeName to return a const char * instead of string
* Added a getOpcode method to replace getInstType
* Changed code to use getOpcode instead of getInstType
llvm-svn: 152 
							
						 
						
							2001-07-07 19:24:15 +00:00  
				
					
						
							
							
								 
						
							
								a073acb22d 
								
							 
						 
						
							
							
								
								Changed the fundemental architecture of Operands for Instructions.  Now  
							
							... 
							
							
							
							Operands are maintained as a vector<Use> in the User class, and operator
iterators are provided as before.  Getting an operand no longer requires
a virtual function call.
WARNING: getOperand(x) where x >= getNumOperands() will now assert instead
of returning null!
llvm-svn: 149 
							
						 
						
							2001-07-07 08:36:50 +00:00  
				
					
						
							
							
								 
						
							
								37099990b3 
								
							 
						 
						
							
							
								
								Changed memory reference instructions to store the result as the implicit  
							
							... 
							
							
							
							type of the instruction.
llvm-svn: 148 
							
						 
						
							2001-07-07 08:36:30 +00:00  
				
					
						
							
							
								 
						
							
								32503d5637 
								
							 
						 
						
							
							
								
								Fixed some error messages to be nicer  
							
							... 
							
							
							
							llvm-svn: 147 
							
						 
						
							2001-07-07 08:36:05 +00:00  
				
					
						
							
							
								 
						
							
								29aae157f7 
								
							 
						 
						
							
							
								
								Add method to unify all exit nodes of a method  
							
							... 
							
							
							
							llvm-svn: 143 
							
						 
						
							2001-07-06 16:58:36 +00:00  
				
					
						
							
							
								 
						
							
								c385bebc89 
								
							 
						 
						
							
							
								
								Implement support for postdominators, except in dom frontiers  
							
							... 
							
							
							
							llvm-svn: 142 
							
						 
						
							2001-07-06 16:58:22 +00:00  
				
					
						
							
							
								 
						
							
								8024bde7c7 
								
							 
						 
						
							
							
								
								Update to include right file  
							
							... 
							
							
							
							llvm-svn: 138 
							
						 
						
							2001-07-06 16:32:07 +00:00  
				
					
						
							
							
								 
						
							
								81f3ace753 
								
							 
						 
						
							
							
								
								IntervalPartition was changed to inherit from vector<Interval*> instead of  
							
							... 
							
							
							
							contain it so that it would have full iterator access without much work.
Writer includes code to print out IntervalPartition's now.
llvm-svn: 133 
							
						 
						
							2001-07-03 15:28:35 +00:00  
				
					
						
							
							
								 
						
							
								fa3ac26d22 
								
							 
						 
						
							
							
								
								Code got moved from the lib/Assembly/Writer/IntervalWriter.cpp file to  
							
							... 
							
							
							
							here.  Updates to correct description n stuff.
llvm-svn: 129 
							
						 
						
							2001-07-03 05:36:34 +00:00  
				
					
						
							
							
								 
						
							
								a7f22e53c0 
								
							 
						 
						
							
							
								
								Add printing code for dominator info  
							
							... 
							
							
							
							llvm-svn: 125 
							
						 
						
							2001-07-02 05:46:47 +00:00  
				
					
						
							
							
								 
						
							
								081aabc330 
								
							 
						 
						
							
							
								
								Checkin of new dominator calculation routines.  These will be improved in  
							
							... 
							
							
							
							the future to do post dominators and stuff
llvm-svn: 124 
							
						 
						
							2001-07-02 05:46:38 +00:00  
				
					
						
							
							
								 
						
							
								0c94a300eb 
								
							 
						 
						
							
							
								
								Moved deleter to include/llvm/Tools/STLExtras.h  
							
							... 
							
							
							
							llvm-svn: 120 
							
						 
						
							2001-07-02 01:08:08 +00:00  
				
					
						
							
							
								 
						
							
								b28986ffc7 
								
							 
						 
						
							
							
								
								Initial checkin.  Should print dead instructions, except it doesn't do  
							
							... 
							
							
							
							control dependencies.  :(
llvm-svn: 119 
							
						 
						
							2001-06-30 06:39:11 +00:00  
				
					
						
							
							
								 
						
							
								1960b3c6d2 
								
							 
						 
						
							
							
								
								Rename DoSparseConditionalConstantProp -> DoSCCP  
							
							... 
							
							
							
							llvm-svn: 117 
							
						 
						
							2001-06-30 06:37:43 +00:00  
				
					
						
							
							
								 
						
							
								d42d492734 
								
							 
						 
						
							
							
								
								Optimizations got their own header files  
							
							... 
							
							
							
							Optimizations now live in the 'opt' namespace
include/llvm/Opt was renamed include/llvm/Optimizations
llvm-svn: 113 
							
						 
						
							2001-06-30 04:36:40 +00:00  
				
					
						
							
							
								 
						
							
								31cf984332 
								
							 
						 
						
							
							
								
								Implement reduceApply method  
							
							... 
							
							
							
							llvm-svn: 112 
							
						 
						
							2001-06-30 04:35:40 +00:00  
				
					
						
							
							
								 
						
							
								c10245352c 
								
							 
						 
						
							
							
								
								Add a new pop_back() method  
							
							... 
							
							
							
							llvm-svn: 111 
							
						 
						
							2001-06-30 04:35:21 +00:00  
				
					
						
							
							
								 
						
							
								7ce8b17e60 
								
							 
						 
						
							
							
								
								Export ConstantFoldTerminator, allow it to fold conditional branches to  
							
							... 
							
							
							
							the same label.
llvm-svn: 107 
							
						 
						
							2001-06-29 23:56:58 +00:00  
				
					
						
							
							
								 
						
							
								10b250eb4d 
								
							 
						 
						
							
							
								
								Added documentation.  Constant fold terminators.  
							
							... 
							
							
							
							llvm-svn: 106 
							
						 
						
							2001-06-29 23:56:23 +00:00  
				
					
						
							
							
								 
						
							
								2dd58aefa5 
								
							 
						 
						
							
							
								
								Add a check to avoid allowing V->replaceAllUsesWith(V)  
							
							... 
							
							
							
							llvm-svn: 104 
							
						 
						
							2001-06-29 05:25:51 +00:00  
				
					
						
							
							
								 
						
							
								615d3cf40d 
								
							 
						 
						
							
							
								
								Add implementation of BasicBlock::removePredecessor code that was factored  
							
							... 
							
							
							
							out of DCE.cpp
llvm-svn: 103 
							
						 
						
							2001-06-29 05:25:23 +00:00  
				
					
						
							
							
								 
						
							
								84f07396d3 
								
							 
						 
						
							
							
								
								* Factored RemovePredecessorFromBlock into BasicBlock::removePredecessor  
							
							... 
							
							
							
							* Avoid messing around with this case:
  br label %A
%A:  br label %A
* Enable optimizations that are correct now.
llvm-svn: 102 
							
						 
						
							2001-06-29 05:24:28 +00:00  
				
					
						
							
							
								 
						
							
								e4abb60948 
								
							 
						 
						
							
							
								
								We need to make sure to remove PHI nodes in the successor that cannot be  
							
							... 
							
							
							
							executed when removing branch dest.
llvm-svn: 101 
							
						 
						
							2001-06-29 05:23:10 +00:00  
				
					
						
							
							
								 
						
							
								d77f3c0cbd 
								
							 
						 
						
							
							
								
								Added a note about a new verification the verifier should do  
							
							... 
							
							
							
							Removed a redundant check
llvm-svn: 100 
							
						 
						
							2001-06-29 05:22:12 +00:00  
				
					
						
							
							
								 
						
							
								4cee8d8ffb 
								
							 
						 
						
							
							
								
								Miscellaneous cleanups:  
							
							... 
							
							
							
							* Convert post to pre-increment for for loops
  * Use generic programming more
  * Use new Value::cast* instructions
  * Use new Module, Method, & BasicBlock forwarding methods
  * Use new facilities in STLExtras.h
  * Use new Instruction::isPHINode() method
llvm-svn: 96 
							
						 
						
							2001-06-27 23:41:11 +00:00  
				
					
						
							
							
								 
						
							
								347389dae8 
								
							 
						 
						
							
							
								
								Add a new Sparse Conditional Constant Propogation pass  
							
							... 
							
							
							
							llvm-svn: 95 
							
						 
						
							2001-06-27 23:38:11 +00:00  
				
					
						
							
							
								 
						
							
								0ee411c080 
								
							 
						 
						
							
							
								
								Change to use the new GenericBinaryInst class.  Support lots more operators.  
							
							... 
							
							
							
							llvm-svn: 92 
							
						 
						
							2001-06-27 23:36:49 +00:00  
				
					
						
							
							
								 
						
							
								1a67fb8860 
								
							 
						 
						
							
							
								
								Misc cleanup  
							
							... 
							
							
							
							llvm-svn: 91 
							
						 
						
							2001-06-27 23:36:09 +00:00  
				
					
						
							
							
								 
						
							
								f222bf33c3 
								
							 
						 
						
							
							
								
								* Expose DoConstantPoolMerging  
							
							... 
							
							
							
							* Cleanups (post->pre increment, new cleaner API, etc)
* Moved stuff into ConstantHandling.h
llvm-svn: 90 
							
						 
						
							2001-06-27 23:35:26 +00:00  
				
					
						
							
							
								 
						
							
								4c8ba81f21 
								
							 
						 
						
							
							
								
								Convert ugly postincrement to efficient preincrement  
							
							... 
							
							
							
							llvm-svn: 89 
							
						 
						
							2001-06-27 23:34:01 +00:00  
				
					
						
							
							
								 
						
							
								223796ccf2 
								
							 
						 
						
							
							
								
								Convert postincrements to more efficient preincrements  
							
							... 
							
							
							
							llvm-svn: 81 
							
						 
						
							2001-06-27 23:28:02 +00:00  
				
					
						
							
							
								 
						
							
								01683cca32 
								
							 
						 
						
							
							
								
								Moved UnaryOperator::create to InstrTypes.cpp until there is an iUnaryOps.cpp  
							
							... 
							
							
							
							Moved BinaryOperator::create to iBinaryOperators.cpp
Add getUniqueName to SymbolTable
llvm-svn: 76 
							
						 
						
							2001-06-25 07:33:13 +00:00  
				
					
						
							
							
								 
						
							
								dbdaaef7d5 
								
							 
						 
						
							
							
								
								Implement induction variable injection!  
							
							... 
							
							
							
							llvm-svn: 75 
							
						 
						
							2001-06-25 07:32:19 +00:00  
				
					
						
							
							
								 
						
							
								31e23cdeb4 
								
							 
						 
						
							
							
								
								Renamed get.*Operator to create seeing that it would have to be qualified  
							
							... 
							
							
							
							with the classname anyways.
llvm-svn: 74 
							
						 
						
							2001-06-25 07:31:31 +00:00  
				
					
						
							
							
								 
						
							
								7221d33514 
								
							 
						 
						
							
							
								
								* Rename get.*Operator to create seeing that it would have to be qualified  
							
							... 
							
							
							
							with the classname anyways.
* Add an isPHINode() method to Instruction
* Add getUniqueName() to SymbolTable class
* Add an insert method to ValueHolder
llvm-svn: 73 
							
						 
						
							2001-06-25 07:31:05 +00:00  
				
					
						
							
							
								 
						
							
								c3a6f546de 
								
							 
						 
						
							
							
								
								A silly stupid test of the loop depth calculator was added.  REMOVE in the  
							
							... 
							
							
							
							future.
llvm-svn: 72 
							
						 
						
							2001-06-25 03:55:37 +00:00  
				
					
						
							
							
								 
						
							
								ed59025460 
								
							 
						 
						
							
							
								
								IntervalPartition: recode to use IntervalIterator to do all the work  
							
							... 
							
							
							
							LoopDepth.cpp: new file that calculates the depth of a loop, using
IntervalPartitions.
llvm-svn: 71 
							
						 
						
							2001-06-25 03:55:04 +00:00  
				
					
						
							
							
								 
						
							
								601012721c 
								
							 
						 
						
							
							
								
								New file due to the Intervals.h splitup  
							
							... 
							
							
							
							llvm-svn: 66 
							
						 
						
							2001-06-24 04:07:44 +00:00  
				
					
						
							
							
								 
						
							
								f64a8936e5 
								
							 
						 
						
							
							
								
								#include a different header due to Intervals.h splitting up  
							
							... 
							
							
							
							llvm-svn: 63 
							
						 
						
							2001-06-24 04:05:45 +00:00  
				
					
						
							
							
								 
						
							
								dec727e346 
								
							 
						 
						
							
							
								
								IntervalPartition & IntervalIterator classes have been split out into  
							
							... 
							
							
							
							their own .h files & .cpp file
llvm-svn: 62 
							
						 
						
							2001-06-24 04:05:21 +00:00  
				
					
						
							
							
								 
						
							
								4c16155c36 
								
							 
						 
						
							
							
								
								Prepare for split between Interval, IntervalIterator, and IntervalIPartition  
							
							... 
							
							
							
							llvm-svn: 60 
							
						 
						
							2001-06-24 03:25:01 +00:00  
				
					
						
							
							
								 
						
							
								4c4f178723 
								
							 
						 
						
							
							
								
								Implement a lot more functionality.  Now loop invariant and linear  
							
							... 
							
							
							
							induction variables are correctly identified.
llvm-svn: 57 
							
						 
						
							2001-06-22 02:24:38 +00:00  
				
					
						
							
							
								 
						
							
								34b62a04b6 
								
							 
						 
						
							
							
								
								Interval::HeaderNode is now accessed thorugh an accessor function  
							
							... 
							
							
							
							llvm-svn: 56 
							
						 
						
							2001-06-22 02:23:39 +00:00  
				
					
						
							
							
								 
						
							
								4b94e23bd0 
								
							 
						 
						
							
							
								
								Add a space to the PHI node output code to make it look nicer  
							
							... 
							
							
							
							llvm-svn: 53 
							
						 
						
							2001-06-21 05:29:56 +00:00  
				
					
						
							
							
								 
						
							
								b20a15d334 
								
							 
						 
						
							
							
								
								Moved printing code to the Assembly/Writer library.  
							
							... 
							
							
							
							Code now detects looping intervals
llvm-svn: 52 
							
						 
						
							2001-06-21 05:27:22 +00:00  
				
					
						
							
							
								 
						
							
								d79faa35af 
								
							 
						 
						
							
							
								
								Implement the new Interval::isLoop method  
							
							... 
							
							
							
							Implement destructor to free memory
llvm-svn: 51 
							
						 
						
							2001-06-21 05:26:15 +00:00  
				
					
						
							
							
								 
						
							
								778de94723 
								
							 
						 
						
							
							
								
								Get rid of a silly printout that isn't needed right now  
							
							... 
							
							
							
							llvm-svn: 45 
							
						 
						
							2001-06-20 23:09:39 +00:00  
				
					
						
							
							
								 
						
							
								f86e38e452 
								
							 
						 
						
							
							
								
								Add capability to print a derived interval graph  
							
							... 
							
							
							
							llvm-svn: 42 
							
						 
						
							2001-06-20 22:44:38 +00:00  
				
					
						
							
							
								 
						
							
								5035efaeda 
								
							 
						 
						
							
							
								
								Add capability to build a derived interval graph  
							
							... 
							
							
							
							llvm-svn: 41 
							
						 
						
							2001-06-20 22:44:32 +00:00  
				
					
						
							
							
								 
						
							
								28ae5cbcb5 
								
							 
						 
						
							
							
								
								Initial Checking of Interval handling code  
							
							... 
							
							
							
							llvm-svn: 39 
							
						 
						
							2001-06-20 20:09:55 +00:00  
				
					
						
							
							
								 
						
							
								d286a997d3 
								
							 
						 
						
							
							
								
								Add a test case for interval code  
							
							... 
							
							
							
							llvm-svn: 36 
							
						 
						
							2001-06-20 19:27:11 +00:00  
				
					
						
							
							
								 
						
							
								5ba5f88c35 
								
							 
						 
						
							
							
								
								Updates to work with new cfg namespace  
							
							... 
							
							
							
							llvm-svn: 29 
							
						 
						
							2001-06-13 19:55:22 +00:00  
				
					
						
							
							
								 
						
							
								874ddadf72 
								
							 
						 
						
							
							
								
								Updates to support  
							
							... 
							
							
							
							* Changes in PHI node structure
llvm-svn: 25 
							
						 
						
							2001-06-11 15:04:40 +00:00  
				
					
						
							
							
								 
						
							
								931ef3bf05 
								
							 
						 
						
							
							
								
								Updates to support  
							
							... 
							
							
							
							* Changes in PHI node structure
* Change to PHI syntax
llvm-svn: 24 
							
						 
						
							2001-06-11 15:04:20 +00:00  
				
					
						
							
							
								 
						
							
								5f46e8c9da 
								
							 
						 
						
							
							
								
								Moved getBinaryOperator to the BinaryOperator class and the getUnaryOperator  
							
							... 
							
							
							
							to the UnaryOperator class (from the Instruction class).
llvm-svn: 21 
							
						 
						
							2001-06-08 21:30:13 +00:00  
				
					
						
							
							
								 
						
							
								7e0d6e05ac 
								
							 
						 
						
							
							
								
								Updated to work with new CFG.h file.  
							
							... 
							
							
							
							llvm-svn: 15 
							
						 
						
							2001-06-07 21:18:45 +00:00  
				
					
						
							
							
								 
						
							
								e6c4ea9861 
								
							 
						 
						
							
							
								
								Add extra method to PHI node class  
							
							... 
							
							
							
							llvm-svn: 11 
							
						 
						
							2001-06-07 16:59:37 +00:00  
				
					
						
							
							
								 
						
							
								d821c2af37 
								
							 
						 
						
							
							
								
								Significant rework.  DCE is still not done (see #ifdef'd out parts)  
							
							... 
							
							
							
							but at least the stuff that is checked in, now works.
llvm-svn: 10 
							
						 
						
							2001-06-07 16:59:26 +00:00  
				
					
						
							
							
								 
						
							
								a2f01878b7 
								
							 
						 
						
							
							
								
								Fixed to print slightly differently.  Added use counts for labels  
							
							... 
							
							
							
							llvm-svn: 9 
							
						 
						
							2001-06-07 16:58:55 +00:00  
				
					
						
							
							
								 
						
							
								e358b22776 
								
							 
						 
						
							
							
								
								Fixes for BB iterators, additional methods added for DCE pass  
							
							... 
							
							
							
							llvm-svn: 8 
							
						 
						
							2001-06-07 16:58:36 +00:00  
				
					
						
							
							
								 
						
							
								2f7c963559 
								
							 
						 
						
							
							
								
								Initial revision  
							
							... 
							
							
							
							llvm-svn: 2 
							
						 
						
							2001-06-06 20:29:01 +00:00