Commit Graph

112 Commits

Author SHA1 Message Date
Jonas Maebe
06af76dd6c * invalidate regs that depend on a modified register 2000-12-04 17:00:09 +00:00
florian
b9796f6a7f * unused units removed from uses clause
* some changes for widestrings
2000-11-29 00:30:30 +00:00
Jonas Maebe
3974b23c97 + support for optimizing simple sequences with div/idiv/mul opcodes 2000-11-28 16:32:11 +00:00
Jonas Maebe
a4928640fc * fixed stupid bug in previous commit 2000-11-23 14:20:18 +00:00
Jonas Maebe
f88e80bced * fix for webbug 1066/1126 2000-11-23 13:26:33 +00:00
Jonas Maebe
bbd2e6cdaf * fixed another bug in allocregbetween (introduced by the previous fix)
("merged")
2000-11-17 15:22:04 +00:00
Jonas Maebe
19b4130e98 * fixed bug in allocregbetween 2000-11-14 13:26:10 +00:00
sg
7530393d6f * Fix for containsPointerRef: Loop now runs in the correct range 2000-11-08 16:04:34 +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
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
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
peter
026edfb899 * moved to i386/ 2000-10-15 09:43:29 +00:00