   0  -live- %i0, %r0, %r1
   0  guard_class %r1 -> %i1
   3  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i1
   8  -live- %i0, %i1, %r0, %r1
   8  switch %i1, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  12  unreachable
  13  ---
  13  L1:
  13  -live- %i0, %r0, %r1
  13  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r1
  19  -live- %i0, %r0, %r1
  19  L4:
  19  inline_call_r_r <JitCode 'W_LibObject._get_attr_elidable_promote'>, R[%r0, %r1] -> %r2
  26  -live- %i0, %r0, %r1, %r2
  26  catch_exception L5
  29  ref_return %r2
  31  ---
  31  L5:
  31  goto_if_exception_mismatch $<* struct object_vtable>, L6
  35  residual_call_r_r $<* fn W_LibObject._build_attr>, R[%r0, %r1], <CallDescr(rr) EF=7> -> %r2
  43  -live- %i0, %r0, %r1, %r2
  43  -live- %i0, %r0, %r1, %r2
  43  goto_if_not_ptr_iszero %r2, L7
  47  -live- %i0, %r0, %r1
  47  goto_if_not %i0, L8
  51  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r1, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i1
  59  -live- %i1, %r0, %r1
  59  goto_if_not %i1, L9
  63  residual_call_ir_r $<* fn W_LibObject.dir1>, I[$True], R[%r0], <CallDescr(ri) EF=7> -> %r2
  72  -live- %r2
  72  ref_return %r2
  74  ---
  74  L9:
  74  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r1, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i1
  82  -live- %i1, %r0, %r1
  82  goto_if_not %i1, L10
  86  residual_call_r_r $<* fn W_LibObject.full_dict_copy>, R[%r0], <CallDescr(r) EF=7> -> %r2
  93  -live- %r2
  93  ref_return %r2
  95  ---
  95  L10:
  95  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r1, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i1
 103  -live- %i1, %r0, %r1
 103  goto_if_not %i1, L11
 107  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 109  ---
 109  L11:
 109  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r1, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i1
 117  -live- %i1, %r0, %r1
 117  goto_if_not %i1, L12
 121  getfield_gc_r %r0, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_libname> -> %r1
 126  new_array_clear $2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0> -> %r0
 131  -live- %r0, %r1
 131  goto_if_not_ptr_nonzero %r1, L13
 135  L14:
 135  setarrayitem_gc_r %r0, $0, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 141  setarrayitem_gc_r %r0, $1, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 147  ref_isvirtual %r0 -> %i1
 150  -live- %i1, %r0
 150  goto_if_not %i1, L15
 154  L16:
 154  inline_call_ir_r <JitCode 'll_join_strs__v1222___simple_call__function_'>, I[$2], R[%r0] -> %r1
 162  -live- %r1
 162  L17:
 162  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac5501f30> -> %r2
 166  setfield_gc_r %r2, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 171  ref_return %r2
 173  ---
 173  L15:
 173  int_isconstant $2 -> %i1
 176  -live- %i1, %r0
 176  goto_if_not %i1, L18
 180  goto L16
 183  ---
 183  L18:
 183  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1224___simple_call__function_>, I[$2], R[%r0], <CallDescr(ir) EF=5> -> %r1
 192  -live- %r1
 192  goto L17
 195  ---
 195  L13:
 195  ref_copy $<* struct rpy_string> -> %r1
 198  goto L14
 201  ---
 201  L12:
 201  L19:
 201  getfield_gc_r %r0, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_libname> -> %r0
 206  inline_call_r_r <JitCode 'oefmt__cffi_library___s__has_no_function__constant_or_global_variable_named___s__star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, %r0, %r1] -> %r1
 215  -live- %r1
 215  assert_not_none %r1
 217  -live- %r1
 217  guard_class %r1 -> %i1
 220  -live- %r1
 220  raise %r1
 222  ---
 222  L8:
 222  goto L19
 225  ---
 225  L7:
 225  ref_return %r2
 227  ---
 227  L6:
 227  reraise
 228  ---
 228  L2:
 228  -live- %i0, %r0, %r1
 228  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r1
 233  goto L4
 236  ---
 236  L3:
 236  -live- %r1
 236  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>, %r1] -> %r1
 245  -live- %r1
 245  assert_not_none %r1
 247  -live- %r1
 247  guard_class %r1 -> %i1
 250  -live- %r1
 250  raise %r1
