   0  -live- %r0, %r1
   0  guard_class %r0 -> %i0
   3  getfield_raw_i %i0, FieldDescr<pypy.interpreter.function.Function_vtable.cls_can_change_code> -> %i0
   8  -live- %i0, %r0, %r1
   8  goto_if_not %i0, L1
  12  inline_call_ir_r <JitCode 'interp_w__Code'>, I[$False], R[%r1] -> %r2
  20  -live- %r0, %r2
  20  -live- %r0, %r2
  20  record_quasiimmut_field %r0, FieldDescr<pypy.interpreter.function.Function.inst_closure>, FieldDescr<pypy.interpreter.function.Function.mutate_closure>
  26  getfield_gc_r_pure %r0, FieldDescr<pypy.interpreter.function.Function.inst_closure> -> %r1
  31  -live- %r0, %r1, %r2
  31  goto_if_not_ptr_nonzero %r1, L2
  35  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %i0
  40  -live- %i0, %r0, %r2
  40  goto_if_not_int_is_true %i0, L3
  44  -live- %r0, %r2
  44  record_quasiimmut_field %r0, FieldDescr<pypy.interpreter.function.Function.inst_closure>, FieldDescr<pypy.interpreter.function.Function.mutate_closure>
  50  getfield_gc_r_pure %r0, FieldDescr<pypy.interpreter.function.Function.inst_closure> -> %r1
  55  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %i1
  60  L4:
  60  -live- %i1, %r0, %r2
  60  guard_class %r2 -> %i0
  63  -live- %i0, %i1, %r0, %r2
  63  goto_if_not_int_eq %i0, $<* struct object_vtable>, L5
  68  getfield_gc_r_pure %r2, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_freevars> -> %r1
  73  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac3d277f8> -> %i0
  78  -live- %i0, %i1, %r0, %r2
  78  goto_if_not_int_ne %i1, %i0, L6
  83  getfield_gc_r_pure %r2, FieldDescr<pypy.interpreter.pycode.PyCode.inst_co_freevars> -> %r1
  88  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac3d277f8> -> %i0
  93  inline_call_ir_r <JitCode 'oefmt___N___requires_a_code_object_with__d_free_vars__not__d_star_3'>, I[%i1, %i0], R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, %r0] -> %r1
 104  -live- %r1
 104  assert_not_none %r1
 106  -live- %r1
 106  guard_class %r1 -> %i0
 109  -live- %r1
 109  raise %r1
 111  ---
 111  L6:
 111  L7:
 111  getfield_gc_r %r0, FieldDescr<pypy.interpreter.function.Function.inst_w_doc> -> %r1
 116  -live- %r0, %r1, %r2
 116  goto_if_not_ptr_iszero %r1, L8
 120  -live- %r0, %r2
 120  record_quasiimmut_field %r0, FieldDescr<pypy.interpreter.function.Function.inst_code>, FieldDescr<pypy.interpreter.function.Function.mutate_code>
 126  getfield_gc_r_pure %r0, FieldDescr<pypy.interpreter.function.Function.inst_code> -> %r1
 131  -live- %r0, %r1, %r2
 131  guard_class %r1 -> %i0
 134  getfield_raw_i %i0, FieldDescr<pypy.interpreter.eval.Code_vtable.cls_getdocstring> -> %i0
 139  -live- %i0, %r0, %r1, %r2
 139  switch %i0, <SwitchDictDescr 0:L9, 1:L10, 2:L11>
 143  unreachable
 144  ---
 144  L9:
 144  -live- %r0, %r1, %r2
 144  getfield_gc_r_pure %r1, FieldDescr<pypy.interpreter.gateway.BuiltinCode.inst_docstring> -> %r1
 149  -live- %r0, %r1, %r2
 149  goto_if_not_ptr_iszero %r1, L12
 153  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 156  L13:
 156  setfield_gc_r %r0, %r3, FieldDescr<pypy.interpreter.function.Function.inst_w_doc>
 161  L14:
 161  -live- %r0, %r2
 161  jit_force_quasi_immutable %r0, FieldDescr<pypy.interpreter.function.Function.mutate_code>
 165  setfield_gc_r %r0, %r2, FieldDescr<pypy.interpreter.function.Function.inst_code>
 170  void_return
 171  ---
 171  L12:
 171  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac5501f30> -> %r3
 175  setfield_gc_r %r3, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 180  goto L13
 183  ---
 183  L10:
 183  -live- %r0, %r1, %r2
 183  inline_call_r_r <JitCode 'PyCode.getdocstring'>, R[%r1] -> %r3
 189  -live- %r0, %r2, %r3
 189  goto L13
 192  ---
 192  L11:
 192  -live- %r0, %r2
 192  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 195  goto L13
 198  ---
 198  L8:
 198  goto L14
 201  ---
 201  L5:
 201  goto L7
 204  ---
 204  L3:
 204  int_copy $0 -> %i1
 207  goto L4
 210  ---
 210  L2:
 210  int_copy $0 -> %i1
 213  goto L4
 216  ---
 216  L1:
 216  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
 220  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 225  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 230  assert_not_none %r1
 232  -live- %r1
 232  guard_class %r1 -> %i0
 235  -live- %r1
 235  raise %r1
