Commit Graph

6890 Commits

Author SHA1 Message Date
peter
d604b703cb * fix resizing of LOC_CREGISTER 2004-10-01 17:32:16 +00:00
peter
6d16520853 * don't add stabs for register variables 2004-10-01 15:22:22 +00:00
Tomas Hajny
39d6a252e2 * explicit typecast added to avoid range check error 2004-09-30 19:32:19 +00:00
florian
15d3388449 * fixed more sparc overflow stuff
* fixed some op64 stuff for sparc
2004-09-29 18:55:40 +00:00
mazen
83cb4fe087 * revert last change : removal of dos unit 2004-09-29 06:52:43 +00:00
peter
0af84db9cf * fixed crash 2004-09-28 20:19:36 +00:00
mazen
880427b9aa - remove Dos unit dependency 2004-09-28 16:00:52 +00:00
peter
6da9996dba * fixed passing of flaot parameters. The general size is still float,
only the size of the locations is now OS_32
2004-09-27 21:24:17 +00:00
peter
25b0dc04d7 * fixed spilling code 2004-09-27 21:23:26 +00:00
olle
5d088845d3 + added -h option to show help 2004-09-27 18:04:11 +00:00
peter
6180168a5a * register loopvarsym for fields instead of record variable
* don't allow class fields as loop var
2004-09-27 15:15:52 +00:00
peter
96a6acbda2 * dealloc function result registers, register allocation is now
back at pre-paraloc level
2004-09-27 15:15:20 +00:00
peter
77b6de17a6 * reference local varsyms can't be regvar 2004-09-27 15:14:34 +00:00
peter
ba87da9bc2 * fix compile for oldregvars 2004-09-27 15:14:08 +00:00
peter
30a4185153 * IE when expecting top_ref 2004-09-27 15:12:47 +00:00
peter
ec04a5a899 * handle 3 operand opcodes the same as 2 operand opcodes, the
third operand can only be a const or register CL, so it doesn't
    affect spilling
  * support shrd/shld that don't allow memory operands
2004-09-27 14:49:45 +00:00
florian
62f93d3473 + partial overflow checking on sparc; multiplication still missing 2004-09-26 21:04:35 +00:00
armin
80e621011a * added define netware and netware_libc for target netwlibc, netware_clib for netware 2004-09-26 19:51:02 +00:00
peter
8fb3536f6e * simple regvar support, not yet finished 2004-09-26 17:45:29 +00:00
florian
5392f62678 + a_jmp_name for sparc added 2004-09-26 17:36:12 +00:00
florian
9d29de2b43 * fixed qword -> float conversion for x86 2004-09-26 09:12:50 +00:00
florian
9ebffe215b * ie checking in spilling code improved 2004-09-26 07:15:07 +00:00
florian
be3f78e283 * handling of C styled varargs fixed 2004-09-25 20:28:39 +00:00
florian
36112785f8 * indention fixed 2004-09-25 20:28:20 +00:00
florian
05ca833859 * fixed dyn. linker name for sparc 2004-09-25 18:44:12 +00:00
peter
65c3ba277c * ungetregister is now only used for cpuregisters, renamed to
ungetcpuregister
  * renamed (get|unget)explicitregister(s) to ..cpuregister
  * removed location-release/reference_release
