florian 
							
						 
					 
					
						
						
						
						
							
						
						
							ea32ddd5b2 
							
						 
					 
					
						
						
							
							* avoid overflows of execution weight  
						
						... 
						
						
						
						git-svn-id: trunk@39623 - 
						
					 
					
						2018-08-16 20:45:36 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							f08d3fdf8f 
							
						 
					 
					
						
						
							
							* moved execution weight calculation into a separate pass, so the info is available already available before the code generation pass if needed  
						
						... 
						
						
						
						git-svn-id: trunk@38717 - 
						
					 
					
						2018-04-08 20:51:27 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							b1dff29cbf 
							
						 
					 
					
						
						
							
							* removed unused units  
						
						... 
						
						
						
						git-svn-id: trunk@36165 - 
						
					 
					
						2017-05-09 19:53:14 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							7911cc8437 
							
						 
					 
					
						
						
							
							- removed some dataconstn remenants  
						
						... 
						
						
						
						git-svn-id: trunk@35314 - 
						
					 
					
						2017-01-16 21:27:20 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b14c037533 
							
						 
					 
					
						
						
							
							* record in the flowcontrol flags whether we are currently in a block whose  
						
						... 
						
						
						
						exceptions are caught in the current routine (fc_catching_exceptions),
    so that for LLVM we will be able to use "invoke" instead of "call" in that
    case
git-svn-id: trunk@35158 - 
						
					 
					
						2016-12-18 13:57:33 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b75a07b713 
							
						 
					 
					
						
						
							
							* clarified comment for fc_unwind_*  
						
						... 
						
						
						
						git-svn-id: trunk@35142 - 
						
					 
					
						2016-12-16 22:41:24 +00:00 
						 
				 
			
				
					
						
							
							
								nickysn 
							
						 
					 
					
						
						
						
						
							
						
						
							1181eb0ddb 
							
						 
					 
					
						
						
							
							* fixed compilation of the compiler with -dEXTDEBUG after r31588  
						
						... 
						
						
						
						git-svn-id: trunk@31615 - 
						
					 
					
						2015-09-12 11:55:54 +00:00 
						 
				 
			
				
					
						
							
							
								sergei 
							
						 
					 
					
						
						
						
						
							
						
						
							e542800ea9 
							
						 
					 
					
						
						
							
							* Win64 SEH: Track control flow out of unwind-protected regions in a more precise way and don't generate expensive calls to __fpc_local_unwind when not necessary.  
						
						... 
						
						
						
						git-svn-id: trunk@31582 - 
						
					 
					
						2015-09-09 18:43:46 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							aee5380ae0 
							
						 
					 
					
						
						
							
							* merged trunk up to r20882  
						
						... 
						
						
						
						o support for the new codepage-aware ansistrings in the jvm branch
   o empty ansistrings are now always represented by a nil pointer rather than
     by an empty string, because an empty string also has a code page which
     can confuse code (although this will make ansistrings harder to use
     in Java code)
   o more string helpers code shared between the general and jvm rtl
   o support for indexbyte/word in the jvm rtl (warning: first parameter
     is an open array rather than an untyped parameter there, so
     indexchar(pcharvar^,10,0) will be equivalent to
     indexchar[pcharvar^],10,0) there, which is different from what is
     intended; changing it to an untyped parameter wouldn't help though)
   o default() support is not yet complete
   o calling fpcres is currently broken due to limitations in
     sysutils.executeprocess() regarding handling unix quoting and
     the compiler using the same command lines for scripts and directly
     calling external programs
   o compiling the Java compiler currently requires adding ALLOW_WARNINGS=1
     to the make command line
git-svn-id: branches/jvmbackend@20887 - 
						
					 
					
						2012-04-15 15:54:10 +00:00 
						 
				 
			
				
					
						
							
							
								sergei 
							
						 
					 
					
						
						
						
						
							
						
						
							8c9ad67682 
							
						 
					 
					
						
						
							
							+ tcgexitnode,tcgbreaknode,tcgcontinuenode: added possibility to generate specialized code for leaving unwind-protected regions.  
						
						... 
						
						
						
						git-svn-id: trunk@19636 - 
						
					 
					
						2011-11-14 22:47:37 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b52dcd4a56 
							
						 
					 
					
						
						
							
							* changed var-parameter of secondpass() into a value parameter: secondpass  
						
						... 
						
						
						
						should never change any nodes, and this allows passing properties to
    secondpass
