Commit Graph

22029 Commits

Author SHA1 Message Date
peter
35c4d43699 * disable regvars until it is fixed
git-svn-id: trunk@3008 -
2006-03-21 17:31:02 +00:00
Jonas Maebe
af36d177d9 * if we find a constant already loaded in a register and we use that
register, mark the register as read by the current instruction
    (fixes compilation of tcalfun8 with optimizations)

git-svn-id: trunk@3003 -
2006-03-21 15:44:55 +00:00
Jonas Maebe
01cf70d354 * don't change "mov const,ref; mov ref,reg" into "mov const,reg; mov reg,ref"
if ref depends on reg

git-svn-id: trunk@3002 -
2006-03-21 15:25:16 +00:00
florian
061162d9da + new messages from Karl-Michael Schindler
git-svn-id: trunk@3000 -
2006-03-21 13:23:46 +00:00
florian
5bb20f65bd * error corrections from Karl-Michael Schindler
git-svn-id: trunk@2999 -
2006-03-21 13:21:23 +00:00
peter
46047c5c0a Merged revisions 2996 via svnmerge from
http://svn.freepascal.org/svn/fpc/branches/linker/compiler

........
r2996 | peter | 2006-03-21 08:50:58 +0100 (Tue, 21 Mar 2006) | 2 lines

  * typo in shtype

........

git-svn-id: trunk@2998 -
2006-03-21 08:00:23 +00:00
peter
ae0010ad6c * support proc to procvar conversion for overloaded procdefs passed to parameters
git-svn-id: trunk@2997 -
2006-03-21 07:51:54 +00:00
peter
f87b04c034 Merged revisions 2994 via svnmerge from
http://svn.freepascal.org/svn/fpc/branches/linker/compiler

........
r2994 | peter | 2006-03-21 07:58:12 +0100 (Tue, 21 Mar 2006) | 2 lines

  * use float size for parameters on the stack

........

git-svn-id: trunk@2995 -
2006-03-21 06:59:04 +00:00
florian
c97598514a * some cleanup
git-svn-id: trunk@2993 -
2006-03-20 22:14:22 +00:00
florian
1e0efc9b0a * "merged" pthread fixes from rtl
git-svn-id: trunk@2992 -
2006-03-20 21:20:55 +00:00
florian
8d83343971 * pthread consts and types fixed
git-svn-id: trunk@2991 -
2006-03-20 21:16:22 +00:00
peter
d3fa4dbca2 * fixed wrong merge
git-svn-id: trunk@2990 -
2006-03-20 16:52:58 +00:00
peter
096113d370 * support setting translations per unit
* store unitname as the first entry in the resourcestring table

git-svn-id: trunk@2987 -
2006-03-20 12:07:29 +00:00
peter
9381c9360e * Flush all StdIO output files
git-svn-id: trunk@2985 -
2006-03-20 09:56:00 +00:00
peter
9c6a296b86 * use shortint for alignments
* remove obsolete position check in tgobj, with the new alignment settings
    this is not possible anymore

git-svn-id: trunk@2984 -
2006-03-20 08:29:13 +00:00
florian
ec768f88ae + improved x86-64 assembler
git-svn-id: trunk@2983 -
2006-03-19 22:24:01 +00:00
peter
37c81492ad Merged revisions 2827,2831,2837,2932-2980 via svnmerge from
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler

r2827 (peter)
  * smartlinking of resourcestrings


r2831 (peter)
  * process_ea 64bit fixes


r2837 (peter)
  * linker script

git-svn-id: trunk@2981 -
2006-03-19 22:12:52 +00:00
peter
ddfa0bd1dd * use resourcstring table again
git-svn-id: trunk@2979 -
2006-03-19 21:16:32 +00:00
Jonas Maebe
e053f4272b * trigger runerror 207 instead of 208 for unknown fpu errors (like on
Linux)

git-svn-id: trunk@2978 -
2006-03-19 20:45:23 +00:00
Jonas Maebe
d56857e998 * fixed r2970 (% instead of #)
git-svn-id: trunk@2977 -
2006-03-19 20:41:36 +00:00
Jonas Maebe
6ad5dff9e8 * fixed loading of -0.0
git-svn-id: trunk@2976 -
2006-03-19 20:29:15 +00:00
Jonas Maebe
b9a66c4f25 * fixed test
git-svn-id: trunk@2975 -
2006-03-19 20:26:29 +00:00
Jonas Maebe
69631be0b3 + nostackframe directive to fix on darwin/x86
git-svn-id: trunk@2974 -
2006-03-19 20:08:21 +00:00
Jonas Maebe
2e41b63710 * support subscripting record function results on ABI's that return
(some) records in registers (+ internalerror if unsupported
    record location). Fixes "make all" in top dir on darwin/x86.

git-svn-id: trunk@2973 -
2006-03-19 20:01:11 +00:00
michael
155df8d326 + StdIO flush now handled as all other files
git-svn-id: trunk@2971 -
2006-03-19 19:18:49 +00:00
peter
76944b0c85 * fix writing of @object for arm
git-svn-id: trunk@2970 -
2006-03-19 19:11:37 +00:00
Almindor
827abd27d7 * adds fpgetcwd support to sysdir.inc and fixes compilation
git-svn-id: trunk@2969 -
2006-03-19 17:10:04 +00:00
Jonas Maebe
b8e3723bb0 - removed markheap since it doesn't work anymore (since a long
time already in fact)