2004-09-25 14:23:54 +00:00
armin
384e2e4d43 * added GROUP for .a files to linker script 2004-09-24 10:48:31 +00:00
mazen
e27d695e7c * Fix new command line parameters 2004-09-22 15:41:57 +00:00
mazen
da1c3fb6f0 * Fix error committing : previous version must be in branch USE_SYSUTILS 2004-09-22 15:25:14 +00:00
mazen
3b591c5575 * use SysUtils unit instead of Dos Unit 2004-09-22 15:14:37 +00:00
Tomas Hajny
85320d6787 * SetTextLineEnding implemented, FileRec.Name position alignment for CPU64 2004-09-21 23:36:51 +00:00
Tomas Hajny
5df0c00360 * better PathExists, fix for too long command line, correction of message 2004-09-21 23:33:43 +00:00
peter
d5140a5792 * don't remove MOV reg1,reg1 it is needed for the RA 2004-09-21 20:33:00 +00:00
peter
d99a5f58f3 * range check error in swapint64 2004-09-21 20:32:40 +00:00
peter
690f5e22d1 * x86_64 fixes
* cleanup of fpcdefs.icn
2004-09-21 19:59:51 +00:00
peter
33a834821f * paraloc branch merged 2004-09-21 17:25:12 +00:00
peter
4df1a1f378 * no difference for withnode when debuginfo is generated 2004-09-21 16:00:50 +00:00
peter
e1278ec66f * prefer pchar-string over pchar-pointer 2004-09-21 15:52:35 +00:00
peter
9575b739fb * make it compile with main branch 2004-09-20 15:40:21 +00:00
Jonas Maebe
600f863e37 * fixed crashes on direction=1 systems (mainly by Peter) 2004-09-20 07:32:02 +00:00
armin
014395198b * added library support 2004-09-19 18:10:32 +00:00
armin
b9dd469ddc * support library flag
* automaticly gernerate xdc data
2004-09-19 14:23:43 +00:00
peter
35c07ed9ef * dynarr-pointer is allowed under delphi 2004-09-16 16:32:44 +00:00
peter
4978a7635a * another fix for reading of subranges 2004-09-16 16:32:27 +00:00
peter
90c280a42d * Use FExpand on paths passed to compiler 2004-09-16 16:31:53 +00:00
peter
7f8844e74d * release localsymtables when module is compiled 2004-09-14 16:33:46 +00:00
peter
7e90a8a8ab * restart sorting of enums when deref is called, this is needed when
a unit is reloaded
2004-09-14 16:33:17 +00:00
peter
3b59efea14 * keep localst in memory, it is also needed for finalizing
typedconst
2004-09-13 20:34:28 +00:00
peter
63532ef166 * pwidechar support in array of const 2004-09-13 20:33:41 +00:00
peter
6096fe0789 * use realname in error msg 2004-09-13 20:33:17 +00:00
peter
38bebdb044 * only make both operands the same for xor,and,or when both are
integer types
2004-09-13 20:32:53 +00:00
peter
17f31d70c2 * fix for read(subranges) with subrange typ already being sinttype 2004-09-13 20:32:06 +00:00
peter
29207e007a * fixed and cleanup of overriding non-visible methods 2004-09-13 20:31:07 +00:00
peter
c1d4e0c3d3 * vo_is_loop_counter added 2004-09-13 20:30:22 +00:00
peter
180c042911 * finalize all (also procedure local) typedconst at unit finalization 2004-09-13 20:30:05 +00:00
peter
384e764831 * use realname for abstract procs found 2004-09-13 20:29:00 +00:00
peter
67548d9f91 * for loop variable assignment is not allowed anymore 2004-09-13 20:28:26 +00:00
peter
e32eac8468 * remove check for shortunitname, it broke units with 8 and 9 chars
with the first 8 chars being equal
2004-09-13 20:27:27 +00:00
peter
c336f79bab * for-loop variable access removed 2004-09-13 20:26:45 +00:00
peter
c1303f5759 * stringlist.find case insensitive 2004-09-13 20:26:26 +00:00
peter
9b0243bccc * support byte() typecast
* support array index
2004-09-13 20:25:52 +00:00
olle
922a594dd8 + When link on target, the script sets file type on link.res 2004-09-13 16:13:04 +00:00
olle
bb684d007d * Minor bugfix in $IFOPT 2004-09-12 20:46:58 +00:00
olle
0bf14e759f * Updated compiler status 2004-09-12 20:33:21 +00:00
Jonas Maebe
c5c6a10a87 * fixed wrong error message 2004-09-10 21:00:53 +00:00
Jonas Maebe
1c0fb6a6ea * exit with exit code 0 instead of 1 after writing out quick options
(such as -iV)
2004-09-10 21:00:23 +00:00
Jonas Maebe
23086cb87c * clarified comment 2004-09-10 19:59:38 +00:00
olle
6daacd9e0e * floating point constants is now written as byte pattern, to have exact control of each bit. 2004-09-10 11:23:52 +00:00
olle
be837c0f23 + Added argument to Stop 2004-09-09 08:19:47 +00:00
michael
ec7227e1f5 Regenerated 2004-09-08 11:58:14 +00:00
michael
41f7fa8c37 + Check if outputdir exists, Fix exitcode when displaying help pages 2004-09-08 11:23:30 +00:00
armin
458e3c3780 * makefiles regenerated
* ide: added target netwlibc
2004-09-04 23:33:38 +00:00
armin
354004d803 * target netwlibc added (libc is preferred for newer netware versions) 2004-09-04 21:18:47 +00:00
armin
27335f6a8f * missing targets added 2004-09-04 21:11:49 +00:00
armin
5f567e75f8 * dont create main for netware (only PASCALMAIN) 2004-09-03 16:12:32 +00:00
olle
617eb1b118 + compiler directives which take filenames/paths, get these trimmed, and
also support quotes.
2004-08-31 22:07:04 +00:00
olle
22a93eb1e9 + support for quoting of paths in TSearchPathList.AddPath so that
compiler directives which take paths, will support quotes.
  * uppdated TranslateMacPath