git-svn-id: branches/jvmbackend@18673 - 
						
					 
					
						2011-08-20 08:23:22 +00:00 
						 
				 
			
				
					
						
							
							
								paul 
							
						 
					 
					
						
						
						
						
							
						
						
							ee6fe6c4f5 
							
						 
					 
					
						
						
							
							compiler: add unary plus node, search for unary plus operator if a type cannot be handled by compiler, increase ppu version because of node types change  
						
						... 
						
						
						
						git-svn-id: trunk@16640 - 
						
					 
					
						2010-12-26 12:19:28 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							f54ea1e9f9 
							
						 
					 
					
						
						
							
							* fix compilation with -dEXTDEBUG  
						
						... 
						
						
						
						git-svn-id: trunk@14190 - 
						
					 
					
						2009-11-15 18:26:50 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							80c0f33c0e 
							
						 
					 
					
						
						
							
							* patch by Sergei Gorelkin: fixes compilation with -dEXTDEBUG  
						
						... 
						
						
						
						git-svn-id: trunk@13043 - 
						
					 
					
						2009-04-25 20:02:08 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							4e7e0f620a 
							
						 
					 
					
						
						
							
							* first try to  fix   #10863  (don't do SSL in case left is already handled in an assignment node)  
						
						... 
						
						
						
						git-svn-id: trunk@10710 - 
						
					 
					
						2008-04-19 09:23:45 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							7ef191021f 
							
						 
					 
					
						
						
							
							+ check for location.loc<>expectloc in extdebug mode  
						
						... 
						
						
						
						* set expectloc properly for add nodes on arm
git-svn-id: trunk@10536 - 
						
					 
					
						2008-03-23 10:18:33 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							db98f1eecb 
							
						 
					 
					
						
						
							
							* indenting of node names  
						
						... 
						
						
						
						git-svn-id: trunk@8418 - 
						
					 
					
						2007-09-09 14:03:31 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							76b190b723 
							
						 
					 
					
						
						
							
							- removed caretn and related code  
						
						... 
						
						
						
						git-svn-id: trunk@7257 - 
						
					 
					
						2007-05-04 10:53:25 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							9a75d308a8 
							
						 
					 
					
						
						
							
							* fixed missing lineinfo after removing inlining_procedure (missed a "not" in  
						
						... 
						
						
						
						a condition)
git-svn-id: trunk@6270 - 
						
					 
					
						2007-01-30 15:30:47 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							246f75c43a 
							
						 
					 
					
						
						
							
							- removed inlining_procedure global var (artefact from pass_2 inlining)  
						
						... 
						
						
						
						git-svn-id: trunk@6266 - 
						
					 
					
						2007-01-29 15:33:56 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							e17b424e28 
							
						 
					 
					
						
						
							
							* refactor procsym procdef list  
						
						... 
						
						
						
						git-svn-id: trunk@5210 - 
						
					 
					
						2006-11-03 18:44:46 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							ef7bd58c54 
							
						 
					 
					
						
						
							
							* germanism removed (aktfilepos -> current_filepos)  
						
						... 
						
						
						
						git-svn-id: trunk@5099 - 
						
					 
					
						2006-10-30 22:37:31 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							85d63d9fa9 
							
						 
					 
					
						
						
							
							* settings refactored  
						
						... 
						
						
						
						git-svn-id: trunk@5094 - 
						
					 
					
						2006-10-30 18:02:58 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							3078a1927f 
							
						 
					 
					
						
						
							
							* remove ttype  
						
						... 
						
						
						
						* rename old ttype variables *type to *def
  * rename resulttypepass to pass_typecheck
  * rename pass_2 to pass_generate_code
git-svn-id: trunk@5077 - 
						
					 
					
						2006-10-29 22:19:39 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							e531c4f125 
							
						 
					 
					
						
						
							
							+ very limited SSA support (only outside control flow  
						
						... 
						
						
						
						constructs for now)
git-svn-id: trunk@3671 - 
						
					 
					
						2006-05-25 11:45:08 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							b7fe6797bf 
							
						 
					 
					
						
						
							
							Merged revisions 2921-2922,2925 via svnmerge from  
						
						... 
						
						
						
						http://svn.freepascal.org/svn/fpc/branches/linker/compiler 
........
r2921 | peter | 2006-03-15 08:35:00 +0100 (Wed, 15 Mar 2006) | 2 lines
  * pass ObjectWriter to ObjectOuput
