aboutsummaryrefslogtreecommitdiffstats
path: root/iseq.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-12-07 18:46:27 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-12-07 18:46:27 +0000
commit8dce6b15cc9eaa12d89926570cffd7ac7634fb83 (patch)
tree4609424abfa24347bffac0951cbdbe9f267536b8 /iseq.c
parent21366b17a5009d13b9f0ebf78e5a248494835847 (diff)
downloadruby-8dce6b15cc9eaa12d89926570cffd7ac7634fb83.tar.gz
* iseq.c (iseq_load): disable peephole optimization option
because apply it multiple times change the sequence. (iseq != peephole_optimize(load(iseq.to_a))) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'iseq.c')
-rw-r--r--iseq.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/iseq.c b/iseq.c
index c8f468662f..17bfee4981 100644
--- a/iseq.c
+++ b/iseq.c
@@ -565,6 +565,7 @@ iseq_load(VALUE data, const rb_iseq_t *parent, VALUE opt)
}
make_compile_option(&option, opt);
+ option.peephole_optimization = FALSE; /* because peephole optimization can modify original iseq */
prepare_iseq_build(iseq, name, path, absolute_path, first_lineno,
parent, (enum iseq_type)iseq_type, &option);