masta
|
aef7361f9f
Fix RemoveSuperfluousMov in ARM Peephole optimizers.
|
13 years ago |
masta
|
938c8f1ee1
Fix regLoadedWithNewValue for A_STR on ARM
|
13 years ago |
masta
|
29bac200dd
Fix interaction between peephole optimizers on ARM
|
13 years ago |
masta
|
c3a91c5022
Remove the postfix check in MovStrMov peephole optimizer for ARM
|
13 years ago |
florian
|
03bf93488b
* workaround for broken in operator
|
13 years ago |
florian
|
de34eab23d
+ optimize and ...,255/strb ... sequence if possible
|
13 years ago |
florian
|
93d0033282
* improve AndAnd2And optimization by checking if the first destination register is allocated after the second and
|
13 years ago |
florian
|
8a6c65b008
* fix r22319: hp1 must have the same condition as p
|
13 years ago |
florian
|
2f1989c1a6
* hp1 can have any condition in this case so don't access hp1.condition because it
|
13 years ago |
masta
|
d8af83d252
Introduce a version of MatchInstruction for multiple instructions
|
13 years ago |
florian
|
6b73bc45c5
* check constant for being a valid offset
|
13 years ago |
florian
|
58a85e79ce
* set index register correctly * index register might not be changed
|
13 years ago |
florian
|
245d8286d5
+ LookForPostindexedPattern
|
13 years ago |
masta
|
012da673a8
Use MatchInstruction in OpCmp2OpS
|
13 years ago |
florian
|
a016bc5ced
* white space change
|
13 years ago |
florian
|
f2ccd6e400
* when doing the AddSubLdr2Ldr optimization check also if the source register of the add is modified before the load
|
13 years ago |
florian
|
4e2de05667
* don't apply the AddSubLdr2Ldr optimization if the base register in the reference is used/modified during the ldr/str
|
13 years ago |
florian
|
d89b742109
* apply Add/SubLdr2Ldr only if no condition flags are involved
|
13 years ago |
florian
|
73d540e7b5
* unsigned byte ldr/str allow also an offset of max. +/-4095
|
13 years ago |
florian
|
9d20a73986
* optimize also str/ldrb/h/d
|
13 years ago |
florian
|
1b3e03d72d
+ DEBUG_AOPTCPU to turn off peephole optimizer messages
|
13 years ago |
florian
|
8a20ccc5f9
+ Add/SubLdr2Ldr optimization
|
13 years ago |
masta
|
b9fa9da629
Small fixes to OpCmp2OpS
|
13 years ago |
florian
|
3ad32b6e4e
* opcode spelling fixed
|
13 years ago |
florian
|
935985d0c0
* checked and updated valid opcode for OpCmp2OpS optimization
|
13 years ago |
florian
|
70009e8ed1
* move flag allocation item
|
13 years ago |
florian
|
2d2c66467c
+ optimize op ... / cmp .... when possible
|
13 years ago |
florian
|
a92ca7c456
* adjust the reg. allocations of the target register in RemoveSuperfluousMove
|
13 years ago |
florian
|
3d7b603d11
* get rid or move the allocation of the replaced register if possible
|
13 years ago |
florian
|
77e579f59f
* RemoveSuperfluousMove uses FindRegDeAlloc to find out if the register used in the move can be removed
|
13 years ago |