2004-08-31 22:02:30 +00:00
olle
883dfac48d + added proc DePascalQuote 2004-08-31 21:44:18 +00:00
peter
b24163cef6 * use realmodulename in unit not used msg 2004-08-30 20:23:33 +00:00
michael
55eea27447 + Patch from peter to fix bug #3272 2004-08-30 12:09:45 +00:00
armin
5595281c4f * added support for libc 2004-08-30 11:17:34 +00:00
Jonas Maebe
c2210f01b9 * only specially handle 64bit operations on ordinals 2004-08-30 09:28:40 +00:00
peter
e18eaddbfc fixed crash with error in default value
allow assembler directive in interface
2004-08-29 11:28:41 +00:00
peter
ade0fde929 allow published for constructors 2004-08-29 11:28:10 +00:00
peter
2043999880 * optimized search for noncasesensitive names. It now searches
first for NormalCase and skips double tests
2004-08-28 20:25:25 +00:00
peter
d30692b3b1 * enable case sensitive to support mixed case unit/filenames 2004-08-28 20:01:46 +00:00
peter
d3b7458802 * print realmodulename in fatal errors 2004-08-28 20:01:09 +00:00
peter
8694a4b86b * use objrealname in Message1 2004-08-28 20:00:50 +00:00
peter
d763f9e142 browser disabled
uf_local_symtable ppu flag when a localsymtable is stored
2004-08-27 21:59:26 +00:00
peter
1654d9ad27 don't use .rodata, it doesn't work yet 2004-08-27 20:55:08 +00:00
peter
519bf9889e don't lowercase filenames in stabs 2004-08-27 20:53:52 +00:00
florian
5b2a1d9fdf * fixed absolute on sparc 2004-08-25 20:40:04 +00:00
peter
2c9a986fa3 * fix crash with calling method pointer from class procedure 2004-08-25 15:58:36 +00:00
peter
d3545c4e4c * fix for tw3261 2004-08-25 15:57:19 +00:00
peter
db2ac3bc57 * allow only 1 default property 2004-08-25 15:57:04 +00:00
peter
b815890d49 * fix sqr() and abs() constant range check errors 2004-08-25 15:56:35 +00:00
peter
6663adfd50 * fixed win32 that was broken by previous fix 2004-08-25 15:55:32 +00:00
peter
04cce65ea2 * .rodata section support, disabled by default since it doesn't work
yet
2004-08-25 15:55:10 +00:00
peter
5906d4a967 * fix possible wrong typecast 2004-08-25 15:54:46 +00:00
Jonas Maebe
49b014379e * fixed rare case bug (see tests/test/tb0478.pp) 2004-08-25 11:51:31 +00:00
florian
9cec4f847e * fixed i386 compilation 2004-08-24 21:23:11 +00:00
florian
1eb575fa22 * fixed longbool(<int64>) on sparc 2004-08-24 21:02:32 +00:00
Tomas Hajny
a3d82fd80f * binary writer fix for GO32v2 from Peter 2004-08-24 19:31:44 +00:00
florian
59a814d7e1 * fixed boolean(<int>) on sparc 2004-08-23 20:45:52 +00:00
michael
dd042a896b + Patch from Peter to fix debuginfo in constructor. 2004-08-23 11:00:06 +00:00
olle
df2d2a847c + added flag to TMacro denoting mac style compiler variable
* fixed $DEFINEC
  * improved robustness of macro facility
2004-08-22 23:16:06 +00:00
olle
f125ee32d1 + added macro-lacks-content message
* fixed typos etc
2004-08-22 23:12:16 +00:00
florian
4b3ed28d07 * morphos now takes any pointer var. as libbase
* alignment for sparc fixed
  * int -> double conversion on sparc fixed
2004-08-22 20:11:38 +00:00
peter
9ab6f93a11 * don't insert result variables for constructor/destructors 2004-08-22 11:24:27 +00:00
peter
0d81be8dee * fix error when passing constant to var parameter 2004-08-22 11:24:09 +00:00
peter
bd1bd1ab20 * support hint directives in object declarations 2004-08-22 11:23:45 +00:00
olle
6ad2b42765 + added DEFINEC for mode macpas, is equivalent to DEFINE
* fixed bug when macro without value is used in a compile time expr.
2004-08-22 10:50:19 +00:00
peter
1035b45833 * support $RESOURCE 2004-08-22 10:17:27 +00:00
peter
923569eee2 * fixed crash when passing array constructor to formal parameter 2004-08-22 10:17:13 +00:00
olle
a06d889f52 + made fpc work as an MPW tool, by itself calling asm and link. 2004-08-20 10:30:00 +00:00
olle
2a4605eabc + made fpc work as an MPW tool, by itself calling asm and link.
* bugfix in fp exception flag settings routine
2004-08-20 10:29:31 +00:00
olle
ef89703097 * minor fix for macos 2004-08-20 10:23:35 +00:00
Jonas Maebe
e3eb4f8359 * fixed "if @procvar_of_object <> nil" in Delphi/TP mode for for non-x86 2004-08-17 19:04:36 +00:00
Jonas Maebe
3a1e8981f4 * do not rename registers across conditional jumps 2004-08-17 16:34:58 +00:00
Jonas Maebe
c7544e69de + padalgingment field for recordsymtables (saved by recorddefs)
+ support for Macintosh PowerPC alignment (if the first field of a record
    or union has an alignment > 4, then the record or union size must be
    padded to a multiple of this size)
