aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/main/hipe.app.src
diff options
context:
space:
mode:
authorMagnus Lång <[email protected]>2017-03-16 16:38:22 +0100
committerMagnus Lång <[email protected]>2017-03-16 20:49:42 +0100
commite99f1d41bc8a7e035e35fd5aef6f3ea023d7f12e (patch)
tree73542faeea6e531e73a75cbbeb90912d365f80dc /lib/hipe/main/hipe.app.src
parentdbe626aa7beb0f04403f6782443f3a78d0f1fdb0 (diff)
downloadotp-e99f1d41bc8a7e035e35fd5aef6f3ea023d7f12e.tar.gz
otp-e99f1d41bc8a7e035e35fd5aef6f3ea023d7f12e.tar.bz2
otp-e99f1d41bc8a7e035e35fd5aef6f3ea023d7f12e.zip
hipe: Add range splitter restore_reuse
hipe_restore_reuse is a simplistic range splitter that splits temps that are forced onto the stack by being live over call instructions. In particular, it attempts to avoid cases where there are several accesses to such stack allocated temps in straight-line code, uninterrupted by any calls. In order to achieve this it splits temps between just before the first access(es) and just after the last access(es) in such straight-line code groups. The hipe_restore_reuse pass is controlled by a new option ra_restore_reuse. ra_restore_reuse is added to o1.
Diffstat (limited to 'lib/hipe/main/hipe.app.src')
-rw-r--r--lib/hipe/main/hipe.app.src1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/hipe/main/hipe.app.src b/lib/hipe/main/hipe.app.src
index 4c3f147d40..dad095da63 100644
--- a/lib/hipe/main/hipe.app.src
+++ b/lib/hipe/main/hipe.app.src
@@ -150,6 +150,7 @@
hipe_reg_worklists,
hipe_regalloc_loop,
hipe_regalloc_prepass,
+ hipe_restore_reuse,
hipe_rtl,
hipe_rtl_arch,
hipe_rtl_arith_32,