florian
|
1266491085
o refactored some peephole optimizer code:
|
9 năm trước cách đây |
yury
|
5771073e0b
* Fixed general peephole optimization of conditional jumps after r30446. It has been broken, since r30446 had added some IsJumpToLabel() checks, which tests for unconditional jump, but the optimization code expects also conditional jumps.
|
9 năm trước cách đây |
yury
|
11a9ff4a43
* Removed unused vars for mipsel compiler.
|
10 năm trước cách đây |
yury
|
432248cbf1
* Removed lot of unused vars.
|
10 năm trước cách đây |
Jonas Maebe
|
8c8657e2d5
* base optimiser support for the JVM target
|
10 năm trước cách đây |
Jeppe Johansen
|
03880c2f74
Added some peephole optimizations, and fixed generic unconditional jump optimizations, for AVR.
|
10 năm trước cách đây |
florian
|
1114089d25
* IsJumpToLabel checks number of operands
|
10 năm trước cách đây |
Jonas Maebe
|
620af1732a
* support for AArch64 branch forwarding
|
10 năm trước cách đây |
sergei
|
0041024e5f
* Modified FindRegAlloc() to skip branch delay slots in the same way it is done in GetNextInstruction(). This fixes processing sequences "dealloc reg; branch reg,label; NOP; alloc reg" in BuildLabelTableAndFixRegAlloc(), deallocation is now correctly moved after branch. Before this change, the last allocation was ignored, and deallocation was moved forward until another instruction using reg was encountered.
|
10 năm trước cách đây |
florian
|
8060d4a3f7
* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored
|
11 năm trước cách đây |
masta
|
81517fdf70
Rerun peephole optimizers on the whole block
|
11 năm trước cách đây |
florian
|
0eeb3e8d49
* check if the pointer is really assigned when trying to remove unneeded jumps
|
11 năm trước cách đây |
sergei
|
40239e8bcc
* Elaborating removal of branches with delay slots: ignore reg. deallocations that are inserted by RA between branch and its delay slot instruction.
|
11 năm trước cách đây |
florian
|
2806947a8f
+ FindRegAllocBackward
|
12 năm trước cách đây |
sergei
|
1c84c3edbf
* Fixed label optimizer to work with MIPS, and enabled level 1 optimization for MIPS targets.
|
12 năm trước cách đây |
sergei
|
a4217da7df
* Factored repeating code into separate procedure (IsJumpToLabel)
|
12 năm trước cách đây |
florian
|
b6a4602989
* ignore alignment entries in FindLabel
|
13 năm trước cách đây |
florian
|
3e9baa3f47
* check also register type in FindRegalloc
|
13 năm trước cách đây |
florian
|
6e62fbc3d2
* more consistent updates of used registers
|
13 năm trước cách đây |
florian
|
07e26cfb12
+ TUsedRegs.Update parameter IgnoreNewAllocs so new allocs of registers can be ignored during update
|
13 năm trước cách đây |
Jonas Maebe
|
d472a6d5d0
* changed tregset into tcpuregisterset so it's faster and uses less memory
|
13 năm trước cách đây |
florian
|
72746e635d
* optimize TAOptObj.UpdateUsedRegs to avoid multiple passes through the asmlist
|
13 năm trước cách đây |
florian
|
17dd362a5a
* white space
|
13 năm trước cách đây |
florian
|
2402e8e504
* fixes FindRegAlloc
|
13 năm trước cách đây |
florian
|
748694a325
* fixes some issues with reg. allocation information
|
13 năm trước cách đây |
Jonas Maebe
|
7742dc0006
* don't remove ait_markers between unconditional jumps and the next label,
|
13 năm trước cách đây |
florian
|
3c33bf4e6d
* completed framework for register usage tracking
|
13 năm trước cách đây |
florian
|
2a6a4831ea
* basics for generic register usage information
|
13 năm trước cách đây |
florian
|
39ab9eceba
* fix OpsEqual
|
13 năm trước cách đây |
florian
|
2f5ce095ce
* RefsHaveIndexReg -> cpurefshaveindexreg
|
13 năm trước cách đây |