   0  -live- %r1
   0  goto_if_not_ptr_nonzero %r1, L1
   4  ref_copy %r1 -> %r0
   7  -live- %r0, %r1
   7  guard_class %r1 -> %i0
  10  -live- %i0, %r0
  10  goto_if_not_int_eq %i0, $<* struct object_vtable>, L2
  15  getfield_gc_i %r0, FieldDescr<pypy.module.cpyext.methodobject.W_PyCFunctionObject.inst_ml> -> %i0
  20  getfield_raw_i %i0, FieldDescr<PyMethodDef.c_ml_doc> -> %i0
  25  -live- %i0
  25  goto_if_not_int_is_true %i0, L3
  29  residual_call_ir_r $<* fn charp2str>, I[%i0], R[], <CallDescr(i) EF=5> -> %r0
  37  -live- %r0
  37  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4f52efa0> -> %r1
  41  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
  46  ref_return %r1
  48  ---
  48  L3:
  48  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  50  ---
  50  L2:
  50  L4:
  50  raise $<* struct object>
  52  ---
  52  L1:
  52  goto L4
