summaryrefslogtreecommitdiffhomepage
path: root/ir/be/bepeephole.c
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2011-04-01 10:17:03 +0200
committerMatthias Braun <matze@braunis.de>2011-04-08 14:57:25 +0200
commit939b0af78227f2d14a4362a1b5518fd9e05b1053 (patch)
tree08716fdf5242f46f6bdbbd28bf0c5d099e1345bb /ir/be/bepeephole.c
parent7ddfd63ef9928a20b1f83134f6f627a0c0bb3ecd (diff)
Another rewrite of prolog/epilog handling: Delay their creation until after register allocation
Diffstat (limited to 'ir/be/bepeephole.c')
-rw-r--r--ir/be/bepeephole.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/ir/be/bepeephole.c b/ir/be/bepeephole.c
index 484a5ac..f7c7d9a 100644
--- a/ir/be/bepeephole.c
+++ b/ir/be/bepeephole.c
@@ -277,23 +277,7 @@ ir_node *be_peephole_IncSP_IncSP(ir_node *node)
pred_offs = be_get_IncSP_offset(pred);
curr_offs = be_get_IncSP_offset(node);
-
- if (pred_offs == BE_STACK_FRAME_SIZE_EXPAND) {
- if (curr_offs != BE_STACK_FRAME_SIZE_SHRINK) {
- return node;
- }
- offs = 0;
- } else if (pred_offs == BE_STACK_FRAME_SIZE_SHRINK) {
- if (curr_offs != BE_STACK_FRAME_SIZE_EXPAND) {
- return node;
- }
- offs = 0;
- } else if (curr_offs == BE_STACK_FRAME_SIZE_EXPAND ||
- curr_offs == BE_STACK_FRAME_SIZE_SHRINK) {
- return node;
- } else {
- offs = curr_offs + pred_offs;
- }
+ offs = curr_offs + pred_offs;
/* add node offset to pred and remove our IncSP */
be_set_IncSP_offset(pred, offs);