   0  strlen %r1 -> %i0
   3  -live- %i0, %r0, %r1
   3  goto_if_not_int_is_true %i0, L1
   7  strgetitem %r1, $0 -> %i0
  11  -live- %i0, %r0, %r1
  11  goto_if_not_int_eq %i0, $'/', L2
  16  ref_return %r1
  18  ---
  18  L2:
  18  L3:
  18  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r0, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i0
  26  -live- %i0, %r0, %r1
  26  goto_if_not %i0, L4
  30  L5:
  30  residual_call_r_r $<* fn ll_strconcat__rpy_stringPtr_rpy_stringPtr>, R[%r0, %r1], <CallDescr(rr) EF=3 OS_STR_CONCAT> -> %r1
  38  -live- %r1
  38  ref_return %r1
  40  ---
  40  L4:
  40  strlen %r0 -> %i0
  43  -live- %i0, %r0, %r1
  43  goto_if_not_int_is_true %i0, L6
  47  strlen %r0 -> %i0
  50  int_sub %i0, $1 -> %i0
  54  strgetitem %r0, %i0 -> %i0
  58  -live- %i0, %r0, %r1
  58  goto_if_not_int_eq %i0, $'/', L7
  63  goto L5
  66  ---
  66  L7:
  66  L8:
  66  residual_call_r_r $<* fn ll_strconcat__rpy_stringPtr_rpy_stringPtr>, R[$<* struct rpy_string>, %r1], <CallDescr(rr) EF=3 OS_STR_CONCAT> -> %r1
  74  -live- %r0, %r1
  74  residual_call_r_r $<* fn ll_strconcat__rpy_stringPtr_rpy_stringPtr>, R[%r0, %r1], <CallDescr(rr) EF=3 OS_STR_CONCAT> -> %r1
  82  -live- %r1
  82  ref_return %r1
  84  ---
  84  L6:
  84  goto L8
  87  ---
  87  L1:
  87  goto L3
