   0  -live- %i0, %r0, %r1, %r2
   0  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_last_instr>
   5  -live- %r0, %r1, %r2
   5  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_debugdata> -> %r3
  10  -live- %r0, %r1, %r2, %r3
  10  goto_if_not_ptr_iszero %r3, L1
  14  L2:
  14  -live- %r0, %r1, %r2
  14  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_last_instr> -> %i0
  19  strgetitem %r1, %i0 -> %i1
  23  int_add %i0, $1L -> %i2
  27  -live- %i1, %i2, %r0, %r1, %r2
  27  goto_if_not_int_ge %i1, $90, L3
  32  strgetitem %r1, %i2 -> %i0
  36  int_add %i2, $1L -> %i3
  40  strgetitem %r1, %i3 -> %i3
  44  int_add %i2, $2L -> %i2
  48  int_mul %i3, $256 -> %i3
  52  int_or %i3, %i0 -> %i3
  56  L4:
  56  -live- %i1, %i2, %i3, %r0, %r1, %r2
  56  switch %i1, <SwitchDictDescr 0:L5, 1:L6, 2:L7, 3:L8, 4:L9, 5:L10, 9:L11, 10:L12, 11:L13, 12:L14, 13:L15, 15:L16, 19:L17, 20:L18, 21:L19, 22:L20, 23:L21, 24:L22, 25:L23, 26:L24, 27:L25, 28:L26, 29:L27, 30:L28, 31:L29, 32:L30, 33:L31, 40:L32, 41:L33, 42:L34, 43:L35, 50:L36, 51:L37, 52:L38, 53:L39, 54:L40, 55:L41, 56:L42, 57:L43, 58:L44, 59:L45, 60:L46, 61:L47, 62:L48, 63:L49, 64:L50, 65:L51, 66:L52, 67:L53, 68:L54, 70:L55, 71:L56, 72:L57, 73:L58, 74:L59, 75:L60, 76:L61, 77:L62, 78:L63, 79:L64, 80:L65, 81:L66, 82:L67, 83:L68, 84:L69, 85:L70, 86:L71, 87:L72, 88:L73, 89:L74, 90:L75, 91:L76, 92:L77, 93:L78, 94:L79, 95:L80, 96:L81, 97:L82, 98:L83, 99:L84, 100:L85, 101:L86, 102:L87, 103:L88, 104:L89, 105:L90, 106:L91, 107:L92, 108:L93, 109:L94, 110:L95, 111:L96, 112:L97, 113:L98, 114:L99, 115:L100, 116:L101, 119:L102, 120:L103, 121:L104, 122:L105, 124:L106, 125:L107, 126:L108, 130:L109, 131:L110, 132:L111, 133:L112, 134:L113, 135:L114, 136:L115, 137:L116, 140:L117, 141:L118, 142:L119, 143:L120, 145:L121, 146:L122, 147:L123, 201:L124, 202:L125, 203:L126, 204:L127>
  60  inline_call_ir_v <JitCode 'MISSING_OPCODE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
  68  -live-
  68  raise $<* struct object>
  70  ---
  70  L5:
  70  -live- %i2, %i3, %r0
  70  inline_call_ir_v <JitCode 'MISSING_OPCODE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
  78  -live-
  78  raise $<* struct object>
  80  ---
  80  L6:
  80  -live- %i2, %r0
  80  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
  86  -live- %i2, %r3
  86  assert_not_none %r3
  88  L128:
  88  int_return %i2
  90  ---
  90  L7:
  90  -live- %i2, %i3, %r0
  90  inline_call_ir_v <JitCode 'ROT_TWO__AccessDirect_None'>, I[%i3, %i2], R[%r0]
  98  -live- %i2
  98  goto L128
 101  ---
 101  L8:
 101  -live- %i2, %i3, %r0
 101  inline_call_ir_v <JitCode 'ROT_THREE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 109  -live- %i2
 109  goto L128
 112  ---
 112  L9:
 112  -live- %i2, %r0
 112  -live- %i2, %r0
 112  int_guard_value $0
 114  -live- %i2, %r0
 114  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
 119  int_invert $0 -> %i1
 122  int_add %i0, %i1 -> %i0
 126  -live- %i0, %i2, %r0
 126  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r3
 131  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_cellvars> -> %r4
 136  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_freevars> -> %r3
 141  -live- %i0, %i2, %r0
 141  getarrayitem_vable_r %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r3
 149  assert_not_none %r3
 151  -live- %i2, %r0, %r3
 151  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
 156  assert_not_none %r3
 158  -live- %i0, %i2, %r0, %r3
 158  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
 166  int_add %i0, $1 -> %i0
 170  -live- %i0, %i2, %r0
 170  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
 175  goto L128
 178  ---
 178  L10:
 178  -live- %i2, %i3, %r0
 178  inline_call_ir_v <JitCode 'ROT_FOUR__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 186  -live- %i2
 186  goto L128
 189  ---
 189  L11:
 189  -live- %i2
 189  goto L128
 192  ---
 192  L12:
 192  -live- %i2, %i3, %r0
 192  inline_call_ir_v <JitCode 'opcode_impl_for_pos__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 200  -live- %i2
 200  goto L128
 203  ---
 203  L13:
 203  -live- %i2, %i3, %r0
 203  inline_call_ir_v <JitCode 'opcode_impl_for_neg__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 211  -live- %i2
 211  goto L128
 214  ---
 214  L14:
 214  -live- %i2, %i3, %r0
 214  inline_call_ir_v <JitCode 'opcode_impl_for_not___AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 222  -live- %i2
 222  goto L128
 225  ---
 225  L15:
 225  -live- %i2, %i3, %r0
 225  inline_call_ir_v <JitCode 'opcode_impl_for_repr__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 233  -live- %i2
 233  goto L128
 236  ---
 236  L16:
 236  -live- %i2, %i3, %r0
 236  inline_call_ir_v <JitCode 'opcode_impl_for_invert__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 244  -live- %i2
 244  goto L128
 247  ---
 247  L17:
 247  -live- %i2, %i3, %r0
 247  inline_call_ir_v <JitCode 'BINARY_POWER__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 255  -live- %i2
 255  goto L128
 258  ---
 258  L18:
 258  -live- %i2, %i3, %r0
 258  inline_call_ir_v <JitCode 'opcode_impl_for_mul__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 266  -live- %i2
 266  goto L128
 269  ---
 269  L19:
 269  -live- %i2, %i3, %r0
 269  inline_call_ir_v <JitCode 'opcode_impl_for_div__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 277  -live- %i2
 277  goto L128
 280  ---
 280  L20:
 280  -live- %i2, %i3, %r0
 280  inline_call_ir_v <JitCode 'opcode_impl_for_mod__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 288  -live- %i2
 288  goto L128
 291  ---
 291  L21:
 291  -live- %i2, %i3, %r0
 291  inline_call_ir_v <JitCode 'int_BINARY_ADD__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 299  -live- %i2
 299  goto L128
 302  ---
 302  L22:
 302  -live- %i2, %i3, %r0
 302  inline_call_ir_v <JitCode 'int_BINARY_SUB__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 310  -live- %i2
 310  goto L128
 313  ---
 313  L23:
 313  -live- %i2, %i3, %r0
 313  inline_call_ir_v <JitCode 'list_BINARY_SUBSCR__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 321  -live- %i2
 321  goto L128
 324  ---
 324  L24:
 324  -live- %i2, %i3, %r0
 324  inline_call_ir_v <JitCode 'opcode_impl_for_floordiv__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 332  -live- %i2
 332  goto L128
 335  ---
 335  L25:
 335  -live- %i2, %i3, %r0
 335  inline_call_ir_v <JitCode 'opcode_impl_for_truediv__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 343  -live- %i2
 343  goto L128
 346  ---
 346  L26:
 346  -live- %i2, %i3, %r0
 346  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_floordiv__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 354  -live- %i2
 354  goto L128
 357  ---
 357  L27:
 357  -live- %i2, %i3, %r0
 357  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_truediv__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 365  -live- %i2
 365  goto L128
 368  ---
 368  L28:
 368  -live- %i2, %r0
 368  inline_call_r_v <JitCode 'slice__AccessDirect_None'>, R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>]
 375  -live- %i2
 375  goto L128
 378  ---
 378  L29:
 378  -live- %i2, %r0
 378  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 384  -live- %i2, %r0, %r3
 384  assert_not_none %r3
 386  inline_call_r_v <JitCode 'slice__AccessDirect_None'>, R[%r0, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>]
 393  -live- %i2
 393  goto L128
 396  ---
 396  L30:
 396  -live- %i2, %r0
 396  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 402  -live- %i2, %r0, %r3
 402  assert_not_none %r3
 404  inline_call_r_v <JitCode 'slice__AccessDirect_None'>, R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r3]
 411  -live- %i2
 411  goto L128
 414  ---
 414  L31:
 414  -live- %i2, %r0
 414  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 420  -live- %i2, %r0, %r3
 420  assert_not_none %r3
 422  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 428  -live- %i2, %r0, %r3, %r4
 428  assert_not_none %r4
 430  inline_call_r_v <JitCode 'slice__AccessDirect_None'>, R[%r0, %r4, %r3]
 437  -live- %i2
 437  goto L128
 440  ---
 440  L32:
 440  -live- %i2, %r0
 440  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 446  -live- %i2, %r0, %r3
 446  assert_not_none %r3
 448  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 454  -live- %i2, %r3, %r4
 454  assert_not_none %r4
 456  inline_call_r_r <JitCode 'setslice'>, R[%r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r4] -> %r3
 465  -live- %i2
 465  goto L128
 468  ---
 468  L33:
 468  -live- %i2, %r0
 468  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 474  -live- %i2, %r0, %r3
 474  assert_not_none %r3
 476  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 482  -live- %i2, %r0, %r3, %r4
 482  assert_not_none %r4
 484  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r5
 490  -live- %i2, %r3, %r4, %r5
 490  assert_not_none %r5
 492  inline_call_r_r <JitCode 'setslice'>, R[%r4, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r5] -> %r3
 501  -live- %i2
 501  goto L128
 504  ---
 504  L34:
 504  -live- %i2, %r0
 504  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 510  -live- %i2, %r0, %r3
 510  assert_not_none %r3
 512  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 518  -live- %i2, %r0, %r3, %r4
 518  assert_not_none %r4
 520  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r5
 526  -live- %i2, %r3, %r4, %r5
 526  assert_not_none %r5
 528  inline_call_r_r <JitCode 'setslice'>, R[%r4, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r3, %r5] -> %r3
 537  -live- %i2
 537  goto L128
 540  ---
 540  L35:
 540  -live- %i2, %r0
 540  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 546  -live- %i2, %r0, %r3
 546  assert_not_none %r3
 548  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 554  -live- %i2, %r0, %r3, %r4
 554  assert_not_none %r4
 556  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r5
 562  -live- %i2, %r0, %r3, %r4, %r5
 562  assert_not_none %r5
 564  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r6
 570  -live- %i2, %r3, %r4, %r5, %r6
 570  assert_not_none %r6
 572  inline_call_r_r <JitCode 'setslice'>, R[%r5, %r4, %r3, %r6] -> %r3
 581  -live- %i2
 581  goto L128
 584  ---
 584  L36:
 584  -live- %i2, %r0
 584  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 590  -live- %i2, %r3
 590  assert_not_none %r3
 592  inline_call_r_r <JitCode 'delslice'>, R[%r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r3
 600  -live- %i2
 600  goto L128
 603  ---
 603  L37:
 603  -live- %i2, %r0
 603  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 609  -live- %i2, %r0, %r3
 609  assert_not_none %r3
 611  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 617  -live- %i2, %r3, %r4
 617  assert_not_none %r4
 619  inline_call_r_r <JitCode 'delslice'>, R[%r4, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r3
 627  -live- %i2
 627  goto L128
 630  ---
 630  L38:
 630  -live- %i2, %r0
 630  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 636  -live- %i2, %r0, %r3
 636  assert_not_none %r3
 638  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 644  -live- %i2, %r3, %r4
 644  assert_not_none %r4
 646  inline_call_r_r <JitCode 'delslice'>, R[%r4, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r3] -> %r3
 654  -live- %i2
 654  goto L128
 657  ---
 657  L39:
 657  -live- %i2, %i3, %r0
 657  inline_call_ir_v <JitCode 'DELETE_SLICE_3__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 665  -live- %i2
 665  goto L128
 668  ---
 668  L40:
 668  -live- %i2, %i3, %r0
 668  inline_call_ir_v <JitCode 'STORE_MAP__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 676  -live- %i2
 676  goto L128
 679  ---
 679  L41:
 679  -live- %i2, %i3, %r0
 679  inline_call_ir_v <JitCode 'int_INPLACE_ADD__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 687  -live- %i2
 687  goto L128
 690  ---
 690  L42:
 690  -live- %i2, %i3, %r0
 690  inline_call_ir_v <JitCode 'int_INPLACE_SUB__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 698  -live- %i2
 698  goto L128
 701  ---
 701  L43:
 701  -live- %i2, %i3, %r0
 701  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_mul__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 709  -live- %i2
 709  goto L128
 712  ---
 712  L44:
 712  -live- %i2, %i3, %r0
 712  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_div__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 720  -live- %i2
 720  goto L128
 723  ---
 723  L45:
 723  -live- %i2, %i3, %r0
 723  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_mod__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 731  -live- %i2
 731  goto L128
 734  ---
 734  L46:
 734  -live- %i2, %i3, %r0
 734  inline_call_ir_v <JitCode 'STORE_SUBSCR__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 742  -live- %i2
 742  goto L128
 745  ---
 745  L47:
 745  -live- %i2, %r0
 745  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 751  -live- %i2, %r0, %r3
 751  assert_not_none %r3
 753  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
 759  -live- %i2, %r3, %r4
 759  assert_not_none %r4
 761  inline_call_r_r <JitCode 'delitem'>, R[%r4, %r3] -> %r3
 768  -live- %i2
 768  goto L128
 771  ---
 771  L48:
 771  -live- %i2, %i3, %r0
 771  inline_call_ir_v <JitCode 'opcode_impl_for_lshift__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 779  -live- %i2
 779  goto L128
 782  ---
 782  L49:
 782  -live- %i2, %i3, %r0
 782  inline_call_ir_v <JitCode 'opcode_impl_for_rshift__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 790  -live- %i2
 790  goto L128
 793  ---
 793  L50:
 793  -live- %i2, %i3, %r0
 793  inline_call_ir_v <JitCode 'opcode_impl_for_and___AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 801  -live- %i2
 801  goto L128
 804  ---
 804  L51:
 804  -live- %i2, %i3, %r0
 804  inline_call_ir_v <JitCode 'opcode_impl_for_xor__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 812  -live- %i2
 812  goto L128
 815  ---
 815  L52:
 815  -live- %i2, %i3, %r0
 815  inline_call_ir_v <JitCode 'opcode_impl_for_or___AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 823  -live- %i2
 823  goto L128
 826  ---
 826  L53:
 826  -live- %i2, %i3, %r0
 826  inline_call_ir_v <JitCode 'INPLACE_POWER__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 834  -live- %i2
 834  goto L128
 837  ---
 837  L54:
 837  -live- %i2, %i3, %r0
 837  inline_call_ir_v <JitCode 'GET_ITER__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 845  -live- %i2
 845  goto L128
 848  ---
 848  L55:
 848  -live- %i2, %r0
 848  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
 854  -live- %i2, %r3
 854  assert_not_none %r3
 856  inline_call_r_r <JitCode 'print_expr__star_1'>, R[%r3] -> %r3
 862  -live- %i2
 862  goto L128
 865  ---
 865  L56:
 865  -live- %i2, %i3, %r0
 865  inline_call_ir_v <JitCode 'PRINT_ITEM__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 873  -live- %i2
 873  goto L128
 876  ---
 876  L57:
 876  -live- %i2
 876  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4f52efa0> -> %r3
 880  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 885  inline_call_r_r <JitCode 'getitem'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r3] -> %r3
 892  -live- %i2, %r3
 892  inline_call_r_r <JitCode 'call_function__star_0'>, R[%r3] -> %r3
 898  -live- %i2
 898  goto L128
 901  ---
 901  L58:
 901  -live- %i2, %i3, %r0
 901  inline_call_ir_v <JitCode 'PRINT_ITEM_TO__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 909  -live- %i2
 909  goto L128
 912  ---
 912  L59:
 912  -live- %i2, %i3, %r0
 912  inline_call_ir_v <JitCode 'PRINT_NEWLINE_TO__AccessDirect_None'>, I[%i3, %i2], R[%r0]
 920  -live- %i2
 920  goto L128
 923  ---
 923  L60:
 923  -live- %i2, %i3, %r0
 923  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_lshift__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 931  -live- %i2
 931  goto L128
 934  ---
 934  L61:
 934  -live- %i2, %i3, %r0
 934  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_rshift__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 942  -live- %i2
 942  goto L128
 945  ---
 945  L62:
 945  -live- %i2, %i3, %r0
 945  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_and__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 953  -live- %i2
 953  goto L128
 956  ---
 956  L63:
 956  -live- %i2, %i3, %r0
 956  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_xor__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 964  -live- %i2
 964  goto L128
 967  ---
 967  L64:
 967  -live- %i2, %i3, %r0
 967  inline_call_ir_v <JitCode 'opcode_impl_for_inplace_or__AccessDirect_star_2'>, I[%i3, %i2], R[%r0]
 975  -live- %i2
 975  goto L128
 978  ---
 978  L65:
 978  -live- %r0
 978  inline_call_ir_r <JitCode 'unrollstack__AccessDirect_None'>, I[$4], R[%r0] -> %r3
 986  -live- %r0, %r3
 986  -live- %r0, %r3
 986  goto_if_not_ptr_iszero %r3, L129
 990  raise $<* struct object>
 992  ---
 992  L129:
 992  -live- %r0, %r3
 992  guard_class %r3 -> %i0
 995  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock_vtable.cls_handle> -> %i0
1000  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
1005  -live- %i0, %r0, %r3
1005  int_guard_value %i0
1007  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r0, $<* struct pypy.interpreter.pyopcode.SuspendedUnroller>], <CallDescr(rrr) EF=7> -> %i2
1016  -live- %i2
1016  goto L128
1019  ---
1019  L66:
1019  -live- %i2, %i3, %r0
1019  inline_call_ir_v <JitCode 'WITH_CLEANUP__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1027  -live- %i2
1027  goto L128
1030  ---
1030  L67:
1030  -live- %i2, %r0
1030  ref_copy %r0 -> %r3
1033  -live- %i2, %r3
1033  getfield_vable_r %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_debugdata> -> %r0
1038  -live- %i2, %r0, %r3
1038  goto_if_not_ptr_iszero %r0, L130
1042  ref_copy %r3 -> %r0
1045  -live- %i2, %r0, %r3
1045  getfield_vable_r %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r4
1050  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4b705280> -> %r5
1054  setfield_gc_i %r5, $0, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_f_lineno>
1059  setfield_gc_i %r5, $0, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_instr_lb>
1064  setfield_gc_i %r5, $0, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_instr_prev_plus_one>
1069  setfield_gc_i %r5, $0, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_instr_ub>
1074  setfield_gc_i %r5, $False, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_is_being_profiled>
1079  getfield_gc_i_pure %r4, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_firstlineno> -> %i0
1084  setfield_gc_i %r5, %i0, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_f_lineno>
1089  -live- %i2, %r0, %r3, %r4, %r5
1089  record_quasiimmut_field %r4, FieldDescr<pypy.interpreter.pycode.PyCode.inst_w_globals>, FieldDescr<pypy.interpreter.pycode.PyCode.mutate_w_globals>
1095  getfield_gc_r_pure %r4, FieldDescr<pypy.interpreter.pycode.PyCode.inst_w_globals> -> %r4
1100  setfield_gc_r %r5, %r4, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_w_globals>
1105  -live- %i2, %r0, %r3, %r5
1105  setfield_vable_r %r3, %r5, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_debugdata>
1110  L131:
1110  -live- %i2, %r0, %r3
1110  getfield_vable_r %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_debugdata> -> %r3
1115  getfield_gc_r %r3, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_w_locals> -> %r3
1120  -live- %i2, %r0, %r3
1120  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1125  assert_not_none %r3
1127  -live- %i0, %i2, %r0, %r3
1127  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1135  int_add %i0, $1 -> %i0
1139  -live- %i0, %i2, %r0
1139  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1144  goto L128
1147  ---
1147  L130:
1147  ref_copy %r3 -> %r0
1150  goto L131
1153  ---
1153  L68:
1153  -live- %r0
1153  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
1159  -live- %r0, %r3
1159  assert_not_none %r3
1161  inline_call_ir_r <JitCode 'unrollstack__AccessDirect_None'>, I[$1], R[%r0] -> %r2
1169  -live- %r0, %r2, %r3
1169  -live- %r0, %r2, %r3
1169  goto_if_not_ptr_iszero %r2, L132
1173  -live- %r0, %r3
1173  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1178  assert_not_none %r3
1180  -live- %i0, %r0, %r3
1180  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1188  int_add %i0, $1 -> %i0
1192  -live- %i0, %r0
1192  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1197  raise $<* struct object>
1199  ---
1199  L132:
1199  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4cfc1dc0> -> %r1
1203  setfield_gc_r %r1, %r3, FieldDescr<pypy.interpreter.pyopcode.SReturnValue.inst_w_returnvalue>
1208  -live- %r0, %r1, %r2
1208  guard_class %r2 -> %i0
1211  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock_vtable.cls_handle> -> %i0
1216  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
1221  -live- %i0, %r0, %r1, %r2
1221  int_guard_value %i0
1223  residual_call_r_i %i0, <IndirectCallTargets>, R[%r2, %r0, %r1], <CallDescr(rrr) EF=7> -> %i2
1232  -live- %i2
1232  int_return %i2
1234  ---
1234  L69:
1234  -live- %i2, %i3, %r0
1234  inline_call_ir_v <JitCode 'IMPORT_STAR__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1242  -live- %i2
1242  goto L128
1245  ---
1245  L70:
1245  -live- %i2, %i3, %r0
1245  inline_call_ir_v <JitCode 'EXEC_STMT__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1253  -live- %i2
1253  goto L128
1256  ---
1256  L71:
1256  -live-
1256  raise $<* struct object>
1258  ---
1258  L72:
1258  -live- %i2, %r0
1258  -live- %i2, %r0
1258  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock> -> %r3
1263  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_previous> -> %r4
1268  -live- %i2, %r0, %r3, %r4
1268  setfield_vable_r %r0, %r4, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock>
1273  getfield_gc_i_pure %r3, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth> -> %i0
1278  inline_call_ir_v <JitCode 'dropvaluesuntil__AccessDirect_None'>, I[%i0], R[%r0]
1285  -live- %i2
1285  goto L128
1288  ---
1288  L73:
1288  -live- %i2, %r0
1288  inline_call_r_r <JitCode 'end_finally__AccessDirect_None'>, R[%r0] -> %r3
1294  -live- %i2, %r0, %r3
1294  -live- %i2, %r0, %r3
1294  goto_if_not_ptr_nonzero %r3, L133
1298  ref_copy %r3 -> %r2
1301  -live- %i2, %r0, %r2, %r3
1301  guard_class %r3 -> %i0
1304  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
1309  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
1314  -live- %i0, %i2, %r0, %r2
1314  goto_if_not %i0, L134
1318  -live- %r0, %r2
1318  guard_class %r2 -> %i0
1321  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.SuspendedUnroller_vtable.cls_kind> -> %i0
1326  inline_call_ir_r <JitCode 'unrollstack__AccessDirect_None'>, I[%i0], R[%r0] -> %r3
1334  -live- %r0, %r2, %r3
1334  -live- %r0, %r2, %r3
1334  goto_if_not_ptr_iszero %r3, L135
1338  -live- %r0, %r2
1338  guard_class %r2 -> %i0
1341  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.SuspendedUnroller_vtable.cls_nomoreblocks> -> %i0
1346  -live- %i0, %r0, %r2
1346  switch %i0, <SwitchDictDescr 0:L136, 1:L137, 2:L138>
1350  unreachable
1351  ---
1351  L136:
1351  -live- %r2
1351  getfield_gc_r_pure %r2, FieldDescr<pypy.interpreter.pyopcode.SApplicationException.inst_operr> -> %r3
1356  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4b52c690> -> %r0
1360  setfield_gc_r %r0, %r3, FieldDescr<pypy.interpreter.pyopcode.RaiseWithExplicitTraceback.inst_operr>
1365  assert_not_none %r0
1367  -live- %r0
1367  guard_class %r0 -> %i0
1370  -live- %r0
1370  raise %r0
1372  ---
1372  L137:
1372  -live- %r0, %r2
1372  getfield_gc_r_pure %r2, FieldDescr<pypy.interpreter.pyopcode.SReturnValue.inst_w_returnvalue> -> %r3
1377  -live- %r0, %r3
1377  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1382  assert_not_none %r3
1384  -live- %i0, %r0, %r3
1384  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1392  int_add %i0, $1 -> %i0
1396  -live- %i0, %r0
1396  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1401  raise $<* struct object>
1403  ---
1403  L138:
1403  -live-
1403  raise $<* struct object>
1405  ---
1405  L135:
1405  -live- %r0, %r2, %r3
1405  guard_class %r3 -> %i0
1408  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock_vtable.cls_handle> -> %i0
1413  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
1418  -live- %i0, %r0, %r2, %r3
1418  int_guard_value %i0
1420  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r0, %r2], <CallDescr(rrr) EF=7> -> %i2
1429  -live- %i2
1429  int_return %i2
1431  ---
1431  L134:
1431  int_return %i2
1433  ---
1433  L133:
1433  int_return %i2
1435  ---
1435  L74:
1435  -live- %i2, %i3, %r0
1435  inline_call_ir_v <JitCode 'BUILD_CLASS__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1443  -live- %i2
1443  goto L128
1446  ---
1446  L75:
1446  -live- %i2, %i3, %r0
1446  inline_call_ir_v <JitCode 'STORE_NAME__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1454  -live- %i2
1454  goto L128
1457  ---
1457  L76:
1457  -live- %i2, %i3, %r0
1457  inline_call_ir_v <JitCode 'DELETE_NAME__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1465  -live- %i2
1465  goto L128
1468  ---
1468  L77:
1468  -live- %i2, %i3, %r0
1468  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
1474  -live- %i2, %i3, %r0, %r3
1474  assert_not_none %r3
1476  inline_call_ir_r <JitCode 'fixedview__True'>, I[%i3, $True], R[%r3] -> %r3
1485  -live- %i2, %i3, %r0, %r3
1485  inline_call_ir_v <JitCode 'pushrevvalues__AccessDirect_None'>, I[%i3], R[%r0, %r3]
1493  -live- %i2
1493  goto L128
1496  ---
1496  L78:
1496  -live- %i2, %i3, %r0
1496  inline_call_ir_i <JitCode 'FOR_ITER__AccessDirect_None'>, I[%i3, %i2], R[%r0] -> %i2
1505  -live- %i2
1505  goto L128
1508  ---
1508  L79:
1508  -live- %i2, %i3, %r0
1508  inline_call_ir_v <JitCode 'LIST_APPEND__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1516  -live- %i2
1516  goto L128
1519  ---
1519  L80:
1519  -live- %i2, %i3, %r0
1519  inline_call_ir_v <JitCode 'STORE_ATTR__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1527  -live- %i2
1527  goto L128
1530  ---
1530  L81:
1530  -live- %i2, %i3, %r0
1530  -live- %i2, %i3, %r0
1530  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r3
1535  -live- %i2, %i3, %r0, %r3
1535  ref_guard_value %r3
1537  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_names_w> -> %r3
1542  getarrayitem_gc_r_pure %r3, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r3
1548  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
1554  -live- %i2, %r3, %r4
1554  assert_not_none %r4
1556  inline_call_r_r <JitCode 'delattr'>, R[%r4, %r3] -> %r3
1563  -live- %i2
1563  goto L128
1566  ---
1566  L82:
1566  -live- %i2, %i3, %r0
1566  inline_call_ir_v <JitCode 'STORE_GLOBAL__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1574  -live- %i2
1574  goto L128
1577  ---
1577  L83:
1577  -live- %i2, %i3, %r0
1577  inline_call_ir_v <JitCode 'DELETE_GLOBAL__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1585  -live- %i2
1585  goto L128
1588  ---
1588  L84:
1588  -live- %i2, %i3, %r0
1588  -live- %i2, %i3, %r0
1588  goto_if_not_int_ge %i3, $1, L139
1593  -live- %i2, %i3, %r0
1593  goto_if_not_int_le %i3, $5, L140
1598  inline_call_ir_v <JitCode 'dupvalues__AccessDirect_None'>, I[%i3], R[%r0]
1605  -live- %i2
1605  goto L128
1608  ---
1608  L140:
1608  L141:
1608  raise $<* struct object>
1610  ---
1610  L139:
1610  goto L141
1613  ---
1613  L85:
1613  -live- %i2, %i3, %r0
1613  -live- %i2, %i3, %r0
1613  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r3
1618  -live- %i2, %i3, %r0, %r3
1618  ref_guard_value %r3
1620  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_consts_w> -> %r3
1625  getarrayitem_gc_r_pure %r3, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r3
1631  -live- %i2, %r0, %r3
1631  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1636  assert_not_none %r3
1638  -live- %i0, %i2, %r0, %r3
1638  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1646  int_add %i0, $1 -> %i0
1650  -live- %i0, %i2, %r0
1650  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1655  goto L128
1658  ---
1658  L86:
1658  -live- %i2, %i3, %r0
1658  inline_call_ir_v <JitCode 'LOAD_NAME__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1666  -live- %i2
1666  goto L128
1669  ---
1669  L87:
1669  -live- %i2, %i3, %r0
1669  inline_call_ir_v <JitCode 'BUILD_TUPLE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1677  -live- %i2
1677  goto L128
1680  ---
1680  L88:
1680  -live- %i2, %i3, %r0
1680  inline_call_ir_v <JitCode 'BUILD_LIST__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1688  -live- %i2
1688  goto L128
1691  ---
1691  L89:
1691  -live- %i2, %i3, %r0
1691  inline_call_ir_v <JitCode 'BUILD_SET__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1699  -live- %i2
1699  goto L128
1702  ---
1702  L90:
1702  -live- %i2, %r0
1702  inline_call_ir_r <JitCode 'allocate_and_init_instance'>, I[$False, $False, $False, $False], R[$<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r3
1713  -live- %i2, %r0, %r3
1713  -live- %i2, %r0, %r3
1713  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1718  assert_not_none %r3
1720  -live- %i0, %i2, %r0, %r3
1720  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1728  int_add %i0, $1 -> %i0
1732  -live- %i0, %i2, %r0
1732  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1737  goto L128
1740  ---
1740  L91:
1740  -live- %i2, %i3, %r0
1740  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
1746  -live- %i2, %i3, %r0, %r3
1746  assert_not_none %r3
1748  -live- %i2, %i3, %r0, %r3
1748  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r4
1753  -live- %i2, %i3, %r0, %r3, %r4
1753  ref_guard_value %r4
1755  getfield_gc_r_pure %r4, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_names_w> -> %r4
1760  getarrayitem_gc_r_pure %r4, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r4
1766  inline_call_r_r <JitCode 'getattr'>, R[%r3, %r4] -> %r3
1773  -live- %i2, %r0, %r3
1773  -live- %i2, %r0, %r3
1773  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
1778  assert_not_none %r3
1780  -live- %i0, %i2, %r0, %r3
1780  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
1788  int_add %i0, $1 -> %i0
1792  -live- %i0, %i2, %r0
1792  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
1797  goto L128
1800  ---
1800  L92:
1800  -live- %i2, %i3, %r0
1800  inline_call_ir_v <JitCode 'COMPARE_OP__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1808  -live- %i2
1808  goto L128
1811  ---
1811  L93:
1811  -live- %i2, %i3, %r0
1811  inline_call_ir_v <JitCode 'IMPORT_NAME__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1819  -live- %i2
1819  goto L128
1822  ---
1822  L94:
1822  -live- %i2, %i3, %r0
1822  inline_call_ir_v <JitCode 'IMPORT_FROM__AccessDirect_None'>, I[%i3, %i2], R[%r0]
1830  -live- %i2
1830  goto L128
1833  ---
1833  L95:
1833  -live- %i2, %i3
1833  int_add %i2, %i3 -> %i2
1837  goto L128
1840  ---
1840  L96:
1840  -live- %i2, %i3, %r0
1840  inline_call_ir_i <JitCode 'JUMP_IF_FALSE_OR_POP__AccessDirect_None'>, I[%i3, %i2], R[%r0] -> %i2
1849  -live- %i2
1849  goto L128
1852  ---
1852  L97:
1852  -live- %i2, %i3, %r0
1852  inline_call_ir_i <JitCode 'JUMP_IF_TRUE_OR_POP__AccessDirect_None'>, I[%i3, %i2], R[%r0] -> %i2
1861  -live- %i2
1861  goto L128
1864  ---
1864  L98:
1864  -live- %i3, %r0, %r2
1864  inline_call_ir_i <JitCode 'jump_absolute__AccessDirect_None'>, I[%i3], R[%r0, %r2] -> %i2
1873  -live- %i2
1873  int_return %i2
1875  ---
1875  L99:
1875  -live- %i2, %i3, %r0
1875  int_copy %i2 -> %i0
1878  int_copy %i3 -> %i2
1881  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
1887  -live- %i0, %i2, %r4
1887  assert_not_none %r4
1889  -live- %i0, %i2, %r4
1889  goto_if_not_ptr_nonzero %r4, L142
1893  ref_copy %r4 -> %r3
1896  -live- %i0, %i2, %r3, %r4
1896  guard_class %r3 -> %i1
1899  -live- %i0, %i1, %i2, %r4
1899  goto_if_not_int_eq %i1, $<* struct object_vtable>, L143
1904  getfield_gc_i_pure %r4, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
1909  int_is_true %i1 -> %i1
1912  L144:
1912  -live- %i0, %i1, %i2
1912  goto_if_not %i1, L145
1916  int_copy %i0 -> %i2
1919  goto L128
1922  ---
1922  L145:
1922  goto L128
1925  ---
1925  L143:
1925  L146:
1925  inline_call_r_i <JitCode 'is_true'>, R[%r4] -> %i1
1931  -live- %i0, %i1, %i2
1931  goto L144
1934  ---
1934  L142:
1934  goto L146
1937  ---
1937  L100:
1937  -live- %i2, %i3, %r0
1937  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
1943  -live- %i2, %i3, %r4
1943  assert_not_none %r4
1945  -live- %i2, %i3, %r4
1945  goto_if_not_ptr_nonzero %r4, L147
1949  ref_copy %r4 -> %r3
1952  -live- %i2, %i3, %r3, %r4
1952  guard_class %r3 -> %i0
1955  -live- %i0, %i2, %i3, %r4
1955  goto_if_not_int_eq %i0, $<* struct object_vtable>, L148
1960  getfield_gc_i_pure %r4, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
1965  int_is_true %i0 -> %i0
1968  L149:
1968  -live- %i0, %i2, %i3
1968  goto_if_not %i0, L150
1972  int_copy %i3 -> %i2
1975  goto L128
1978  ---
1978  L150:
1978  goto L128
1981  ---
1981  L148:
1981  L151:
1981  inline_call_r_i <JitCode 'is_true'>, R[%r4] -> %i0
1987  -live- %i0, %i2, %i3
1987  goto L149
1990  ---
1990  L147:
1990  goto L151
1993  ---
1993  L101:
1993  -live- %i2, %i3, %r0
1993  inline_call_ir_r <JitCode 'getname_u__AccessDirect_None'>, I[%i3], R[%r0] -> %r4
2001  -live- %i2, %r0, %r4
2001  -live- %i2, %r0, %r4
2001  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_debugdata> -> %r3
2006  -live- %i2, %r0, %r3, %r4
2006  goto_if_not_ptr_iszero %r3, L152
2010  ref_copy %r0 -> %r3
2013  -live- %i2, %r0, %r3, %r4
2013  getfield_vable_r %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r3
2018  -live- %i2, %r0, %r3, %r4
2018  ref_guard_value %r3
2020  -live- %i2, %r0, %r3, %r4
2020  record_quasiimmut_field %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_w_globals>, FieldDescr<pypy.interpreter.pycode.PyCode.mutate_w_globals>
2026  getfield_gc_r_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_w_globals> -> %r3
2031  L153:
2031  inline_call_r_r <JitCode 'finditem_str'>, R[%r3, %r4] -> %r3
2038  -live- %i2, %r0, %r3, %r4
2038  -live- %i2, %r0, %r3, %r4
2038  goto_if_not_ptr_iszero %r3, L154
2042  -live- %i2, %r0, %r4
2042  record_quasiimmut_field $<* struct pypy.interpreter.module.Module>, FieldDescr<pypy.interpreter.module.Module.inst_w_dict>, FieldDescr<pypy.interpreter.module.Module.mutate_w_dict>
2048  getfield_gc_r_pure $<* struct pypy.interpreter.module.Module>, FieldDescr<pypy.interpreter.module.Module.inst_w_dict> -> %r3
2053  inline_call_r_r <JitCode 'finditem_str'>, R[%r3, %r4] -> %r3
2060  -live- %i2, %r0, %r3, %r4
2060  -live- %i2, %r0, %r3, %r4
2060  goto_if_not_ptr_iszero %r3, L155
2064  inline_call_r_v <JitCode '_load_global_failed__AccessDirect_None'>, R[%r0, %r4]
2070  -live-
2070  raise $<* struct object>
2072  ---
2072  L155:
2072  L156:
2072  -live- %i2, %r0, %r3
2072  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2077  assert_not_none %r3
2079  -live- %i0, %i2, %r0, %r3
2079  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
2087  int_add %i0, $1 -> %i0
2091  -live- %i0, %i2, %r0
2091  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
2096  goto L128
2099  ---
2099  L154:
2099  goto L156
2102  ---
2102  L152:
2102  getfield_gc_r %r3, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_w_globals> -> %r3
2107  goto L153
2110  ---
2110  L102:
2110  -live- %i3, %r0
2110  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4cfac960> -> %r3
2114  setfield_gc_i %r3, %i3, FieldDescr<pypy.interpreter.pyopcode.SContinueLoop.inst_jump_to>
2119  inline_call_ir_r <JitCode 'unrollstack__AccessDirect_None'>, I[$8], R[%r0] -> %r2
2127  -live- %r0, %r2, %r3
2127  -live- %r0, %r2, %r3
2127  goto_if_not_ptr_iszero %r2, L157
2131  raise $<* struct object>
2133  ---
2133  L157:
2133  -live- %r0, %r2, %r3
2133  guard_class %r2 -> %i0
2136  getfield_raw_i %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock_vtable.cls_handle> -> %i0
2141  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
2146  -live- %i0, %r0, %r2, %r3
2146  int_guard_value %i0
2148  residual_call_r_i %i0, <IndirectCallTargets>, R[%r2, %r0, %r3], <CallDescr(rrr) EF=7> -> %i2
2157  -live- %i2
2157  int_return %i2
2159  ---
2159  L103:
2159  -live- %i2, %i3, %r0
2159  int_add %i2, %i3 -> %i0
2163  -live- %i0, %i2, %r0
2163  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock> -> %r3
2168  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4b50df50> -> %r4
2172  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_handlerposition>
2177  -live- %i2, %r0, %r3, %r4
2177  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2182  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth>
2187  setfield_gc_r %r4, %r3, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_previous>
2192  -live- %i2, %r0, %r4
2192  setfield_vable_r %r0, %r4, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock>
2197  goto L128
2200  ---
2200  L104:
2200  -live- %i2, %i3, %r0
2200  int_add %i2, %i3 -> %i0
2204  -live- %i0, %i2, %r0
2204  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock> -> %r3
2209  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4b50dd70> -> %r4
2213  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_handlerposition>
2218  -live- %i2, %r0, %r3, %r4
2218  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2223  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth>
2228  setfield_gc_r %r4, %r3, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_previous>
2233  -live- %i2, %r0, %r4
2233  setfield_vable_r %r0, %r4, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock>
2238  goto L128
2241  ---
2241  L105:
2241  -live- %i2, %i3, %r0
2241  int_add %i2, %i3 -> %i0
2245  -live- %i0, %i2, %r0
2245  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock> -> %r3
2250  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4b50de60> -> %r4
2254  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_handlerposition>
2259  -live- %i2, %r0, %r3, %r4
2259  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2264  setfield_gc_i %r4, %i0, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth>
2269  setfield_gc_r %r4, %r3, FieldDescr<pypy.interpreter.pyopcode.FrameBlock.inst_previous>
2274  -live- %i2, %r0, %r4
2274  setfield_vable_r %r0, %r4, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_lastblock>
2279  goto L128
2282  ---
2282  L106:
2282  -live- %i2, %i3, %r0
2282  -live- %i2, %i3, %r0
2282  getarrayitem_vable_r %r0, %i3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r3
2290  -live- %i2, %i3, %r0, %r3
2290  goto_if_not_ptr_iszero %r3, L158
2294  inline_call_ir_v <JitCode '_load_fast_failed__AccessDirect_None'>, I[%i3], R[%r0]
2301  -live-
2301  raise $<* struct object>
2303  ---
2303  L158:
2303  -live- %i2, %r0, %r3
2303  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2308  assert_not_none %r3
2310  -live- %i0, %i2, %r0, %r3
2310  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
2318  int_add %i0, $1 -> %i0
2322  -live- %i0, %i2, %r0
2322  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
2327  goto L128
2330  ---
2330  L107:
2330  -live- %i2, %i3, %r0
2330  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
2336  -live- %i2, %i3, %r0, %r3
2336  assert_not_none %r3
2338  -live- %i2, %i3, %r0, %r3
2338  setarrayitem_vable_r %r0, %i3, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
2346  goto L128
2349  ---
2349  L108:
2349  -live- %i2, %i3, %r0
2349  inline_call_ir_v <JitCode 'DELETE_FAST__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2357  -live- %i2
2357  goto L128
2360  ---
2360  L109:
2360  -live- %i2, %i3, %r0
2360  inline_call_ir_v <JitCode 'RAISE_VARARGS__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2368  -live-
2368  raise $<* struct object>
2370  ---
2370  L110:
2370  -live- %i2, %i3, %r0
2370  inline_call_ir_v <JitCode 'CALL_FUNCTION__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2378  -live- %i2
2378  goto L128
2381  ---
2381  L111:
2381  -live- %i2, %i3, %r0
2381  inline_call_ir_v <JitCode 'MAKE_FUNCTION__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2389  -live- %i2
2389  goto L128
2392  ---
2392  L112:
2392  -live- %i2, %i3, %r0
2392  inline_call_ir_v <JitCode 'BUILD_SLICE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2400  -live- %i2
2400  goto L128
2403  ---
2403  L113:
2403  -live- %i2, %i3, %r0
2403  inline_call_ir_v <JitCode 'MAKE_CLOSURE__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2411  -live- %i2
2411  goto L128
2414  ---
2414  L114:
2414  -live- %i2, %i3, %r0
2414  -live- %i2, %i3, %r0
2414  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r3
2419  getfield_gc_i_pure %r3, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_nlocals> -> %i0
2424  int_add %i3, %i0 -> %i0
2428  -live- %i0, %i2, %r0
2428  getarrayitem_vable_r %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r3
2436  -live- %i2, %r0, %r3
2436  getfield_vable_i %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth> -> %i0
2441  assert_not_none %r3
2443  -live- %i0, %i2, %r0, %r3
2443  setarrayitem_vable_r %r0, %i0, %r3, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780>
2451  int_add %i0, $1 -> %i0
2455  -live- %i0, %i2, %r0
2455  setfield_vable_i %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth>
2460  goto L128
2463  ---
2463  L115:
2463  -live- %i2, %i3, %r0
2463  inline_call_ir_v <JitCode 'LOAD_DEREF__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2471  -live- %i2
2471  goto L128
2474  ---
2474  L116:
2474  -live- %i2, %i3, %r0
2474  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
2480  -live- %i2, %i3, %r0, %r3
2480  assert_not_none %r3
2482  -live- %i2, %i3, %r0, %r3
2482  getfield_vable_r %r0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_pycode> -> %r4
2487  getfield_gc_i_pure %r4, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_nlocals> -> %i0
2492  int_add %i3, %i0 -> %i0
2496  -live- %i0, %i2, %r0, %r3
2496  getarrayitem_vable_r %r0, %i0, FieldDescr<pypy.interpreter.pyframe.PyFrame.inst_locals_cells_stack_w>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff4aeca780> -> %r4
2504  setfield_gc_r %r4, %r3, FieldDescr<pypy.interpreter.nestedscope.Cell.inst_w_value>
2509  goto L128
2512  ---
2512  L117:
2512  -live- %i2, %i3, %r0
2512  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
2518  -live- %i2, %i3, %r0, %r3
2518  assert_not_none %r3
2520  inline_call_ir_v <JitCode 'call_function__AccessDirect_None'>, I[%i3], R[%r0, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>]
2529  -live- %i2
2529  goto L128
2532  ---
2532  L118:
2532  -live- %i2, %i3, %r0
2532  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
2538  -live- %i2, %i3, %r0, %r3
2538  assert_not_none %r3
2540  inline_call_ir_v <JitCode 'call_function__AccessDirect_None'>, I[%i3], R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r3]
2549  -live- %i2
2549  goto L128
2552  ---
2552  L119:
2552  -live- %i2, %i3, %r0
2552  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r3
2558  -live- %i2, %i3, %r0, %r3
2558  assert_not_none %r3
2560  inline_call_r_r <JitCode 'popvalue_maybe_none__AccessDirect_None'>, R[%r0] -> %r4
2566  -live- %i2, %i3, %r0, %r3, %r4
2566  assert_not_none %r4
2568  inline_call_ir_v <JitCode 'call_function__AccessDirect_None'>, I[%i3], R[%r0, %r4, %r3]
2577  -live- %i2
2577  goto L128
2580  ---
2580  L120:
2580  -live- %i2, %i3, %r0
2580  inline_call_ir_v <JitCode 'SETUP_WITH__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2588  -live- %i2
2588  goto L128
2591  ---
2591  L121:
2591  -live- %i2, %i3, %r0, %r1, %r2
2591  strgetitem %r1, %i2 -> %i1
2595  -live- %i1, %i2, %i3, %r0, %r1, %r2
2595  goto_if_not_int_lt %i1, $90, L159
2600  raise $<* struct object>
2602  ---
2602  L159:
2602  int_add %i2, $1L -> %i0
2606  strgetitem %r1, %i0 -> %i0
2610  int_add %i2, $2L -> %i4
2614  strgetitem %r1, %i4 -> %i4
2618  int_add %i2, $3L -> %i2
2622  int_mul %i3, $65536 -> %i3
2626  int_mul %i4, $256 -> %i4
2630  int_or %i3, %i4 -> %i3
2634  int_or %i3, %i0 -> %i3
2638  goto L4
2641  ---
2641  L122:
2641  -live- %i2, %i3, %r0
2641  inline_call_ir_v <JitCode 'SET_ADD__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2649  -live- %i2
2649  goto L128
2652  ---
2652  L123:
2652  -live- %i2, %i3, %r0
2652  inline_call_ir_v <JitCode 'MAP_ADD__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2660  -live- %i2
2660  goto L128
2663  ---
2663  L124:
2663  -live- %i2, %i3, %r0
2663  inline_call_ir_v <JitCode 'LOOKUP_METHOD__AccessDirect_star_1'>, I[%i3, %i2], R[%r0]
2671  -live- %i2
2671  goto L128
2674  ---
2674  L125:
2674  -live- %i2, %i3, %r0
2674  inline_call_ir_v <JitCode 'CALL_METHOD__AccessDirect_star_1'>, I[%i3, %i2], R[%r0]
2682  -live- %i2
2682  goto L128
2685  ---
2685  L126:
2685  -live- %i2, %i3, %r0
2685  inline_call_ir_v <JitCode 'BUILD_LIST_FROM_ARG__AccessDirect_None'>, I[%i3, %i2], R[%r0]
2693  -live- %i2
2693  goto L128
2696  ---
2696  L127:
2696  -live- %i2, %i3
2696  -live- %i2, %i3
2696  record_quasiimmut_field $<* struct pypy.module.sys.Module>, FieldDescr<pypy.module.sys.Module.inst_debug>, FieldDescr<pypy.module.sys.Module.mutate_debug>
2702  getfield_gc_i_pure $<* struct pypy.module.sys.Module>, FieldDescr<pypy.module.sys.Module.inst_debug> -> %i0
2707  -live- %i0, %i2, %i3
2707  goto_if_not %i0, L160
2711  goto L128
2714  ---
2714  L160:
2714  int_add %i2, %i3 -> %i2
2718  goto L128
2721  ---
2721  L3:
2721  int_copy $0 -> %i3
2724  goto L4
2727  ---
2727  L1:
2727  getfield_gc_r %r3, FieldDescr<pypy.interpreter.pyframe.FrameDebugData.inst_w_f_trace> -> %r3
2732  -live- %r0, %r1, %r2, %r3
2732  goto_if_not_ptr_iszero %r3, L161
2736  goto L2
2739  ---
2739  L161:
2739  getfield_gc_i %r2, FieldDescr<pypy.interpreter.executioncontext.ExecutionContext.inst_is_tracing> -> %i0
2744  -live- %i0, %r0, %r1, %r2
2744  goto_if_not_int_is_true %i0, L162
2748  goto L2
2751  ---
2751  L162:
2751  -live- %r0, %r1, %r2
2751  record_quasiimmut_field %r2, FieldDescr<pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc>, FieldDescr<pypy.interpreter.executioncontext.ExecutionContext.mutate_w_tracefunc>
2757  getfield_gc_r_pure %r2, FieldDescr<pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc> -> %r3
2762  -live- %r0, %r1, %r2, %r3
2762  ref_guard_value %r3
2764  -live- %r0, %r1, %r2, %r3
2764  goto_if_not_ptr_iszero %r3, L163
2768  goto L2
2771  ---
2771  L163:
2771  inline_call_r_v <JitCode 'run_trace_func__AccessDirect_None'>, R[%r2, %r0]
2777  -live- %r0, %r1, %r2
2777  goto L2
