Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							abef29c1d5 
							
						 
					 
					
						
						
							
							* fixed x86 vector mmloads and use scalar loads in ncgcnv  
						
						... 
						
						
						
						git-svn-id: trunk@5967 - 
						
					 
					
						2007-01-14 13:36:26 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							fc99b0ad48 
							
						 
					 
					
						
						
							
							* fixed floating point precision conversions for loc_mmregister and  
						
						... 
						
						
						
						between loc_fpuregister and loc_mmregister
git-svn-id: trunk@5942 - 
						
					 
					
						2007-01-13 15:00:00 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							e815b923d5 
							
						 
					 
					
						
						
							
							* a_loadfpu_* gets two size parameters: fromsize and tosize  
						
						... 
						
						
						
						* fixed downsizing the precision of floating point values
  * floating point constants are now treated using only the minimal
    precision required (e.g. 2.0 is now a single, 1.1 extended etc)
    (Delphi compatible)
git-svn-id: trunk@5927 - 
						
					 
					
						2007-01-12 18:33:51 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							36a500c38c 
							
						 
					 
					
						
						
							
							* don't coalescate with frame/stack pointer  
						
						... 
						
						
						
						git-svn-id: trunk@5880 - 
						
					 
					
						2007-01-11 10:47:07 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							c238bb15d1 
							
						 
					 
					
						
						
							
							* .init section support  
						
						... 
						
						
						
						git-svn-id: trunk@5835 - 
						
					 
					
						2007-01-07 10:03:52 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							836dbad1b2 
							
						 
					 
					
						
						
							
							* bitpacked stuff fixed for x86-64  
						
						... 
						
						
						
						git-svn-id: trunk@5503 - 
						
					 
					
						2006-11-26 21:57:34 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							658c46b903 
							
						 
					 
					
						
						
							
							* remove tdictionary and tindexarray  
						
						... 
						
						
						
						* symtables based on TFPHashObjectList and TFPObjectList
  * rename torddef.typ to torddef.ordtype
  * rename tfloatdef.typ to tfloatdef.floattype
  * rename tdef.deftype to tdef.typ
  * remove obsolete browser code, browcol is kept so the ide
    can still be compiled
git-svn-id: trunk@5192 - 
						
					 
					
						2006-11-03 00:30:30 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							85d63d9fa9 
							
						 
					 
					
						
						
							
							* settings refactored  
						
						... 
						
						
						
						git-svn-id: trunk@5094 - 
						
					 
					
						2006-10-30 18:02:58 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							fb5e396881 
							
						 
					 
					
						
						
							
							+ experimental -Sv option to support vector arithmetics  
						
						... 
						
						
						
						git-svn-id: trunk@4825 - 
						
					 
					
						2006-10-07 21:39:48 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0bb22a2d17 
							
						 
					 
					
						
						
							
							* don't generate fwait by default anymore  
						
						... 
						
						
						
						* SAVEFPUEXCEPTIONS switch added to enable fwait inserts
git-svn-id: trunk@4733 - 
						
					 
					
						2006-09-26 19:22:45 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							efd24ba7a0 
							
						 
					 
					
						
						
							
							* x86_64 abis ensure that the direction flag is clear at procedure entry  
						
						... 
						
						
						
						git-svn-id: trunk@4689 - 
						
					 
					
						2006-09-23 10:08:47 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							abc957d80d 
							
						 
					 
					
						
						
							
							* fixed stack initialization on Win x64, still not sure if it is necessary  
						
						... 
						
						
						
						git-svn-id: trunk@4617 - 
						
					 
					
						2006-09-12 20:49:18 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							51259b697b 
							
						 
					 
					
						
						
							
							* more mmx/sse register spilling fixes:  
						
						... 
						
						
						
						* operand read/write info for movaps and movapd
    * use "movapd reg,reg" instead of "movaps reg,reg" if appropriate
      so the spilling code can spill the correct size to memory
    * replace movaps/movapd with movss/movsd when spilling to memory
      instead of movq
