Skip to content

Instantly share code, notes, and snippets.

@headius
Created March 11, 2015 17:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save headius/a0d82efe727182ba6629 to your computer and use it in GitHub Desktop.
Save headius/a0d82efe727182ba6629 to your computer and use it in GitHub Desktop.
2015-03-11T12:06:02.987-05:00: JVMVisitor: Starting JVM compilation on scope CLOSURE test_switch_while_busy_loop_CLOSURE_2[blah2.rb:10]
2015-03-11T12:06:02.987-05:00: JVMVisitor:
Linearized instructions for JIT:
Instructions:
CFG:
BB [1:CL2_LBL_2:-1]:>[1,10]
BB [2:CL2_LBL_3:-1]:>[3], <[0]
BB [4:_LOOP_BEGIN_0:8]:>[4,6], <[1,5]
BB [5:_ITER_BEGIN_0:10]:>[5,8], <[3]
BB [6:_ITER_END_0:12]:>[3], <[4]
BB [7:CL2_LBL_0:14]:>[10], <[3]
BB [9:_GLOBAL_ENSURE_BLOCK__0:19]:>[10], <[4]
BB [11:CL2_LBL_4:-1]:<[0,6,8]
Instructions:
BB [1:CL2_LBL_2:-1]
%cl_2_2 = copy(nil)
%cl_2_1 = copy(%cl_2_2)
%t_flag_3 = copy(%cl_2_2)
%t_flag_3 = binding_load(flag(0:1) ;scope: test_switch_while_busy_loop_CLOSURE_2)
BB [2:CL2_LBL_3:-1]
line_num(;n: 11)
BB [4:_LOOP_BEGIN_0:8]
b_false(CL2_LBL_0:14, %t_flag_3)
BB [5:_ITER_BEGIN_0:10]
thread_poll()
BB [6:_ITER_END_0:12]
jump(_LOOP_BEGIN_0:8)
BB [7:CL2_LBL_0:14]
return(nil)
BB [9:_GLOBAL_ENSURE_BLOCK__0:19]
%cl_2_1 = recv_jruby_exc()
%cl_2_2 = runtime_helper(%cl_2_1 ;method: HANDLE_BREAK_AND_RETURNS_IN_LAMBDA)
return(%cl_2_2)
BB [11:CL2_LBL_4:-1]
return(nil)
------ Rescue block map ------
BB 5 --> BB 9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment