ruby-changes:1947
From: ko1@a...
Date: 13 Sep 2007 15:42:20 +0900
Subject: [ruby-changes:1947] nobu - Ruby:r13438 (trunk): * compile.c (iseq_compile_each): inline cache entries are overwritten
nobu 2007-09-13 15:42:05 +0900 (Thu, 13 Sep 2007)
New Revision: 13438
Modified files:
trunk/ChangeLog
trunk/compile.c
Log:
* compile.c (iseq_compile_each): inline cache entries are overwritten
in iseq_build_body().
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/compile.c?r1=13438&r2=13437
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=13438&r2=13437
Index: ChangeLog
===================================================================
--- ChangeLog (revision 13437)
+++ ChangeLog (revision 13438)
@@ -1,3 +1,8 @@
+Thu Sep 13 15:42:03 2007 Nobuyoshi Nakada <nobu@r...>
+
+ * compile.c (iseq_compile_each): inline cache entries are overwritten
+ in iseq_build_body().
+
Thu Sep 13 14:00:15 2007 Nobuyoshi Nakada <nobu@r...>
* parse.y (brace_block): should use compstmt. patch submitted by
Index: compile.c
===================================================================
--- compile.c (revision 13437)
+++ compile.c (revision 13438)
@@ -3843,8 +3843,7 @@
LABEL *lend = NEW_LABEL(nd_line(node));
ADD_LABEL(ret, lstart);
- ADD_INSN2(ret, nd_line(node), getinlinecache,
- NEW_INLINE_CACHE_ENTRY(), lend);
+ ADD_INSN2(ret, nd_line(node), getinlinecache, 0, lend);
ADD_INSN1(ret, nd_line(node), getconstant, ID2SYM(node->nd_vid));
ADD_INSN1(ret, nd_line(node), setinlinecache, lstart);
ADD_LABEL(ret, lend);
@@ -3998,8 +3997,7 @@
LABEL *lend = NEW_LABEL(nd_line(node));
ADD_LABEL(ret, lstart);
- ADD_INSN2(ret, nd_line(node), onceinlinecache,
- NEW_INLINE_CACHE_ENTRY(), lend);
+ ADD_INSN2(ret, nd_line(node), onceinlinecache, 0, lend);
ADD_INSN(ret, nd_line(node), pop);
compile_dstr(iseq, ret, node);
@@ -4162,8 +4160,7 @@
if (LIST_SIZE_ZERO(pref)) {
if (iseq->compile_data->option->inline_const_cache) {
ADD_LABEL(ret, lstart);
- ADD_INSN2(ret, nd_line(node), getinlinecache,
- NEW_INLINE_CACHE_ENTRY(), lend);
+ ADD_INSN2(ret, nd_line(node), getinlinecache, 0, lend);
}
else {
ADD_INSN(ret, nd_line(node), putnil);
@@ -4201,8 +4198,7 @@
/* add cache insn */
if (iseq->compile_data->option->inline_const_cache) {
ADD_LABEL(ret, lstart);
- ADD_INSN2(ret, nd_line(node), getinlinecache,
- NEW_INLINE_CACHE_ENTRY(), lend);
+ ADD_INSN2(ret, nd_line(node), getinlinecache, 0, lend);
ADD_INSN(ret, nd_line(node), pop);
}
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml