mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-09 23:08:33 +02:00
The sources of the Free Pascal compiler, RTL, packages and utilities.
See https://www.freepascal.org/ for more info.
![]() * Introduce MatchInstruction and MatchOperand MatchInstruction allows to match an instruction by condition and oppostfix. MatchOperand checks if an operand is a register and matches another operand. In the future this could be overloaded with other versions not only accepting TRegister. * Optimize cmp,moveq,movne sequence on ARM This patch implements an peephole optimizer for the following sequence: cmp reg,const1 movne reg,const2 moveq reg,const1 * Small improvements to the ARM peephole optimizer Most instructions in the ARM ISA have taicpu(p).oper[0]^.typ = top_reg as the only option, so there is no need to check for it if we're looking at those instructions. * Remove redundant mov instructions on ARM This is an addition to the ARM PeepHole Optimizer. It folds code like this: mov reg1, reg2 add reg1, reg1, (const|reg) git-svn-id: trunk@21024 - |
||
---|---|---|
compiler | ||
ide | ||
installer | ||
packages | ||
rtl | ||
tests | ||
utils | ||
.gitattributes | ||
.gitignore | ||
Makefile | ||
Makefile.fpc |