yury
|
d9db680937
* In assembly comments include all used registers by a variable for 8/16 bit CPUs.
|
5 anni fa |
Jonas Maebe
|
3047ce71bc
* fixed LLVM register allocator after r46199
|
5 anni fa |
yury
|
ff820247c3
* Early during register allocation, spill registers which interfere with all usable real registers.
|
5 anni fa |
yury
|
601e05f17f
* Count only usable real registers.
|
5 anni fa |
yury
|
0daba07246
* Enhanced the debug output of spilling statistics. Now it includes efficiency of the spilling which is based on
|
5 anni fa |
yury
|
4964f5cf76
* Count the number of interferences with real registers.
|
5 anni fa |
yury
|
e6b89c98f5
* Changed tsuperregisterworklist.get() to always return the last item from the list.
|
5 anni fa |
yury
|
c455e942e5
* Try to avoid spilling of an imm register if it contains a value loaded from an already spilled imm register. It likely leads to an endless loop and the register allocation fails.
|
5 anni fa |
yury
|
15f411a332
* Improved r45832.
|
5 anni fa |
yury
|
80facfa0bf
* Fixed indentations of the interference graph.
|
5 anni fa |
pierre
|
40a6059143
Modify code to avoid error when compiling with -CriotR option
|
5 anni fa |
florian
|
96a4cda03b
* AVR: fixes pushing and handling of stack passed parameters
|
5 anni fa |
florian
|
c6659d62f8
* do not join register deallocations/allocations as it makes no use and causes later on trouble in
|
5 anni fa |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 anni fa |
yury
|
a277a5f8db
* Removed unused local vars.
|
6 anni fa |
florian
|
ccb8e86560
* fixes arm
|
6 anni fa |
florian
|
9d56387e7f
+ new spilling heuristics which takes care of the usage weigth of a register,
|
6 anni fa |
yury
|
4357caaad8
* Removed unused local vars.
|
6 anni fa |
florian
|
ea32ddd5b2
* avoid overflows of execution weight
|
7 anni fa |
florian
|
37a5716819
* reuse more sparc code for sparc64
|
8 anni fa |
florian
|
7c0f72d9af
* avoid spill coalesce of registers with itself, resolves issue #31926
|
8 anni fa |
florian
|
344970879e
* spill coalesce uses get_alias
|
8 anni fa |
florian
|
db49b2f62b
* coalesce spilled registers if possible to avoid mem->mem moves
|
8 anni fa |
florian
|
4b17ad80d0
* reduce initial size of movelist, 16 is enough for most cases
|
8 anni fa |
florian
|
b1dff29cbf
* removed unused units
|
8 anni fa |
yury
|
60e21e4222
* Reverted r34524 - workaround for compiling with -gc. It is not needed anymore since cycle completes with -gc.
|
8 anni fa |
florian
|
4242949453
* write more information into the interference graph
|
8 anni fa |
Károly Balogh
|
e0e90fffc4
make rgobj.uses_registers also return true, when the rg never allocated an imreg, but there were direct cpu register allocations. this at least fixes some address regvar trashing on 68k in relation to syscalls' explicit paralocs
|
8 anni fa |
pierre
|
c7d79acd61
Allow compilation of compiler with -gc option
|
9 anni fa |
florian
|
2a28f5a85d
* update used_in_proc only in trgobj.translate_registers, before it might cause unnecessary pushes of actually unused registers
|
9 anni fa |