florian
|
bae583118a
* patch by J. Gareth Moreton: x86 JccMovJmpMov2MovSetcc improvement, resolves #38761
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
5726428dcc
* patch by J. Gareth Moreton: Additional SETcc optimisations, resolves #38767
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
578424cf51
* patch by J. Gareth Moreton: TEST chain shortcutting, resolves #38908
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
4e9b42344e
+ AddLea2Lea optimization
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
28efcfba65
+ patch by J. Gareth Moreton: Advanced MOVZX optimisations, resolves #38294
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
2a990b8167
+ patch by J. Gareth Moreton: some new x86 assembler optimizations, resolves #38130
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
b90ec52a0e
* x86: apply VOpVmov2VOp optimization to vmins*/vmaxs*
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
78244d89dc
* use VPXORD in avx-512 mode as VPXOR does not work for the upper 16 registers
|
%!s(int64=4) %!d(string=hai) anos |
florian
|
8e62bf649e
* load 0.0 by (V)XORPS/D instead of (V)PXOR in mm registers
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
1fb7603f61
* x86: ImulMov2Imul optimization
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
afb68dbcf3
* factored out OptPass1VPXor
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
809fb83334
* adapt optimizer to handle push/pop for stack alignment
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
9b54588d75
+ PXorPXor2PXor optimization
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
892454ff17
* patch by J. Gareth Moreton: optimize MOVSXD as well, resolves #36700
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
993144b91b
* patch by J. Gareth Moreton: x86 SUB and LEA optimisations, resolves #36622
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
16152cf948
* patch by J. Gareth Moreton: get rid of another pass through the assembler list by integrating OptReferences
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
124c64152d
* patch by J. Gareth Moreton: EAX -> EDX:EAX sign extension shortcuts, and MOVSX shortcuts for AX register, part 2 of #36551
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
d444f750f9
* factored out TX86AsmOptimizer.OptPass1Cmp
|
%!s(int64=5) %!d(string=hai) anos |
florian
|
20a47afe13
* more aggressive LeaCallLeaRet2Jmp
|
%!s(int64=6) %!d(string=hai) anos |
florian
|
3487c34ed9
* unified TX86AsmOptimizer.OptPass1MOVAP and TX86AsmOptimizer.OptPass1VMOVAP
|
%!s(int64=6) %!d(string=hai) anos |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
%!s(int64=6) %!d(string=hai) anos |
florian
|
c7bb028d35
* factored out OptPass1FLD, used bx x86-64 now as well
|
%!s(int64=6) %!d(string=hai) anos |
florian
|
24f6cc0da5
* factored out OptPass1FSTP, used by x86-64 now as well
|
%!s(int64=6) %!d(string=hai) anos |
florian
|
59d5d6ec95
+ factored out TX86AsmOptimizer.PrePeepholeOptIMUL, used now by x86-64 and i386
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
78943ea843
+ patch by J. Gareth Moreton: x86 optimisations for Jcc and SETcc, resolves #33899
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
9b18e39c81
* enable Lea2AddBase and Lea2AddIndex in TX86AsmOptimizer.PostPeepholeOptLea as we have flag tracking now
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
5fbecc5501
+ use TX86AsmOptimizer.OptPass1SHLSAL on x86-64
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
91514da267
* factored out TX86AsmOptimizer.PostPeepholeOptCall
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
31f78ea2b6
+ implementation of the vectorcall calling convention by J. Gareth Moreton
|
%!s(int64=7) %!d(string=hai) anos |
florian
|
810acd82b2
* patch by J. Gareth Moreton that makes some improvements to the Peephole Optimizer for x86 and x86-64 code, as well as some cleanup with formatting, code syntax consistency, and debug messages.
|
%!s(int64=7) %!d(string=hai) anos |