git-svn-id: trunk@2968 -
2006-03-19 16:44:18 +00:00
florian
ad0ac6ef1f * svn:executable
git-svn-id: trunk@2967 -
2006-03-19 13:40:48 +00:00
peter
323d6cf640 * use -O2 for 2.1.1 compilers
git-svn-id: trunk@2966 -
2006-03-19 11:19:43 +00:00
tom_at_work
6d99152f4b * fixed wrong method of disabling stabs debug info in 2956
git-svn-id: trunk@2965 -
2006-03-19 10:54:52 +00:00
florian
bf0fc6cc15 * another dependency fixed
git-svn-id: trunk@2963 -
2006-03-19 09:52:36 +00:00
florian
879e2d795f * more dependencies fixed
* cthreads compilation fixed

git-svn-id: trunk@2962 -
2006-03-19 09:48:45 +00:00
Almindor
e57abdf05f * experimental usage of fpgetcwd in osdir.inc
git-svn-id: trunk@2961 -
2006-03-19 09:46:58 +00:00
florian
afe9539e3c * fixed more makefile stuff
git-svn-id: trunk@2960 -
2006-03-19 09:26:18 +00:00
Jonas Maebe
3bc040cc45 * count references to symbols accessed via properties (fixes bug #4826)
git-svn-id: trunk@2959 -
2006-03-18 22:53:27 +00:00
Jonas Maebe
ed910b5d31 * support goto/label by default in tp/delphi/macpas modes (bug 4893)
git-svn-id: trunk@2958 -
2006-03-18 22:25:41 +00:00
Jonas Maebe
9dbd69c307 * don't give range check hints/warnings for conversions of
realconstnodes to types with less precision than the default (bug 4898)

git-svn-id: trunk@2957 -
2006-03-18 22:02:37 +00:00
tom_at_work
496c31ac29 * DWARF debug info is now default on ppc64/linux
* disallow stabs debug info generation on ppc64/linux.

git-svn-id: trunk@2956 -
2006-03-18 20:48:04 +00:00
florian
a2f4e33bda * fixed solaris compilation
git-svn-id: trunk@2955 -
2006-03-18 17:17:16 +00:00
Jonas Maebe
ac11ab43a2 * fixed wrong conversions from real to currency/int64 for x86
git-svn-id: trunk@2954 -
2006-03-18 13:20:58 +00:00
Jonas Maebe
f59d552ecb * fixed web bug #4913 (don't allow indexing of strings/variants/pointers
with enums/chars/booleans)

git-svn-id: trunk@2952 -
2006-03-18 11:05:04 +00:00
Jonas Maebe
b2cdab26af * automatically convert (wide)chararrays to p(wide)chars for C varargs
git-svn-id: trunk@2951 -
2006-03-18 09:20:18 +00:00
Jonas Maebe
4a6848269e * fixed bug in sprintf of extended
git-svn-id: trunk@2950 -
2006-03-17 22:35:04 +00:00
Jonas Maebe
4db6e1ddb8 * moved type conversion of C varargs from tcallnode to
tarrayconstructornode.inset_typeconvs() and fixed them:
    * integers < 32 bit are converted to 32 bit (this was previously
      done in the code generator for some targets, and not for others)
    * currency is also converted to double for targets where currency = int64
    * single is converted to double, except for x86_64 (is at least
      necessary on darwin/ppc, darwin/i386 and linux/i386)
    * enums are converted to 32 bit ints
    * procvars are converted to pointers
    * proper errors are given for various unsupported types
   NOTE: in C, floating point constants are by default double, while in
    FPC they are of type extended. On platforms where extended <> double,
    such constants when passed to C varargs are automatically converted
    to double by default (gives warning). If you want to pass them as
    single or extended or get rid of the warning, use an explicit typecast
  * increased ppu version because of introduction of new node flag
    (nf_cvarargs for tarrayconstructornode)
  * fixed tests/test/cg/tprintf
  * changed tests/test/cg/cdecl/taoc5 to use explicit typecasts for
    floating point constants passed to C varargs functions.

git-svn-id: trunk@2949 -
2006-03-17 22:26:48 +00:00
Jonas Maebe
ab8f96f4cf * disabled i386 createtempparaloc again because it generates wrong
code in case of nested function calls with lots of arguments

git-svn-id: trunk@2948 -
2006-03-17 22:01:25 +00:00
florian
1b5e2b67b1 * compilation fixed
git-svn-id: trunk@2947 -
2006-03-17 21:16:15 +00:00
florian
49c88c469c * fixed some units to compile
git-svn-id: trunk@2946 -
2006-03-17 21:03:34 +00:00
florian
46a68c8a27 * fixed compilation
git-svn-id: trunk@2945 -
2006-03-17 21:01:50 +00:00
marco
b9e6cbb71b * fix for bug #4900. Probably result of tlargeinteger changing to int64, breaking alignment/padding
git-svn-id: trunk@2944 -
2006-03-17 20:17:15 +00:00