florian
|
9ec85f940e
* do not remove register deallocations/allocation pairs if the register is written
|
4 years ago |
florian
|
91a6223281
* (slight modified) patch by J. Gareth Moreton to reduce number of assembler optimizer passes, resolves #37959
|
4 years ago |
florian
|
c7b19e2fc9
* track used register better: if a deallocation is moved/removed, the used register may not be removed from the current register used register set
|
5 years ago |
florian
|
872c22842e
* do prefetching correctly
|
5 years ago |
florian
|
6371d5f26d
+ infrastructure to profile different stages of the compiler
|
5 years ago |
florian
|
9230ae5aab
o overhaul-base.patch by J. Gareth Moreton, base for further patches
|
6 years ago |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 years ago |
florian
|
94d7a02fae
* modified patch by Gareth Moreton to pool TmpUsedRegs in the assembler optimizers, resolves #34679
|
6 years ago |
florian
|
b1dff29cbf
* removed unused units
|
8 years ago |
nickysn
|
7ea0429d40
+ added new compiler debug ifdef DEBUG_INSTRUCTIONREGISTERDEPENDENCIES, which
|
8 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
|
4ac3953c34
* use InstructionLoadsFromReg instead of RegInInstruction when moving register deallocations
|
9 years ago |
yury
|
b26fa07f1a
* Fixed notes "var is assigned but not used".
|
10 years ago |
yury
|
432248cbf1
* Removed lot of unused vars.
|
10 years ago |
Jonas Maebe
|
1b43930749
- removed long deprecated/buggy assembler cse optimiser for i386
|
10 years ago |
florian
|
2daae5ff03
* moved comment so it is recognized by lazarus as a method description
|
10 years ago |
Jonas Maebe
|
92fa75838e
* honour -Oonopeephole
|
11 years ago |
florian
|
6e62fbc3d2
* more consistent updates of used registers
|
13 years ago |
florian
|
e1a2b1859a
* comments and explanations on tai_regalloc.keep field
|
13 years ago |
florian
|
b6608e716b
+ tai_regalloc.keep to force register deallocations to be keep
|
13 years ago |
florian
|
2a14394cf5
* cleaned up scheduler code, created own scheduler class to avoid unneeded passes through the assembler
|
13 years ago |
florian
|
117c083003
* call inherited Destroy in TAsmOptimizer to avoid memory leak
|
13 years ago |
florian
|
8832a34b67
* fix reg. allocs even for procedures without labels
|
13 years ago |
florian
|
75e62e42e4
* add debug statements
|
13 years ago |
florian
|
748694a325
* fixes some issues with reg. allocation information
|
13 years ago |
florian
|
0fe22a358b
+ first version of ldr instruction scheduler on arm
|
13 years ago |
Jonas Maebe
|
666b4e2469
* fixed range errors in label bookkeeping that caused too much memory to be
|
15 years ago |
Jonas Maebe
|
090f2a6108
* defined "class of TAsmOptimizer" as separate type to avoid tripping
|
15 years ago |
Jonas Maebe
|
c1c1b2deac
* more aint() type casts replaced by int64() type casts
|
16 years ago |
yury
|
a039dd6942
* Fixed warnings about hiding inherited method.
|
17 years ago |