git-svn-id: trunk@4612 - 
						
					 
					
						2006-09-12 11:07:45 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							b3ae0c51a4 
							
						 
					 
					
						
						
							
							* sizes2load handles OS_NO properly if one size is given  
						
						... 
						
						
						
						git-svn-id: trunk@4586 - 
						
					 
					
						2006-09-09 18:12:07 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							55484f9bb7 
							
						 
					 
					
						
						
							
							* shifting can operate on 64 bit values on x86_64  
						
						... 
						
						
						
						git-svn-id: trunk@4561 - 
						
					 
					
						2006-09-07 19:41:02 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							6d0a078441 
							
						 
					 
					
						
						
							
							* do stack page initialization on i386-wince as well  
						
						... 
						
						
						
						git-svn-id: trunk@4521 - 
						
					 
					
						2006-08-31 14:23:29 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							9e66674ff9 
							
						 
					 
					
						
						
							
							+ first part of qwordbool implementation  
						
						... 
						
						
						
						git-svn-id: trunk@4462 - 
						
					 
					
						2006-08-19 23:16:17 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							a3a74c3fbe 
							
						 
					 
					
						
						
							
							* fixed interface wrappers for darwin in case they end up in  
						
						... 
						
						
						
						a shared library
git-svn-id: trunk@3980 - 
						
					 
					
						2006-06-27 14:32:14 +00:00 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							3048a98a6f 
							
						 
					 
					
						
						
							
							* Fix and activate internal backtrace routines  
						
						... 
						
						
						
						git-svn-id: trunk@3524 - 
						
					 
					
						2006-05-14 13:04:03 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							0a50dd1029 
							
						 
					 
					
						
						
							
							* give IE if fpu stack counter becomes < 0  
						
						... 
						
						
						
						git-svn-id: trunk@3294 - 
						
					 
					
						2006-04-20 11:15:54 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							af4d5c898a 
							
						 
					 
					
						
						
							
							+ stack touching for win64  
						
						... 
						
						
						
						git-svn-id: trunk@3252 - 
						
					 
					
						2006-04-17 19:00:53 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							2d3d4a66f6 
							
						 
					 
					
						
						
							
							* keep stack aligned to 16 byte borders on winx64  
						
						... 
						
						
						
						git-svn-id: trunk@3212 - 
						
					 
					
						2006-04-15 16:48:28 +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 
						 
				 
			
				
					
						
							
							
								Vincent Snijders 
							
						 
					 
					
						
						
						
						
							
						
						
							7dfd96b59c 
							
						 
					 
					
						
						
							
							* fixed another typo  
						
						... 
						
						
						
						git-svn-id: trunk@2927 - 
						
					 
					
						2006-03-15 20:42:14 +00:00 
						 
				 
			
				
					
						
							
							
								Vincent Snijders 
							
						 
					 
					
						
						
						
						
							
						
						
							594861974d 
							
						 
					 
					
						
						
							
							* fixed typo  
						
						... 
						
						
						
						git-svn-id: trunk@2926 - 
						
					 
					
						2006-03-15 20:28:02 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							588cccb3ca 
							
						 
					 
					
						
						
							
							* remove some obsolete i386 specific code  
						
						... 
						
						
						
						* use a_optimize_const to remove useless opcodes
git-svn-id: trunk@2910 - 
						
					 
					
						2006-03-13 16:37:08 +00:00 
						 
				 
			
				
					
						
							
							
								peter 
							
						 
					 
					
						
						
						
						
							
						
						
							b6e35a200e 
							
						 
					 
					
						
						
							
							* rewrite of optimizer options  
						
						... 
						
						
						
						git-svn-id: trunk@2901 - 
						
					 
					
						2006-03-13 09:05:50 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							9125d0c189 
							
						 
					 
					
						
						
							
							* also align esp for all procedures/functions declared "assembler",  
						
						... 
						
						
						
						since they may do a call. If you don't want that to happen, use
    the nostackframe directive (i386-darwin only)
git-svn-id: trunk@2896 - 
						
					 
					
						2006-03-12 21:20:29 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							435aee2398 
							
						 
					 
					
						
						
							
							* fixed g_copyvaluepara_openarray/g_releasevaluepara_openarray for  
						
						... 
						
						
						
						use_fixed_stack (use generic code)
git-svn-id: trunk@2895 - 
						
					 
					
						2006-03-12 21:04:59 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							e7112c6636 
							
						 
					 
					
						
						
							
							* ignore po_interrupt for i386-darwin since it messes up stack alignment  
						
						... 
						
						
						
						git-svn-id: trunk@2857 - 
						
					 
					
						2006-03-11 14:30:02 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							9de2847865 
							
						 
					 
					
						
						
							
							+ support for passing parameters via pre-allocated stack space on i386  
						
						... 
						
						
						
						(override/adjust cgutils.use_fixed_stack to change conditions where
     this is done, currently only activated for darwin-i386)
  * make sure the stack is always aligned to 16 bytes on darwin-i386
