florian
881fe6d416
* passing interfaces as parameters fixed
2000-11-17 10:30:24 +00:00
florian
61c74729a6
* INT_CHECK_OBJECT_* isn't applied to interfaces anymore
2000-11-17 09:54:58 +00:00
Jonas Maebe
03005b8b6b
* fixed web bug #1242
2000-11-16 15:27:48 +00:00
Jonas Maebe
19b4130e98
* fixed bug in allocregbetween
2000-11-14 13:26:10 +00:00
Jonas Maebe
a86df1002b
* fixed some bugs in checksequence
2000-11-14 12:17:34 +00:00
Jonas Maebe
1cf903a9eb
* added missing allocregbetween() (merged)
2000-11-14 09:53:18 +00:00
Jonas Maebe
75ad22bf64
* support for range checking when converting from 64bit to something
...
smaller (32bit, 16bit, 8bit)
* fixed range checking between longint/cardinal and for array indexing
with cardinal (values > $7fffffff were considered negative)
2000-11-13 14:47:46 +00:00
Jonas Maebe
4706eff850
* fixes so no more range errors with improved range checking code
2000-11-13 14:44:35 +00:00
florian
5694e05857
* some bugs with interfaces and NIL fixed
2000-11-13 11:30:54 +00:00
florian
1462deb207
* interfaces are basically running
2000-11-12 23:24:10 +00:00
peter
5ac2599649
* create generic toutputsection for binary writers
2000-11-12 22:20:37 +00:00
florian
1eea21e93f
* fixed resourcestrings, made a stupid mistake yesterday
2000-11-11 22:59:20 +00:00
Jonas Maebe
6b00727480
* optimize converting of 8/16/32 bit constants to 64bit ones
2000-11-11 16:00:10 +00:00
florian
3f707e8676
* resourcestrings doesn't need the helper anymore they
...
access the table now direct
2000-11-09 18:52:06 +00:00
florian
68c1a1e3e6
* System.TypeInfo fixed
...
+ System.Finalize implemented
+ some new keywords for interface support added
2000-11-09 17:46:54 +00:00
Jonas Maebe
1331a2e753
* fixed range check error
2000-11-09 12:34:44 +00:00
sg
7530393d6f
* Fix for containsPointerRef: Loop now runs in the correct range
2000-11-08 16:04:34 +00:00
florian
f89ea69e76
+ AfterConstruction and BeforeDestruction impemented
2000-11-07 23:40:48 +00:00
florian
9e5ced1416
* fixed init_paras call
2000-11-06 23:49:20 +00:00
peter
ac3c08daca
* added copyvaluepara call again
2000-11-06 23:15:01 +00:00
florian
51527ba1c9
+ merged Attila's changes for interfaces, not tested yet
2000-11-04 14:25:19 +00:00
Jonas Maebe
71d94c07f8
* check for nil pointers before calling getcopy
2000-11-04 13:12:14 +00:00
Jonas Maebe
767ecef9bb
* fixed bug in arrayRefsEq
...
* object/class fields are now handled the same as local/global vars and
parameters (ie. a write to a local var can now never destroy a class
field)
2000-11-03 18:06:26 +00:00
Jonas Maebe
5be6c35518
* some small improvements
2000-11-03 17:53:24 +00:00
Jonas Maebe
850e8de88b
* register contents were not cleared if there was only 1 instruction
...
between de previous sequence and the current one
2000-11-01 22:53:30 +00:00
peter
4bcd969993
* merged asm result patch part 2
2000-10-31 22:30:13 +00:00
peter
451723647e
* symtable splitted, no real code changes
2000-10-31 22:02:46 +00:00
Jonas Maebe
5a593618b2
* merged double deleting of left location when using a temp in
...
secondwith (merged from fixes branch). This also fixes web bug1194
2000-10-31 14:18:53 +00:00
Jonas Maebe
05be64d76c
* fixed web bug1192 (changed an ungetregister32 to ungetregister)
...
("merged" from fixes)
2000-10-26 15:53:27 +00:00
Jonas Maebe
bdd82f8c9f
* fixed setlength for shortstrings
2000-10-26 14:15:06 +00:00
peter
ba5fd6b9d8
* emitcall -> emitinsertcall for profiling (merged)
2000-10-24 22:23:04 +00:00
Jonas Maebe
207574e923
* allocate registers which hold function result
2000-10-24 12:47:45 +00:00
Jonas Maebe
a4fde73649
+ register renaming ("fixes" bug1088)
...
* changed command line options meanings for optimizer:
O2 now means peepholopts, CSE and register renaming in 1 pass
O3 is the same, but repeated until no further optimizations are
possible or until 5 passes have been done (to avoid endless loops)
* changed aopt386 so it does this looping
* added some procedures from csopt386 to the interface because they're
used by rropt386 as well
* some changes to csopt386 and daopt386 so that newly added instructions
by the CSE get optimizer info (they were simply skipped previously),
this fixes some bugs
2000-10-24 10:40:52 +00:00
michael
e2b535ec80
+ Extra patch from peter
2000-10-24 08:54:25 +00:00
pierre
3a5981ae0c
* fix for bug #1193 (merged)
2000-10-24 07:20:03 +00:00
florian
f80c24177a
* a lot of changes:
...
- basic dyn. array support
- basic C++ support
- some work for interfaces done
....
2000-10-21 18:16:11 +00:00
Jonas Maebe
71d03d5926
* fixed wrong regalloc info for secondmoddiv ("merged", also small
...
correction made afterwards in fixes branch)
2000-10-19 16:26:52 +00:00
Jonas Maebe
837c2124a6
* fixed bug in allocregbetween (the register wasn't added to the
...
usedregs set of the last instruction of the chain) ("merged")
2000-10-19 15:59:40 +00:00
Jonas Maebe
a9656de262
* fixed stupid error in previous commit :/
2000-10-17 15:41:48 +00:00
Jonas Maebe
3394523d13
* fixed allocation of ecx for shl
2000-10-17 15:39:34 +00:00
florian
25d7998a4b
* fixed xmm register access
2000-10-15 10:50:46 +00:00
peter
026edfb899
* moved to i386/
2000-10-15 09:43:29 +00:00
peter
a45e77c4a2
* move also the i386*.inc to i386/
2000-10-15 09:41:37 +00:00
peter
4286d3e9bb
* moved cpu*.pas to i386/
...
* renamed n386 to common cpunode
2000-10-15 09:39:36 +00:00
peter
5c5d24b641
* moved n386*.pas to i386/ cpu_target dir
2000-10-15 09:33:29 +00:00