Commit Graph

21949 Commits

Author SHA1 Message Date
peter
2888a21593 * list supported optimization options in -i
* support $OPTIMIZATION and $O+

git-svn-id: trunk@2904 -
2006-03-13 11:17:56 +00:00
peter
17bc033747 Merged revisions 2791-2793,2798-2800,2806-2825,2829-2830,2833,2839,2898 via svnmerge from
http://svn.freepascal.org/svn/fpc/branches/linker/compiler

........
r2791 | peter | 2006-03-06 14:57:20 +0100 (Mon, 06 Mar 2006) | 3 lines

  * disable internal linker if -s is used
  * enable section smartlink by default for internal linker

........
r2792 | peter | 2006-03-06 14:58:23 +0100 (Mon, 06 Mar 2006) | 2 lines

  * support long sectionnames

........
r2793 | peter | 2006-03-06 15:04:12 +0100 (Mon, 06 Mar 2006) | 2 lines

  * register symbols in section also when reading .o files

........
r2798 | peter | 2006-03-07 10:08:07 +0100 (Tue, 07 Mar 2006) | 2 lines

  * symbolrefs need to be loaded from relocations when loading a .o

........
r2799 | peter | 2006-03-07 16:17:52 +0100 (Tue, 07 Mar 2006) | 3 lines

  * remove unreferenced sections
  * set stacksize in peopthaeder

........
r2800 | peter | 2006-03-07 17:02:46 +0100 (Tue, 07 Mar 2006) | 2 lines

  * objsection.fullname added

........
........
r2807 | peter | 2006-03-08 08:18:04 +0100 (Wed, 08 Mar 2006) | 2 lines

  * powerpc64 fixes

........
r2808 | peter | 2006-03-08 08:35:53 +0100 (Wed, 08 Mar 2006) | 2 lines

  * register x86_64_pecoff

........
r2809 | peter | 2006-03-08 11:26:38 +0100 (Wed, 08 Mar 2006) | 2 lines

  * optimize and cleanup matches()

........
r2810 | peter | 2006-03-08 12:25:28 +0100 (Wed, 08 Mar 2006) | 2 lines

  * small tweak to readdata to copy values direct without calling move()

........
r2811 | peter | 2006-03-08 15:55:21 +0100 (Wed, 08 Mar 2006) | 2 lines

  * compile fix

........
........
........
........
........
........
r2817 | peter | 2006-03-09 14:20:52 +0100 (Thu, 09 Mar 2006) | 2 lines

  * more readable with long secnames

........
........
........
........
........
........
........
........
r2825 | peter | 2006-03-10 09:52:05 +0100 (Fri, 10 Mar 2006) | 2 lines

  * don't initialize/finalize external variables

........
r2829 | peter | 2006-03-10 10:58:08 +0100 (Fri, 10 Mar 2006) | 2 lines

  * merge 64bit assembler

........
r2830 | peter | 2006-03-10 12:25:08 +0100 (Fri, 10 Mar 2006) | 2 lines

  * TElfAssembler rename

........
r2833 | peter | 2006-03-10 15:22:27 +0100 (Fri, 10 Mar 2006) | 3 lines

  * support & prefix to force identifier parsing, used to access fields that
    have the names of a register

........
r2839 | peter | 2006-03-10 19:37:11 +0100 (Fri, 10 Mar 2006) | 2 lines

  * merge stabs section flags

........
r2898 | peter | 2006-03-12 23:18:18 +0100 (Sun, 12 Mar 2006) | 2 lines

  * reorder instructions for better first match

........

git-svn-id: trunk@2902 -
2006-03-13 09:29:57 +00:00
peter
b6e35a200e * rewrite of optimizer options
git-svn-id: trunk@2901 -
2006-03-13 09:05:50 +00:00
peter
2fb94ece94 * use the setresourcestirng iterator
git-svn-id: trunk@2900 -
2006-03-13 09:05:07 +00:00
peter
0899f0fbf7 * added powerpc64 to dir targets
git-svn-id: trunk@2899 -
2006-03-13 08:25:10 +00:00
Vincent Snijders
cfcbd77133 * write caller address, even if no caller frame was found
git-svn-id: trunk@2897 -
2006-03-12 21:30:06 +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
florian
7fff4f4d57 * pthreads fixed, still a mess
git-svn-id: trunk@2893 -
2006-03-12 19:47:54 +00:00
marco
457d44c2c2 * fix for 4419 + removed undocumented trimming.
Probably original programmer used space as separator and then
	this works.

git-svn-id: trunk@2891 -
2006-03-12 19:15:07 +00:00
florian
558c894e73 * fix for dword div dword power of two
git-svn-id: trunk@2890 -
2006-03-12 18:22:11 +00:00
florian
d997985fef + initial implemenation, non working yet
git-svn-id: trunk@2889 -
2006-03-12 16:48:12 +00:00
marco
548872e61c * ugly workaround to avoid range check warnings. (4811, 4723)
git-svn-id: trunk@2888 -
2006-03-12 16:24:46 +00:00
florian
744c7a4acc * fixed gmake -j, reduces compilation time by 50 % if enough CPUs are available
git-svn-id: trunk@2887 -
2006-03-12 15:40:32 +00:00
florian
3cb662b1f2 * fixed RTLCriticalSection
git-svn-id: trunk@2886 -
2006-03-12 15:21:35 +00:00
Almindor
4afe7ef0c9 * Simplified and fixed (previous mistake..) select/newselect
git-svn-id: trunk@2885 -
2006-03-12 13:25:02 +00:00
Almindor
8924d3f37a * linux-i386 uses new_select now too
git-svn-id: trunk@2884 -
2006-03-12 13:03:33 +00:00
florian
ae64fc524b * fixed mutex constants
git-svn-id: trunk@2883 -
2006-03-12 11:45:34 +00:00
florian
246eb14e95 * fixed widestring lib on solaris
git-svn-id: trunk@2882 -
2006-03-12 10:09:41 +00:00
florian
5671bf276c * fixed solaris signal handling
git-svn-id: trunk@2881 -
2006-03-12 09:54:02 +00:00
Jonas Maebe
693412e70c * removed "inline" directive from TGNUAssembler.WriteInstruction
because it triggers an internalerror when loading the nodetree
    for that method from the ppu file