git-svn-id: trunk@2840 - 
						
					 
					
						2006-03-10 19:59:44 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							d7b4ac73cf 
							
						 
					 
					
						
						
							
							+ darwin/x86 support for a_call_name  
						
						... 
						
						
						
						git-svn-id: trunk@2819 - 
						
					 
					
						2006-03-09 15:02:55 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							d2ba35df7e 
							
						 
					 
					
						
						
							
							* don't destroy edi when allocating the stack frame for win32  
						
						... 
						
						
						
						git-svn-id: trunk@2330 - 
						
					 
					
						2006-01-23 10:54:48 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							f5d790f9b6 
							
						 
					 
					
						
						
							
							* i386 uses dwarf cfi info on linux/win32, so even when omitting the stack frame, trace backs in gdb are correct  
						
						... 
						
						
						
						git-svn-id: trunk@2316 - 
						
					 
					
						2006-01-21 14:30:57 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							a3e3e7e8c5 
							
						 
					 
					
						
						
							
							* avoid esp to be freed  
						
						... 
						
						
						
						git-svn-id: trunk@2203 - 
						
					 
					
						2006-01-07 14:32:09 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							7aa315c71a 
							
						 
					 
					
						
						
							
							* made some Tcpuregisterset parameters const to avoid useless copying  
						
						... 
						
						
						
						git-svn-id: trunk@2176 - 
						
					 
					
						2006-01-05 10:10:25 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							61e3b70cfa 
							
						 
					 
					
						
						
							
							* cleaned up segmented thread variables  
						
						... 
						
						
						
						git-svn-id: trunk@2135 - 
						
					 
					
						2006-01-03 12:49:29 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							fb4557d71e 
							
						 
					 
					
						
						
							
							* first implementation of pic for i386  
						
						... 
						
						
						
						git-svn-id: trunk@2107 - 
						
					 
					
						2006-01-01 20:14:48 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							99be25604b 
							
						 
					 
					
						
						
							
							* fixed address calculation when generating pic  
						
						... 
						
						
						
						git-svn-id: trunk@1759 - 
						
					 
					
						2005-11-15 19:25:42 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							72d7597edc 
							
						 
					 
					
						
						
							
							+ implementation of lazy binding for linux  
						
						... 
						
						
						
						git-svn-id: trunk@1750 - 
						
					 
					
						2005-11-14 22:28:12 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							2585309c04 
							
						 
					 
					
						
						
							
							* of course, we can't omit pic generation for local symbols  
						
						... 
						
						
						
						git-svn-id: trunk@1743 - 
						
					 
					
						2005-11-13 21:36:38 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							ff6af1804b 
							
						 
					 
					
						
						
							
							* fixed loading of pic'ed symbols with offset  
						
						... 
						
						
						
						* symbols declared AB_COMMON or AB_LOCAL need no pic
git-svn-id: trunk@1739 - 
						
					 
					
						2005-11-13 21:05:42 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							bc7fab1aeb 
							
						 
					 
					
						
						
							
							+ plt support for x86_64  
						
						... 
						
						
						
						git-svn-id: trunk@1578 - 
						
					 
					
						2005-10-23 14:47:09 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							1b97e2cffd 
							
						 
					 
					
						
						
							
							+ added missing make_simple_ref  
						
						... 
						
						
						
						git-svn-id: trunk@1572 - 
						
					 
					
						2005-10-23 13:28:43 +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 
						 
				 
			
				
					
						
							
							
								daniel 
							
						 
					 
					
						
						
						
						
							
						
						
							22e89e1a42 
							
						 
					 
					
						
						
							
							* Proof of concept: Support threadvars using segment registers.  
						
						... 
						
						
						
						git-svn-id: trunk@740 - 
						
					 
					
						2005-07-24 21:06:23 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							83209064f9 
							
						 
					 
					
						
						
							
							* getmmregister should test the mm register allocator for being assigned  
						
						... 
						
						
						
						git-svn-id: trunk@221 - 
						
					 
					
						2005-06-05 15:32:24 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							c97714de9f 
							
						 
					 
					
						
						
							
							* renamed windows related units from win32 to win so it can contain ce and 64 bit stuff  
						
						... 
						
						
						
						git-svn-id: trunk@213 - 
						
					 
					
						2005-06-05 13:42:35 +00:00