- 04 Apr, 2016 3 commits
-
-
Matthias Braun authored
This is a bigger rewrite of stack frame handling in the backend: - Do the stack frame type layout late, after all the spill slots have been created. This way we can avoid (and remove) the brittle frame_alloc_area(). - Standardize the meaning of stack entity offsets. After stack frame type layout they are relative to the stack pointer position at the beginning of the function. It is all in one type now, no splitting into "arg", "between" and "stack_frame" type anymore. - Generalize the stack pointer simulation code to work with a single callback. Represent stack state as current offset and align_padding number. Now that callbacks can access and modify them both we do not need custom code in the sparc backend anymore. - Remove alignment specification on IncSP, only keep a ignore_align flag used for the last IncSP that has to remove all existing sp adjustments and may end up on a misaligned SP on ia32/amd64. - Align stack by default on ia32+amd64 backends.
-
Matthias Braun authored
They are not used yet as we need an adapted layout algorithm for them.
-
Matthias Braun authored
-
- 01 Apr, 2016 2 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 28 Mar, 2016 3 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
The finish phase would panic already, when the matching constraint of cas is not fulfillable.
-
Christoph Mallon authored
-
- 25 Mar, 2016 1 commit
-
-
yb9976 authored
This fixes opt/ifconv10.c and opt/ifconv12.c.
-
- 21 Mar, 2016 10 commits
-
-
yb9976 authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
It is the default for width != 1 now. Work on this never was finished, so it probably does not work anyway.
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 19 Mar, 2016 1 commit
-
-
Christoph Mallon authored
This way all the backends do not have to filter it by themselves.
-
- 18 Mar, 2016 1 commit
-
-
Christoph Mallon authored
-
- 15 Mar, 2016 1 commit
-
-
Christoph Mallon authored
-
- 14 Mar, 2016 4 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
In particular do not stop the search for a suitable node, when a non-mode_is_data() node is encountered.
-
Christoph Mallon authored
The verifiers for the checked nodes are at least as strict as these assert()s.
-
Christoph Mallon authored
-
- 11 Mar, 2016 3 commits
-
-
Christoph Mallon authored
-
yb9976 authored
This fixes backend/spill_phi2.c.
-
yb9976 authored
-
- 10 Mar, 2016 1 commit
-
-
Christoph Mallon authored
-
- 08 Mar, 2016 1 commit
-
-
Christoph Mallon authored
-
- 04 Mar, 2016 1 commit
-
-
Christoph Mallon authored
The same check is just a few lines above.
-
- 02 Mar, 2016 2 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 01 Mar, 2016 6 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
With base the displacement may be a single byte.
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
The epilogue is added late, in particular after scheduling. Therefore it is not necessary to move a mis-scheduled 'restore' directly before a 'return' anymore.
-