   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
  52  goto_if_not_int_is_true %i1, L1
  56  strlen %r2 -> %i2
  59  int_sub %i2, $0 -> %i1
  63  -live- %i0, %i1, %i2, %r0, %r2
  66  goto_if_not_int_ge %i1, $2, L2
  71  strgetitem %r2, $1 -> %i1
  75  -live- %i0, %i1, %i2, %r0, %r2
  78  switch %i1, <SwitchDictDescr 60:L3, 61:L4, 62:L5, 94:L6>
  82  L7:
  82  int_sub %i2, $0 -> %i1
  86  -live- %i0, %i1, %i2, %r0, %r2
  89  goto_if_not_int_ge %i1, $1, L8
  94  strgetitem %r2, $0 -> %i1
  98  -live- %i0, %i1, %i2, %r0, %r2
 101  switch %i1, <SwitchDictDescr 60:L9, 61:L10, 62:L11, 94:L12>
 105  int_copy $False -> %i3
 108  int_copy $0 -> %i4
 111  int_copy $False -> %i5
 114  L13:
 114  int_sub %i2, %i4 -> %i1
 118  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 121  goto_if_not_int_ge %i1, $1, L14
 126  strgetitem %r2, %i4 -> %i1
 130  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 133  switch %i1, <SwitchDictDescr 32:L15, 43:L16, 45:L17>
 137  L18:
 137  int_sub %i2, %i4 -> %i1
 141  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 144  goto_if_not_int_ge %i1, $1, L19
 149  strgetitem %r2, %i4 -> %i1
 153  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r2
 156  goto_if_not_int_eq %i1, $'#', L20
 161  setfield_gc_i %r0, $True, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__alternate>
 166  int_add %i4, $1 -> %i4
 170  L21:
 170  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 173  goto_if_not %i5, L22
 177  L23:
 177  residual_call_ir_r $<* fn _parse_int__str>, I[%i4, %i2], R[%r2], <CallDescr(rii) EF=4> -> %r1
 187  -live- %i0, %i2, %r0, %r1, %r2
 190  getfield_gc_i_pure %r1, FieldDescr<tuple2.item0> -> %i1
 195  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i3
 200  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__width>
 205  -live- %i0, %i2, %i3, %r0, %r2
 208  goto_if_not_int_ne %i2, %i3, L24
 213  strgetitem %r2, %i3 -> %i1
 217  -live- %i0, %i1, %i2, %i3, %r0, %r2
 220  goto_if_not_int_eq %i1, $',', L25
 225  setfield_gc_i %r0, $True, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__thousands_sep>
 230  int_add %i3, $1 -> %i3
 234  L26:
 234  -live- %i0, %i2, %i3, %r0, %r2
 237  goto_if_not_int_ne %i2, %i3, L27
 242  strgetitem %r2, %i3 -> %i1
 246  -live- %i0, %i1, %i2, %i3, %r0, %r2
 249  goto_if_not_int_eq %i1, $'.', L28
 254  int_add %i3, $1 -> %i1
 258  residual_call_ir_r $<* fn _parse_int__str>, I[%i1, %i2], R[%r2], <CallDescr(rii) EF=4> -> %r1
 268  -live- %i0, %i2, %r0, %r1, %r2
 271  getfield_gc_i_pure %r1, FieldDescr<tuple2.item0> -> %i1
 276  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i3
 281  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__precision>
 286  -live- %i0, %i1, %i2, %i3, %r0, %r2
 289  goto_if_not_int_eq %i1, $-1, L29
 294  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab0c7fdde0> -> %r1
 298  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 303  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 308  assert_not_none %r1
 310  -live- %r1
 313  raise %r1
 315  ---
 315  L29:
 315  L30:
 315  int_sub %i2, %i3 -> %i1
 319  -live- %i0, %i1, %i2, %i3, %r0, %r2
 322  goto_if_not_int_gt %i1, $1, L31
 327  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab0c7fdde0> -> %r1
 331  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 336  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 341  assert_not_none %r1
 343  -live- %r1
 346  raise %r1
 348  ---
 348  L31:
 348  int_sub %i2, %i3 -> %i1
 352  -live- %i0, %i1, %i3, %r0, %r2
 355  goto_if_not_int_eq %i1, $1, L32
 360  strgetitem %r2, %i3 -> %i0
 364  L33:
 364  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__type>
 369  getfield_gc_i %r0, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__thousands_sep> -> %i1
 374  -live- %i0, %i1
 377  goto_if_not %i1, L34
 381  -live- %i0
 384  switch %i0, <SwitchDictDescr 0:L35, 37:L36, 69:L37, 70:L38, 71:L39, 100:L40, 101:L41, 102:L42, 103:L43>
 388  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab0c7fdde0> -> %r1
 392  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 397  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 402  assert_not_none %r1
 404  -live- %r1
 407  raise %r1
 409  ---
 409  L35:
 409  -live-
 412  int_return $False
 414  ---
 414  L36:
 414  -live-
 417  int_return $False
 419  ---
 419  L37:
 419  -live-
 422  int_return $False
 424  ---
 424  L38:
 424  -live-
 427  int_return $False
 429  ---
 429  L39:
 429  -live-
 432  int_return $False
 434  ---
 434  L40:
 434  -live-
 437  int_return $False
 439  ---
 439  L41:
 439  -live-
 442  int_return $False
 444  ---
 444  L42:
 444  -live-
 447  int_return $False
 449  ---
 449  L43:
 449  -live-
 452  int_return $False
 454  ---
 454  L34:
 454  int_return $False
 456  ---
 456  L32:
 456  goto L33
 459  ---
 459  L28:
 459  goto L30
 462  ---
 462  L27:
 462  goto L30
 465  ---
 465  L25:
 465  goto L26
 468  ---
 468  L24:
 468  goto L26
 471  ---
 471  L22:
 471  int_sub %i2, %i4 -> %i1
 475  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r2
 478  goto_if_not_int_ge %i1, $1, L44
 483  strgetitem %r2, %i4 -> %i1
 487  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r2
 490  goto_if_not_int_eq %i1, $'0', L45
 495  strgetitem $<* struct rpy_string>, $0 -> %i1
 499  newstr $1 -> %r1
 502  strsetitem %r1, $0, %i1
 506  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__fill_char>
 511  -live- %i0, %i2, %i3, %i4, %r0, %r2
 514  goto_if_not %i3, L46
 518  L47:
 518  int_add %i4, $1 -> %i4
 522  goto L23
 525  ---
 525  L46:
 525  setfield_gc_i %r0, $'=', FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
 530  goto L47
 533  ---
 533  L45:
 533  goto L23
 536  ---
 536  L44:
 536  goto L23
 539  ---
 539  L20:
 539  goto L21
 542  ---
 542  L19:
 542  goto L21
 545  ---
 545  L15:
 545  L48:
 545  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 548  strgetitem %r2, %i4 -> %i1
 552  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__sign>
 557  int_add %i4, $1 -> %i4
 561  goto L18
 564  ---
 564  L16:
 564  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 567  goto L48
 570  ---
 570  L17:
 570  -live- %i0, %i2, %i3, %i4, %i5, %r0, %r2
 573  goto L48
 576  ---
 576  L14:
 576  goto L18
 579  ---
 579  L9:
 579  L49:
 579  -live- %i0, %i2, %r0, %r2
 582  strgetitem %r2, $0 -> %i1
 586  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
 591  int_copy $True -> %i3
 594  int_copy $1 -> %i4
 597  int_copy $False -> %i5
 600  goto L13
 603  ---
 603  L10:
 603  -live- %i0, %i2, %r0, %r2
 606  goto L49
 609  ---
 609  L11:
 609  -live- %i0, %i2, %r0, %r2
 612  goto L49
 615  ---
 615  L12:
 615  -live- %i0, %i2, %r0, %r2
 618  goto L49
 621  ---
 621  L8:
 621  int_copy $False -> %i3
 624  int_copy $0 -> %i4
 627  int_copy $False -> %i5
 630  goto L13
 633  ---
 633  L3:
 633  L50:
 633  -live- %i0, %i2, %r0, %r2
 636  strgetitem %r2, $1 -> %i1
 640  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__align>
 645  strlen %r2 -> %i1
 648  -live- %i0, %i1, %i2, %r0, %r2
 651  goto_if_not_int_lt %i1, $1, L51
 656  strlen %r2 -> %i1
 659  L52:
 659  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[$0, %i1], R[%r2], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r1
 669  -live- %i0, %i2, %r0, %r1, %r2
 672  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.newformat.Formatter.inst__fill_char>
 677  int_copy $True -> %i3
 680  int_copy $2 -> %i4
 683  int_copy $True -> %i5
 686  goto L13
 689  ---
 689  L51:
 689  int_copy $1 -> %i1
 692  goto L52
 695  ---
 695  L4:
 695  -live- %i0, %i2, %r0, %r2
 698  goto L50
 701  ---
 701  L5:
 701  -live- %i0, %i2, %r0, %r2
 704  goto L50
 707  ---
 707  L6:
 707  -live- %i0, %i2, %r0, %r2
 710  goto L50
 713  ---
 713  L2:
 713  goto L7
 716  ---
 716  L1:
 716  int_return $True
