   0  strgetitem $<* struct rpy_string>, $0 -> %i2
   4  newstr $1 -> %r1
   7  strsetitem %r1, $0, %i2
  11  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__fill_char>
  16  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
  21  setfield_gc_i %r0, $False, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__alternate>
  26  setfield_gc_i %r0, $'\x00', FieldDescr<pypy.objspace.std.newformat.Formatter.inst__sign>
  31  setfield_gc_i %r0, $False, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__thousands_sep>
  36  setfield_gc_i %r0, $-1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__precision>
  41  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.newformat.Formatter.inst_spec> -> %r2
  46  strlen %r2 -> %i1
  49  -live- %i0, %i1, %r0, %r2
  49  goto_if_not_int_is_true %i1, L1
  53  strlen %r2 -> %i2
  56  int_sub %i2, $0 -> %i1
  60  -live- %i0, %i1, %i2, %r0, %r2
  60  goto_if_not_int_ge %i1, $2, L2
  65  strgetitem %r2, $1 -> %i1
  69  -live- %i0, %i1, %i2, %r0, %r2
  69  switch %i1, <SwitchDictDescr 60:L3, 61:L4, 62:L5>
  73  -live- %i0, %i1, %i2, %r0, %r2
  73  goto_if_not_int_eq %i1, $'^', L6
  78  L7:
  78  strgetitem %r2, $1 -> %i1
  82  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
  87  strlen %r2 -> %i1
  90  -live- %i0, %i1, %i2, %r0, %r2
  90  goto_if_not_int_lt %i1, $1, L8
  95  strlen %r2 -> %i1
  98  L9:
  98  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[$0, %i1], R[%r2], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r1
 108  -live- %i0, %i2, %r0, %r1, %r2
 108  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__fill_char>
 113  int_copy $True -> %i3
 116  int_copy $2 -> %i4
 119  int_copy $True -> %i5
 122  L10:
 122  int_sub %i2, %i4 -> %i1
 126  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 126  goto_if_not_int_ge %i1, $1, L11
 131  strgetitem %r2, %i4 -> %i1
 135  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 135  switch %i1, <SwitchDictDescr 32:L12, 43:L13>
 139  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 139  goto_if_not_int_eq %i1, $'-', L14
 144  L15:
 144  strgetitem %r2, %i4 -> %i1
 148  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__sign>
 153  int_add %i4, $1 -> %i4
 157  L16:
 157  int_sub %i2, %i4 -> %i1
 161  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 161  goto_if_not_int_ge %i1, $1, L17
 166  strgetitem %r2, %i4 -> %i1
 170  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 170  goto_if_not_int_eq %i1, $'#', L18
 175  setfield_gc_i %r0, $True, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__alternate>
 180  int_add %i4, $1 -> %i4
 184  L19:
 184  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 184  goto_if_not %i5, L20
 188  L21:
 188  inline_call_ir_r <JitCode '_parse_int_look_inside_iff__str'>, I[%i4, %i2], R[%r2] -> %r1
 197  -live- %i0, %i2, %r0, %r1, %r2
 197  getfield_gc_i_pure %r1, FieldDescr<tuple2.item0> -> %i1
 202  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i3
 207  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__width>
 212  -live- %i0, %i2, %i3, %r0, %r2
 212  goto_if_not_int_ne %i2, %i3, L22
 217  strgetitem %r2, %i3 -> %i1
 221  -live- %i0, %i1, %i2, %i3, %r0, %r2
 221  goto_if_not_int_eq %i1, $',', L23
 226  setfield_gc_i %r0, $True, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__thousands_sep>
 231  int_add %i3, $1 -> %i3
 235  L24:
 235  -live- %i0, %i2, %i3, %r0, %r2
 235  goto_if_not_int_ne %i2, %i3, L25
 240  strgetitem %r2, %i3 -> %i1
 244  -live- %i0, %i1, %i2, %i3, %r0, %r2
 244  goto_if_not_int_eq %i1, $'.', L26
 249  int_add %i3, $1 -> %i1
 253  inline_call_ir_r <JitCode '_parse_int_look_inside_iff__str'>, I[%i1, %i2], R[%r2] -> %r1
 262  -live- %i0, %i2, %r0, %r1, %r2
 262  getfield_gc_i_pure %r1, FieldDescr<tuple2.item0> -> %i1
 267  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i3
 272  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__precision>
 277  -live- %i0, %i1, %i2, %i3, %r0, %r2
 277  goto_if_not_int_eq %i1, $-1, L27
 282  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
 286  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 291  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 296  assert_not_none %r1
 298  -live- %r1
 298  guard_class %r1 -> %i1
 301  -live- %r1
 301  raise %r1
 303  ---
 303  L27:
 303  L28:
 303  int_sub %i2, %i3 -> %i1
 307  -live- %i0, %i1, %i2, %i3, %r0, %r2
 307  goto_if_not_int_gt %i1, $1, L29
 312  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
 316  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 321  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 326  assert_not_none %r1
 328  -live- %r1
 328  guard_class %r1 -> %i1
 331  -live- %r1
 331  raise %r1
 333  ---
 333  L29:
 333  int_sub %i2, %i3 -> %i1
 337  -live- %i0, %i1, %i3, %r0, %r2
 337  goto_if_not_int_eq %i1, $1, L30
 342  strgetitem %r2, %i3 -> %i0
 346  L31:
 346  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__type>
 351  getfield_gc_i %r0, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__thousands_sep> -> %i1
 356  -live- %i0, %i1
 356  goto_if_not %i1, L32
 360  -live- %i0
 360  switch %i0, <SwitchDictDescr 0:L33, 37:L34, 69:L35, 70:L36, 71:L37, 100:L38, 101:L39, 102:L40, 103:L41>
 364  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
 368  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 373  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 378  assert_not_none %r1
 380  -live- %r1
 380  guard_class %r1 -> %i1
 383  -live- %r1
 383  raise %r1
 385  ---
 385  L33:
 385  -live-
 385  int_return $False
 387  ---
 387  L34:
 387  -live-
 387  int_return $False
 389  ---
 389  L35:
 389  -live-
 389  int_return $False
 391  ---
 391  L36:
 391  -live-
 391  int_return $False
 393  ---
 393  L37:
 393  -live-
 393  int_return $False
 395  ---
 395  L38:
 395  -live-
 395  int_return $False
 397  ---
 397  L39:
 397  -live-
 397  int_return $False
 399  ---
 399  L40:
 399  -live-
 399  int_return $False
 401  ---
 401  L41:
 401  -live-
 401  int_return $False
 403  ---
 403  L32:
 403  int_return $False
 405  ---
 405  L30:
 405  goto L31
 408  ---
 408  L26:
 408  goto L28
 411  ---
 411  L25:
 411  goto L28
 414  ---
 414  L23:
 414  goto L24
 417  ---
 417  L22:
 417  goto L24
 420  ---
 420  L20:
 420  int_sub %i2, %i4 -> %i1
 424  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r2
 424  goto_if_not_int_ge %i1, $1, L42
 429  strgetitem %r2, %i4 -> %i1
 433  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r2
 433  goto_if_not_int_eq %i1, $'0', L43
 438  strgetitem $<* struct rpy_string>, $0 -> %i1
 442  newstr $1 -> %r1
 445  strsetitem %r1, $0, %i1
 449  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__fill_char>
 454  -live- %i0, %i2, %i3, %i4, %r0, %r2
 454  goto_if_not %i3, L44
 458  L45:
 458  int_add %i4, $1 -> %i4
 462  goto L21
 465  ---
 465  L44:
 465  setfield_gc_i %r0, $'=', FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
 470  goto L45
 473  ---
 473  L43:
 473  goto L21
 476  ---
 476  L42:
 476  goto L21
 479  ---
 479  L18:
 479  goto L19
 482  ---
 482  L17:
 482  goto L19
 485  ---
 485  L14:
 485  goto L16
 488  ---
 488  L12:
 488  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 488  goto L15
 491  ---
 491  L13:
 491  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 491  goto L15
 494  ---
 494  L11:
 494  goto L16
 497  ---
 497  L8:
 497  int_copy $1 -> %i1
 500  goto L9
 503  ---
 503  L6:
 503  L46:
 503  int_sub %i2, $0 -> %i1
 507  -live- %i0, %i1, %i2, %r0, %r2
 507  goto_if_not_int_ge %i1, $1, L47
 512  strgetitem %r2, $0 -> %i1
 516  -live- %i0, %i1, %i2, %r0, %r2
 516  switch %i1, <SwitchDictDescr 60:L48, 61:L49, 62:L50>
 520  -live- %i0, %i1, %i2, %r0, %r2
 520  goto_if_not_int_eq %i1, $'^', L51
 525  L52:
 525  strgetitem %r2, $0 -> %i1
 529  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
 534  int_copy $True -> %i3
 537  int_copy $1 -> %i4
 540  int_copy $False -> %i5
 543  goto L10
 546  ---
 546  L51:
 546  int_copy $False -> %i3
 549  int_copy $0 -> %i4
 552  int_copy $False -> %i5
 555  goto L10
 558  ---
 558  L48:
 558  -live- %i0, %i2, %r0, %r2
 558  goto L52
 561  ---
 561  L49:
 561  -live- %i0, %i2, %r0, %r2
 561  goto L52
 564  ---
 564  L50:
 564  -live- %i0, %i2, %r0, %r2
 564  goto L52
 567  ---
 567  L47:
 567  int_copy $False -> %i3
 570  int_copy $0 -> %i4
 573  int_copy $False -> %i5
 576  goto L10
 579  ---
 579  L3:
 579  -live- %i0, %i2, %r0, %r2
 579  goto L7
 582  ---
 582  L4:
 582  -live- %i0, %i2, %r0, %r2
 582  goto L7
 585  ---
 585  L5:
 585  -live- %i0, %i2, %r0, %r2
 585  goto L7
 588  ---
 588  L2:
 588  goto L46
 591  ---
 591  L1:
 591  int_return $True