........
r2922 | peter | 2006-03-15 12:40:30 +0100 (Wed, 15 Mar 2006) | 2 lines
  * refactor asmdata
........
r2925 | peter | 2006-03-15 16:09:39 +0100 (Wed, 15 Mar 2006) | 3 lines
  * add cfi to asmdata
  * move asmlist, asmcfi, asmdata to own unit
........
git-svn-id: trunk@2932 - 
					
						2006-03-16 08:52:22 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							a0b9dd48c9 
							
						 
					 
					
						
						
							
							* remove check for expectloc<>location.loc, it doesn't work anymore for  
						
						... 
						
						
						
						temprefn,blockn causing too much warnings in extdebug
git-svn-id: trunk@1542 - 
						
					 
					
						2005-10-20 06:51:40 +00:00 
						 
				 
			
				
					
						
							
							
								fpc 
							
						 
					 
					
						
						
						
						
							
						
						
							790a4fe2d3 
							
						 
					 
					
						
						
							
							* log and id tags removed  
						
						... 
						
						
						
						git-svn-id: trunk@42 - 
						
					 
					
						2005-05-21 09:42:41 +00:00 
						 
				 
			
				
					
						
							
							
								fpc 
							
						 
					 
					
						
						
						
						
							
						
						
							50778076c3 
							
						 
					 
					
						
						
							
							initial import  
						
						... 
						
						
						
						git-svn-id: trunk@1 - 
						
					 
					
						2005-05-16 18:37:41 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							1b41aad3a0 
							
						 
					 
					
						
						
							
							remove multiple pass2 calls. It is not supported anymore by all nodes (ttempcreatenode)  
						
						
						
					 
					
						2005-04-08 15:18:08 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							e417e34496 
							
						 
					 
					
						
						
							
							* truncate log  
						
						
						
					 
					
						2005-02-14 17:13:06 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							8a9758c5e2 
							
						 
					 
					
						
						
							
							* logs truncated  
						
						
						
					 
					
						2004-06-20 08:55:28 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							72365ec95b 
							
						 
					 
					
						
						
							
							* implicit_finally flag must be set in pass1  
						
						... 
						
						
						
						* add check whether the implicit frame is generated when expected 
						
					 
					
						2004-05-23 15:06:20 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							f663d2488f 
							
						 
					 
					
						
						
							
							* cross unit inlining fixed  
						
						
						
					 
					
						2003-11-10 22:02:52 +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 
						 
				 
			
				
					
						
							
							
								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 
							
						 
					 
					
						
						
						
						
							
						
						
							0939085ab1 
							
						 
					 
					
						
						
							
							* commented out more obsolete constants  
						
						
						
					 
					
						2003-10-17 15:08:34 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							75cb52213f 
							
						 
					 
					
						
						
							
							* fix register leak in with debug  
						
						
						
					 
					
						2003-09-28 21:45:52 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							99bb20747e 
							
						 
					 
					
						
						
							
							* parent framepointer changed to hidden parameter  
						
						... 
						
						
						
						* tloadparentfpnode added 
						
					 
					
						2003-09-28 17:55:03 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							6a8d5eb25d 
							
						 
					 
					
						
						
							
							* NEWRA branch merged  
						
						
						
					 
					
						2003-09-03 15:55:00 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							52c73e80d1 
							
						 
					 
					
						
						
							
							* start of sparc support for newra  
						
						
						
					 
					
						2003-08-11 21:18:20 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							6731abb0db 
							
						 
					 
					
						
						
							
							* fixed some reported bugs  
						
						
						
					 
					
						2003-08-10 17:25:23 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							32d076480b 
							
						 
					 
					
						
						
							
							* framepointer fixes for sparc  
						
						... 
						
						
						
						* parent framepointer code more generic 
						
					 
					
						2003-07-06 17:58:22 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							268bfcf784 
							
						 
					 
					
						
						
							
							* Fixed register allocator. *Lots* of fixes.  
						
						
						
					 
					
						2003-07-06 15:31:20 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b69219bae4 
							
						 
					 
					
						
						
							
							* also generate the caller paraloc info of a procedure if it doesn't exist  
						
						... 
						
						
						
						yet at the start of pass_2 
						
					 
					
						2003-07-06 10:18:47 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							0c65bc5a8c 
							
						 
					 
					
						
						
							
							* create_paraloc_info() is now called separately for the caller and  
						
						... 
						
						
						
						callee info
   * fixed ppc cycle 
						
					 
					
						2003-07-05 20:13:03 +00:00