   0  -live- %r0, %r1, %r2
   3  goto_if_not_ptr_iszero %r1, L1
   7  ref_copy $<* struct rpy_string> -> %r1
  10  L2:
  10  -live- %r0, %r1, %r2
  13  goto_if_not_ptr_iszero %r2, L3
  17  ref_copy $<* struct pypy.module._codecs.interp_codecs.Charmap_Encode> -> %r3
  20  L4:
  20  inline_call_r_r <JitCode 'convert_arg_to_w_unicode'>, R[%r0, $<* struct rpy_string>] -> %r0
  27  -live- %r0, %r1, %r3
  30  guard_class %r0 -> %i0
  33  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_utf8_w> -> %i0
  38  -live- %i0, %r0, %r1, %r3
  41  switch %i0, <SwitchDictDescr 0:L5, 1:L6, 2:L7>
  45  unreachable
  46  ---
  46  L5:
  46  -live- %r0, %r1, %r3
  49  ref_copy %r0 -> %r4
  52  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
  57  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  62  record_known_result_i_ir_v %i0, $<* fn _check_utf8>, I[$True, $0, $-1], R[%r2], <CallDescr(riii) EF=4>
  73  -live- %r0, %r1, %r3, %r4
  76  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  81  L8:
  81  residual_call_r_r $<* fn utf8_encode_charmap>, R[%r2, %r1, %r3], <CallDescr(rrr) EF=7> -> %r2
  90  -live- %r2, %r4
  93  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a68dd2100> -> %r0
  97  setfield_gc_r %r0, %r2, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 102  getfield_gc_i_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 107  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a76e65440> -> %r2
 111  setfield_gc_i %r2, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 116  inline_call_r_r <JitCode 'wraptuple2'>, R[%r0, %r2] -> %r2
 123  -live- %r2
 126  ref_return %r2
 128  ---
 128  L6:
 128  -live- %r0, %r1, %r3
 131  ref_copy %r0 -> %r4
 134  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r2
 139  goto L8
 142  ---
 142  L7:
 142  -live- %r0
 145  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r0] -> %r2
 154  -live- %r2
 157  assert_not_none %r2
 159  -live- %r2
 162  guard_class %r2 -> %i0
 165  -live- %r2
 168  raise %r2
 170  ---
 170  L3:
 170  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r2] -> %i0
 177  -live- %i0, %r0, %r1, %r2
 180  goto_if_not %i0, L9
 184  ref_copy $<* struct pypy.module._codecs.interp_codecs.Charmap_Encode> -> %r3
 187  goto L4
 190  ---
 190  L9:
 190  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563aca33d600> -> %r3
 194  setfield_gc_r %r3, %r2, FieldDescr<pypy.module._codecs.interp_codecs.Charmap_Encode.inst_w_mapping>
 199  goto L4
 202  ---
 202  L1:
 202  goto L2
