   0  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_flatten_cache> -> %r2
   5  -live- %r0, %r1, %r2
   5  goto_if_not_ptr_iszero %r2, L1
   9  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_srepat> -> %r2
  14  getfield_gc_i_pure %r2, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Pattern.inst_num_groups> -> %i0
  19  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_ctx> -> %r2
  24  int_isconstant %i0 -> %i1
  27  -live- %i0, %i1, %r0, %r1, %r2
  27  goto_if_not %i1, L2
  31  inline_call_ir_r <JitCode 'do_flatten_marks__v1026___simple_call__function_'>, I[%i0], R[%r2] -> %r2
  39  -live- %r0, %r1, %r2
  39  L3:
  39  setfield_gc_r %r0, %r2, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_flatten_cache>
  44  L4:
  44  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_flatten_cache> -> %r3
  49  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_srepat> -> %r2
  54  getfield_gc_i_pure %r2, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Pattern.inst_num_groups> -> %i0
  59  getfield_gc_r %r0, FieldDescr<pypy.module._sre.interp_sre.W_SRE_Match.inst_ctx> -> %r2
  64  int_isconstant %i0 -> %i1
  67  -live- %i0, %i1, %r1, %r2, %r3
  67  goto_if_not %i1, L5
  71  inline_call_ir_r <JitCode 'allgroups_w__v1031___simple_call__function_'>, I[%i0], R[%r2, %r3, %r1] -> %r2
  81  -live- %r2
  81  ref_return %r2
  83  ---
  83  L5:
  83  residual_call_ir_r $<* fn allgroups_w_trampoline__v1032___simple_call__function_>, I[%i0], R[%r2, %r3, %r1], <CallDescr(rrir) EF=7> -> %r2
  94  -live- %r2
  94  ref_return %r2
  96  ---
  96  L2:
  96  residual_call_ir_r $<* fn do_flatten_marks_trampoline__v1027___simple_call__function_>, I[%i0], R[%r2], <CallDescr(ri) EF=5> -> %r2
 105  -live- %r0, %r1, %r2
 105  goto L3
 108  ---
 108  L1:
 108  goto L4