git-svn-id: trunk@2880 -
2006-03-11 23:29:47 +00:00
marco
78cbcf8579 * fix for 4698
git-svn-id: trunk@2878 -
2006-03-11 23:12:24 +00:00
Jonas Maebe
09a3bbfc07 * fixed previous commit
git-svn-id: trunk@2877 -
2006-03-11 22:53:41 +00:00
Jonas Maebe
7b5ee7342a * fixed wrong generation of teardown of stackframe on i386-darwin
in case no stackframe was generated (in case no pi_do_call in
    current_procinfo.flags)

git-svn-id: trunk@2876 -
2006-03-11 22:38:28 +00:00
Jonas Maebe
638b2ecb2b * fix dynamic library compilation on darwin (both i386 and ppc)
git-svn-id: trunk@2875 -
2006-03-11 22:31:56 +00:00
marco
fad4e25b39 * fix for 4831
git-svn-id: trunk@2873 -
2006-03-11 22:21:30 +00:00
Jonas Maebe
5f0f08dd18 * fixed calling cdecl functions which return a large record with
use_fixed_stack on i386

git-svn-id: trunk@2872 -
2006-03-11 22:12:20 +00:00
Jonas Maebe
659d3e106d * fixed alignment of double, extended, int64 and qword on i386-darwin
git-svn-id: trunk@2870 -
2006-03-11 22:01:11 +00:00
marco
eb5d494b12 * fix for double-write bug, probably in since r1353
git-svn-id: trunk@2869 -
2006-03-11 21:33:51 +00:00
Jonas Maebe
7a22c36200 * with debug info
git-svn-id: trunk@2868 -
2006-03-11 21:21:38 +00:00
Jonas Maebe
d36a518a2f + added cpu unit for i386-darwin
git-svn-id: trunk@2867 -
2006-03-11 21:15:45 +00:00
Jonas Maebe
3765a9bbb8 * fixed set_first_temp_offset for use_fixed_stack
git-svn-id: trunk@2866 -
2006-03-11 21:08:04 +00:00
Jonas Maebe
8ef01e93c1 * another use_fixed_stack fix
git-svn-id: trunk@2865 -
2006-03-11 20:48:58 +00:00
florian
1286df274a + sunos
git-svn-id: trunk@2864 -
2006-03-11 20:43:24 +00:00
florian
4be2b9411e + support for ar scripts, from Yury Sidorov
git-svn-id: trunk@2863 -
2006-03-11 16:53:10 +00:00
Jonas Maebe
431cead7a2 * more disabling of interrupt code for i386-darwin
git-svn-id: trunk@2862 -
2006-03-11 15:10:20 +00:00
marco
7e963e7f3e * fix for Marc Santhoffs problems
git-svn-id: trunk@2860 -
2006-03-11 15:04:28 +00:00
Jonas Maebe
d222c49740 + compile mmx unit for i386-darwin
git-svn-id: trunk@2859 -
2006-03-11 15:04:03 +00:00
marco
a84d1172b5 * fix for 4827
git-svn-id: trunk@2858 -
2006-03-11 14:59:17 +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
83b1c3736a * fixed assembler version of fpc_AnsiStr_Decr_Ref (based on remark
from Martin Schreiber)

git-svn-id: trunk@2856 -
2006-03-11 14:16:11 +00:00
Jonas Maebe
4ed39b0c16 * don't explicitly us NR_F0 in concatcopy but ask a register from
the register allocator (since NR_F0 can also be used by the ra)

git-svn-id: trunk@2855 -
2006-03-11 14:13:47 +00:00
Jonas Maebe
20160f1a35 * fixed a_param_ref for large parameters
git-svn-id: trunk@2854 -
2006-03-11 13:54:20 +00:00
Jonas Maebe
6e58ad4a12 * set firsttempoffset properly for use_fixed_stack
git-svn-id: trunk@2853 -
2006-03-11 13:54:03 +00:00
Jonas Maebe
15270b67be - disabled assembler ansistring helpers for darwin/x86 because they don't
keep 16 byte stack alignment

git-svn-id: trunk@2852 -
2006-03-11 13:18:28 +00:00
Jonas Maebe
988f689445 * fixed compilation
git-svn-id: trunk@2851 -
2006-03-11 09:30:09 +00:00
Jonas Maebe
586f96698d + darwin-i386 versions
git-svn-id: trunk@2850 -
2006-03-11 00:16:51 +00:00
Jonas Maebe
269fe67263 + i386-darwin support
git-svn-id: trunk@2849 -
2006-03-11 00:14:19 +00:00
Jonas Maebe
a90e3b3e1d * fixed argc/argv/envp catching for darwin/x86 (not really nice, but
works)

git-svn-id: trunk@2848 -
2006-03-10 23:45:37 +00:00
Jonas Maebe
fad5d59bd9 * turned {$ifdef cputargethasfixedstack} into "if use_fixed_stack"
* fixed i386 parameter passing of function calls nested in parameters
    of functions which also need the stack to pass poarameters

git-svn-id: trunk@2847 -
2006-03-10 23:44:04 +00:00