   0  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.formatting.StringFormatter.inst_fmt> -> %r1
   5  getfield_gc_i %r0, FieldDescr<pypy.objspace.std.formatting.BaseStringFormatter.inst_fmtpos> -> %i0
  10  int_add %i0, $1 -> %i1
  14  int_copy %i1 -> %i2
  17  int_copy $1 -> %i3
  20  L1:
  20  strlen %r1 -> %i0
  23  -live- %i0, %i1, %i2, %i3, %r0, %r1
  23  goto_if_not_int_ge %i1, %i0, L2
  28  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
  32  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  37  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  42  assert_not_none %r1
  44  -live- %r1
  44  guard_class %r1 -> %i0
  47  -live- %r1
  47  raise %r1
  49  ---
  49  L2:
  49  strgetitem %r1, %i1 -> %i0
  53  -live- %i0, %i1, %i2, %i3, %r0, %r1
  53  switch %i0, <SwitchDictDescr 40:L3, 41:L4>
  57  L5:
  57  int_add %i1, $1 -> %i1
  61  goto L1
  64  ---
  64  L3:
  64  -live- %i1, %i2, %i3, %r0, %r1
  64  int_add %i3, $1 -> %i3
  68  goto L5
  71  ---
  71  L4:
  71  -live- %i1, %i2, %i3, %r0, %r1
  71  int_sub %i3, $1 -> %i3
  75  -live- %i1, %i2, %i3, %r0, %r1
  75  goto_if_not_int_is_zero %i3, L6
  79  int_add %i1, $1 -> %i0
  83  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.formatting.BaseStringFormatter.inst_fmtpos>
  88  strlen %r1 -> %i0
  91  -live- %i0, %i1, %i2, %r1
  91  goto_if_not_int_gt %i1, %i0, L7
  96  strlen %r1 -> %i1
  99  L8:
  99  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i2, %i1], R[%r1], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r1
 109  -live- %r1
 109  ref_return %r1
 111  ---
 111  L7:
 111  goto L8
 114  ---
 114  L6:
 114  goto L5