2004-08-17 16:29:21 +00:00
olle
189214f79b + Added automatic use of unit macpas under mode macpas 2004-08-16 22:52:35 +00:00
peter
f3f33a5fea * fixed shr/shl 32 2004-08-16 21:00:30 +00:00
peter
4275383b15 * range checks fixed 2004-08-16 21:00:15 +00:00
olle
5a67308b98 + added directive LibExport for macpas, which does nothing atm 2004-08-16 11:34:25 +00:00
peter
8184ad2048 * fixed padding of records to alignment 2004-08-15 15:05:16 +00:00
florian
cf25a973f8 * fixed alignment of variant records
* more alignment problems fixed
2004-08-15 13:30:18 +00:00
Jonas Maebe
0ccc15675e * add cprefix to procedures which are autoamtically marked as external in
macpas mode
2004-08-15 12:06:03 +00:00
florian
6368652be2 * fixed several sparc alignment issues
+ Jonas' inline node patch; non functional yet
2004-08-14 14:50:42 +00:00
Jonas Maebe
25c2441fa5 * only set the mangled name immediately for external procedures in macpas
mode if the procedure isn't cdecl (so that the c-prefix is taken into
    account, necessary for Mac OS X)
2004-08-13 17:53:37 +00:00
florian
120c165a62 * constant floating point assignments etc. are now overflow checked
if Q+ or R+ is turned on
2004-08-08 16:00:56 +00:00
florian
8cb7072e5f * fixed several ie9999s when illegal operators were used 2004-08-08 15:22:29 +00:00
florian
95e40f0f69 * proc. var declarations in a class doesn't eat a public anymore 2004-08-08 12:35:09 +00:00
florian
fe54af8f82 * finally is an "endtoken" as well 2004-08-08 12:06:38 +00:00
florian
ed872a3600 * fixed problem with explicit specified calling conventions for property symbols 2004-08-07 19:13:51 +00:00
florian
6ab93f5ec1 * fixed web bug #3226: type p = type pointer; 2004-08-07 14:52:45 +00:00
marco
473bc013f2 * regened after ARM change. 2004-08-06 22:54:57 +00:00
marco
151478584c * fpcfan copy paste error (ifdef x86_64 should be arm) 2004-08-06 22:37:49 +00:00
Jonas Maebe
c5ec202cd1 * some improvements to node complexity calculations 2004-08-04 08:35:59 +00:00
florian
a47844c817 * sizeof in the preprocessor handles types now as well 2004-08-02 20:45:40 +00:00
michael
8affe37ee1 + Fixed range check for non-constant indexes in strings 2004-08-02 09:15:03 +00:00
michael
f897872df2 + Patch from Christian Iversen to implement LIBPREFIX/SUFFIX/EXTENSION directives 2004-08-02 07:15:54 +00:00
michael
ff069c5ecc + Patch from Christian Iversen to implement LIBPREFIX/SUFFIX/EXTENSION directives 2004-08-02 07:15:54 +00:00
armin
1d50f840f2 * changes to compile fpc on netware 2004-08-01 19:29:06 +00:00
florian
6802705043 * float to float and int to float fixed 2004-08-01 19:01:10 +00:00
florian
8eaf31e212 * qword/int64 shifting fixed 2004-08-01 08:46:31 +00:00
armin
4a270e4c2f changed path sep to / 2004-07-31 22:52:58 +00:00
armin
04e5a78e49 * typo in set_source_info 2004-07-30 19:22:14 +00:00
armin
8e3099d453 * removed -m for nlmconv, it is only valid for ld 2004-07-30 16:00:19 +00:00
olle
07e8c04224 * made target macos really work again after the dwarf merge 2004-07-26 22:26:39 +00:00
mazen
72556ae39f * fix compile problem 2004-07-26 04:00:35 +00:00