From fe0f6734bf0ee31f17b29e2e1c90d2ce8fb58e3f Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 6 Aug 2007 09:38:51 +0000 Subject: * lib/vm/instruction.rb (make_header_analysys): add to separate header addition process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/vm/instruction.rb | 13 +++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index c5a36ac2ac..c482dfdc55 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Aug 6 18:33:22 2007 Koichi Sasada + + * lib/vm/instruction.rb (make_header_analysys): add to separate + header addition process. + Mon Aug 6 17:36:29 2007 Nobuyoshi Nakada * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax. diff --git a/lib/vm/instruction.rb b/lib/vm/instruction.rb index ed59af0faa..af8f0ac648 100644 --- a/lib/vm/instruction.rb +++ b/lib/vm/instruction.rb @@ -786,6 +786,14 @@ module RubyVM ret.join("\n") + "\n" end + def make_header_analysys insn + ret = " USAGE_ANALYSIS_INSN(BIN(#{insn.name}));\n" + insn.opes.each_with_index{|op, i| + ret += " USAGE_ANALYSIS_OPERAND(BIN(#{insn.name}), #{i}, #{op[1]});\n" + } + ret + end + def make_header insn ret = "\nINSN_ENTRY(#{insn.name}){\n" ret += " /* prepare stack status */\n" if verbose? @@ -814,10 +822,7 @@ module RubyVM ret += " #define LABEL_IS_SC(lab) LABEL_##lab##_###{insn.sc.size == 0 ? 't' : 'f'}\n" - ret += " USAGE_ANALYSIS_INSN(BIN(#{insn.name}));\n" - insn.opes.each_with_index{|op, i| - ret += " USAGE_ANALYSIS_OPERAND(BIN(#{insn.name}), #{i}, #{op[1]});\n" - } + ret += make_header_analysys insn ret += "{\n" end -- cgit v1.2.3