yury
|
a277a5f8db
* Removed unused local vars.
|
6 vuotta sitten |
florian
|
ccb8e86560
* fixes arm
|
6 vuotta sitten |
florian
|
9d56387e7f
+ new spilling heuristics which takes care of the usage weigth of a register,
|
6 vuotta sitten |
yury
|
4357caaad8
* Removed unused local vars.
|
6 vuotta sitten |
florian
|
ea32ddd5b2
* avoid overflows of execution weight
|
7 vuotta sitten |
florian
|
37a5716819
* reuse more sparc code for sparc64
|
8 vuotta sitten |
florian
|
7c0f72d9af
* avoid spill coalesce of registers with itself, resolves issue #31926
|
8 vuotta sitten |
florian
|
344970879e
* spill coalesce uses get_alias
|
8 vuotta sitten |
florian
|
db49b2f62b
* coalesce spilled registers if possible to avoid mem->mem moves
|
8 vuotta sitten |
florian
|
4b17ad80d0
* reduce initial size of movelist, 16 is enough for most cases
|
8 vuotta sitten |
florian
|
b1dff29cbf
* removed unused units
|
8 vuotta sitten |
yury
|
60e21e4222
* Reverted r34524 - workaround for compiling with -gc. It is not needed anymore since cycle completes with -gc.
|
8 vuotta sitten |
florian
|
4242949453
* write more information into the interference graph
|
8 vuotta sitten |
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 vuotta sitten |
pierre
|
c7d79acd61
Allow compilation of compiler with -gc option
|
9 vuotta sitten |
florian
|
2a28f5a85d
* update used_in_proc only in trgobj.translate_registers, before it might cause unnecessary pushes of actually unused registers
|
9 vuotta sitten |
sergei
|
c0eafe38aa
* Make trgobj.uses_registers method return True when registers of appropriate type are specified in list of used registers (after assembler blocks), but not used otherwise. This is a missing piece of r30011, enabling code generator to actually save/restore such registers. Resolves #28421.
|
9 vuotta sitten |
florian
|
199b1861d6
* fix wrong comparisons in trgobj.conservative to enable better coalescing,
|
10 vuotta sitten |
florian
|
31709b1b43
* check registers of ait_regalloc for a valid color when translating and compiling with -dextdebug
|
10 vuotta sitten |
Jonas Maebe
|
e12dff9a5e
* support top_para in trgllvm.get_spill_temp()
|
10 vuotta sitten |
Jonas Maebe
|
e750678f37
* factored out spilling code that deals with operand types into virtual
|
10 vuotta sitten |
Jonas Maebe
|
197e5194b9
* don't crash if we have to spill a register of the last instruction in an
|
10 vuotta sitten |
Jonas Maebe
|
67b8aceaee
* synchronized with privatetrunk till r30095
|
10 vuotta sitten |
sergei
|
31fddaafe8
+ New subtype of tai_regalloc, "ra_markused". It marks a physical register as used in procedure, triggering saving/restoring that register if it is non-volatile.
|
10 vuotta sitten |
Jonas Maebe
|
5c75b6dd6b
* synchronised with trunk up till r28402
|
11 vuotta sitten |
sergei
|
9b9ea15d68
+ m68k: initial implementation of do_spill_replace (supports only MOVE instructions for now). Tested with qemu for Coldfire target.
|
11 vuotta sitten |
Jonas Maebe
|
bacd303208
* synchronized with trunk up to r27758
|
11 vuotta sitten |
Jonas Maebe
|
246caf3526
* never alias/coalesce cpu registers that are not usable by the register
|
11 vuotta sitten |
Jonas Maebe
|
e9268a0a14
* synchronised with trunk up till r26975
|
11 vuotta sitten |
florian
|
23c724f885
* prevent a temp. register allocated during spilling being immediately spilled again, resolves #25164
|
11 vuotta sitten |