Commit Graph

83 Commits

Author SHA1 Message Date
florian
904bfac5b9 * fixed a bug in int64/qword handling was a quite ugly one 2000-02-18 21:25:48 +00:00
pierre
c6a47280b9 * fixes a stabs problem for functions
+ includes a stabs local var for with statements
    the name is with in lowercase followed by an index
    for nested with.
  + Withdebuglist added because the stabs declarations of local
    var are postponed to end of function.
2000-02-18 20:53:14 +00:00
florian
05e486a068 * big update for exception handling code generation: possible mem holes
fixed, break/continue/exit should work always now as expected
2000-02-10 23:44:42 +00:00
Jonas Maebe
95f2c6f732 * added missing regalloc for ecx in range check code 2000-02-09 17:36:10 +00:00
peter
4a4a24b6e8 * log truncated 2000-02-09 13:22:42 +00:00
florian
1081fc6d3b * some (small) problems with register saving fixed 2000-02-04 21:00:31 +00:00
florian
a0cc4f970b * an exception in a construcor calls now the destructor (this applies only
to classes)
2000-02-04 20:00:21 +00:00
pierre
9572b14dea + add pseudo local var parent_ebp for local procs 2000-02-04 14:29:57 +00:00
pierre
da01d99789 * Range check for int64 produces a warning only 2000-01-25 08:46:03 +00:00
florian
b2098c4de5 * some improvemenst to cmov support
* disabled excpetion frame generation in cosntructors temporarily
2000-01-24 12:17:22 +00:00
florian
332c7a568f * CMOV support in optimizer (in define USECMOV)
+ start of support of exceptions in constructors
2000-01-23 21:29:14 +00:00
michael
587a967353 + Fixes from Jonas. 2000-01-23 11:11:36 +00:00
Jonas Maebe
a961e10de2 * fixed more regalloc bugs (for set adding and unsigned
multiplication)
2000-01-22 16:02:37 +00:00
peter
25dda03cdc * renamed call_offset to para_offset 2000-01-16 22:17:11 +00:00
peter
96ed273164 * smartlinking fixes for binary writer
* release alignreg code and moved instruction writing align to cpuasm,
    but it doesn't use the specified register yet
2000-01-12 10:38:16 +00:00
Jonas Maebe
23d69a5126 * changed edi allocation to use getexplicitregister32/ungetregister
(adapted tgeni386 a bit for this) and enabled it by default
  * fixed very big and stupid bug of mine in cg386mat that broke the
    include() code (and make cycle :( ) if you compiled without
    -dnewoptimizations
2000-01-09 12:34:59 +00:00
Jonas Maebe
86ff0db0b5 + (de)allocation info for EDI to fix reported bug on mailinglist.
Also some (de)allocation info for ESI added. Between -dallocEDI
    because at this time of the night bugs could easily slip in ;)
2000-01-09 01:44:18 +00:00
peter
e525797c51 * updated copyright to 2000 2000-01-07 01:14:18 +00:00
peter
7583de7a4f - removed freelabel()
* added undefined label detection in internal assembler, this prevents
    a lot of ld crashes and wrong .o files
  * .o files aren't written anymore if errors have occured
  * inlining of assembler labels is now correct
1999-12-22 01:01:45 +00:00
pierre
3e399a860d + dllversion global variable
* FPC_USE_CPREFIX code removed, not necessary anymore
    as we use .edata direct writing by default now.
1999-12-20 21:42:34 +00:00
peter
368452de05 * fixed wrong assembler with in-node 1999-12-01 22:45:54 +00:00
peter
0512ba80fb + ttype, tsymlist 1999-11-30 10:40:42 +00:00
pierre
221382d99c + cond FPC_USE_CPREFIX (needs also some RTL changes)
this allows to use unit global vars as DLL exports
    (the underline prefix seems needed by dlltool)
