   0  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypeptr.W_CTypePtrOrArray.inst_ctitem> -> %r2
   5  -live- %r0, %r1, %r2
   5  guard_class %r2 -> %i0
   8  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  13  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  18  -live- %i0, %r0, %r1
  18  goto_if_not %i0, L1
  22  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypeptr.W_CTypePtrOrArray.inst_ctitem> -> %r0
  27  -live- %r0, %r1
  27  guard_class %r0 -> %i0
  30  getfield_raw_i %i0, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType_vtable.cls_getcfield> -> %i0
  35  -live- %i0, %r0, %r1
  35  switch %i0, <SwitchDictDescr 0:L2, 1:L3, 2:L4>
  39  unreachable
  40  ---
  40  L2:
  40  -live- %r0, %r1
  40  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_name> -> %r0
  45  inline_call_r_r <JitCode 'oefmt__cdata___s__has_no_attribute___s__star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, %r0, %r1] -> %r0
  54  -live- %r0
  54  assert_not_none %r0
  56  -live- %r0
  56  guard_class %r0 -> %i0
  59  -live- %r0
  59  raise %r0
  61  ---
  61  L3:
  61  -live- %r0, %r1
  61  inline_call_r_r <JitCode 'W_CTypeStructOrUnion.getcfield'>, R[%r0, %r1] -> %r0
  68  -live- %r0
  68  ref_return %r0
  70  ---
  70  L4:
  70  -live- %r0, %r1
  70  inline_call_r_r <JitCode 'W_CTypePointer.getcfield'>, R[%r0, %r1] -> %r0
  77  -live- %r0
  77  ref_return %r0
  79  ---
  79  L1:
  79  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_name> -> %r0
  84  inline_call_r_r <JitCode 'oefmt__cdata___s__has_no_attribute___s__star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, %r0, %r1] -> %r0
  93  -live- %r0
  93  assert_not_none %r0
  95  -live- %r0
  95  guard_class %r0 -> %i0
  98  -live- %r0
  98  raise %r0
