   0  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i1
   5  -live- %i0, %i1, %r0
   8  goto_if_not_int_is_zero %i1, L1
  12  int_return $False
  14  ---
  14  L1:
  14  int_sub %i0, $1 -> %i1
  18  -live- %i0, %i1, %r0
  21  goto_if_not_int_lt %i1, $0, L2
  26  int_copy $0 -> %i2
  29  L3:
  29  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i1
  34  -live- %i0, %i1, %i2, %r0
  37  goto_if_not_int_lt %i0, %i1, L4
  42  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string> -> %r1
  47  strgetitem %r1, %i0 -> %i1
  51  -live- %i1, %i2
  54  goto_if_not_int_eq %i1, $95, L5
  59  int_copy $1 -> %i1
  62  L6:
  62  int_ne %i1, %i2 -> %i1
  66  int_return %i1
  68  ---
  68  L5:
  68  -live- %i1, %i2
  71  goto_if_not_int_lt %i1, $256, L7
  76  int_signext %i1, $4 -> %i1
  80  residual_call_ir_i $<* fn isalnum>, I[%i1], R[], <CallDescr(i) EF=2> -> %i1
  88  goto L6
  91  ---
  91  L7:
  91  int_copy $0 -> %i1
  94  goto L6
  97  ---
  97  L4:
  97  int_copy $0 -> %i1
 100  goto L6
 103  ---
 103  L2:
 103  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string> -> %r1
 108  strgetitem %r1, %i1 -> %i1
 112  -live- %i0, %i1, %r0
 115  goto_if_not_int_eq %i1, $95, L8
 120  int_copy $1 -> %i2
 123  goto L3
 126  ---
 126  L8:
 126  -live- %i0, %i1, %r0
 129  goto_if_not_int_lt %i1, $256, L9
 134  int_signext %i1, $4 -> %i1
 138  residual_call_ir_i $<* fn isalnum>, I[%i1], R[], <CallDescr(i) EF=2> -> %i2
 146  goto L3
 149  ---
 149  L9:
 149  int_copy $0 -> %i2
 152  goto L3
