peter 
							
						 
					 
					
						
						
						
						
							
						
						
							8af51ea6d3 
							
						 
					 
					
						
						
							
							* locals and paras are allocated in the code generation  
						
						... 
						
						
						
						* tvarsym.localloc contains the location of para/local when
    generating code for the current procedure 
						
					 
					
						2003-09-23 17:56:05 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							47489f2376 
							
						 
					 
					
						
						
							
							* firstpass uses expectloc  
						
						... 
						
						
						
						* checks if there are differences between the expectloc and
    location.loc from secondpass in EXTDEBUG 
						
					 
					
						2003-04-22 23:50:22 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							46ed8eb932 
							
						 
					 
					
						
						
							
							* fixed pushing of records>8 bytes with stdcall  
						
						... 
						
						
						
						* simplified hightree loading 
						
					 
					
						2002-12-17 22:19:33 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							8b5e92cb3c 
							
						 
					 
					
						
						
							
							* removed repetitive pass counting  
						
						... 
						
						
						
						* display heapsize also for extdebug 
						
					 
					
						2002-09-05 19:28:29 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							7d66658fd4 
							
						 
					 
					
						
						
							
							* Further developed state tracking in whilerepeatn  
						
						
						
					 
					
						2002-07-19 12:55:27 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							399036f1c2 
							
						 
					 
					
						
						
							
							* State tracker work  
						
						... 
						
						
						
						* The whilen and repeatn are now completely unified into whilerepeatn. This
  allows the state tracker to change while nodes automatically into
  repeat nodes.
* Resulttypepass improvements to the notn. 'not not a' is optimized away and
  'not(a>b)' is optimized into 'a<=b'.
