Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
sark :: git/rbx-simple ยป PROFILE_FULL=1 ./shotgun/rubinius -p scratch/eval.rb 10000 Total slices: 1042, 4968848 clocks === FLAT PROFILE === % time slices name 16.70 174 GC 10.94 114 Hash#hash_entry 8.25 86 Hash#[] 7.58 79 VM.primitive => string_to_sexp 6.14 64 Hash#search_bin 4.80 50 Hash#[]= 3.07 32 Class#new 2.30 24 Compiler#activate 2.11 22 Tuple#each 2.11 22 Compiler#activate_default 2.02 21 Array#<< 1.92 20 String#index 1.73 18 Compiler::Node.create 1.25 13 VM.primitive => allocate 1.15 12 Compiler::Node#consume 1.06 11 Compiler#initialize 1.06 11 Kernel#catch 1.06 11 Proc.__from_block__ 1.06 11 Hash#each_pair 1.06 11 Array#each 1.06 11 InstructionSequence::Encoder#encode 1.06 11 VM.primitive => opt_kind_of 0.96 10 ThrownValue.register 0.86 9 Compiler::Generator#initialize 0.86 9 Compiler::Node#set 0.77 8 Hash#initialize 0.77 8 Compiler#set 0.67 7 Compiler::Plugins::Plugin#initialize 0.67 7 VM.primitive => allocate_hash 0.67 7 Symbol#to_s 0.67 7 VM.primitive => object_dup 0.67 7 Hash.[] 0.67 7 Array#replace 0.67 7 InstructionSequence::Encoder#encode_stream 0.67 7 Compiler::LocalScope#initialize 0.67 7 Proc#call 0.67 7 Type.coerce_to 0.58 6 Array#map 0.58 6 Hash#merge! 0.58 6 VM.primitive => object_equal 0.58 6 Compiler::Generator#collapse_labels 0.58 6 Thread#[] 0.58 6 Kernel#=== 0.58 6 Compiler.compile_string 0.58 6 Compiler::Generator#to_cmethod 0.58 6 Compiler::Node::ClosedScope#initialize 0.58 6 Array#shift 0.58 6 Compiler::Plugins.find_plugin 0.48 5 Hash#replace 0.48 5 Hash#default 0.48 5 Compiler#convert_sexp 0.48 5 Module#=== 0.48 5 VM.primitive => hash_object 0.48 5 Compiler::Node::EvalExpression#initialize 0.38 4 Kernel#eval 0.38 4 VM.primitive => opt_push_my_field 0.38 4 Compiler::LocalScope#encoded_order 0.38 4 VM.primitive => at 0.38 4 Hash#delete_if 0.38 4 Array#pop 0.38 4 Kernel#instance_of? 0.38 4 Kernel#respond_to? 0.38 4 InstructionSequence::Encoder#int2str 0.38 4 Kernel#StringValue 0.38 4 Integer#downto 0.38 4 Compiler::Local#initialize 0.38 4 Type.obj_kind_of? 0.38 4 Compiler::Node::ClosedScope#consume 0.38 4 VM.primitive => block_call 0.38 4 Integer#upto 0.29 3 Compiler::Node::EvalExpression#bytecode 0.29 3 Compiler::Generator#add 0.29 3 Compiler::Local#formalize! 0.29 3 VM.primitive => fixnum_and 0.29 3 String#to_sym 0.29 3 InstructionSet.[] 0.29 3 VM.primitive => allocate_count 0.29 3 Hash#key? 0.29 3 Enumerable#inject 0.29 3 SymbolTable#symbol_to_string 0.29 3 Compiler#create_scopes 0.29 3 Compiler::Node::Literal#normalize 0.29 3 Compiler::Generator#encode_lines 0.29 3 Compiler::Node#initialize 0.29 3 Compile.compiler 0.29 3 Compiler::Node::Newline#bytecode 0.29 3 Compile.compile_string 0.29 3 BlockEnvironment#from_eval! 0.19 2 Compiler::Node::Snippit#args 0.19 2 Compiler::Generator#push 0.19 2 Compiler::Node::Newline#args 0.19 2 BlockEnvironment#under_context 0.19 2 Compiler::MethodDescription#initialize 0.19 2 MethodContext#sender 0.19 2 String#include? 0.19 2 Array#map! 0.19 2 Compiler::LocalScope#[] 0.19 2 Compiler::Generator#encode_literals 0.19 2 Compiler::MethodDescription#run 0.19 2 Compiler::Node::ClosedScope#new_description 0.19 2 Compiler::Node::ClosedScope#to_description 0.19 2 Compiler::Node::EvalExpression#enlarge_context 0.19 2 CompiledMethod#local_names= 0.19 2 VM.primitive => opt_push_ivar 0.19 2 String#to_sexp 0.10 1 VM.primitive => hash_redistribute 0.10 1 VM.primitive => object_send 0.10 1 Compiler::Generator#set_line 0.10 1 VM.primitive => string_dup 0.10 1 Compiler::Node::ClosedScope#argument_info 0.10 1 MethodContext#method 0.10 1 Compiler::Node#show_errors 0.10 1 VM.primitive => lookuptable_fetch 0.10 1 Compiler::Node::Newline#consume 0.10 1 VM.primitive => set_byte 0.10 1 Compiler::Node::NumberLiteral#args 0.10 1 Compiler::Node::ClosedScope#create_scope 0.10 1 Rubinius::VM.perform_hook 0.10 1 CompiledMethod#serial= 0.10 1 Hash#clear 0.10 1 Compiler::Generator#encode_exceptions 0.10 1 VM.primitive => put 0.10 1 Compiler::Generator#close 0.10 1 Compiler::MethodDescription#to_cmethod 0.10 1 Compiler#show_errors 0.10 1 VM.primitive => fields 0.10 1 VM.primitive => fastctx_get_field 0.10 1 Compiler#load_plugins 0.10 1 Compiler::Generator#run 0.10 1 VM.primitive => sampler_stop 0.10 1 Compiler#set_position 0.00 0 Compile.load_from_extension 0.00 0 MethodContext.current 0.00 0 Compiler::Node::EvalExpression#consume 0.00 0 Hash#dup 0.00 0 Compiler::LocalScope#formalize! 0.00 0 Compiler::Generator#sret 0.00 0 InstructionSet::OpCode#bytecode 0.00 0 CompiledMethod#as_script 0.00 0 Compiler::Node#convert 0.00 0 Compiler::Node::Snippit#consume 0.00 0 Compiler::Generator#push_int 0.00 0 InstructionSet::OpCode#arg_count 0.00 0 main.__script__ 0.00 0 Compile.single_load 0.00 0 Compiler::Node::NumberLiteral#bytecode 0.00 0 Hash#initialize_copy === CALL GRAPH === % time slices % self slices name main.__script__ (4) 84.93 885 0.38 4 Kernel#eval BlockEnvironment#from_eval! (3) Compile.compile_string (3) BlockEnvironment#under_context (2) MethodContext#method (1) ---------------------------------------------------------------------- 84.93 885 0.00 0 CompiledMethod#as_script ---------------------------------------------------------------------- 84.93 885 0.00 0 Compile.load_from_extension ---------------------------------------------------------------------- 84.93 885 0.00 0 Compile.single_load ---------------------------------------------------------------------- 84.93 885 0.00 0 main.__script__ Kernel#eval (4) ---------------------------------------------------------------------- Kernel#eval (3) 83.78 873 0.29 3 Compile.compile_string Compiler.compile_string (6) Compile.compiler (3) ---------------------------------------------------------------------- Compile.compile_string (6) 83.21 867 0.58 6 Compiler.compile_string Class#new (4) String#to_sexp (2) Compiler#convert_sexp (2) Compiler::MethodDescription#to_cmethod (1) Compiler::Node::ClosedScope#to_description (1) ---------------------------------------------------------------------- Compiler::Node::ClosedScope#new_description (1) Hash.[] (1) Compiler::MethodDescription#initialize (1) Compiler::Node::Literal#normalize (2) Compiler::Node.create (3) 36.37 379 3.07 32 Class#new Compiler::Generator#initialize (9) Hash#initialize (8) Compiler#initialize (7) Compiler::Plugins::Plugin#initialize (7) Compiler::LocalScope#initialize (6) ---------------------------------------------------------------------- Compiler::Node#convert (1) Compiler.compile_string (2) Compiler::Node#consume (2) 28.69 299 0.48 5 Compiler#convert_sexp Compiler::Node.create (15) Hash#[] (5) ---------------------------------------------------------------------- Kernel#catch (3) Compiler#convert_sexp (15) 28.21 294 1.73 18 Compiler::Node.create Kernel#catch (9) Kernel#respond_to? (4) Class#new (3) Compiler::Node::Literal#normalize (3) Array#shift (3) ---------------------------------------------------------------------- Proc#call (4) Class#new (7) 27.64 288 1.06 11 Compiler#initialize Hash#[]= (10) Hash#[] (3) Compiler#load_plugins (1) Hash.[] (1) ---------------------------------------------------------------------- Array#map (1) Compiler#set (3) Hash#default (3) 27.45 286 0.67 7 Proc#call Compiler#initialize (4) Compiler::LocalScope#initialize (1) Compiler::Node::ClosedScope#consume (1) Compiler::Node::ClosedScope#to_description (1) Compiler::Generator#collapse_labels (1) ---------------------------------------------------------------------- Compiler#initialize (1) 25.72 268 0.10 1 Compiler#load_plugins Compiler#activate_default (22) Hash#[] (5) ---------------------------------------------------------------------- Compiler::LocalScope#[] (1) InstructionSet::OpCode#bytecode (2) Compiler::LocalScope#formalize! (2) Compiler::LocalScope#encoded_order (3) Compiler#initialize (3) 25.53 266 8.25 86 Hash#[] Hash#hash_entry (79) Hash#search_bin (64) Hash#default (4) ---------------------------------------------------------------------- Compiler::Node::EvalExpression#bytecode (3) Compiler::Node::ClosedScope#consume (3) Compiler::Node::Snippit#consume (3) 24.95 260 0.86 9 Compiler::Node#set Compiler#set (8) Proc.__from_block__ (4) ---------------------------------------------------------------------- Compiler#load_plugins (22) 23.99 250 2.11 22 Compiler#activate_default Compiler#activate (24) Hash#[] (20) Symbol#to_s (7) ---------------------------------------------------------------------- Compiler::Node#set (8) 23.99 250 0.77 8 Compiler#set Hash#[]= (16) Hash#[] (4) Proc#call (3) Hash#merge! (2) ---------------------------------------------------------------------- ThrownValue.register (2) Compiler::Node.create (9) 21.79 227 1.06 11 Kernel#catch ThrownValue.register (10) Compiler::Node.create (3) ---------------------------------------------------------------------- Kernel#catch (10) 21.50 224 0.96 10 ThrownValue.register Thread#[] (6) Array#pop (4) Kernel#catch (2) Array#<< (1) ---------------------------------------------------------------------- 20.15 210 0.00 0 Compiler::Node::EvalExpression#consume ---------------------------------------------------------------------- 20.15 210 0.00 0 Compiler::Node::Snippit#consume Compiler::Node#set (3) Compiler::Node::ClosedScope#consume (1) ---------------------------------------------------------------------- Proc#call (1) Compiler::Node::Snippit#consume (1) Array#each (2) 18.14 189 0.38 4 Compiler::Node::ClosedScope#consume Hash.[] (3) Compiler::Node#set (3) ---------------------------------------------------------------------- Array#map (1) Compiler::LocalScope#formalize! (1) Compiler::Generator#encode_lines (1) Compiler::LocalScope#encoded_order (1) Compiler::Generator#encode_exceptions (1) 17.18 179 1.06 11 Array#each Compiler::Node#consume (9) Compiler::Generator#collapse_labels (3) Compiler::Generator#encode_lines (3) Compiler::Node::ClosedScope#consume (2) Enumerable#inject (2) ---------------------------------------------------------------------- 16.70 174 16.70 174 GC ---------------------------------------------------------------------- Compiler#activate_default (24) 16.60 173 2.30 24 Compiler#activate Hash#[] (17) Class#new (11) Array#<< (10) Compiler::Plugins.find_plugin (6) ---------------------------------------------------------------------- Compiler.compile_string (1) 16.51 172 0.10 1 Compiler::MethodDescription#to_cmethod Compiler::Generator#to_cmethod (6) ---------------------------------------------------------------------- Compiler::MethodDescription#to_cmethod (6) 16.41 171 0.58 6 Compiler::Generator#to_cmethod Class#new (4) Compiler::LocalScope#encoded_order (3) String#to_sym (3) InstructionSequence::Encoder#encode_stream (3) Compiler::Generator#collapse_labels (2) ---------------------------------------------------------------------- Hash#key? (4) Hash#[]= (31) Hash#[] (79) 10.94 114 10.94 114 Hash#hash_entry ---------------------------------------------------------------------- Compiler#create_scopes (2) CompiledMethod#local_names= (4) Hash#each_pair (16) 7.87 82 2.11 22 Tuple#each Hash#each_pair (11) ---------------------------------------------------------------------- Compiler::LocalScope#initialize (1) Hash#replace (6) Hash#merge! (8) Hash.[] (9) Compiler#initialize (10) 7.77 81 4.80 50 Hash#[]= Hash#hash_entry (31) ---------------------------------------------------------------------- Proc#call (1) Compiler.compile_string (1) 7.58 79 0.19 2 Compiler::Node::ClosedScope#to_description Compiler::MethodDescription#run (2) Compiler::Node::ClosedScope#new_description (2) Compiler::Generator#close (1) Compiler::Node#show_errors (1) ---------------------------------------------------------------------- 7.58 79 0.00 0 Compiler::Node#convert Compiler#convert_sexp (1) ---------------------------------------------------------------------- 7.58 79 7.58 79 VM.primitive => string_to_sexp ---------------------------------------------------------------------- Enumerable#inject (2) Array#each (2) Compiler::Generator#to_cmethod (3) 7.01 73 0.67 7 InstructionSequence::Encoder#encode_stream InstructionSequence::Encoder#encode (11) Enumerable#inject (1) ---------------------------------------------------------------------- Hash#[] (64) 6.14 64 6.14 64 Hash#search_bin ---------------------------------------------------------------------- Compiler::Node::ClosedScope#to_description (1) 6.05 63 0.10 1 Compiler::Node#show_errors Compiler#show_errors (1) ---------------------------------------------------------------------- Compiler::Node#show_errors (1) 5.95 62 0.10 1 Compiler#show_errors ---------------------------------------------------------------------- Class#new (5) 5.76 60 0.48 5 Compiler::Node::EvalExpression#initialize Compiler::Node::ClosedScope#initialize (6) Compiler#create_scopes (3) ---------------------------------------------------------------------- Compiler::Node::ClosedScope#to_description (2) 5.66 59 0.19 2 Compiler::MethodDescription#run Compiler::Node::ClosedScope#argument_info (1) Compiler::Generator#run (1) ---------------------------------------------------------------------- InstructionSequence::Encoder#encode_stream (11) 5.66 59 1.06 11 InstructionSequence::Encoder#encode InstructionSet.[] (3) Kernel#=== (2) InstructionSequence::Encoder#int2str (1) ---------------------------------------------------------------------- Compiler::MethodDescription#run (1) 5.37 56 0.10 1 Compiler::Generator#run Compiler::Node::EvalExpression#bytecode (3) ---------------------------------------------------------------------- Compiler::Generator#run (3) 5.28 55 0.29 3 Compiler::Node::EvalExpression#bytecode Compiler::Node::Newline#bytecode (3) Compiler::Node#set (3) Compiler::Node::EvalExpression#enlarge_context (2) ---------------------------------------------------------------------- Compiler::Node.create (1) 5.28 55 0.10 1 Compiler::Node::Newline#consume Compiler#set_position (1) Compiler::Node#consume (1) ---------------------------------------------------------------------- Compiler::Node::Newline#consume (1) Compiler::Node.create (2) Array#each (9) 5.09 53 1.15 12 Compiler::Node#consume Array#each (2) Array#<< (2) Compiler#convert_sexp (2) ---------------------------------------------------------------------- Compiler#activate (6) 4.99 52 0.58 6 Compiler::Plugins.find_plugin Hash#[] (13) ---------------------------------------------------------------------- Tuple#each (11) 4.89 51 1.06 11 Hash#each_pair Tuple#each (16) Hash#merge! (4) Hash#replace (1) ---------------------------------------------------------------------- Compiler::Generator#to_cmethod (3) 3.93 41 0.29 3 String#to_sym String#include? (2) ---------------------------------------------------------------------- Hash#replace (1) Hash#[] (4) 3.65 38 0.48 5 Hash#default Proc#call (3) ---------------------------------------------------------------------- Compiler::Node::EvalExpression#initialize (3) 3.65 38 0.29 3 Compiler#create_scopes Tuple#each (2) Compiler::LocalScope#[] (2) ---------------------------------------------------------------------- String#to_sym (2) 3.65 38 0.19 2 String#include? String#index (16) Kernel#StringValue (4) ---------------------------------------------------------------------- 3.26 34 0.00 0 Hash#dup ---------------------------------------------------------------------- Compiler#set (2) Hash#each_pair (4) 3.26 34 0.58 6 Hash#merge! Hash#[]= (8) Type.coerce_to (1) ---------------------------------------------------------------------- Hash#each_pair (1) Hash#initialize_copy (4) 3.17 33 0.48 5 Hash#replace Hash#[]= (6) Type.coerce_to (2) Hash#clear (1) Hash#default (1) ---------------------------------------------------------------------- 3.17 33 0.00 0 Hash#initialize_copy Hash#replace (4) ---------------------------------------------------------------------- Proc#call (1) Compiler::Generator#to_cmethod (2) Array#each (3) 2.98 31 0.58 6 Compiler::Generator#collapse_labels Array#map! (2) ---------------------------------------------------------------------- Integer#upto (4) String#include? (16) 2.88 30 1.92 20 String#index Kernel#instance_of? (4) Integer#upto (4) Module#=== (1) ---------------------------------------------------------------------- Compiler#initialize (1) Compiler::Node::ClosedScope#consume (3) Compiler::Node::ClosedScope#initialize (3) 2.78 29 0.67 7 Hash.[] Hash#[]= (9) Array#shift (3) Class#new (1) ---------------------------------------------------------------------- Compiler::Generator#collapse_labels (2) 2.50 26 0.19 2 Array#map! Array#replace (7) Array#map (4) Proc.__from_block__ (2) ---------------------------------------------------------------------- Compiler#create_scopes (2) 2.40 25 0.19 2 Compiler::LocalScope#[] Hash#key? (3) Array#<< (2) Hash#[] (1) ---------------------------------------------------------------------- Proc#call (1) Class#new (6) 2.11 22 0.67 7 Compiler::LocalScope#initialize Class#new (5) Hash#[]= (1) ---------------------------------------------------------------------- Compiler::Generator#set_line (1) ThrownValue.register (1) Compiler::Generator#add (2) Compiler::Node#consume (2) Compiler::LocalScope#[] (2) 2.02 21 2.02 21 Array#<< ---------------------------------------------------------------------- InstructionSequence::Encoder#encode (3) 1.82 19 0.29 3 InstructionSet.[] Hash#[] (8) ---------------------------------------------------------------------- Array#each (1) Compiler::Generator#to_cmethod (3) 1.73 18 0.38 4 Compiler::LocalScope#encoded_order Hash#[] (3) Array#each (1) ---------------------------------------------------------------------- Compiler::Node::EvalExpression#initialize (6) 1.63 17 0.58 6 Compiler::Node::ClosedScope#initialize Hash.[] (3) Compiler::Node::ClosedScope#create_scope (1) Compiler::Node#initialize (1) ---------------------------------------------------------------------- Compiler::Node::EvalExpression#bytecode (3) 1.44 15 0.29 3 Compiler::Node::Newline#bytecode Compiler::Generator#set_line (1) ---------------------------------------------------------------------- Compiler::Node::ClosedScope#to_description (2) 1.44 15 0.19 2 Compiler::Node::ClosedScope#new_description Class#new (1) ---------------------------------------------------------------------- Class#new (8) 1.25 13 0.77 8 Hash#initialize Proc.__from_block__ (5) ---------------------------------------------------------------------- 1.25 13 1.25 13 VM.primitive => allocate ---------------------------------------------------------------------- Class#new (2) 1.15 12 0.19 2 Compiler::MethodDescription#initialize Class#new (1) ---------------------------------------------------------------------- Array#each (2) Array#map! (4) 1.15 12 0.58 6 Array#map Array#<< (3) Array#each (1) Proc#call (1) ---------------------------------------------------------------------- 1.06 11 1.06 11 VM.primitive => opt_kind_of ---------------------------------------------------------------------- Kernel#StringValue (1) Thread#[] (1) Hash#merge! (1) Hash#replace (2) Array#replace (2) 1.06 11 0.67 7 Type.coerce_to Type.obj_kind_of? (4) ---------------------------------------------------------------------- Array#map! (2) Compiler::Node#set (4) Hash#initialize (5) 1.06 11 1.06 11 Proc.__from_block__ ---------------------------------------------------------------------- Compiler::Node::NumberLiteral#bytecode (2) 0.96 10 0.19 2 Compiler::Generator#push Kernel#=== (4) Module#=== (3) ---------------------------------------------------------------------- Array#map! (7) 0.96 10 0.67 7 Array#replace Type.coerce_to (2) Rubinius::VM.perform_hook (1) ---------------------------------------------------------------------- 0.96 10 0.00 0 Compiler::Node::NumberLiteral#bytecode Compiler::Generator#push (2) ---------------------------------------------------------------------- Compiler#activate_default (7) 0.96 10 0.67 7 Symbol#to_s SymbolTable#symbol_to_string (3) ---------------------------------------------------------------------- Hash#replace (1) 0.96 10 0.10 1 Hash#clear Hash#delete_if (4) ---------------------------------------------------------------------- 0.96 10 0.00 0 InstructionSet::OpCode#bytecode Hash#[] (2) ---------------------------------------------------------------------- Hash#clear (4) 0.86 9 0.38 4 Hash#delete_if ---------------------------------------------------------------------- InstructionSequence::Encoder#encode_stream (1) Array#each (2) 0.86 9 0.29 3 Enumerable#inject Array#each (4) InstructionSequence::Encoder#encode_stream (2) ---------------------------------------------------------------------- Class#new (9) 0.86 9 0.86 9 Compiler::Generator#initialize ---------------------------------------------------------------------- 0.86 9 0.00 0 InstructionSet::OpCode#arg_count Hash#[] (3) ---------------------------------------------------------------------- InstructionSequence::Encoder#encode (1) Integer#downto (3) 0.77 8 0.38 4 InstructionSequence::Encoder#int2str Integer#downto (4) ---------------------------------------------------------------------- String#index (4) 0.77 8 0.38 4 Integer#upto String#index (4) ---------------------------------------------------------------------- ThrownValue.register (6) 0.77 8 0.58 6 Thread#[] Type.coerce_to (1) ---------------------------------------------------------------------- Compiler::Node.create (3) 0.77 8 0.29 3 Compiler::Node::Literal#normalize Class#new (2) Module#=== (1) Compiler::Node::NumberLiteral#args (1) ---------------------------------------------------------------------- 0.67 7 0.67 7 VM.primitive => object_dup ---------------------------------------------------------------------- InstructionSequence::Encoder#int2str (4) 0.67 7 0.38 4 Integer#downto InstructionSequence::Encoder#int2str (3) ---------------------------------------------------------------------- 0.67 7 0.67 7 VM.primitive => allocate_hash ---------------------------------------------------------------------- 0.67 7 0.00 0 Compiler::LocalScope#formalize! Compiler::Local#formalize! (3) Hash#[] (2) Array#each (1) ---------------------------------------------------------------------- Class#new (7) 0.67 7 0.67 7 Compiler::Plugins::Plugin#initialize ---------------------------------------------------------------------- Compiler::LocalScope#[] (3) 0.67 7 0.29 3 Hash#key? Hash#hash_entry (4) ---------------------------------------------------------------------- Compiler::Node::ClosedScope#initialize (1) 0.67 7 0.10 1 Compiler::Node::ClosedScope#create_scope ---------------------------------------------------------------------- Compiler::Node.create (3) Hash.[] (3) 0.58 6 0.58 6 Array#shift ---------------------------------------------------------------------- 0.58 6 0.58 6 VM.primitive => object_equal ---------------------------------------------------------------------- Compiler::Generator#to_cmethod (2) 0.58 6 0.19 2 CompiledMethod#local_names= Tuple#each (4) ---------------------------------------------------------------------- String#include? (4) 0.58 6 0.38 4 Kernel#StringValue Type.coerce_to (1) ---------------------------------------------------------------------- InstructionSequence::Encoder#encode (2) Compiler::Generator#push (4) 0.58 6 0.58 6 Kernel#=== ---------------------------------------------------------------------- Compiler::Generator#sret (3) 0.48 5 0.29 3 Compiler::Generator#add Array#<< (2) ---------------------------------------------------------------------- 0.48 5 0.48 5 VM.primitive => hash_object ---------------------------------------------------------------------- Compiler::Node::Literal#normalize (1) String#index (1) Compiler::Generator#push (3) 0.48 5 0.48 5 Module#=== ---------------------------------------------------------------------- ThrownValue.register (4) 0.38 4 0.38 4 Array#pop ---------------------------------------------------------------------- 0.38 4 0.38 4 VM.primitive => block_call ---------------------------------------------------------------------- Class#new (4) 0.38 4 0.38 4 Compiler::Local#initialize ---------------------------------------------------------------------- 0.38 4 0.38 4 VM.primitive => at ---------------------------------------------------------------------- 0.38 4 0.38 4 VM.primitive => opt_push_my_field ---------------------------------------------------------------------- Array#each (3) 0.38 4 0.29 3 Compiler::Generator#encode_lines Array#each (1) ---------------------------------------------------------------------- String#index (4) 0.38 4 0.38 4 Kernel#instance_of? ---------------------------------------------------------------------- 0.38 4 0.00 0 Compiler::Generator#sret Compiler::Generator#add (3) ---------------------------------------------------------------------- Type.coerce_to (4) 0.38 4 0.38 4 Type.obj_kind_of? ---------------------------------------------------------------------- Compiler::Node.create (4) 0.38 4 0.38 4 Kernel#respond_to? ---------------------------------------------------------------------- Kernel#eval (3) 0.29 3 0.29 3 BlockEnvironment#from_eval! ---------------------------------------------------------------------- Compiler::Node::ClosedScope#initialize (1) Class#new (2) 0.29 3 0.29 3 Compiler::Node#initialize ---------------------------------------------------------------------- Compiler::LocalScope#formalize! (3) 0.29 3 0.29 3 Compiler::Local#formalize! ---------------------------------------------------------------------- Symbol#to_s (3) 0.29 3 0.29 3 SymbolTable#symbol_to_string ---------------------------------------------------------------------- 0.29 3 0.29 3 VM.primitive => fixnum_and ---------------------------------------------------------------------- Compile.compile_string (3) 0.29 3 0.29 3 Compile.compiler ---------------------------------------------------------------------- 0.29 3 0.29 3 VM.primitive => allocate_count ---------------------------------------------------------------------- Compiler::Node::EvalExpression#bytecode (2) 0.19 2 0.19 2 Compiler::Node::EvalExpression#enlarge_context ---------------------------------------------------------------------- Compiler::Node::Newline#bytecode (1) 0.19 2 0.10 1 Compiler::Generator#set_line Array#<< (1) ---------------------------------------------------------------------- 0.19 2 0.00 0 MethodContext.current MethodContext#sender (2) ---------------------------------------------------------------------- 0.19 2 0.19 2 VM.primitive => opt_push_ivar ---------------------------------------------------------------------- Compiler::Node.create (2) 0.19 2 0.19 2 Compiler::Node::Snippit#args ---------------------------------------------------------------------- Kernel#eval (2) 0.19 2 0.19 2 BlockEnvironment#under_context ---------------------------------------------------------------------- Compiler.compile_string (2) 0.19 2 0.19 2 String#to_sexp ---------------------------------------------------------------------- MethodContext.current (2) 0.19 2 0.19 2 MethodContext#sender ---------------------------------------------------------------------- Compiler::Generator#to_cmethod (2) 0.19 2 0.19 2 Compiler::Generator#encode_literals ---------------------------------------------------------------------- Compiler::Node.create (2) 0.19 2 0.19 2 Compiler::Node::Newline#args ---------------------------------------------------------------------- Compiler::Generator#to_cmethod (1) 0.19 2 0.10 1 Compiler::Generator#encode_exceptions Array#each (1) ---------------------------------------------------------------------- 0.10 1 0.00 0 Compiler::Generator#push_int ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => fields ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => sampler_stop ---------------------------------------------------------------------- Compiler::Generator#to_cmethod (1) 0.10 1 0.10 1 CompiledMethod#serial= ---------------------------------------------------------------------- Compiler::Node::Newline#consume (1) 0.10 1 0.10 1 Compiler#set_position ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => object_send ---------------------------------------------------------------------- Compiler::Node::ClosedScope#to_description (1) 0.10 1 0.10 1 Compiler::Generator#close ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => string_dup ---------------------------------------------------------------------- Compiler::MethodDescription#run (1) 0.10 1 0.10 1 Compiler::Node::ClosedScope#argument_info ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => set_byte ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => hash_redistribute ---------------------------------------------------------------------- Compiler::Node::Literal#normalize (1) 0.10 1 0.10 1 Compiler::Node::NumberLiteral#args ---------------------------------------------------------------------- Array#replace (1) 0.10 1 0.10 1 Rubinius::VM.perform_hook ---------------------------------------------------------------------- Kernel#eval (1) 0.10 1 0.10 1 MethodContext#method ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => put ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => fastctx_get_field ---------------------------------------------------------------------- 0.10 1 0.10 1 VM.primitive => lookuptable_fetch ----------------------------------------------------------------------
This paste will be private.
From the Design Piracy series on my blog: