peter 
							
						 
					 
					
						
						
						
						
							
						
						
							50ee3a96ad 
							
						 
					 
					
						
						
							
							* fix importprocname for cdecl  
						
						... 
						
						
						
						git-svn-id: trunk@3636 - 
						
					 
					
						2006-05-23 07:59:36 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							70e7546d87 
							
						 
					 
					
						
						
							
							* us cs_opt_stackframe  
						
						... 
						
						
						
						git-svn-id: trunk@3326 - 
						
					 
					
						2006-04-23 20:53:45 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							ce58e15393 
							
						 
					 
					
						
						
							
							* fix coff section names to fix resourcestrings with  
						
						... 
						
						
						
						the external linker
  * create import libraries for dll imports, this uses
    the new objdata framework to generate the binary
    object files directly without needing an assembler pass
  * store import_dll and import_name in ppu
  * external linker uses import libraries
  * internal linker uses import info from symtables,
    no dlls are needed anymore
git-svn-id: trunk@3255 - 
						
					 
					
						2006-04-17 20:48:22 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							5376d2d570 
							
						 
					 
					
						
						
							
							Merged revisions 3072-3073 via svnmerge from  
						
						... 
						
						
						
						http://svn.freepascal.org/svn/fpc/branches/linker/compiler 
........
r3072 | peter | 2006-03-29 13:34:42 +0200 (Wed, 29 Mar 2006) | 4 lines
  * std_regname generate pair of registers for float doubles
  * don't call translate_register for regvars if -sr is passed
  * use std_regname in regalloc message
........
r3073 | peter | 2006-03-29 16:00:37 +0200 (Wed, 29 Mar 2006) | 2 lines
  * CMP instructions only read operands
........
git-svn-id: trunk@3079 - 
					
						2006-03-30 06:36:42 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0ec2921bbe 
							
						 
					 
					
						
						
							
							* split newasmsymbol to refasmsymbol and defineasmsymbol  
						
						... 
						
						
						
						git-svn-id: trunk@3057 - 
						
					 
					
						2006-03-27 11:45:18 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							b6e35a200e 
							
						 
					 
					
						
						
							
							* rewrite of optimizer options  
						
						... 
						
						
						
						git-svn-id: trunk@2901 - 
						
					 
					
						2006-03-13 09:05:50 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							232555904e 
							
						 
					 
					
						
						
							
							* symtablestack cleanup and rewrite  
						
						... 
						
						
						
						git-svn-id: trunk@2448 - 
						
					 
					
						2006-02-05 22:24:18 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							d28d7e3c12 
							
						 
					 
					
						
						
							
							* moved insertation of pc relative data for arm target  
						
						... 
						
						
						
						git-svn-id: trunk@2438 - 
						
					 
					
						2006-02-05 10:32:19 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							94038b0d83 
							
						 
					 
					
						
						
							
							+ translate register variable locations, enables register variable debug info, with SSA it requires to be extended maintaining location list  
						
						... 
						
						
						
						git-svn-id: trunk@2409 - 
						
					 
					
						2006-02-02 21:27:23 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							c297cb1569 
							
						 
					 
					
						
						
							
							* generate also external stubs for win32 without import section  
						
						... 
						
						
						
						git-svn-id: trunk@2303 - 
						
					 
					
						2006-01-15 22:05:52 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							66f8276445 
							
						 
					 
					
						
						
							
							* refactor booleans in systeminfo structure, they are now flags  
						
						... 
						
						
						
						* support for case aware filesystems (Windows), they do now only
    one lookup if a file exists
  * add -WI option to generate import section for DLL imports or
    let the linker handle it. Default is still import section until
    the Makefiles are fixed, then the generation can be left to the
    linker
git-svn-id: trunk@2274 - 
						
					 
					
						2006-01-13 15:13:26 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							9670e0eb78 
							
						 
					 
					
						
						
							
							* leave stackframe on x86-64 as well away if possible  
						
						... 
						
						
						
						git-svn-id: trunk@2187 - 
						
					 
					
						2006-01-05 18:08:33 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b769a968e3 
							
						 
					 
					
						
						
							
							* make sure live_start and live_end are correctly updated while  
						
						... 
						
						
						
						generating the initialisation and entry code
git-svn-id: trunk@2185 - 
						
					 
					
						2006-01-05 17:46:16 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							1024b80867 
							
						 
					 
					
						
						
							
							+ sub routines with children with asm blocks need a real stack frame, fixes new failure of tw0848  
						
						... 
						
						
						
						git-svn-id: trunk@2177 - 
						
					 
					
						2006-01-05 10:10:58 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							a71d2b432c 
							
						 
					 
					
						
						
							
							* synchronize reg. variables before loading the function result  
						
						... 
						
						
						
						git-svn-id: trunk@2163 - 
						
					 
					
						2006-01-04 20:30:41 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							f7d2c47f73 
							
						 
					 
					
						
						
							
							+ no stackframe is generated for i386 if possible  
						
						... 
						
						
						
						git-svn-id: trunk@2162 - 
						
					 
					
						2006-01-04 19:19:06 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							30d5ff9f03 
							
						 
					 
					
						
						
							
							* fixed access to already freed memory location  
						
						... 
						
						
						
						git-svn-id: trunk@2118 - 
						
					 
					
						2006-01-02 17:11:55 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							fb4557d71e 
							
						 
					 
					
						
						
							
							* first implementation of pic for i386  
						
						... 
						
						
						
						git-svn-id: trunk@2107 - 
						
					 
					
						2006-01-01 20:14:48 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							55218d452b 
							
						 
					 
					
						
						
							
							* don't change the binding of real external symbols in the patch  
						
						... 
						
						
						
						of r2058, fixes the binary writer
git-svn-id: trunk@2060 - 
						
					 
					
						2005-12-27 09:41:52 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							de8dbbd2c4 
							
						 
					 
					
						
						
							
							* final fixes for Mac OS X shared library creation: procedures declared  
						
						... 
						
						
						
						as forward are no longer treated as external symbols
  * changed alloc_proc_symbol() to directly call newasmsymbol as opposed
    to creating a dummy tai_symbol()
git-svn-id: trunk@2058 - 
						
					 
					
						2005-12-26 18:18:05 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							dbf94f4713 
							
						 
					 
					
						
						
							
							* properly fixed allocating procedure symbols, now also works for nested  
						
						... 
						
						
						
						procedures
git-svn-id: trunk@2029 - 
						
					 
					
						2005-12-22 20:43:29 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							95879fe8a7 
							
						 
					 
					
						
						
							
							* basic support for generic classes  
						
						... 
						
						
						
						git-svn-id: trunk@2020 - 
						
					 
					
						2005-12-21 10:11:15 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b954ea006e 
							
						 
					 
					
						
						
							
							* generate the procsymbol before generating the code for the procedure,  
						
						... 
						
						
						
						so that refences to this symbol are not treated as external
git-svn-id: trunk@2009 - 
						
					 
					
						2005-12-20 17:52:08 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							ca921976f6 
							
						 
					 
					
						
						
							
							* when creating pic code, every procedure must be declared being global  
						
						... 
						
						
						
						git-svn-id: trunk@1733 - 
						
					 
					
						2005-11-13 18:08:49 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							e1b34a9e7b 
							
						 
					 
					
						
						
							
							* cleaning up sets for exports behaviour  
						
						... 
						
						
						
						+ allow exports from units
git-svn-id: trunk@1535 - 
						
					 
					
						2005-10-19 19:06:45 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							810ec85e34 
							
						 
					 
					
						
						
							
							- disable inlining for procedures with a formal const parameter, fixes  
						
						... 
						
						
						
						webtbs/tw4427
git-svn-id: trunk@1390 - 
						
					 
					
						2005-10-15 20:48:35 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							51b8a4a132 
							
						 
					 
					
						
						
							
							* move stabs generation to a single procedure call from pmodules  
						
						... 
						
						
						
						git-svn-id: trunk@1358 - 
						
					 
					
						2005-10-12 10:35:46 +00:00 
						 
				 
			
				
					
						
							
							
								tom_at_work 
							
						 
					 
					
						
						
						
						
							
						
						
							bfb2c916dc 
							
						 
					 
					
						
						
							
							* fixed problem with too large offsets in conditional jumps (see also rev 1161 for the PowerPC code)  
						
						... 
						
						
						
						* updated sysnr.inc for PowerPC64 from 2.6.11 kernel sources
* fixed SigactionRec sa_flags field sizes, which improves signal handling for PowerPC64 platform
git-svn-id: trunk@1352 - 
						
					 
					
						2005-10-10 23:45:57 +00:00 
						 
				 
			
				
					
						
							
							
								tom_at_work 
							
						 
					 
					
						
						
						
						
							
						
						
							b2e1cf2610 
							
						 
					 
					
						
						
							
							* powerpc64 port now (manually) cycles, most test programs in tests/test are fine too  
						
						... 
						
						
						
						* fixed bug in ncal.pas which in some circumstances treated the hidden length parameter for open arrays as 32 bit integer
