   0  -live- %i0, %i1, %r0
   3  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3, 3:L4, 4:L5, 5:L6, 6:L7, 7:L8, 8:L9, 9:L10, 10:L11, 11:L12>
   7  int_return $False
   9  ---
   9  L1:
   9  L13:
   9  -live- %i1
  12  int_is_zero %i1 -> %i0
  15  int_return %i0
  17  ---
  17  L2:
  17  -live- %i1, %r0
  20  goto_if_not_int_le %i1, $0, L14
  25  int_return $True
  27  ---
  27  L14:
  27  getfield_gc_r %r0, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst__utf8> -> %r1
  32  int_sub %i1, $1 -> %i1
  36  strlen %r1 -> %i0
  39  -live- %i0, %i1, %r0, %r1
  42  goto_if_not_int_ge %i1, %i0, L15
  47  L16:
  47  getfield_gc_r %r0, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst__utf8> -> %r1
  52  inline_call_ir_i <JitCode 'codepoint_at_pos'>, I[%i1], R[%r1] -> %i0
  60  -live- %i0
  63  int_eq %i0, $10 -> %i0
  67  int_return %i0
  69  ---
  69  L15:
  69  strgetitem %r1, %i1 -> %i0
  73  -live- %i0, %i1, %r0, %r1
  76  goto_if_not_int_le %i0, $127, L17
  81  goto L16
  84  ---
  84  L17:
  84  int_sub %i1, $1 -> %i1
  88  strgetitem %r1, %i1 -> %i0
  92  -live- %i0, %i1, %r0, %r1
  95  goto_if_not_int_ge %i0, $192, L18
 100  goto L16
 103  ---
 103  L18:
 103  int_sub %i1, $1 -> %i1
 107  strgetitem %r1, %i1 -> %i0
 111  -live- %i0, %i1, %r0
 114  goto_if_not_int_ge %i0, $192, L19
 119  goto L16
 122  ---
 122  L19:
 122  int_sub %i1, $1 -> %i1
 126  goto L16
 129  ---
 129  L3:
 129  -live- %i1
 132  goto L13
 135  ---
 135  L4:
 135  -live- %i1, %r0
 138  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_boundary'>, I[%i1], R[%r0] -> %i0
 146  -live- %i0
 149  int_return %i0
 151  ---
 151  L5:
 151  -live- %i1, %r0
 154  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_non_boundary'>, I[%i1], R[%r0] -> %i0
 162  -live- %i0
 165  int_return %i0
 167  ---
 167  L6:
 167  -live- %i1, %r0
 170  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i0
 175  -live- %i0, %i1, %r0
 178  goto_if_not_int_eq %i1, %i0, L20
 183  int_return $True
 185  ---
 185  L20:
 185  inline_call_ir_i <JitCode 'Utf8MatchContext.next'>, I[%i1], R[%r0] -> %i0
 193  -live- %i0, %i1, %r0
 196  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i2
 201  -live- %i0, %i1, %i2, %r0
 204  goto_if_not_int_eq %i0, %i2, L21
 209  getfield_gc_r %r0, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst__utf8> -> %r1
 214  inline_call_ir_i <JitCode 'codepoint_at_pos'>, I[%i1], R[%r1] -> %i0
 222  -live- %i0
 225  int_eq %i0, $10 -> %i0
 229  int_return %i0
 231  ---
 231  L21:
 231  int_return $False
 233  ---
 233  L7:
 233  -live- %i1, %r0
 236  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i0
 241  -live- %i0, %i1, %r0
 244  goto_if_not_int_eq %i1, %i0, L22
 249  int_return $True
 251  ---
 251  L22:
 251  getfield_gc_r %r0, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst__utf8> -> %r1
 256  inline_call_ir_i <JitCode 'codepoint_at_pos'>, I[%i1], R[%r1] -> %i0
 264  -live- %i0
 267  int_eq %i0, $10 -> %i0
 271  int_return %i0
 273  ---
 273  L8:
 273  -live- %i1, %r0
 276  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end> -> %i0
 281  int_eq %i1, %i0 -> %i0
 285  int_return %i0
 287  ---
 287  L9:
 287  -live- %i1, %r0
 290  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_boundary_'>, I[%i1], R[%r0] -> %i0
 298  -live- %i0
 301  int_return %i0
 303  ---
 303  L10:
 303  -live- %i1, %r0
 306  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_non_boundary_'>, I[%i1], R[%r0] -> %i0
 314  -live- %i0
 317  int_return %i0
 319  ---
 319  L11:
 319  -live- %i1, %r0
 322  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_boundary__'>, I[%i1], R[%r0] -> %i0
 330  -live- %i0
 333  int_return %i0
 335  ---
 335  L12:
 335  -live- %i1, %r0
 338  inline_call_ir_i <JitCode 'Utf8MatchContext.utf8_spec_at_non_boundary__'>, I[%i1], R[%r0] -> %i0
 346  -live- %i0
 349  int_return %i0
