   0  getfield_gc_f_pure %r0, FieldDescr<tuple2.item0> -> %f5
   5  getfield_gc_f_pure %r0, FieldDescr<tuple2.item1> -> %f0
  10  getfield_gc_f_pure %r1, FieldDescr<tuple2.item0> -> %f3
  15  getfield_gc_f_pure %r1, FieldDescr<tuple2.item1> -> %f4
  20  -live- %f0, %f3, %f4, %f5
  20  goto_if_not_float_eq %f0, $0.0, L1
  25  -live- %f0, %f3, %f4, %f5
  25  goto_if_not_float_eq %f4, $0.0, L2
  30  -live- %f0, %f3, %f4, %f5
  30  goto_if_not_float_gt %f5, $0.0, L3
  35  inline_call_irf_f <JitCode 'll_math_pow__Float_Float'>, I[], R[], F[%f5, %f3] -> %f0
  44  -live- %f0
  44  float_copy $0.0 -> %f1
  47  L4:
  47  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x1009f537050> -> %r0
  51  setfield_gc_f %r0, %f0, FieldDescr<tuple2.item0>
  56  setfield_gc_f %r0, %f1, FieldDescr<tuple2.item1>
  61  ref_return %r0
  63  ---
  63  L3:
  63  L5:
  63  -live- %f0, %f3, %f4, %f5
  63  goto_if_not_float_eq %f3, $0.0, L6
  68  -live- %f0, %f3, %f4, %f5
  68  goto_if_not_float_eq %f4, $0.0, L7
  73  ref_return $<* struct tuple2>
  75  ---
  75  L7:
  75  L8:
  75  -live- %f0, %f3, %f4, %f5
  75  goto_if_not_float_eq %f5, $1.0, L9
  80  -live- %f0, %f3, %f4, %f5
  80  goto_if_not_float_eq %f0, $0.0, L10
  85  ref_return $<* struct tuple2>
  87  ---
  87  L10:
  87  L11:
  87  -live- %f0, %f3, %f4, %f5
  87  goto_if_not_float_eq %f5, $0.0, L12
  92  -live- %f0, %f3, %f4, %f5
  92  goto_if_not_float_eq %f0, $0.0, L13
  97  -live- %f3, %f4
  97  goto_if_not_float_ne %f4, $0.0, L14
 102  raise $<* struct object>
 104  ---
 104  L14:
 104  -live- %f3
 104  goto_if_not_float_lt %f3, $0.0, L15
 109  raise $<* struct object>
 111  ---
 111  L15:
 111  ref_return $<* struct tuple2>
 113  ---
 113  L13:
 113  L16:
 113  inline_call_irf_f <JitCode 'll_math_hypot__Float_Float'>, I[], R[], F[%f5, %f0] -> %f1
 122  -live- %f0, %f1, %f3, %f4, %f5
 122  inline_call_irf_f <JitCode 'll_math_pow__Float_Float'>, I[], R[], F[%f1, %f3] -> %f2
 131  -live- %f0, %f1, %f2, %f3, %f4, %f5
 131  inline_call_irf_f <JitCode 'll_math_atan2__Float_Float'>, I[], R[], F[%f0, %f5] -> %f0
 140  -live- %f0, %f1, %f2, %f3, %f4
 140  float_mul %f0, %f3 -> %f3
 144  -live- %f0, %f1, %f2, %f3, %f4
 144  goto_if_not_float_ne %f4, $0.0, L17
 149  float_mul %f0, %f4 -> %f0
 153  inline_call_irf_f <JitCode 'll_math_exp__Float'>, I[], R[], F[%f0] -> %f0
 161  -live- %f0, %f1, %f2, %f3, %f4
 161  float_truediv %f2, %f0 -> %f2
 165  -live- %f1, %f2, %f3, %f4
 165  goto_if_not_float_le %f1, $0.0, L18
 170  raise $<* struct object>
 172  ---
 172  L18:
 172  residual_call_irf_f $<* fn log>, I[], R[], F[%f1], <CallDescr(f) EF=2> -> %f0
 181  float_mul %f4, %f0 -> %f0
 185  float_add %f3, %f0 -> %f3
 189  L19:
 189  inline_call_irf_f <JitCode 'll_math_cos__Float'>, I[], R[], F[%f3] -> %f0
 197  -live- %f0, %f2, %f3
 197  catch_exception L20
 200  float_mul %f2, %f0 -> %f0
 204  inline_call_irf_f <JitCode 'll_math_sin__Float'>, I[], R[], F[%f3] -> %f1
 212  -live- %f0, %f1, %f2
 212  catch_exception L21
 215  float_mul %f2, %f1 -> %f1
 219  goto L4
 222  ---
 222  L21:
 222  goto_if_exception_mismatch $<* struct object_vtable>, L22
 226  ref_return $<* struct tuple2>
 228  ---
 228  L22:
 228  reraise
 229  ---
 229  L20:
 229  goto_if_exception_mismatch $<* struct object_vtable>, L23
 233  ref_return $<* struct tuple2>
 235  ---
 235  L23:
 235  reraise
 236  ---
 236  L17:
 236  goto L19
 239  ---
 239  L12:
 239  goto L16
 242  ---
 242  L9:
 242  goto L11
 245  ---
 245  L6:
 245  goto L8
 248  ---
 248  L2:
 248  goto L5
 251  ---
 251  L1:
 251  goto L5
