florian
|
b1dff29cbf
* removed unused units
|
8 jaren geleden |
florian
|
e3f0b338d4
* SkipLabels moved to aoptutils
|
8 jaren geleden |
nickysn
|
c096b1fe6b
* fixed the debug output, generated by -dDEBUG_INSTRUCTIONREGISTERDEPENDENCIES
|
8 jaren geleden |
nickysn
|
a9617b623f
+ print info about the registers, in which new values are written (as reported
|
8 jaren geleden |
nickysn
|
7ea0429d40
+ added new compiler debug ifdef DEBUG_INSTRUCTIONREGISTERDEPENDENCIES, which
|
8 jaren geleden |
florian
|
b274599a47
* made some assembler optimizer methods class methods
|
9 jaren geleden |
florian
|
d05222990e
* while updating used register sets, all labels can/must be skipped
|
9 jaren geleden |
florian
|
cfd49ec708
+ TAOptBase.SuperRegistersEqual
|
9 jaren geleden |
florian
|
3c2dab9878
* i386 peephole assembler uses largely the common peephole optimizer infrastructure, the resulting code is besides a few improvements the same
|
9 jaren geleden |
florian
|
1266491085
o refactored some peephole optimizer code:
|
9 jaren geleden |
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.
|
10 jaren geleden |
yury
|
11a9ff4a43
* Removed unused vars for mipsel compiler.
|
10 jaren geleden |
yury
|
432248cbf1
* Removed lot of unused vars.
|
10 jaren geleden |
Jonas Maebe
|
8c8657e2d5
* base optimiser support for the JVM target
|
10 jaren geleden |
Jeppe Johansen
|
03880c2f74
Added some peephole optimizations, and fixed generic unconditional jump optimizations, for AVR.
|
10 jaren geleden |
florian
|
1114089d25
* IsJumpToLabel checks number of operands
|
10 jaren geleden |
Jonas Maebe
|
620af1732a
* support for AArch64 branch forwarding
|
10 jaren geleden |
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.
|
11 jaren geleden |
florian
|
8060d4a3f7
* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored
|
11 jaren geleden |
masta
|
81517fdf70
Rerun peephole optimizers on the whole block
|
11 jaren geleden |
florian
|
0eeb3e8d49
* check if the pointer is really assigned when trying to remove unneeded jumps
|
12 jaren geleden |
sergei
|
40239e8bcc
* Elaborating removal of branches with delay slots: ignore reg. deallocations that are inserted by RA between branch and its delay slot instruction.
|
12 jaren geleden |
florian
|
2806947a8f
+ FindRegAllocBackward
|
12 jaren geleden |
sergei
|
1c84c3edbf
* Fixed label optimizer to work with MIPS, and enabled level 1 optimization for MIPS targets.
|
12 jaren geleden |
sergei
|
a4217da7df
* Factored repeating code into separate procedure (IsJumpToLabel)
|
12 jaren geleden |
florian
|
b6a4602989
* ignore alignment entries in FindLabel
|
13 jaren geleden |
florian
|
3e9baa3f47
* check also register type in FindRegalloc
|
13 jaren geleden |
florian
|
6e62fbc3d2
* more consistent updates of used registers
|
13 jaren geleden |
florian
|
07e26cfb12
+ TUsedRegs.Update parameter IgnoreNewAllocs so new allocs of registers can be ignored during update
|
13 jaren geleden |
Jonas Maebe
|
d472a6d5d0
* changed tregset into tcpuregisterset so it's faster and uses less memory
|
13 jaren geleden |