florian
655e947521
* better commenting
2005-01-04 20:14:40 +00:00
olle
94e74ca197
* sorted in correctly new tokens added by Karoly
2005-01-04 19:22:33 +00:00
olle
c2be1fd337
* made macpas switches in sync with turbo switches
2005-01-04 18:39:06 +00:00
Károly Balogh
088575dc32
+ sysv style syscalls added for MorphOS
2005-01-04 17:40:33 +00:00
peter
d2c8a99440
* don't typecast index of indexed properties
2005-01-04 16:52:07 +00:00
peter
717e3c76c2
* set nf_is_self node flag when self is loaded
2005-01-04 16:39:46 +00:00
peter
14ccaf9c7b
* allow enum with jumps as array index in delphi mode
2005-01-04 16:39:12 +00:00
peter
fd3f6a9017
* fix setting minval for enum with specified values
2005-01-04 16:38:54 +00:00
peter
537dcdde20
* don't allow properties in C style operators
2005-01-04 16:38:07 +00:00
peter
b88a75d42f
* give error when property doesn't reference a method or field
2005-01-04 16:37:38 +00:00
peter
d111c8130a
* don't release temps for array of ansistring
2005-01-04 16:37:09 +00:00
peter
cf8c959014
* release temps in array constructor
2005-01-04 16:36:51 +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
b537382710
* give error when reading identifier > 255 chars
2005-01-04 16:34:03 +00:00
florian
bb096fcec6
* fixed nan et al. handling on arm
2005-01-04 16:20:51 +00:00
florian
a90585b5a4
* arm sets FPUFPA by default for now
2005-01-04 16:19:52 +00:00
florian
b6199234eb
* prepared for fpu mode depended define
2005-01-04 16:18:57 +00:00
florian
6ab9be6a5d
* implemented nostackframe calling convention directive
2005-01-04 15:36:32 +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
b34de6861f
fix outline of 3rd level of options (-SI option mainly)
2005-01-03 20:27:47 +00:00
florian
80af47489d
+ first batch of patches to support tdef.getcopy fully
2005-01-03 17:55:57 +00:00
Jonas Maebe
f9b99ad965
* remove "release subregA; allocate other_subreg_of_A" sequences so the
...
register renaming doesn't stop early
2005-01-03 14:59:28 +00:00
peter
a8684d35ad
unsigned*unsigned will also have unsigned result.
2005-01-02 17:31:07 +00:00
peter
a15f1c3283
* Don't release methodpointer. It is maybe still needed when we need to
...
convert the calln to loadn
2005-01-02 16:58:48 +00:00
florian
4900f10f2e
* version and copyright increased
2005-01-02 10:20:08 +00:00
armin
f7a03147bb
* increased maxsize of ExeCmd and DllCmd
2005-01-01 20:18:24 +00:00
armin
53f6eb9216
* support ! in import file names for netware also
2005-01-01 20:08:59 +00:00
florian
7d1dd39ecc
* ie with array of const;cdecl; fixed
2005-01-01 19:30:17 +00:00
florian
18c1196125
* cleanup
2005-01-01 16:23:37 +00:00
florian
d41004eae3
* initial (non-complete) version by Ido Kanner aka ik_5
2005-01-01 15:17:07 +00:00
florian
91ef608143
* maybe_constant means also that a loc can be CREGISTER
2005-01-01 14:32:53 +00:00
florian
ed57ad0371
* improved code generation for OP_MUL/OP_IMUL
2005-01-01 13:19:09 +00:00
olle
de0440d620
+ first version
2004-12-31 21:34:33 +00:00
marco
80132165d2
* regened with correct VERSION
2004-12-31 07:50:12 +00:00
marco
b8780d4782
* Makefile regened
2004-12-31 07:43:19 +00:00
Jonas Maebe
07d5650ab3
* fixes to interface style help
2004-12-30 19:06:56 +00:00
peter
6ae17badf1
* back to 1.9.5 for HEAD
2004-12-30 19:01:29 +00:00
peter
73585ab8ee
* 1.9.6
2004-12-30 18:36:56 +00:00
Tomas Hajny
bdeab14b7f
* missing utilsprefix added
2004-12-30 17:41:27 +00:00
Jonas Maebe
d898b8dfb7
* no more moving the loading of regvars past conditional jumps
2004-12-30 14:51:22 +00:00
florian
485b770322
* alignment fixes for sparc
2004-12-30 14:36:29 +00:00
Jonas Maebe
f041b36ce7
* fixed checking of overlapping references
2004-12-30 13:49:42 +00:00
michael
fe4c4fac08
+ Fixed interface style help
2004-12-29 11:54:58 +00:00
olle
594a8cd94a
+ script which mimics the fpc program on MPW
2004-12-28 22:07:11 +00:00
olle
c9a59bbdfd
* fixed typo in MPW error msg
2004-12-28 22:02:05 +00:00
olle
ea004048cb
+ suppression of link varning of 'qd'
2004-12-28 22:00:15 +00:00
Tomas Hajny
f290fbb299
* 8.3 fixes (short target name in paths)
2004-12-28 20:43:00 +00:00
Tomas Hajny
0d1a6fb4b2
* don't put quoted paths in link.res for OS/2
2004-12-28 20:39:12 +00:00
Jonas Maebe
53c04512cc
* fixed several regvar related bugs, cycle with -OZp3r doesn't work
...
yet though
2004-12-28 18:01:40 +00:00
olle
3f7fdcb45e
* fixed compilation for PowerPC
2004-12-28 02:25:43 +00:00
olle
5aa1ac7420
+ added support for MPW error messages
...
+ added support for cooperative multitasking under MPW
2004-12-28 01:39:07 +00:00
Tomas Hajny
8b7e6be55c
* missing maybequoted() added for deletion of generated .s files during external assembly
2004-12-27 19:48:58 +00:00
peter
ac962df59f
* don't parse public,private,protected as procdirectives, leave
...
procdirective parsing before any other check is done
2004-12-27 17:32:06 +00:00
peter
f0267daa4a
* also don't call procvar when converting to procvar
2004-12-27 16:54:29 +00:00
peter
c1bf99c30a
* fix crash with callnode.ppuload when symtableproc=nil
2004-12-27 16:36:10 +00:00
peter
2a20174317
* set flag if a procedure references a symbol in staticsymtable
2004-12-27 16:35:48 +00:00
florian
5fb0678de2
* fixed class field info alignment
2004-12-27 15:54:54 +00:00
Jonas Maebe
b2869b3c75
* fixed internalerror when cycling with -O3p3u
2004-12-27 15:20:03 +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
272cf5b9f1
* also compare procoptions and proctype when searching interface
...
implementations
2004-12-26 20:16:44 +00:00
peter
0d4ba90aa8
* don't allow class methods in interfaces
2004-12-26 20:12:23 +00:00
peter
65501ac04c
* fix invalid typecast
2004-12-26 20:11:39 +00:00
peter
04e7db0905
* typecast float to non-float needs a move to memory
2004-12-26 20:09:35 +00:00
peter
ced6bf20cd
* fix lineinfo for with blocks
2004-12-26 16:22:01 +00:00
peter
a1c525a3e6
* resourcestring does not need exception frame
2004-12-26 16:21:39 +00:00
florian
f068e0c3da
* fixed extended->double/single conversion when using sse
2004-12-25 12:29:08 +00:00
florian
0ad4b9d394
* optimized float to float conversion
2004-12-25 10:48:17 +00:00
Jonas Maebe
d377cacc61
* fixed call-by-value passing of records with size 1, 2 or 4 for AIX abi
...
(using a hack, normally all records should by passed by value under the
aix abi, but that's currently impossible)
2004-12-24 15:00:11 +00:00
Jonas Maebe
067c588089
- removed unused variables
2004-12-24 11:58:33 +00:00
Jonas Maebe
4c3b9ce6c3
* fixed a_jmp_name() for darwin
2004-12-24 11:51:55 +00:00
Jonas Maebe
bbb95a65f7
* fixed typo
2004-12-23 18:45:23 +00:00
peter
1da9e24cee
* support sizeof()
...
* fix typecasting a constant like dword(4)
2004-12-22 17:09:55 +00:00
peter
dc363f29bc
* maybequoted() added
2004-12-22 16:32:45 +00:00
michael
1027d1941d
+ Enable local debug info in methods
2004-12-21 08:38:16 +00:00
peter
f52d2b2edf
* regenerated
2004-12-20 18:37:51 +00:00
peter
ba3516dff6
* A_IMUL readwrite operand 1
2004-12-19 21:34:09 +00:00
peter
3c3ec40b70
* regenerated
2004-12-19 17:42:32 +00:00
florian
ce3f177339
* dyn. linker path fixed for x86_64
2004-12-19 14:03:16 +00:00
florian
b44f17099c
* fixed some alignment trouble
2004-12-18 15:48:06 +00:00
florian
c279c13d17
* the optimization fstp f;fld f to fst f disabled; leads to rounding problems
2004-12-18 15:21:56 +00:00
Jonas Maebe
84aa52942f
* fixed tracking of usage of flags register
...
* fixed destroying of "memwrite"'s
* fixed checking of entire sequences in all cases (previously this was
only guaranteed if the new sequence was longer than the old one, and
not if vice versa)
* fixed wrong removal of sequences if a register load was already
completely removed in the previous sequence (because in that case,
that register has to be removed and renamed in the new sequence as
well before removing the new sequence)
2004-12-18 15:16:10 +00:00
Jonas Maebe
a3627d9345
* fixed compilation with -dcsdebug -dallocregdebug
2004-12-18 14:07:35 +00:00
marco
e79fb753bc
* slash typo
2004-12-16 08:06:42 +00:00
peter
c3f6b3125e
* 64bit typecast
2004-12-15 21:09:06 +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
fad0e529a4
* syscall with sysv abi for morphos
2004-12-15 19:30:32 +00:00
peter
d387fda801
* give error when paraloc is not filled in order_parameter
2004-12-15 19:30:16 +00:00
peter
9e49f8eef9
* fixed crash with -vp
2004-12-15 17:01:28 +00:00
marco
9dec5c3179
* introduction "cleanpath" (=fexpand), fixfilename(paramstr(0)) + search $PREFIX/etc/fpc.cfg
2004-12-15 16:06:47 +00:00
peter
00c14e1083
* external is again allowed in implementation
2004-12-15 16:00:16 +00:00
peter
5576ae73a6
* fix visibility of protected/private
2004-12-15 15:59:54 +00:00
Jonas Maebe
0f2922f5a1
* fixed foreachnode(static) for case nodes (fixes inlining of case
...
statements)
2004-12-15 15:27:03 +00:00
peter
ed9f8f54e7
* generic optimizer
2004-12-12 14:07:07 +00:00
peter
1c458abb0b
* compile fixes for x86_64
2004-12-12 12:56:18 +00:00
peter
749afb3dec
* small optimization with options passed to cycle
2004-12-12 12:33:25 +00:00
florian
0037f4a199
* fixed operand size calculation for sse operands
...
+ all nasm assembler targets to help page output added
2004-12-12 10:50:34 +00:00
florian
4d25901e99
* check if the selected assembler supports current target improved
2004-12-12 00:35:19 +00:00
florian
dc98c3265f
* check if the selected assembler supports current target
2004-12-12 00:31:52 +00:00
Jonas Maebe
9e24c28774
- removed superfluous location_force_reg() in second_nothing
2004-12-11 15:25:40 +00:00
Jonas Maebe
d7c52f4062
* external vars are not regable
2004-12-11 15:19:08 +00:00
florian
78bff4ff2e
* made some target short names look more nicer
2004-12-11 14:39:03 +00:00
Jonas Maebe
fcf16c4983
* fixed synchronising 64bit regvars on 32bit systems at the start and
...
end of procedures
* hack for ppc for loading of paras from their callee location to local
temps
2004-12-11 12:42:28 +00:00
Jonas Maebe
62d4f7dd52
* fixed regvar problem due to emit_bit_test() changing a register that
...
was allowed to be a LOC_CREGISTER
2004-12-11 01:04:26 +00:00
Jonas Maebe
7c9d8d8872
* fixed int64 regvar bug in location_force_register
2004-12-11 01:03:01 +00:00
Jonas Maebe
2bd47e8ce6
* fixed type conversion between same-size ints with different signs in
...
case the value is already in a register
2004-12-10 23:38:54 +00:00
Jonas Maebe
95348379fa
* certain type conversions have no cost (also fixes problem of
...
inc(int64) with regvars turned on on non-64bit platforms)
2004-12-10 13:16:31 +00:00
peter
78c2af7b3c
* set vo_explicit_paraloc flag
2004-12-07 16:11:52 +00:00
peter
a266052fd9
* modified algorithm for shortening manglednames to fix compilation
...
of procedures with a lot of longtypenames that are equal, see
tw343
2004-12-07 15:41:11 +00:00
michael
44bf61f445
* Convert array of widechar to pwidechar instead of pchar
2004-12-07 13:52:54 +00:00
peter
9c0be16488
implicit load of variants unit
2004-12-06 19:23:05 +00:00
Jonas Maebe
5b7ffabd0c
* only set/clear bit 6 of cr in case of varargs for the sysv abi
2004-12-06 18:06:37 +00:00
Jonas Maebe
4f53d8367d
* introduced bug (x shl 65 = x shl 1 when shifting with a constant, but
...
still 0 otherwise) to pass tshlshr
2004-12-06 17:53:43 +00:00
peter
d45dea5db8
* fix methodpointer compare, compare only the proc field
2004-12-06 15:57:22 +00:00
Tomas Hajny
390876bdb4
* Makefiles regenerated
2004-12-05 16:54:46 +00:00
Tomas Hajny
12a5595b20
* Makefiles regenerated
2004-12-05 16:46:49 +00:00
peter
2b6456fe16
* procvar handling for tp procvar mode fixed
...
* proc to procvar moved from addrnode to typeconvnode
* inlininginfo is now allocated only for inline routines that
can be inlined, introduced a new flag po_has_inlining_info
2004-12-05 12:28:10 +00:00
Tomas Hajny
efda160d12
* fix for compilation on 8.3 filesystems
2004-12-05 12:25:48 +00:00
florian
8b9c48e7fb
* fixed compiler side of variant <-> dyn. array conversion
2004-12-05 12:15:11 +00:00
olle
53f77231d5
+ bugfix for $Z+ for mode macpas
2004-12-05 00:32:56 +00:00
Jonas Maebe
49a8939b22
* modifications to work with the generic code to copy LOC_REFERENCE
...
parameters to local temps (fixes tests/test/cg/tmanypara)
2004-12-04 21:47:46 +00:00
florian
d018160981
* fixed compilation
2004-12-04 15:23:00 +00:00
peter
57dc23a294
* fix crashes with nodeinlining
2004-12-03 16:07:04 +00:00
peter
36268edfed
* fix for int64 parameters passed in a single LOC_REFERENCE of 8 bytes
2004-12-03 16:06:31 +00:00
peter
5ee4b9ad24
* use tlocation for tempnodes
2004-12-03 16:04:47 +00:00
peter
466c376d13
* LOC_CREGISTER fix
2004-12-03 15:58:11 +00:00
peter
c2263a36ac
* int64 can also be put in a register
2004-12-03 15:57:39 +00:00
peter
6fa0391558
* fix for 1.9.4 that IE'd when rebuilding fpc
2004-12-03 15:57:11 +00:00
peter
959bdccc49
* disable pass2inline
2004-12-02 19:26:14 +00:00
Jonas Maebe
bd04491f50
* patch from Peter to fix inlining of case statements
2004-11-30 18:13:39 +00:00
peter
24cc110e9f
* public is allowd in interface
2004-11-29 21:50:08 +00:00
peter
7c144223ad
* fixed wrong calculation for checking default parameters
2004-11-29 21:40:54 +00:00
peter
459858305e
* location_force_reg in second_nothing can reuse LOC_CREGISTER
2004-11-29 21:02:08 +00:00
peter
cd4534c862
* uninited results
2004-11-29 20:50:37 +00:00
michael
d4b8a224a1
+ Added license to this library
2004-11-29 19:16:43 +00:00
peter
06cfe01791
* os2 fixes for import
...
* asmsymtype support for intel reader
2004-11-29 18:50:15 +00:00
peter
05127d887d
* when importing by index don't change mangledname
2004-11-29 17:48:34 +00:00
peter
5f61be6b4d
* prevent some IEs with delphi methodpointers
2004-11-29 17:32:56 +00:00
Jonas Maebe
97b2ef94c1
* loadvmtaddrn and loadparentfpn both have complexity 1 (the latter
...
fixes compilation of tw0935 with nodeinlining)
2004-11-28 19:29:45 +00:00
Jonas Maebe
21c7a9db2f
* fixed check for regvar-ability of tempnodes
2004-11-28 19:16:53 +00:00
Jonas Maebe
38db3679d8
* only try to replace locals from the inlined procedure with temps,
...
cycle now works with -dNODEINLINE
2004-11-28 14:34:59 +00:00
Jonas Maebe
f244dea6ec
* fixed some bugs in the node inlining code due to the transition from
...
dynamic array to tlist
* fixed some register temp bugs (node inlining still does not work again
though)
2004-11-27 22:43:01 +00:00
florian
54ceea9e60
* some m68k stuff updated
2004-11-27 16:16:02 +00:00
peter
1fcd2cd8ad
* internal flag for compare_defs_ext
2004-11-26 22:34:28 +00:00
peter
1418add0e0
* don't allow pointer(ordinal) typecast in fpc mode, only allow it
...
for delphi and for internal use
2004-11-26 22:33:54 +00:00
peter
b55fe3fa67
* don't allow @method in tp procvar mode
2004-11-26 22:33:24 +00:00
peter
08d0d3b73c
* fixed read temp for result
2004-11-26 22:33:00 +00:00
armin
f4ffaa9828
* applied peters patch for cross compile (bin installation)
2004-11-26 13:03:07 +00:00
Jonas Maebe
26ab4ead33
* fixed intermittent bug in overflow checking of subtractions
2004-11-26 12:30:47 +00:00
Jonas Maebe
fff0683902
* fixed overflow checking of unsigned multiplications
2004-11-26 12:17:04 +00:00
armin
2189bb812b
* added utilsprefix for as,ld and nlmconv
2004-11-25 18:46:11 +00:00