git-svn-id: trunk@1303 - 
						
					 
					
						2005-10-05 21:55:25 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							89297d2c39 
							
						 
					 
					
						
						
							
							* move all stabs ($ifdef gdb) code to dbgstabs  
						
						... 
						
						
						
						git-svn-id: trunk@1255 - 
						
					 
					
						2005-10-02 11:17:05 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							8b8d3de3bf 
							
						 
					 
					
						
						
							
							* finally fix for fixing up conditional jumps that are too long  
						
						... 
						
						
						
						git-svn-id: trunk@1161 - 
						
					 
					
						2005-09-23 10:02:53 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							a3ab2053c9 
							
						 
					 
					
						
						
							
							* support multiple asmlabel types, renamed getlabel to  
						
						... 
						
						
						
						getjumplabel and added type para to getlabel for specific types
  * moved lineinfo generation from assemble and aggas to dbgstabs
git-svn-id: trunk@1120 - 
						
					 
					
						2005-09-18 21:16:10 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							ca66b9f7c1 
							
						 
					 
					
						
						
							
							* force writing of new section before generating the jumptable  
						
						... 
						
						
						
						git-svn-id: trunk@1085 - 
						
					 
					
						2005-09-15 14:08:02 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							c3727c29b2 
							
						 
					 
					
						
						
							
							* rename al_code to al_procedures, al_bss/al_data to al_globals  
						
						... 
						
						
						
						* more work for section smartlinking
git-svn-id: trunk@1083 - 
						
					 
					
						2005-09-15 06:51:12 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							05a628447f 
							
						 
					 
					
						
						
							
							* put typedconsts in own asmlist to prevent mixing  
						
						... 
						
						
						
						array and string data
  * added al_rodata
  * renamed tasmlist enum names to include al_ prefix
git-svn-id: trunk@899 - 
						
					 
					
						2005-08-17 08:42:52 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							a3e330526d 
							
						 
					 
					
						
						
							
							* exporting of symbols from linux programs, i.e. exports clause in  
						
						... 
						
						
						
						programs allowed
git-svn-id: trunk@855 - 
						
					 
					
						2005-08-13 20:34:28 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							d05f58b604 
							
						 
					 
					
						
						
							
							* Group asmlists into array to be able to add  
						
						... 
						
						
						
						some of them more comfortably.
  * x86_64 compilation was broken, fixed.
  * Sparc compilation was broken, fixed.
git-svn-id: trunk@731 - 
						
					 
					
						2005-07-23 13:44:32 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							8bc4e0a32f 
							
						 
					 
					
						
						
							
							* inline and compilerproc are now procoptions instead of proccall types  
						
						... 
						
						
						
						(so both can be combined with each other, as well as with other calling
     conventions)
  * defined COMPPROCINLINEFIXED so SYSTEMINLINE is again activated
git-svn-id: trunk@658 - 
						
					 
					
						2005-07-18 15:27:14 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							83c6b3aca2 
							
						 
					 
					
						
						
							
							* from Yury Sidorov:  
						
						... 
						
						
						
						+ Added new target WinCE for i386 (to be able compile and run programs in WinCE emulator)
git-svn-id: trunk@596 - 
						
					 
					
						2005-07-09 09:31:57 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							c2fe9e3814 
							
						 
					 
					
						
						
							
							+ compiler part of WinCE patches from Yuri Sidorov  
						
						... 
						
						
						
						git-svn-id: trunk@573 - 
						
					 
					
						2005-07-03 15:52:54 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							e417e34496 
							
						 
					 
					
						
						
							
							* truncate log  
						
						
						
					 
					
						2005-02-14 17:13:06 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							720815e13b 
							
						 
					 
					
						
						
							
							* fix aftercosntruction calls, vmt=1 is used to indicate that  
						
						... 
						
						
						
						afterconstruction needs to be called
  * only accept resourcestring when objpas is loaded 
						
					 
					
						2005-01-04 16:36:31 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							296e81146e 
							
						 
					 
					
						
						
							
							* insert stack_check helper call before doing register allocation  
						
						... 
						
						
						
						so the used registers can't be reused when parameters are loaded
    into register variables 
						
					 
					
						2005-01-03 22:27:56 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							2a20174317 
							
						 
					 
					
						
						
							
							* set flag if a procedure references a symbol in staticsymtable  
						
						
						
					 
					
						2004-12-27 16:35:48 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							99cffcc375 
							
						 
					 
					
						
						
							
							- disable inlining for any procedure that contains assembler. Could  
						
						... 
						
						
						
						be enabled again if the procedure has neither local variables nor
    parameters. 
						
					 
					
						2004-12-27 14:41:09 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							29db12ecfa 
							
						 
					 
					
						
						
							
							* disable inlining across units when the inline procedure references  
						
						... 
						
						
						
						a variable or procedure in the static symtable 
						
					 
					
						2004-12-15 21:08:15 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							9e49f8eef9 
							
						 
					 
					
						
						
							
							* fixed crash with -vp  
						
						
						
					 
					
						2004-12-15 17:01:28 +00:00