Jonas Maebe
|
620af1732a
* support for AArch64 branch forwarding
|
vor 10 Jahren |
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.
|
vor 11 Jahren |
florian
|
8060d4a3f7
* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored
|
vor 11 Jahren |
masta
|
81517fdf70
Rerun peephole optimizers on the whole block
|
vor 11 Jahren |
florian
|
0eeb3e8d49
* check if the pointer is really assigned when trying to remove unneeded jumps
|
vor 12 Jahren |
sergei
|
40239e8bcc
* Elaborating removal of branches with delay slots: ignore reg. deallocations that are inserted by RA between branch and its delay slot instruction.
|
vor 12 Jahren |
florian
|
2806947a8f
+ FindRegAllocBackward
|
vor 12 Jahren |
sergei
|
1c84c3edbf
* Fixed label optimizer to work with MIPS, and enabled level 1 optimization for MIPS targets.
|
vor 12 Jahren |
sergei
|
a4217da7df
* Factored repeating code into separate procedure (IsJumpToLabel)
|
vor 12 Jahren |
florian
|
b6a4602989
* ignore alignment entries in FindLabel
|
vor 13 Jahren |
florian
|
3e9baa3f47
* check also register type in FindRegalloc
|
vor 13 Jahren |
florian
|
6e62fbc3d2
* more consistent updates of used registers
|
vor 13 Jahren |
florian
|
07e26cfb12
+ TUsedRegs.Update parameter IgnoreNewAllocs so new allocs of registers can be ignored during update
|
vor 13 Jahren |
Jonas Maebe
|
d472a6d5d0
* changed tregset into tcpuregisterset so it's faster and uses less memory
|
vor 13 Jahren |
florian
|
72746e635d
* optimize TAOptObj.UpdateUsedRegs to avoid multiple passes through the asmlist
|
vor 13 Jahren |
florian
|
17dd362a5a
* white space
|
vor 13 Jahren |
florian
|
2402e8e504
* fixes FindRegAlloc
|
vor 13 Jahren |
florian
|
748694a325
* fixes some issues with reg. allocation information
|
vor 13 Jahren |
Jonas Maebe
|
7742dc0006
* don't remove ait_markers between unconditional jumps and the next label,
|
vor 13 Jahren |
florian
|
3c33bf4e6d
* completed framework for register usage tracking
|
vor 13 Jahren |
florian
|
2a6a4831ea
* basics for generic register usage information
|
vor 13 Jahren |
florian
|
39ab9eceba
* fix OpsEqual
|
vor 13 Jahren |
florian
|
2f5ce095ce
* RefsHaveIndexReg -> cpurefshaveindexreg
|
vor 13 Jahren |
florian
|
4868b09844
* patch by alexvin to replace $ifopt by $push/$pop, resolves #20332
|
vor 14 Jahren |
Jonas Maebe
|
4be36c4b2b
* fixed a number of missing label reference removals when deleting
|
vor 14 Jahren |
Jonas Maebe
|
666b4e2469
* fixed range errors in label bookkeeping that caused too much memory to be
|
vor 15 Jahren |
florian
|
c71bc4084d
* fixed wrongly fix of r11444 in r12049
|
vor 17 Jahren |
florian
|
74efea399e
* fix getlabelwithsym for 64 bit hosts and 32 bit targets
|
vor 17 Jahren |
yury
|
bf454fad71
* Added function result for unimplemented methods to prevent warnings.
|
vor 17 Jahren |
yury
|
451a290caf
* Fixed 'mixed signed/unsigned' and pointer conversion warnings.
|
vor 17 Jahren |