Jeppe Johansen
|
ceb38833f2
Added RiscV32/64 target, from a cleaned up version of branches/laksen/riscv/trunk.
|
7 tahun lalu |
florian
|
5782acc32d
* patch by J. Gareth Moreton to fix 33909
|
7 tahun lalu |
florian
|
ae950956af
+ TAOptObj.*PeepHoleOpts* check if p is really assigned
|
7 tahun lalu |
florian
|
78878f59b1
+ generic TAOptObj.AllocRegBetween
|
7 tahun lalu |
florian
|
52510ea933
+ TUsedRegs.Dump
|
7 tahun lalu |
florian
|
8315c660f4
* fix JumpTargetOp for sparc64
|
8 tahun lalu |
florian
|
7f286eb54e
+ define cpudelayslot: set during compiler compilation for CPUs having branch instructions with delay slot (MIPS, SPARC)
|
8 tahun lalu |
florian
|
f4718c0969
* made nop handling generic for sparc, so it is used by sparc64 as well
|
8 tahun lalu |
florian
|
b1dff29cbf
* removed unused units
|
8 tahun lalu |
florian
|
e3f0b338d4
* SkipLabels moved to aoptutils
|
8 tahun lalu |
nickysn
|
c096b1fe6b
* fixed the debug output, generated by -dDEBUG_INSTRUCTIONREGISTERDEPENDENCIES
|
8 tahun lalu |
nickysn
|
a9617b623f
+ print info about the registers, in which new values are written (as reported
|
8 tahun lalu |
nickysn
|
7ea0429d40
+ added new compiler debug ifdef DEBUG_INSTRUCTIONREGISTERDEPENDENCIES, which
|
8 tahun lalu |
florian
|
b274599a47
* made some assembler optimizer methods class methods
|
9 tahun lalu |
florian
|
d05222990e
* while updating used register sets, all labels can/must be skipped
|
9 tahun lalu |
florian
|
cfd49ec708
+ TAOptBase.SuperRegistersEqual
|
9 tahun lalu |
florian
|
3c2dab9878
* i386 peephole assembler uses largely the common peephole optimizer infrastructure, the resulting code is besides a few improvements the same
|
9 tahun lalu |
florian
|
1266491085
o refactored some peephole optimizer code:
|
9 tahun lalu |
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 tahun lalu |
yury
|
11a9ff4a43
* Removed unused vars for mipsel compiler.
|
10 tahun lalu |
yury
|
432248cbf1
* Removed lot of unused vars.
|
10 tahun lalu |
Jonas Maebe
|
8c8657e2d5
* base optimiser support for the JVM target
|
10 tahun lalu |
Jeppe Johansen
|
03880c2f74
Added some peephole optimizations, and fixed generic unconditional jump optimizations, for AVR.
|
10 tahun lalu |
florian
|
1114089d25
* IsJumpToLabel checks number of operands
|
10 tahun lalu |
Jonas Maebe
|
620af1732a
* support for AArch64 branch forwarding
|
10 tahun lalu |
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 tahun lalu |
florian
|
8060d4a3f7
* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored
|
11 tahun lalu |
masta
|
81517fdf70
Rerun peephole optimizers on the whole block
|
11 tahun lalu |
florian
|
0eeb3e8d49
* check if the pointer is really assigned when trying to remove unneeded jumps
|
12 tahun lalu |
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 tahun lalu |