* Resulttypepass improvements to the whilerepeatn. 'while not a' is optimized
  by removing the notn and later switchting the true and falselabels. The
  same is done with 'repeat until not a'. 
						
					 
					
						2002-07-19 11:41:34 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							eeae0e4c00 
							
						 
					 
					
						
						
							
							+ Added the beginning of a state tracker. This will track the values of  
						
						... 
						
						
						
						variables through procedures and optimize things away. 
						
					 
					
						2002-07-14 18:00:43 +00:00 
						 
				 
			
				
					
						
							
							
								carl 
							
						 
					 
					
						
						
						
						
							
						
						
							cdd558c3b7 
							
						 
					 
					
						
						
							
							* commented out uncompilable debug code  
						
						
						
					 
					
						2002-06-16 08:15:54 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							06ebac4e27 
							
						 
					 
					
						
						
							
							* readded missing revisions  
						
						
						
					 
					
						2002-05-18 13:34:04 +00:00 
						 
				 
			
				
					
						
							
							
								carl 
							
						 
					 
					
						
						
						
						
							
						
						
							21b3a10f02 
							
						 
					 
					
						
						
							
							+ defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand  
						
						... 
						
						
						
						+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup 
						
					 
					
						2002-05-16 19:46:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2992e1819c 
							
						 
					 
					
						
						
							
							* removed old logs and updated copyright year  
						
						
						
					 
					
						2002-05-14 19:34:38 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							5e7a1e3729 
							
						 
					 
					
						
						
							
							* removed unused units  
						
						... 
						
						
						
						* use tlocation.size in cg.a_*loc*() routines 
						
					 
					
						2002-04-04 19:05:54 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							7fb55bf4e4 
							
						 
					 
					
						
						
							
							+ a_loadfpu_* and a_loadmm_* methods in tcg  
						
						... 
						
						
						
						* register allocation is now handled by a class and is mostly processor
    independent (+rgobj.pas and i386/rgcpu.pas)
  * temp allocation is now handled by a class (+tgobj.pas, -i386\tgcpu.pas)
  * some small improvements and fixes to the optimizer
  * some register allocation fixes
  * some fpuvaroffset fixes in the unary minus node
  * push/popusedregisters is now called rg.save/restoreusedregisters and
    (for i386) uses temps instead of push/pop's when using -Op3 (that code is
    also better optimizable)
  * fixed and optimized register saving/restoring for new/dispose nodes
  * LOC_FPU locations now also require their "register" field to be set to
    R_ST, not R_ST0 (the latter is used for LOC_CFPUREGISTER locations only)
  - list field removed of the tnode class because it's not used currently
    and can cause hard-to-find bugs 
						
					 
					
						2002-03-31 20:26:33 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							7edaf1332f 
							
						 
					 
					
						
						
							
							* fixed firstpass when det_resulttype returns an error  
						
						
						
					 
					
						2001-10-20 17:23:43 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							915b5cd7a9 
							
						 
					 
					
						
						
							
							* split constsym.value in valueord,valueordptr,valueptr. The valueordptr  
						
						... 
						
						
						
						is used for holding target platform pointer values. As those can be
    bigger than the source platform. 
						
					 
					
						2001-09-02 21:18:28 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							9746f4c2d6 
							
						 
					 
					
						
						
							
							* some cg reorganisation  
						
						... 
						
						
						
						* some PPC updates 
						
					 
					
						2001-08-26 13:35:06 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							f4ca079850 
							
						 
					 
					
						
						
							
							* fixed EXTDEBUG  
						
						
						
					 
					
						2001-07-06 15:29:39 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							5677fbe1b4 
							
						 
					 
					
						
						
							
							* fixed crash in labelnode  
						
						... 
						
						
						
						* easier detection of goto and label in try blocks 
						
					 
					
						2001-04-15 09:48:29 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							a7cf57524e 
							
						 
					 
					
						
						
							
							* symtable change to classes  
						
						... 
						
						
						
						* range check generation and errors fixed, make cycle DEBUG=1 works
  * memory leaks fixed 
						
					 
					
						2001-04-13 01:22:06 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							4e2655cdc5 
							
						 
					 
					
						
						
							
							* resulttype rewrite  
						
						
						
					 
					
						2001-04-02 21:20:29 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2c2b7bbf1e 
							
						 
					 
					
						
						
							
							* extdebug fixes  
						
						
						
					 
					
						2000-12-18 21:56:52 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							b9796f6a7f 
							
						 
					 
					
						
						
							
							* unused units removed from uses clause  
						
						... 
						
						
						
						* some changes for widestrings 
						
					 
					
						2000-11-29 00:30:30 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							e171f341a0 
							
						 
					 
					
						
						
							
							* moehrendorf oct 2000 rewrite  
						
						
						
					 
					
						2000-10-14 10:14:45 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							38951f5ce1 
							
						 
					 
					
						
						
							
							* lot of compile updates for cg11  
						
						
						
					 
					
						2000-10-01 19:48:23 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							27749c067e 
							
						 
					 
					
						
						
							
							* more cg11 updates  
						
						
						
					 
					
						2000-09-30 16:08:45 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							57a566e53d 
							
						 
					 
					
						
						
							
							*** empty log message ***  
						
						
						
					 
					
						2000-09-28 19:49:51 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							426905c464 
							
						 
					 
					
						
						
							
							* some errors fix to get more stuff compilable  
						
						
						
					 
					
						2000-09-24 21:15:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							a71e44ac49 
							
						 
					 
					
						
						
							
							* use defines.inc  
						
						
						
					 
					
						2000-09-24 15:06:10 +00:00 
						 
				 
			
				
					
						
							
							
								pierre 
							
						 
					 
					
						
						
						
						
							
						
						
							e4d06a5485 
							
						 
					 
					
						
						
							
							* problems wih extdebug cond. solved  
						
						
						
					 
					
						2000-09-19 23:09:07 +00:00 
						 
				 
			
				
					
						
							
							
								michael 
							
						 
					 
					
						
						
						
						
							
						
						
							650fbb86aa 
							
						 
					 
					
						
						
							
							+ removed logs  
						
						
						
					 
					
						2000-07-13 11:32:24 +00:00 
						 
				 
			
				
					
						
							
							
								michael 
							
						 
					 
					
						
						
						
						
							
						
						
							e7aca136a1 
							
						 
					 
					
						
						
							
							+ Initial import  
						
						
						
					 
					
						2000-07-13 06:29:38 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							79b0cbff40 
							
						 
					 
					
						
						
							
							* fixed unreachable code detection  
						
						
						
					 
					
						2000-05-25 12:00:14 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							dfe879d12e 
							
						 
					 
					
						
						
							
							* some updates for the newcg  
						
						
						
					 
					
						2000-02-17 14:53:42 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							4a4a24b6e8 
							
						 
					 
					
						
						
							
							* log truncated  
						
						
						
					 
					
						2000-02-09 13:22:42 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							e525797c51 
							
						 
					 
					
						
						
							
							* updated copyright to 2000  
						
						
						
					 
					
						2000-01-07 01:14:18 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							577edbbd3f 
							
						 
					 
					
						
						
							
							+ compiler checks now if a goto leaves an exception block  
						
						
						
					 
					
						1999-12-14 09:58:41 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0512ba80fb 
							
						 
					 
					
						
						
							
							+ ttype, tsymlist  
						
						
						
					 
					
						1999-11-30 10:40:42 +00:00 
						 
				 
			
				
					
						
							
							
								pierre 
							
						 
					 
					
						
						
						
						
							
						
						
							b528749138 
							
						 
					 
					
						
						
							
							* Notes/Hints for local syms changed to  
						
						... 
						
						
						
						Set_varstate function 
						
					 
					
						1999-11-18 15:34:44 +00:00 
						 
				 
			
				
					
						
							
							
								pierre 
							
						 
					 
					
						
						
						
						
							
						
						
							62da9bd4c0 
							
						 
					 
					
						
						
							
							* Notes/hints changes  
						
						
						
					 
					
						1999-11-17 17:04:58 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							503d5a1cfa 
							
						 
					 
					
						
						
							
							* const parameter is now checked  
						
						... 
						
						
						
						* better and generic check if a node can be used for assigning
  * export fixes
  * procvar equal works now (it never had worked at least from 0.99.8)
  * defcoll changed to linkedlist with pparaitem so it can easily be
    walked both directions 
						
					 
					
						1999-10-26 12:30:40 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							6b1ab5eb31 
							
						 
					 
					
						
						
							
							* procinfo is now a pointer  
						
						... 
						
						
						
						* support for result setting in sub procedure 
						
					 
					
						1999-09-27 23:44:46 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2687d75c38 
							
						 
					 
					
						
						
							
							+ constant pointer support which can happend with typecasting like  
						
						... 
						
						
						
						const p=pointer(1)
  * better procvar parsing in typed consts 
						
					 
					
						1999-09-26 21:30:15 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							1609dde2ca 
							
						 
					 
					
						
						
							
							* fixed bug  #596  
						
						... 
						
						
						
						* fixed some problems with procedure variables and procedures of object,
    especially in TP mode. Procedure of object doesn't apply only to classes,
    it is also allowed for objects !! 
						
					 
					
						1999-09-11 09:08:31 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							ca53eee67e 
							
						 
					 
					
						
						
							
							* renamed i386asm and i386base to cpuasm and cpubase  
						
						
						
					 
					
						1999-08-04 00:22:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0b272f13c7 
							
						 
					 
					
						
						
							
							* removed oldasm  
						
						... 
						
						
						
						* plabel -> pasmlabel
  * -a switches to source writing automaticly
  * assembler readers OOPed
  * asmsymbol automaticly external
  * jumptables and other label fixes for asm readers 
						
					 
					
						1999-05-27 19:43:55 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							611da2d24e 
							
						 
					 
					
						
						
							
							* merged nasm compiler  
						
						... 
						
						
						
						* old asm moved to oldasm/ 
						
					 
					
						1999-05-01 13:23:57 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							5befcfad1e 
							
						 
					 
					
						
						
							
							* ag386bin doesn't use i386.pas anymore  
						
						
						
					 
					
						1999-02-22 02:44:07 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							1b369bb4bb 
							
						 
					 
					
						
						
							
							+ globtype,tokens,version unit splitted from globals  
						
						
						
					 
					
						1998-12-11 00:02:37 +00:00 
						 
				 
			
				
					
						
							
							
								pierre 
							
						 
					 
					
						
						
						
						
							
						
						
							c93531b63f 
							
						 
					 
					
						
						
							
							* ansistring support in extdebug code  
						
						
						
					 
					
						1998-11-23 17:49:03 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							37732325f3 
							
						 
					 
					
						
						
							
							* fixed variant warning with was sometimes said with sets  
						
						
						
					 
					
						1998-11-05 14:26:47 +00:00