peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0734904796 
							
						 
					 
					
						
						
							
							* only report unreleased imaginary registers  
						
						
						
					 
					
						2003-12-22 23:09:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							cc8d2226ae 
							
						 
					 
					
						
						
							
							* made decrease_degree working, but not really fixed  
						
						
						
					 
					
						2003-12-22 22:13:46 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							78aeec22ca 
							
						 
					 
					
						
						
							
							* arm compiler compilation fixed  
						
						
						
					 
					
						2003-12-18 17:06:21 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							bc4f29e15c 
							
						 
					 
					
						
						
							
							* don't insert dealloc before alloc of the same register  
						
						
						
					 
					
						2003-12-17 21:59:05 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							23aa8e1cda 
							
						 
					 
					
						
						
							
							* Automatic conversion from integer constants to pointer constants is no  
						
						... 
						
						
						
						longer done except in Delphi mode 
						
					 
					
						2003-12-16 09:41:44 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							1367e342db 
							
						 
					 
					
						
						
							
							* reg allocations for imaginary register are now inserted just  
						
						... 
						
						
						
						before reg allocation
  * tregister changed to enum to allow compile time check
  * fixed several tregister-tsuperregister errors 
						
					 
					
						2003-12-15 21:25:48 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							e60da116b0 
							
						 
					 
					
						
						
							
							* More microoptimizations  
						
						
						
					 
					
						2003-12-15 16:37:47 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2057dbd01a 
							
						 
					 
					
						
						
							
							* fix statedebug compile  
						
						
						
					 
					
						2003-12-15 15:58:58 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							7061f04355 
							
						 
					 
					
						
						
							
							* Register allocator speed optimizations  
						
						... 
						
						
						
						- Worklist no longer a ringbuffer
    - No find operations are left
    - Simplify now done in constant time
    - unusedregs is now a Tsuperregisterworklist
    - Microoptimizations 
						
					 
					
						2003-12-14 20:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							bce5a1e252 
							
						 
					 
					
						
						
							
							* rg[tregistertype] added in tcg  
						
						
						
					 
					
						2003-12-12 17:16:17 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							1407a03ff1 
							
						 
					 
					
						
						
							
							* remove redundant calls to add_edge_used  
						
						
						
					 
					
						2003-12-04 23:27:32 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							825d5b4ed7 
							
						 
					 
					
						
						
							
							* check for add_move_instruction  
						
						
						
					 
					
						2003-11-29 17:36:41 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							4584775cbe 
							
						 
					 
					
						
						
							
							* changed some types to prevend range check errors  
						
						
						
					 
					
						2003-11-24 15:17:37 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							f44380e4a9 
							
						 
					 
					
						
						
							
							* fixed alias/colouring > 255  
						
						
						
					 
					
						2003-11-10 19:05:50 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							bbf7300a0c 
							
						 
					 
					
						
						
							
							* Florian's culmutative nr. 1; contains:  
						
						... 
						
						
						
						- invalid calling conventions for a certain cpu are rejected
    - arm softfloat calling conventions
    - -Sp for cpu dependend code generation
    - several arm fixes
    - remaining code for value open array paras on heap 
						
					 
					
						2003-11-07 15:58:32 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							9e66b09843 
							
						 
					 
					
						
						
							
							* call firstpass before allocation and codegeneration is started  
						
						... 
						
						
						
						* move leftover code from pass_2.generatecode() to psub 
						
					 
					
						2003-10-30 16:22:40 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							cf8b181ff2 
							
						 
					 
					
						
						
							
							* some ALLOWDUPREG improvements  
						
						
						
					 
					
						2003-10-29 21:29:14 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							96f9973b46 
							
						 
					 
					
						
						
							
							* taicpu_abstract.oper[] changed to pointers  
						
						
						
					 
					
						2003-10-21 15:15:35 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							13a4e41b0c 
							
						 
					 
					
						
						
							
							* improved speed; reduced memory usage of the interference bitmap  
						
						
						
					 
					
						2003-10-19 12:36:36 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							05fcae577a 
							
						 
					 
					
						
						
							
							* some ppc stuff fixed  
						
						... 
						
						
						
						* memory leak fixed 
						
					 
					
						2003-10-19 01:34:30 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							9f54e1b7c5 
							
						 
					 
					
						
						
							
							* made worklists dynamic in size  
						
						
						
					 
					
						2003-10-18 15:41:26 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							ec7fb064d0 
							
						 
					 
					
						
						
							
							* fixed last commit  
						
						
						
					 
					
						2003-10-17 16:16:08 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							5b33ab3643 
							
						 
					 
					
						
						
							
							* fixed more ppc stuff  
						
						
						
					 
					
						2003-10-17 15:25:18 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							d0de3b3ea8 
							
						 
					 
					
						
						
							
							* 64k registers supported  
						
						... 
						
						
						
						* fixed some memory leaks 
						
					 
					
						2003-10-17 14:38:32 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							1df13c788c 
							
						 
					 
					
						
						
							
							* fixed some MMX<->SSE  
						
						... 
						
						
						
						* started to fix ppc, needs an overhaul
  + stabs info improve for spilling, not sure if it works correctly/completly
  - MMX_SUPPORT removed from Makefile.fpc 
						
					 
					
						2003-10-11 16:06:42 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							fb81b7ebbb 
							
						 
					 
					
						
						
							
							* old trgobj moved to x86/rgcpu and renamed to trgx86fpu  
						
						... 
						
						
						
						* tregisteralloctor renamed to trgobj
  * removed rgobj from a lot of units
  * moved location_* and reference_* to cgobj
  * first things for mmx register allocation 
						
					 
					
						2003-10-10 17:48:13 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							b2343f4b16 
							
						 
					 
					
						
						
							
							* Register allocator splitted, ans abstract now  
						
						
						
					 
					
						2003-10-09 21:31:37 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							70fe77ca7c 
							
						 
					 
					
						
						
							
							* procinfo unit contains tprocinfo  
						
						... 
						
						
						
						* cginfo renamed to cgbase
  * moved cgmessage to verbose
  * fixed ppc and sparc compiles 
						
					 
					
						2003-10-01 20:34:48 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2771f49e22 
							
						 
					 
					
						
						
							
							* reuse registers with the least conflicts  
						
						
						
					 
					
						2003-09-30 19:54:42 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							540691bf02 
							
						 
					 
					
						
						
							
							* optimized releasing of registers  
						
						
						
					 
					
						2003-09-29 20:58:55 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							dea558b5c7 
							
						 
					 
					
						
						
							
							* return reg 255 when allowdupreg is defined  
						
						
						
					 
					
						2003-09-28 13:41:12 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							bf66a6e4ab 
							
						 
					 
					
						
						
							
							* fix filepositions  
						
						... 
						
						
						
						* insert spill temp allocations at the start of the proc 
						
					 
					
						2003-09-25 16:19:32 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							76a53a375d 
							
						 
					 
					
						
						
							
							* varspez in calls to push_addr_param  
						
						
						
					 
					
						2003-09-16 16:17:01 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							90e1ca64f3 
							
						 
					 
					
						
						
							
							* Fixed fast spilling functionality by re-adding the code that initializes  
						
						... 
						
						
						
						precoloured nodes to degree 255. I would like to play hangman on the one
    who removed that code. 
						
					 
					
						2003-09-12 19:07:42 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							8f66389b46 
							
						 
					 
					
						
						
							
							* improved arm code generation  
						
						... 
						
						
						
						* move some protected and private field around
  * the temp. register for register parameters/arguments are now released
    before the move to the parameter register is done. This improves
    the code in a lot of cases. 
						
					 
					
						2003-09-11 11:54:59 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							49e539ac8d 
							
						 
					 
					
						
						
							
							* Adding register allocation order  
						
						
						
					 
					
						2003-09-09 20:59:27 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							05a15df3c2 
							
						 
					 
					
						
						
							
							* use register with least interferences in spillregister  
						
						
						
					 
					
						2003-09-09 15:55:44 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							b9d09a4e5c 
							
						 
					 
					
						
						
							
							* preparations for different default calling conventions  
						
						... 
						
						
						
						* various RA fixes 
						
					 
					
						2003-09-07 22:09:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							610cbec252 
							
						 
					 
					
						
						
							
							* fixes for FPU register allocation  
						
						
						
					 
					
						2003-09-03 21:06:45 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							6a8d5eb25d 
							
						 
					 
					
						
						
							
							* NEWRA branch merged  
						
						
						
					 
					
						2003-09-03 15:55:00 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							220e05dd5e 
							
						 
					 
					
						
						
							
							* fixed arm concatcopy  
						
						... 
						
						
						
						+ arm support in the common compiler sources added
  * moved some generic cg code around
  + tfputype added
  * ... 
						
					 
					
						2003-09-03 11:18:36 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							889bd81bdb 
							
						 
					 
					
						
						
							
							* Register allocator bugfix for h2pas  
						
						
						
					 
					
						2003-08-23 10:46:21 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							4f8c390198 
							
						 
					 
					
						
						
							
							* fixed regvars so they work with newra (at least for ppc)  
						
						... 
						
						
						
						* fixed some volatile register bugs
  + -dnotranslation option for -dnewra, which causes the registers not to
    be translated from virtual to normal registers. Requires support in
    the assembler writer as well, which is only implemented in aggas/
    agppcgas currently 
						
					 
					
						2003-08-17 16:59:20 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							7d3bfaaed4 
							
						 
					 
					
						
						
							
							* Precoloured nodes now have an infinite degree approached with 255,  
						
						... 
						
						
						
						like they should. 
						
					 
					
						2003-08-17 14:32:48 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							45f9851e87 
							
						 
					 
					
						
						
							
							* Another register allocator bug fixed.  
						
						... 
						
						
						
						* cpu_registers set to 6 for i386 
						
					 
					
						2003-08-17 08:48:02 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							42c320cb29 
							
						 
					 
					
						
						
							
							* cs_regalloc renamed to cs_regvars to avoid confusion with register  
						
						... 
						
						
						
						allocator
  * Some preventive changes to i386 spillinh code 
						
					 
					
						2003-08-09 18:56:54 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							557ac8b02e 
							
						 
					 
					
						
						
							
							* Fixed a register allocator bug  
						
						... 
						
						
						
						* Figured out why -dnewra generates superfluous "mov reg1,reg2"
    statements: changes in location_force. These moves are now no longer
    constrained so they are optimized away. 
						
					 
					
						2003-08-03 14:09:50 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							7bc1557f5c 
							
						 
					 
					
						
						
							
							* add_edges_used() is now also called for registers allocated with  
						
						... 
						
						
						
						getexplicitregisterint()
  * writing the intereference graph is now only done with -dradebug2 and
    the created files are now called "igraph.<module_name>" 
						
					 
					
						2003-07-21 13:32:39 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							268bfcf784 
							
						 
					 
					
						
						
							
							* Fixed register allocator. *Lots* of fixes.  
						
						
						
					 
					
						2003-07-06 15:31:20 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							80d6905b7b 
							
						 
					 
					
						
						
							
							* fixed my previous completely broken commit. It's not perfect though,  
						
						... 
						
						
						
						registers > last_supreg and < max_intreg may still be "translated" 
						
					 
					
						2003-07-06 15:00:47 +00:00