Commit Graph

149 Commits

Author SHA1 Message Date
peter
5218af7926 * delphi compile fixes 2000-09-24 21:19:48 +00:00
pierre
e4d06a5485 * problems wih extdebug cond. solved 2000-09-19 23:09:07 +00:00
peter
0eab87b16a * fixed for with and local object loading 2000-09-16 12:21:56 +00:00
peter
24d5c13456 * fixed open array with cdecl
* fixed finalize call with unused function return
2000-09-10 20:18:06 +00:00
Jonas Maebe
41f84e639c * save/reset/restore regvar info around inlined code 2000-08-03 14:27:04 +00:00
Jonas Maebe
c999d3b17d + allow regvars to be used inside inlined procs, which required the
following changes:
      + load regvars in genentrycode/free them in genexitcode (cgai386)
      * moved all regvar related code to new regvars unit
      + added pregvarinfo type to hcodegen
      + added regvarinfo field to tprocinfo (symdef/symdefh)
      * deallocate the regvars of the caller in secondprocinline before
        inlining the called procedure and reallocate them afterwards
2000-08-03 13:17:25 +00:00
Jonas Maebe
f2123cbcc1 * release alignopts 2000-07-27 13:03:35 +00:00
Jonas Maebe
67ac676004 + added is_addr field for labels, if they are only used for getting the address
(e.g. for io checks) and corresponding getaddrlabel() procedure
2000-07-21 15:14:01 +00:00
michael
665c1f6410 + patched to 1.1.0 with former 1.09patch from peter 2000-07-13 12:08:24 +00:00
michael
650fbb86aa + removed logs 2000-07-13 11:32:24 +00:00
michael
e7aca136a1 + Initial import 2000-07-13 06:29:38 +00:00
florian
3d7d2eb25d * virtual contructors weren't handled properly if they were called via a class
variable
2000-07-05 20:39:55 +00:00
Jonas Maebe
3d3d5c512a * fixed inline bugs (calling an inlined procedure more than once didn't
work)
2000-06-29 13:50:30 +00:00
peter
23cbb5b9c8 * fix addrn with procvar, also detected by testpva2 ! 2000-06-04 09:05:05 +00:00
florian
a4bdf283e7 * stack alignment to 8 byte boundaries with -Oa switch 2000-05-31 09:29:15 +00:00
pierre
536829e4bc + -CR option to enable check for object virtual method 2000-05-16 20:19:05 +00:00
peter
ae9b86f982 * fixed calling of inherited methods from destructors 2000-05-15 19:30:27 +00:00
pierre
35d59984b2 * also allow interrupt procvars 2000-05-09 14:15:03 +00:00
pierre
a1d9aa1ffe add code to allow calling interrupt routines 2000-05-09 10:54:03 +00:00
pierre
92e9d3bf83 * fix the handling of value parameters in cdecl function 2000-03-31 22:56:45 +00:00
peter
ffab53c30f * tp7 fix 2000-03-19 08:17:36 +00:00
pierre
080a34ce07 * avoid wrong ungetpersistanttemp 2000-03-16 15:18:13 +00:00
pierre
16638c8b65 * fixes for locals in inlined procedures
fix for bug797
  + stabs generation for inlined paras and locals
2000-03-01 00:03:10 +00:00
Jonas Maebe
7ff7b4c2c3 * added regallocs for esi 2000-02-09 18:08:33 +00:00
peter
4a4a24b6e8 * log truncated 2000-02-09 13:22:42 +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
peter
298677e4aa * fixed pop_size included twice with clearstack 2000-01-26 15:03:59 +00:00
peter
62df907953 * abstractprocdef.para_size needs alignment parameter
* secondcallparan gets para_alignment size instead of dword_align
2000-01-26 12:02:29 +00:00
peter
588b4489cc * fixed missing push esi for constructor calling 2000-01-23 18:50:07 +00:00
florian
eb1715ded4 * fixed for the fix of bug #793
* fpu variables modified by nested subroutines aren't regable anymore
  * $maxfpuregisters doesn't modify anymore the behavior of a procedure before
2000-01-21 22:06:16 +00:00
Jonas Maebe
60d858c278 * regallocation fixes 2000-01-21 12:17:41 +00:00
florian
9836bd406b * bug #793 fixed 2000-01-20 12:14:47 +00:00
peter
25dda03cdc * renamed call_offset to para_offset 2000-01-16 22:17:11 +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
999712c01e * bug in extdebugg code for inlined procedures 1999-12-13 21:49:54 +00:00
peter
0512ba80fb + ttype, tsymlist 1999-11-30 10:40:42 +00:00
peter
0887060ff2 * truncated log to 20 revs 1999-11-06 14:34:16 +00:00
pierre
7b5bae5ded * fix for fpuvaroffset for unused return value 1999-11-04 00:23:58 +00:00
peter
503d5a1cfa * const parameter is now checked
* better and generic check if a node can be used for assigning
  * export fixes
  * procvar equal works now (it never had worked at least from 0.99.8)
  * defcoll changed to linkedlist with pparaitem so it can easily be
    walked both directions
1999-10-26 12:30:40 +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
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
pierre
910372616a * typo correction 1999-09-16 11:34:44 +00:00
peter
2c94850f4c * small array push to open array fixed, open array always needs addr
pushing
1999-09-07 07:54:23 +00:00
Jonas Maebe
5fc1435036 * changed pai386, paippc and paiapha (same for tai*) to paicpu (taicpu) 1999-08-25 11:59:32 +00:00
pierre
a7bc2dfb17 + TEMPREGDEBUG code added 1999-08-23 23:38:18 +00:00
pierre
63608b6dbb * emit_??? used 1999-08-19 13:08:43 +00:00