J. Gareth "Curious Kit" Moreton
|
1f178d381f
* x86: PostPeepholeOptMov attempts to convert mov $0,%reg to
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
63879e74cd
* x86: Additional TEST/CMP optimisations to optimise CMOV blocks
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
0b6faeba68
* x86: CMOV block optimisation overhauled
|
1 year ago |
florian
|
27be091c44
* more clean variable initialization
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
af40ae2c91
* x86: Safety check, since after calling DoJumpOptimizations, the input may no longer be the same tai
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
6fd5b86cff
* x86: SkipAligns calls removed.
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
ccf631eabd
* x86: Fixed inefficiencies revealed in "TEST/JNE/TEST/JNE"
|
1 year ago |
Pierre Muller
|
81157e9846
Use faster check for type of tai object
|
1 year ago |
Pierre Muller
|
d53af12a6d
Check that tai returned by GetNextInstruction is really a taicpu object before using an explicit typecast
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
f4da88726c
* x86: Factored out the MovMov2MovMov 2 optimisation to
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
af1eb33a75
* x86: Fixed inefficiency in the long-range MOV optimisations
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
44cda17674
* x86: Fixed bug in "LeaLea2Lea 2" optimisation where final offset was calculated incorrectly
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
35e52b90f5
* Added missing register allocations to SSE/AVX optimisations
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
49d66b8f20
* x86: Fixed bug where incorrect SSE/AVX peephole optimisations were performed under -O3 in some situations.
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
dde19c0144
* Improvement to TEST/JNE/TEST/JNE code to be more accurate where register deallocations are concerned
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
699db16fe4
* x86: Fixed bug in TEST/JNE/TEST/JNE optimisation that caused bad code to be generated under -O3
|
2 years ago |
florian
|
4096d9b74f
* factor out subreg2opsize
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
6ffa258abb
* x86: Revamped OptPass2Jcc CMOV code to shrink and reuse registers as much as possible
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
2a83972db8
* x86: Fixed bug where OptPass2Jcc CMOV optimisation sometimes
|
2 years ago |
florian
|
1e62913183
* check properly for the supported cpu type, resolves #40298
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
e40996cd2c
* Fixed bug in "JccMovJmpMov2CMovCMov" optimisation where it didn't track registers in references getting changed
|
2 years ago |
florian
|
e40f997a40
* another patch to fix #40223
|
2 years ago |
Pierre Muller
|
644ffa8e7a
Do not always set DEBUG_AOPTCPU
|
2 years ago |
florian
|
6663d5ca63
* do not replace index registers with esp/rsp, resolves #40223
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
3f25438d35
* x86: TEST/Jcc/TEST optimisations can now look beyond the next instruction under -O3
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
d372286159
* x86: RegModifiedByInstruction and RegInInstruction
|
3 years ago |
J. Gareth "Curious Kit" Moreton
|
3635f7cd6f
* x86: Fixed oversight in RegModifiedByInstruction not checking W0, W1 and WU-type flags
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
b637a3a022
* x86: Fix to MOV/CMP register deallocation positioning
|
3 years ago |
J. Gareth "Curious Kit" Moreton
|
77f53ebde3
* x86: The LEA/LEA optimisations can now work with a different
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
931bda5633
* x86: LeaLea2Lea now handles cases where the second LEA instruction
|
2 years ago |