   0  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_ctype> -> %r2
   5  -live- %i0, %i1, %r0, %r1, %r2
   8  guard_class %r2 -> %i2
  11  -live- %i0, %i1, %i2, %r0, %r1, %r2
  14  goto_if_not_int_eq %i2, $<* struct object_vtable>, L1
  19  getfield_gc_i_pure %r2, FieldDescr<pypy.module._cffi_backend.ctypeptr.W_CTypePtrOrArray.inst_length> -> %i2
  24  -live- %i0, %i1, %i2, %r0, %r1, %r2
  27  goto_if_not_int_lt %i2, $0, L2
  32  inline_call_r_r <JitCode 'W_CTypeArray.get_new_array_length'>, R[%r2, %r1] -> %r3
  39  -live- %i0, %i1, %r0, %r2, %r3
  42  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r1
  47  getfield_gc_i_pure %r3, FieldDescr<tuple2.item1> -> %i2
  52  -live- %i0, %i1, %i2, %r0, %r1, %r2
  55  goto_if_not_int_ne %i1, $-1, L3
  60  getfield_gc_r_pure %r2, FieldDescr<pypy.module._cffi_backend.ctypeptr.W_CTypePtrOrArray.inst_ctitem> -> %r1
  65  -live- %i1, %i2, %r0, %r1
  68  record_quasiimmut_field %r1, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_size>, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.mutate_size>
  74  getfield_gc_i_pure %r1, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_size> -> %i0
  79  -live- %i0, %i1, %i2, %r0
  82  int_mul_jump_if_ovf L4, %i0, %i2 -> %i2
  88  getfield_gc_i_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_offset> -> %i0
  93  -live- %i0, %i1, %i2
  96  int_add_jump_if_ovf L5, %i0, %i2 -> %i2
 102  -live- %i1, %i2
 105  goto_if_not_int_gt %i2, %i1, L6
 110  int_return %i2
 112  ---
 112  L6:
 112  int_return %i1
 114  ---
 114  L5:
 114  L7:
 114  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555ab11f9c90> -> %r1
 118  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 123  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 128  assert_not_none %r1
 130  -live- %r1
 133  raise %r1
 135  ---
 135  L4:
 135  goto L7
 138  ---
 138  L3:
 138  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i2
 145  -live- %i0, %i1, %i2, %r0, %r1, %r2
 148  goto_if_not %i2, L8
 152  int_return %i1
 154  ---
 154  L8:
 154  L9:
 154  -live- %i0, %i1, %r0, %r1, %r2
 157  goto_if_not_int_eq %i1, $-1, L10
 162  getfield_gc_i_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_offset> -> %i2
 167  int_add %i0, %i2 -> %i2
 171  getfield_gc_i_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_bitshift> -> %i0
 176  -live- %i0, %i1, %i2, %r0, %r1
 179  goto_if_not_int_ge %i0, $0, L11
 184  inline_call_ir_v <JitCode 'W_CField.convert_bitfield_from_object'>, I[%i2], R[%r0, %r1]
 192  -live- %i1
 195  int_return %i1
 197  ---
 197  L11:
 197  getfield_gc_r_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_ctype> -> %r2
 202  -live- %i1, %i2, %r1, %r2
 205  guard_class %r2 -> %i0
 208  getfield_raw_i %i0, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType_vtable.cls_convert_from_object> -> %i0
 213  -live- %i0, %i1, %i2, %r1, %r2
 216  int_guard_value %i0
 218  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i2], R[%r2, %r1], <CallDescr(rir) EF=7>
 227  -live- %i1
 230  int_return %i1
 232  ---
 232  L10:
 232  -live- %i1, %r0, %r1, %r2
 235  guard_class %r2 -> %i2
 238  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 243  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 248  -live- %i1, %i2, %r0, %r1, %r2
 251  goto_if_not %i2, L12
 255  -live- %i1, %r0, %r1, %r2
 258  record_quasiimmut_field %r2, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CTypeStructOrUnion.inst__with_var_array>, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CTypeStructOrUnion.mutate__with_var_array>
 264  getfield_gc_i_pure %r2, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CTypeStructOrUnion.inst__with_var_array> -> %i2
 269  -live- %i1, %i2, %r0, %r1, %r2
 272  goto_if_not %i2, L13
 276  -live- %i1, %r0, %r1, %r2
 279  goto_if_not_ptr_nonzero %r1, L14
 283  ref_copy %r1 -> %r3
 286  -live- %i1, %r0, %r1, %r2, %r3
 289  guard_class %r3 -> %i2
 292  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 297  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 302  -live- %i1, %i2, %r0, %r1, %r2
 305  goto_if_not %i2, L15
 309  int_return %i1
 311  ---
 311  L15:
 311  L16:
 311  -live- %i1, %r0, %r1, %r2
 314  record_quasiimmut_field %r2, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_size>, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.mutate_size>
 320  getfield_gc_i_pure %r2, FieldDescr<pypy.module._cffi_backend.ctypeobj.W_CType.inst_size> -> %i2
 325  ref_isvirtual %r1 -> %i0
 328  -live- %i0, %i1, %i2, %r0, %r1, %r2
 331  goto_if_not %i0, L17
 335  inline_call_ir_i <JitCode 'convert_struct_from_object__v784___simple_call__function_c'>, I[$<* None>, %i2], R[%r2, %r1] -> %i2
 345  L18:
 345  -live- %i1, %i2, %r0
 348  int_mul_jump_if_ovf L19, %i2, $1 -> %i2
 354  getfield_gc_i_pure %r0, FieldDescr<pypy.module._cffi_backend.ctypestruct.W_CField.inst_offset> -> %i0
 359  -live- %i0, %i1, %i2
 362  int_add_jump_if_ovf L20, %i0, %i2 -> %i2
 368  -live- %i1, %i2
 371  goto_if_not_int_gt %i2, %i1, L21
 376  int_return %i2
 378  ---
 378  L21:
 378  int_return %i1
 380  ---
 380  L20:
 380  L22:
 380  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555ab11f9c90> -> %r1
 384  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 389  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 394  assert_not_none %r1
 396  -live- %r1
 399  raise %r1
 401  ---
 401  L19:
 401  goto L22
 404  ---
 404  L17:
 404  residual_call_ir_i $<* fn convert_struct_from_object_trampoline__v811___simple_call__function_c>, I[$<* None>, %i2], R[%r2, %r1], <CallDescr(riri) EF=7> -> %i2
 415  -live- %i1, %i2, %r0
 418  goto L18
 421  ---
 421  L14:
 421  goto L16
 424  ---
 424  L13:
 424  int_return %i1
 426  ---
 426  L12:
 426  int_return %i1
 428  ---
 428  L2:
 428  goto L9
 431  ---
 431  L1:
 431  goto L9
