   0  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.newformat.TemplateFormatter.inst_template> -> %r0
   5  int_copy %i0 -> %i3
   8  L1:
   8  -live- %i0, %i1, %i3, %r0
  11  goto_if_not_int_lt %i3, %i1, L2
  16  strgetitem %r0, %i3 -> %i2
  20  -live- %i0, %i1, %i2, %i3, %r0
  23  switch %i2, <SwitchDictDescr 33:L3, 58:L4>
  27  int_add %i3, $1 -> %i3
  31  goto L1
  34  ---
  34  L3:
  34  L5:
  34  -live- %i0, %i1, %i2, %i3, %r0
  37  goto_if_not_int_eq %i2, $'!', L6
  42  int_add %i3, $1 -> %i2
  46  -live- %i0, %i1, %i2, %i3, %r0
  49  goto_if_not_int_eq %i2, %i1, L7
  54  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555ab11f9c90> -> %r0
  58  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  63  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  68  assert_not_none %r0
  70  -live- %r0
  73  raise %r0
  75  ---
  75  L7:
  75  strgetitem %r0, %i2 -> %i4
  79  int_add %i2, $1 -> %i2
  83  -live- %i0, %i1, %i2, %i3, %i4, %r0
  86  goto_if_not_int_lt %i2, %i1, L8
  91  strgetitem %r0, %i2 -> %i1
  95  -live- %i0, %i1, %i2, %i3, %i4, %r0
  98  goto_if_not_int_ne %i1, $':', L9
 103  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555ab11f9c90> -> %r0
 107  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 112  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 117  assert_not_none %r0
 119  -live- %r0
 122  raise %r0
 124  ---
 124  L9:
 124  int_add %i2, $1 -> %i2
 128  newstr $1 -> %r2
 131  strsetitem %r2, $0, %i4
 135  L10:
 135  strlen %r0 -> %i1
 138  -live- %i0, %i1, %i2, %i3, %r0, %r2
 141  goto_if_not_int_gt %i3, %i1, L11
 146  strlen %r0 -> %i3
 149  L12:
 149  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i0, %i3], R[%r0], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r0
 159  -live- %i2, %r0, %r2
 162  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555af3a982c0> -> %r1
 166  setfield_gc_r %r1, %r0, FieldDescr<tuple3.item0>
 171  setfield_gc_r %r1, %r2, FieldDescr<tuple3.item1>
 176  setfield_gc_i %r1, %i2, FieldDescr<tuple3.item2>
 181  ref_return %r1
 183  ---
 183  L11:
 183  goto L12
 186  ---
 186  L8:
 186  newstr $1 -> %r2
 189  strsetitem %r2, $0, %i4
 193  goto L10
 196  ---
 196  L6:
 196  int_add %i3, $1 -> %i2
 200  ref_copy $<* struct rpy_string> -> %r2
 203  goto L10
 206  ---
 206  L4:
 206  -live- %i0, %i1, %i2, %i3, %r0
 209  goto L5
 212  ---
 212  L2:
 212  strlen %r0 -> %i2
 215  -live- %i0, %i1, %i2, %r0
 218  goto_if_not_int_gt %i1, %i2, L13
 223  int_copy %i1 -> %i2
 226  strlen %r0 -> %i1
 229  L14:
 229  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i0, %i1], R[%r0], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r0
 239  -live- %i2, %r0
 242  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555af3a982c0> -> %r1
 246  setfield_gc_r %r1, %r0, FieldDescr<tuple3.item0>
 251  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<tuple3.item1>
 256  setfield_gc_i %r1, %i2, FieldDescr<tuple3.item2>
 261  ref_return %r1
 263  ---
 263  L13:
 263  int_copy %i1 -> %i2
 266  goto L14
