yury
|
11a9ff4a43
* Removed unused vars for mipsel compiler.
|
10 anos atrás |
yury
|
432248cbf1
* Removed lot of unused vars.
|
10 anos atrás |
Jonas Maebe
|
8c8657e2d5
* base optimiser support for the JVM target
|
10 anos atrás |
Jeppe Johansen
|
03880c2f74
Added some peephole optimizations, and fixed generic unconditional jump optimizations, for AVR.
|
10 anos atrás |
florian
|
1114089d25
* IsJumpToLabel checks number of operands
|
10 anos atrás |
Jonas Maebe
|
620af1732a
* support for AArch64 branch forwarding
|
10 anos atrás |
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 anos atrás |
florian
|
8060d4a3f7
* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored
|
11 anos atrás |
masta
|
81517fdf70
Rerun peephole optimizers on the whole block
|
11 anos atrás |
florian
|
0eeb3e8d49
* check if the pointer is really assigned when trying to remove unneeded jumps
|
11 anos atrás |
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 anos atrás |
florian
|
2806947a8f
+ FindRegAllocBackward
|
12 anos atrás |
sergei
|
1c84c3edbf
* Fixed label optimizer to work with MIPS, and enabled level 1 optimization for MIPS targets.
|
12 anos atrás |
sergei
|
a4217da7df
* Factored repeating code into separate procedure (IsJumpToLabel)
|
12 anos atrás |
florian
|
b6a4602989
* ignore alignment entries in FindLabel
|
13 anos atrás |
florian
|
3e9baa3f47
* check also register type in FindRegalloc
|
13 anos atrás |
florian
|
6e62fbc3d2
* more consistent updates of used registers
|
13 anos atrás |
florian
|
07e26cfb12
+ TUsedRegs.Update parameter IgnoreNewAllocs so new allocs of registers can be ignored during update
|
13 anos atrás |
Jonas Maebe
|
d472a6d5d0
* changed tregset into tcpuregisterset so it's faster and uses less memory
|
13 anos atrás |
florian
|
72746e635d
* optimize TAOptObj.UpdateUsedRegs to avoid multiple passes through the asmlist
|
13 anos atrás |
florian
|
17dd362a5a
* white space
|
13 anos atrás |
florian
|
2402e8e504
* fixes FindRegAlloc
|
13 anos atrás |
florian
|
748694a325
* fixes some issues with reg. allocation information
|
13 anos atrás |
Jonas Maebe
|
7742dc0006
* don't remove ait_markers between unconditional jumps and the next label,
|
13 anos atrás |
florian
|
3c33bf4e6d
* completed framework for register usage tracking
|
13 anos atrás |
florian
|
2a6a4831ea
* basics for generic register usage information
|
13 anos atrás |
florian
|
39ab9eceba
* fix OpsEqual
|
13 anos atrás |
florian
|
2f5ce095ce
* RefsHaveIndexReg -> cpurefshaveindexreg
|
13 anos atrás |
florian
|
4868b09844
* patch by alexvin to replace $ifopt by $push/$pop, resolves #20332
|
14 anos atrás |
Jonas Maebe
|
4be36c4b2b
* fixed a number of missing label reference removals when deleting
|
14 anos atrás |