1999-11-20 01:22:18 +00:00
pierre
62da9bd4c0 * Notes/hints changes 1999-11-17 17:04:58 +00:00
pierre
8e738214a1 * self pointer stabs for local function was wrong 1999-11-15 14:04:00 +00:00
peter
23ca9de3b3 * esi_offset -> selfpointer_offset to be newcg compatible
* hcogegen -> cgbase fixes for newcg
1999-11-09 23:06:44 +00:00
peter
0887060ff2 * truncated log to 20 revs 1999-11-06 14:34:16 +00:00
peter
4a74f18756 * fixed bug #301 1999-10-25 12:18:11 +00:00
florian
0dd2b51943 * problems with readln fixed: esi wasn't restored correctly when
reading ordinal fields of objects futher the register allocation
    didn't take care of the extra register when reading ordinal values
  * enumerations can now be used in constant indexes of properties
1999-10-21 16:41:37 +00:00
peter
fefc839b29 * redesigned linker object
+ library support for linux (only procedures can be exported)
1999-10-21 14:29:32 +00:00
pierre
ff8ba9c049 * fix for uggly bug of Marco 1999-10-13 22:09:29 +00:00
pierre
7bf3213a01 * use and remember that C functions with complex data results use ret $4 1999-10-08 15:40:47 +00:00
pierre
781429264d * bug exit('test') + fail for classes 1999-10-05 22:01:52 +00:00
florian
796234f596 * fixed bug #292 from bugs directory 1999-09-29 11:46:18 +00:00
florian
1bad993700 * fixed bug #608 1999-09-28 21:07:53 +00:00
florian
9f62eb480b * the maybe_push fix of Pierre wasn't 100%, the tree parameter
must contain a valid location (which is saved if necessary)
1999-09-28 19:43:45 +00:00
peter
6b1ab5eb31 * procinfo is now a pointer
* support for result setting in sub procedure
1999-09-27 23:44:46 +00:00
florian
d6c22004f4 * exception patch of Romio nevertheless the excpetion handling
needs some corections regarding register saving
  * gettempansistring is again a procedure
1999-09-26 13:26:01 +00:00
peter
bc62d96930 * restored old alignment, saves 40k on ppc386 1999-09-20 16:35:43 +00:00
pierre
b5f43cf97b + RESULT pseudo var added in GDB debug info 1999-09-16 07:58:14 +00:00
florian
1c638f2952 * small fix to operator overloading when in MMX mode
+ the compiler uses now fldz and fld1 if possible
  + some fixes to floating point registers
  + some math. functions (arctan, ln, sin, cos, sqrt, sqr, pi) are now inlined
  * .... ???
1999-09-15 20:35:37 +00:00
florian
78977be752 * finally!? fixed
with <function with result in temp> do
    My last and also Peter's fix before were wrong :(
1999-09-14 07:59:46 +00:00
florian
02c2611b20 * bugs 593 and 607 fixed
* some other potential bugs with array constructors fixed
  * for classes compiled in $M+ and it's childs, the default access method
    is now published
  * fixed copyright message (it is now 1993-99)
1999-09-12 08:48:03 +00:00
florian
6165d59dfd * bug #603 fixed 1999-09-11 11:23:58 +00:00
peter
9ef54daf28 * fixed with <calln> do
* fixed finalize/initialize call for new/dispose
1999-09-10 15:42:50 +00:00
florian
96dd7c82fa * bug #580 fixed 1999-09-04 20:50:08 +00:00
florian
63ceb87e8f * problems with -Or fixed: tdef.isfpuregable was wrong! 1999-09-02 17:07:38 +00:00
peter
8e5c13cf47 * fixed temp allocation for arrayconstructor 1999-09-01 09:26:21 +00:00
pierre
20d1fb52b6 * problem with maybe_push/restore solved hopefully 1999-08-30 12:00:44 +00:00
pierre
6c8bdc4351 * last change undone because cycle was broken 1999-08-30 09:41:31 +00:00