Jonas Maebe
|
0d51aa650c
|
+ mov reg, mem1 to mov reg, mem1
mov mem2, reg cmp reg, mem2
cmp mem1, reg
# reg released
|
1999-01-04 22:04:15 +00:00 |
|
Jonas Maebe
|
4f997fddd1
|
* no fistp/fild optimization for S_IQ (fistq doesn't exist)
|
1999-01-04 12:58:55 +00:00 |
|
Jonas Maebe
|
8cf4da6d5e
|
+ optimize pascal code surrounding assembler blocks
|
1998-12-29 18:48:15 +00:00 |
|
Jonas Maebe
|
0395e5e0b6
|
* change "inc x/dec x; test x, x" to "add 1, x/sub 1,x" because inc and dec
don't affect the carry flag (test does). This *doesn't* fix the problem with
cardinal, that's a cg issue.
|
1998-12-23 15:16:21 +00:00 |
|
Jonas Maebe
|
f3d215d12d
|
* fixed fistp/fild optimization
|
1998-12-16 12:09:29 +00:00 |
|
Jonas Maebe
|
97966cb9b5
|
+ change "sub/add const1, reg" or "dec reg" followed by "sub const2, reg" to one
"sub const3, reg"
* some small cleaning up
|
1998-12-15 22:30:39 +00:00 |
|
Jonas Maebe
|
5da43943cd
|
* fixed bug in shr/shl optimization
|
1998-12-15 15:43:20 +00:00 |
|
peter
|
9a889d1750
|
* removed commentlevel
|
1998-12-15 11:53:54 +00:00 |
|
Jonas Maebe
|
30fa4efbd4
|
- removed {$ifdef ver0_99_11}'s
|
1998-12-14 22:01:45 +00:00 |
|
peter
|
1b369bb4bb
|
+ globtype,tokens,version unit splitted from globals
|
1998-12-11 00:02:37 +00:00 |
|
Jonas Maebe
|
2fcfb2ce50
|
* corrected small syntax error in part between {ifdef ver0_99_11}
+ added fistp/fild optimization between {ifdef ver0_99_11}
|
1998-12-09 18:16:13 +00:00 |
|
Jonas Maebe
|
242244016d
|
* changed "if longintvar in set" to case or "if () or () .." statements
* tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
|
1998-12-02 16:23:29 +00:00 |
|
Jonas Maebe
|
a7e2ff769e
|
+ change "setxx mem; movb mem, reg8" to "setxx reg8" if mem is a local
variable/parameter or function result (between {$ifdef ver0_99_11})
|
1998-11-26 15:41:45 +00:00 |
|
Jonas Maebe
|
63d4c1f2a1
|
* "call x;jmp y" optimization not done anymore for P6 and equivalents
* made FPU optimizations simpler and more effective
|
1998-11-03 16:26:09 +00:00 |
|
Jonas Maebe
|
286d20463c
|
+ change "call x; jmp y" to "push y; jmp x" (suggestion from Daniel)
|
1998-10-29 18:37:55 +00:00 |
|
Jonas Maebe
|
0e54f2bc9c
|
* bugfix in fpu optimizations for single division/substraction
|
1998-10-28 19:51:15 +00:00 |
|
Jonas Maebe
|
88356f2c40
|
+ no loading of values on the fpu stack if the memory expression can be used
inside the next mathematical operation
|
1998-10-28 12:32:46 +00:00 |
|
Jonas Maebe
|
2f34365234
|
+ some small FPU peephole optimizations (use value in FP regs instead of loading it
from memory if possible, mostly with var1+var1 and var1*var1)
|
1998-10-23 15:38:23 +00:00 |
|
Jonas Maebe
|
11e68b67f5
|
* fixed small memory leak
* fixed small inefficiency
* tested multiple line comments ability of my new MacCVS client :)
|
1998-10-05 14:41:14 +00:00 |
|
Jonas Maebe
|
3bf7d9a724
|
+ removal of "lea (reg), reg)", "imul $1, reg", change "mov reg1, reg2; mov (reg2), reg2" to "mov (reg1), reg2"
|
1998-10-02 17:29:56 +00:00 |
|
Jonas Maebe
|
68bc49c014
|
* moved UpdateUsedRegs (+ bugfix) to daopt386
|
1998-10-01 20:19:57 +00:00 |
|
peter
|
a970dd85d1
|
* fixed subl $2,esp;psuhw bug
|
1998-09-30 12:18:29 +00:00 |
|
Jonas Maebe
|
0e770798da
|
* released REGALLOC
|
1998-09-20 17:11:21 +00:00 |
|
Jonas Maebe
|
2c1ae07bea
|
* optimizer now completely dependant on GetNext/GetLast instruction, works again with -dRegAlloc
|
1998-09-16 17:59:59 +00:00 |
|
Jonas Maebe
|
57886308d0
|
* fixed optimizer incompatibilities with freelabel code in psub
|
1998-09-15 14:05:22 +00:00 |
|
peter
|
19c63e360f
|
* removed warnings
|
1998-08-28 10:56:56 +00:00 |
|
florian
|
4394fa784d
|
* reinstated Jonas' bugfix
|
1998-08-27 15:17:50 +00:00 |
|
pierre
|
b8b02bb518
|
* removed a line that add no sense and
introduce garbage in the asmlist
(uninitialized data !)
|
1998-08-25 16:58:59 +00:00 |
|
florian
|
560661014f
|
* patch of Jonas applied
|
1998-08-25 14:23:17 +00:00 |
|
Jonas Maebe
|
f2da32cd91
|
* changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
|
1998-08-19 16:07:36 +00:00 |
|
peter
|
85c8a88cbe
|
+ localswitches, moduleswitches, globalswitches splitting
|
1998-08-10 14:49:33 +00:00 |
|
Jonas Maebe
|
a3b5867cb8
|
* removed $ before and after Log in comment
|
1998-08-06 19:40:25 +00:00 |
|
Jonas Maebe
|
10142c9fe7
|
* fstp/fld bugfix (fstt does not exist)
|
1998-08-05 16:27:17 +00:00 |
|
florian
|
76ee202b37
|
* some fixes for ansi strings
* $log$ to $Log$ changed
|
1998-08-05 16:00:08 +00:00 |
|
Jonas Maebe
|
aa224d4bd5
|
* removed some units from the uses clause
|
1998-08-04 16:19:46 +00:00 |
|
Jonas Maebe
|
892964eaf2
|
* split the optimizer
|
1998-07-23 19:31:18 +00:00 |
|