Jonas Maebe
|
67fc9a7853
* fixed peephole opitimizer removing some infinite loops (mantis #36139)
|
5 years ago |
florian
|
9230ae5aab
o overhaul-base.patch by J. Gareth Moreton, base for further patches
|
6 years ago |
Jonas Maebe
|
1b6425176b
* synchronised with trunk till r42049
|
6 years ago |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 years ago |
Jonas Maebe
|
5d28e2156b
+ support for generating Dwarf CFI using .cfi_* directives
|
6 years ago |
florian
|
94d7a02fae
* modified patch by Gareth Moreton to pool TmpUsedRegs in the assembler optimizers, resolves #34679
|
6 years ago |
Jonas Maebe
|
122d0d36d6
+ volatile() expression that marks an expression as volatile
|
6 years ago |
florian
|
9b0ff05ee8
- get rid of MaxOps, it is redundant with max_operands
|
6 years ago |
florian
|
2a016889de
* skip align directives after unconditional jumps
|
6 years ago |
pierre
|
0abc978cc4
Change RemoveCurrentP parameter type to tai, because GetNextInstruction does not always return a taicpu, adapt code in avr/aoptcpu unit
|
6 years ago |
Jeppe Johansen
|
054bf32f1f
Add RV64GC cpu type.
|
7 years ago |
Jeppe Johansen
|
ceb38833f2
Added RiscV32/64 target, from a cleaned up version of branches/laksen/riscv/trunk.
|
7 years ago |
florian
|
5782acc32d
* patch by J. Gareth Moreton to fix 33909
|
7 years ago |
florian
|
ae950956af
+ TAOptObj.*PeepHoleOpts* check if p is really assigned
|
7 years ago |
florian
|
78878f59b1
+ generic TAOptObj.AllocRegBetween
|
7 years ago |
florian
|
52510ea933
+ TUsedRegs.Dump
|
7 years ago |
florian
|
8315c660f4
* fix JumpTargetOp for sparc64
|
8 years ago |
florian
|
7f286eb54e
+ define cpudelayslot: set during compiler compilation for CPUs having branch instructions with delay slot (MIPS, SPARC)
|
8 years ago |
florian
|
f4718c0969
* made nop handling generic for sparc, so it is used by sparc64 as well
|
8 years ago |
florian
|
b1dff29cbf
* removed unused units
|
8 years ago |
florian
|
e3f0b338d4
* SkipLabels moved to aoptutils
|
8 years ago |
nickysn
|
c096b1fe6b
* fixed the debug output, generated by -dDEBUG_INSTRUCTIONREGISTERDEPENDENCIES
|
8 years ago |
nickysn
|
a9617b623f
+ print info about the registers, in which new values are written (as reported
|
8 years ago |
nickysn
|
7ea0429d40
+ added new compiler debug ifdef DEBUG_INSTRUCTIONREGISTERDEPENDENCIES, which
|
8 years ago |
florian
|
b274599a47
* made some assembler optimizer methods class methods
|
9 years ago |
florian
|
d05222990e
* while updating used register sets, all labels can/must be skipped
|
9 years ago |
florian
|
cfd49ec708
+ TAOptBase.SuperRegistersEqual
|
9 years ago |
florian
|
3c2dab9878
* i386 peephole assembler uses largely the common peephole optimizer infrastructure, the resulting code is besides a few improvements the same
|
9 years ago |
florian
|
1266491085
o refactored some peephole optimizer code:
|
9 years ago |
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 years ago |