diff --git a/collects/tests/typed-scheme/optimizer/missed-optimizations/unexpected-complex.rkt b/collects/tests/typed-scheme/optimizer/missed-optimizations/unexpected-complex.rkt index fab4c50d..4c6ddbb2 100644 --- a/collects/tests/typed-scheme/optimizer/missed-optimizations/unexpected-complex.rkt +++ b/collects/tests/typed-scheme/optimizer/missed-optimizations/unexpected-complex.rkt @@ -1,10 +1,9 @@ #; ( -TR missed opt: unexpected-complex.rkt 16:0 (sqrt (ann 4 Integer)) -- unexpected complex type -TR opt: unexpected-complex.rkt 17:0 (+ 1.2+3.4i 2.0) -- unboxed binary float complex -TR opt: unexpected-complex.rkt 17:0 (+ 1.2+3.4i 2.0) -- unboxed float complex -TR opt: unexpected-complex.rkt 17:3 1.2+3.4i -- unboxed literal -TR opt: unexpected-complex.rkt 17:12 2.0 -- float-arg-expr in complex ops +TR missed opt: unexpected-complex.rkt 15:0 (sqrt (ann 4 Integer)) -- unexpected complex type +TR opt: unexpected-complex.rkt 16:0 (+ 1.2+3.4i 2.0) -- unboxed binary float complex +TR opt: unexpected-complex.rkt 16:3 1.2+3.4i -- unboxed literal +TR opt: unexpected-complex.rkt 16:12 2.0 -- float-arg-expr in complex ops 2 3.2+3.4i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate-top.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate-top.rkt index 2cc402bc..8830c1b9 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate-top.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate-top.rkt @@ -1,10 +1,9 @@ #; ( -TR opt: float-complex-conjugate-top.rkt 14:0 (conjugate (+ 1.0+2.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-conjugate-top.rkt 14:0 (conjugate (+ 1.0+2.0i 2.0+4.0i)) -- unboxed unary float complex -TR opt: float-complex-conjugate-top.rkt 14:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-conjugate-top.rkt 14:14 1.0+2.0i -- unboxed literal -TR opt: float-complex-conjugate-top.rkt 14:23 2.0+4.0i -- unboxed literal +TR opt: float-complex-conjugate-top.rkt 13:0 (conjugate (+ 1.0+2.0i 2.0+4.0i)) -- unboxed unary float complex +TR opt: float-complex-conjugate-top.rkt 13:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-conjugate-top.rkt 13:14 1.0+2.0i -- unboxed literal +TR opt: float-complex-conjugate-top.rkt 13:23 2.0+4.0i -- unboxed literal 3.0-6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate.rkt index 9f742944..c6bcb845 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-conjugate.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: float-complex-conjugate.rkt 15:0 (+ (conjugate 1.0+2.0i) (conjugate 2.0+4.0i)) -- unboxed binary float complex -TR opt: float-complex-conjugate.rkt 15:0 (+ (conjugate 1.0+2.0i) (conjugate 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-conjugate.rkt 15:3 (conjugate 1.0+2.0i) -- unboxed unary float complex -TR opt: float-complex-conjugate.rkt 15:14 1.0+2.0i -- unboxed literal -TR opt: float-complex-conjugate.rkt 15:24 (conjugate 2.0+4.0i) -- unboxed unary float complex -TR opt: float-complex-conjugate.rkt 15:35 2.0+4.0i -- unboxed literal +TR opt: float-complex-conjugate.rkt 14:0 (+ (conjugate 1.0+2.0i) (conjugate 2.0+4.0i)) -- unboxed binary float complex +TR opt: float-complex-conjugate.rkt 14:3 (conjugate 1.0+2.0i) -- unboxed unary float complex +TR opt: float-complex-conjugate.rkt 14:14 1.0+2.0i -- unboxed literal +TR opt: float-complex-conjugate.rkt 14:24 (conjugate 2.0+4.0i) -- unboxed unary float complex +TR opt: float-complex-conjugate.rkt 14:35 2.0+4.0i -- unboxed literal 3.0-6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-div.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-div.rkt index 45784796..659cbcae 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-div.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-div.rkt @@ -1,10 +1,9 @@ #; ( -TR opt: float-complex-div.rkt 14:0 (/ 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-div.rkt 14:0 (/ 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-div.rkt 14:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-div.rkt 14:12 2.0+4.0i -- unboxed literal -TR opt: float-complex-div.rkt 14:21 3.0+6.0i -- unboxed literal +TR opt: float-complex-div.rkt 13:0 (/ 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-div.rkt 13:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-div.rkt 13:12 2.0+4.0i -- unboxed literal +TR opt: float-complex-div.rkt 13:21 3.0+6.0i -- unboxed literal 0.03333333333333333-0.06666666666666667i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-fixnum.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-fixnum.rkt index 83f12b43..080d062d 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-fixnum.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-fixnum.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: float-complex-fixnum.rkt 15:0 (+ (modulo 2 1) 1.0+2.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-fixnum.rkt 15:0 (+ (modulo 2 1) 1.0+2.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-fixnum.rkt 15:3 (modulo 2 1) -- binary nonzero fixnum -TR opt: float-complex-fixnum.rkt 15:3 (modulo 2 1) -- float-arg-expr in complex ops -TR opt: float-complex-fixnum.rkt 15:16 1.0+2.0i -- unboxed literal -TR opt: float-complex-fixnum.rkt 15:25 3.0+6.0i -- unboxed literal +TR opt: float-complex-fixnum.rkt 14:0 (+ (modulo 2 1) 1.0+2.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-fixnum.rkt 14:3 (modulo 2 1) -- binary nonzero fixnum +TR opt: float-complex-fixnum.rkt 14:3 (modulo 2 1) -- float-arg-expr in complex ops +TR opt: float-complex-fixnum.rkt 14:16 1.0+2.0i -- unboxed literal +TR opt: float-complex-fixnum.rkt 14:25 3.0+6.0i -- unboxed literal 4.0+8.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-div.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-div.rkt index 6c5f4c23..d1f12ece 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-div.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-div.rkt @@ -1,42 +1,35 @@ #; ( -TR opt: float-complex-float-div.rkt 47:51 (real-part x) -- unboxed float complex -TR opt: float-complex-float-div.rkt 47:62 x -- unbox float-complex -TR opt: float-complex-float-div.rkt 48:51 (imag-part x) -- unboxed float complex -TR opt: float-complex-float-div.rkt 48:62 x -- unbox float-complex -TR opt: float-complex-float-div.rkt 50:6 (/ 1.0 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 50:6 (/ 1.0 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-float-div.rkt 50:9 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 50:13 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 51:6 (/ 1.0+2.0i 2.0) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 51:6 (/ 1.0+2.0i 2.0) -- unboxed float complex -TR opt: float-complex-float-div.rkt 51:9 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 51:18 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 52:6 (/ 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 52:6 (/ 1.0 2.0+4.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float-div.rkt 52:9 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 52:13 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 52:22 3.0+6.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 53:6 (/ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 53:6 (/ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float-div.rkt 53:9 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 53:18 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 53:22 3.0+6.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 54:6 (/ 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 54:6 (/ 1.0+2.0i 2.0+4.0i 3.0) -- unboxed float complex -TR opt: float-complex-float-div.rkt 54:9 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 54:18 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 54:27 3.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 55:6 (/ 1.0+2.0i 2.0 3.0) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 55:6 (/ 1.0+2.0i 2.0 3.0) -- unboxed float complex -TR opt: float-complex-float-div.rkt 55:9 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-div.rkt 55:18 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 55:22 3.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 56:6 (/ 1.0 2.0 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float-div.rkt 56:6 (/ 1.0 2.0 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float-div.rkt 56:9 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 56:13 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-div.rkt 56:17 3.0+6.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 40:51 (real-part x) -- complex accessor elimination +TR opt: float-complex-float-div.rkt 40:62 x -- unbox float-complex +TR opt: float-complex-float-div.rkt 41:51 (imag-part x) -- complex accessor elimination +TR opt: float-complex-float-div.rkt 41:62 x -- unbox float-complex +TR opt: float-complex-float-div.rkt 43:6 (/ 1.0 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 43:9 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 43:13 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 44:6 (/ 1.0+2.0i 2.0) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 44:9 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 44:18 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 45:6 (/ 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 45:9 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 45:13 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 45:22 3.0+6.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 46:6 (/ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 46:9 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 46:18 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 46:22 3.0+6.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 47:6 (/ 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 47:9 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 47:18 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 47:27 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 48:6 (/ 1.0+2.0i 2.0 3.0) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 48:9 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-div.rkt 48:18 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 48:22 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 49:6 (/ 1.0 2.0 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float-div.rkt 49:9 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 49:13 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-div.rkt 49:17 3.0+6.0i -- unboxed literal '("0.1000000000-0.2000000000" "0.50000000001.0000000000" "-0.0200000000-0.0266666667" "0.16666666670.0000000000" "0.16666666670.0000000000" "0.16666666670.3333333333" "0.0333333333-0.0666666667") ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-mul.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-mul.rkt index 6d0537d4..c66825df 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-mul.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-mul.rkt @@ -1,33 +1,27 @@ #; ( -TR opt: float-complex-float-mul.rkt 42:0 (* 1.0 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 42:0 (* 1.0 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 42:3 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 42:7 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 43:0 (* 1.0+2.0i 2.0) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 43:0 (* 1.0+2.0i 2.0) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 43:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 43:12 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 44:0 (* 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 44:0 (* 1.0 2.0+4.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 44:3 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 44:7 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 44:16 3.0+6.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 45:0 (* 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 45:0 (* 1.0+2.0i 2.0 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 45:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 45:12 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 45:16 3.0+6.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 46:0 (* 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 46:0 (* 1.0+2.0i 2.0+4.0i 3.0) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 46:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 46:12 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 46:21 3.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 47:0 (* 1.0+2.0i 2.0 3.0) -- unboxed binary float complex -TR opt: float-complex-float-mul.rkt 47:0 (* 1.0+2.0i 2.0 3.0) -- unboxed float complex -TR opt: float-complex-float-mul.rkt 47:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-mul.rkt 47:12 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-mul.rkt 47:16 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 36:0 (* 1.0 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 36:3 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 36:7 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 37:0 (* 1.0+2.0i 2.0) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 37:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 37:12 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 38:0 (* 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 38:3 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 38:7 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 38:16 3.0+6.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 39:0 (* 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 39:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 39:12 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 39:16 3.0+6.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 40:0 (* 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 40:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 40:12 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 40:21 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 41:0 (* 1.0+2.0i 2.0 3.0) -- unboxed binary float complex +TR opt: float-complex-float-mul.rkt 41:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-mul.rkt 41:12 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-mul.rkt 41:16 3.0 -- float-arg-expr in complex ops 2.0+4.0i 2.0+4.0i -18.0+24.0i diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-small.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-small.rkt index 26b86aa7..929fcc5c 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-float-small.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-float-small.rkt @@ -1,28 +1,23 @@ #; ( -TR opt: float-complex-float-small.rkt 36:0 (+ 1.0+2.0i 3.0) -- unboxed binary float complex -TR opt: float-complex-float-small.rkt 36:0 (+ 1.0+2.0i 3.0) -- unboxed float complex -TR opt: float-complex-float-small.rkt 36:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-small.rkt 36:12 3.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 37:0 (+ 1.0 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-float-small.rkt 37:0 (+ 1.0 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-float-small.rkt 37:3 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 37:7 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-small.rkt 38:0 (- 1.0+2.0i 3.0) -- unboxed binary float complex -TR opt: float-complex-float-small.rkt 38:0 (- 1.0+2.0i 3.0) -- unboxed float complex -TR opt: float-complex-float-small.rkt 38:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-small.rkt 38:12 3.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 39:0 (- 1.0 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-float-small.rkt 39:0 (- 1.0 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-float-small.rkt 39:3 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 39:7 2.0+4.0i -- unboxed literal -TR opt: float-complex-float-small.rkt 40:0 (+ 1.0+2.0i (+ 1.0 2.0)) -- unboxed binary float complex -TR opt: float-complex-float-small.rkt 40:0 (+ 1.0+2.0i (+ 1.0 2.0)) -- unboxed float complex -TR opt: float-complex-float-small.rkt 40:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float-small.rkt 40:12 (+ 1.0 2.0) -- binary float -TR opt: float-complex-float-small.rkt 40:12 (+ 1.0 2.0) -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 40:15 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float-small.rkt 40:19 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 31:0 (+ 1.0+2.0i 3.0) -- unboxed binary float complex +TR opt: float-complex-float-small.rkt 31:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-small.rkt 31:12 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 32:0 (+ 1.0 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-float-small.rkt 32:3 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 32:7 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-small.rkt 33:0 (- 1.0+2.0i 3.0) -- unboxed binary float complex +TR opt: float-complex-float-small.rkt 33:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-small.rkt 33:12 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 34:0 (- 1.0 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-float-small.rkt 34:3 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 34:7 2.0+4.0i -- unboxed literal +TR opt: float-complex-float-small.rkt 35:0 (+ 1.0+2.0i (+ 1.0 2.0)) -- unboxed binary float complex +TR opt: float-complex-float-small.rkt 35:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float-small.rkt 35:12 (+ 1.0 2.0) -- binary float +TR opt: float-complex-float-small.rkt 35:12 (+ 1.0 2.0) -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 35:15 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float-small.rkt 35:19 2.0 -- float-arg-expr in complex ops 4.0+2.0i 3.0+4.0i -2.0+2.0i diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-float.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-float.rkt index aea9e090..beb00645 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-float.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-float.rkt @@ -1,25 +1,21 @@ #; ( -TR opt: float-complex-float.rkt 32:0 (+ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float.rkt 32:0 (+ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float.rkt 32:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float.rkt 32:12 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float.rkt 32:16 3.0+6.0i -- unboxed literal -TR opt: float-complex-float.rkt 33:0 (- 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float.rkt 33:0 (- 1.0 2.0+4.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float.rkt 33:3 1.0 -- float-arg-expr in complex ops -TR opt: float-complex-float.rkt 33:7 2.0+4.0i -- unboxed literal -TR opt: float-complex-float.rkt 33:16 3.0+6.0i -- unboxed literal -TR opt: float-complex-float.rkt 34:0 (- 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-float.rkt 34:0 (- 1.0+2.0i 2.0 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-float.rkt 34:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float.rkt 34:12 2.0 -- float-arg-expr in complex ops -TR opt: float-complex-float.rkt 34:16 3.0+6.0i -- unboxed literal -TR opt: float-complex-float.rkt 35:0 (- 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex -TR opt: float-complex-float.rkt 35:0 (- 1.0+2.0i 2.0+4.0i 3.0) -- unboxed float complex -TR opt: float-complex-float.rkt 35:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-float.rkt 35:12 2.0+4.0i -- unboxed literal -TR opt: float-complex-float.rkt 35:21 3.0 -- float-arg-expr in complex ops +TR opt: float-complex-float.rkt 28:0 (+ 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float.rkt 28:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float.rkt 28:12 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float.rkt 28:16 3.0+6.0i -- unboxed literal +TR opt: float-complex-float.rkt 29:0 (- 1.0 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float.rkt 29:3 1.0 -- float-arg-expr in complex ops +TR opt: float-complex-float.rkt 29:7 2.0+4.0i -- unboxed literal +TR opt: float-complex-float.rkt 29:16 3.0+6.0i -- unboxed literal +TR opt: float-complex-float.rkt 30:0 (- 1.0+2.0i 2.0 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-float.rkt 30:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float.rkt 30:12 2.0 -- float-arg-expr in complex ops +TR opt: float-complex-float.rkt 30:16 3.0+6.0i -- unboxed literal +TR opt: float-complex-float.rkt 31:0 (- 1.0+2.0i 2.0+4.0i 3.0) -- unboxed binary float complex +TR opt: float-complex-float.rkt 31:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-float.rkt 31:12 2.0+4.0i -- unboxed literal +TR opt: float-complex-float.rkt 31:21 3.0 -- float-arg-expr in complex ops 6.0+8.0i -4.0-10.0i -4.0-4.0i diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-i.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-i.rkt index 7778c227..edfef833 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-i.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-i.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: float-complex-i.rkt 15:0 (+ 1.0+2.0i (* 0+1.0i 2.0+4.0i)) -- unboxed binary float complex -TR opt: float-complex-i.rkt 15:0 (+ 1.0+2.0i (* 0+1.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-i.rkt 15:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-i.rkt 15:12 (* 0+1.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-i.rkt 15:15 0+1.0i -- unboxed literal -TR opt: float-complex-i.rkt 15:21 2.0+4.0i -- unboxed literal +TR opt: float-complex-i.rkt 14:0 (+ 1.0+2.0i (* 0+1.0i 2.0+4.0i)) -- unboxed binary float complex +TR opt: float-complex-i.rkt 14:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-i.rkt 14:12 (* 0+1.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-i.rkt 14:15 0+1.0i -- unboxed literal +TR opt: float-complex-i.rkt 14:21 2.0+4.0i -- unboxed literal -3.0+4.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-integer.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-integer.rkt index e83d4c24..75015745 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-integer.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-integer.rkt @@ -1,9 +1,8 @@ #; ( -TR opt: float-complex-integer.rkt 13:0 (+ (expt 2 100) 1.0+2.0i) -- unboxed binary float complex -TR opt: float-complex-integer.rkt 13:0 (+ (expt 2 100) 1.0+2.0i) -- unboxed float complex -TR opt: float-complex-integer.rkt 13:3 (expt 2 100) -- float-arg-expr in complex ops -TR opt: float-complex-integer.rkt 13:16 1.0+2.0i -- unboxed literal +TR opt: float-complex-integer.rkt 12:0 (+ (expt 2 100) 1.0+2.0i) -- unboxed binary float complex +TR opt: float-complex-integer.rkt 12:3 (expt 2 100) -- float-arg-expr in complex ops +TR opt: float-complex-integer.rkt 12:16 1.0+2.0i -- unboxed literal 1.2676506002282294e+30+2.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-mult.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-mult.rkt index baa9c447..862d80f5 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-mult.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-mult.rkt @@ -1,10 +1,9 @@ #; ( -TR opt: float-complex-mult.rkt 14:0 (* 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-mult.rkt 14:0 (* 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed float complex -TR opt: float-complex-mult.rkt 14:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-mult.rkt 14:12 2.0+4.0i -- unboxed literal -TR opt: float-complex-mult.rkt 14:21 3.0+6.0i -- unboxed literal +TR opt: float-complex-mult.rkt 13:0 (* 1.0+2.0i 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-mult.rkt 13:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-mult.rkt 13:12 2.0+4.0i -- unboxed literal +TR opt: float-complex-mult.rkt 13:21 3.0+6.0i -- unboxed literal -66.0-12.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts.rkt index 54dbf2b3..7f97d178 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts.rkt @@ -1,10 +1,10 @@ #; ( -TR opt: float-complex-parts.rkt 17:0 (real-part 1.0+2.0i) -- unboxed float complex +TR opt: float-complex-parts.rkt 17:0 (real-part 1.0+2.0i) -- complex accessor elimination TR opt: float-complex-parts.rkt 17:11 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts.rkt 18:0 (imag-part 1.0+2.0i) -- unboxed float complex +TR opt: float-complex-parts.rkt 18:0 (imag-part 1.0+2.0i) -- complex accessor elimination TR opt: float-complex-parts.rkt 18:11 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts.rkt 19:0 (real-part 1.0+2.0i) -- unboxed float complex +TR opt: float-complex-parts.rkt 19:0 (real-part 1.0+2.0i) -- complex accessor elimination TR opt: float-complex-parts.rkt 19:11 1.0+2.0i -- unboxed literal 1.0 2.0 diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts2.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts2.rkt index 53770c29..011b9e4b 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts2.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts2.rkt @@ -1,25 +1,21 @@ #; ( -TR opt: float-complex-parts2.rkt 34:0 (real-part (+ 1.0+2.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-parts2.rkt 34:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-parts2.rkt 34:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-parts2.rkt 34:14 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 34:23 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 35:0 (unsafe-flreal-part (+ 1.0+2.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-parts2.rkt 35:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-parts2.rkt 35:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-parts2.rkt 35:23 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 35:32 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 36:0 (imag-part (+ 1.0+2.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-parts2.rkt 36:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-parts2.rkt 36:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-parts2.rkt 36:14 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 36:23 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 37:0 (unsafe-flimag-part (+ 1.0+2.0i 2.0+4.0i)) -- unboxed float complex -TR opt: float-complex-parts2.rkt 37:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex-parts2.rkt 37:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex-parts2.rkt 37:23 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts2.rkt 37:32 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 30:0 (real-part (+ 1.0+2.0i 2.0+4.0i)) -- complex accessor elimination +TR opt: float-complex-parts2.rkt 30:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-parts2.rkt 30:14 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 30:23 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 31:0 (unsafe-flreal-part (+ 1.0+2.0i 2.0+4.0i)) -- complex accessor elimination +TR opt: float-complex-parts2.rkt 31:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-parts2.rkt 31:23 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 31:32 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 32:0 (imag-part (+ 1.0+2.0i 2.0+4.0i)) -- complex accessor elimination +TR opt: float-complex-parts2.rkt 32:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-parts2.rkt 32:14 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 32:23 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 33:0 (unsafe-flimag-part (+ 1.0+2.0i 2.0+4.0i)) -- complex accessor elimination +TR opt: float-complex-parts2.rkt 33:20 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex-parts2.rkt 33:23 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts2.rkt 33:32 2.0+4.0i -- unboxed literal 3.0 3.0 6.0 diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts3.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts3.rkt index 92ad609b..85e197e1 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-parts3.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-parts3.rkt @@ -1,33 +1,29 @@ #; ( -TR opt: float-complex-parts3.rkt 42:0 (+ 1.0+2.0i (real-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 42:0 (+ 1.0+2.0i (real-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed float complex -TR opt: float-complex-parts3.rkt 42:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 42:12 (real-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex -TR opt: float-complex-parts3.rkt 42:23 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 42:26 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 42:35 3.0+6.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 43:0 (+ 1.0+2.0i (unsafe-flreal-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 43:0 (+ 1.0+2.0i (unsafe-flreal-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed float complex -TR opt: float-complex-parts3.rkt 43:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 43:12 (unsafe-flreal-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex -TR opt: float-complex-parts3.rkt 43:32 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 43:35 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 43:44 3.0+6.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 44:0 (+ 1.0+2.0i (imag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 44:0 (+ 1.0+2.0i (imag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed float complex -TR opt: float-complex-parts3.rkt 44:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 44:12 (imag-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex -TR opt: float-complex-parts3.rkt 44:23 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 44:26 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 44:35 3.0+6.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 45:0 (+ 1.0+2.0i (unsafe-flimag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 45:0 (+ 1.0+2.0i (unsafe-flimag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed float complex -TR opt: float-complex-parts3.rkt 45:3 1.0+2.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 45:12 (unsafe-flimag-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex -TR opt: float-complex-parts3.rkt 45:32 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: float-complex-parts3.rkt 45:35 2.0+4.0i -- unboxed literal -TR opt: float-complex-parts3.rkt 45:44 3.0+6.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 38:0 (+ 1.0+2.0i (real-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 38:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 38:12 (real-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex +TR opt: float-complex-parts3.rkt 38:23 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 38:26 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 38:35 3.0+6.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 39:0 (+ 1.0+2.0i (unsafe-flreal-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 39:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 39:12 (unsafe-flreal-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex +TR opt: float-complex-parts3.rkt 39:32 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 39:35 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 39:44 3.0+6.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 40:0 (+ 1.0+2.0i (imag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 40:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 40:12 (imag-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex +TR opt: float-complex-parts3.rkt 40:23 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 40:26 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 40:35 3.0+6.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 41:0 (+ 1.0+2.0i (unsafe-flimag-part (+ 2.0+4.0i 3.0+6.0i))) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 41:3 1.0+2.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 41:12 (unsafe-flimag-part (+ 2.0+4.0i 3.0+6.0i)) -- unboxed unary float complex +TR opt: float-complex-parts3.rkt 41:32 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: float-complex-parts3.rkt 41:35 2.0+4.0i -- unboxed literal +TR opt: float-complex-parts3.rkt 41:44 3.0+6.0i -- unboxed literal 6.0+2.0i 6.0+2.0i 11.0+2.0i diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex-sin.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex-sin.rkt index 261fe680..d5fdc740 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex-sin.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex-sin.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: float-complex-sin.rkt 16:10 (+ (sin (* t 6.28)) 0.0+0.0i) -- unboxed binary float complex -TR opt: float-complex-sin.rkt 16:10 (+ (sin (* t 6.28)) 0.0+0.0i) -- unboxed float complex -TR missed opt: float-complex-sin.rkt 16:13 (sin (* t 6.28)) -- unary, arg float-arg-expr, return type not Float -TR opt: float-complex-sin.rkt 16:13 (sin (* t 6.28)) -- float-arg-expr in complex ops -TR missed opt: float-complex-sin.rkt 16:18 (* t 6.28) -- binary, args all float-arg-expr, return type not Float -- caused by: 16:21 t -TR opt: float-complex-sin.rkt 16:30 0.0+0.0i -- unboxed literal +TR opt: float-complex-sin.rkt 15:10 (+ (sin (* t 6.28)) 0.0+0.0i) -- unboxed binary float complex +TR missed opt: float-complex-sin.rkt 15:13 (sin (* t 6.28)) -- unary, arg float-arg-expr, return type not Float +TR opt: float-complex-sin.rkt 15:13 (sin (* t 6.28)) -- float-arg-expr in complex ops +TR missed opt: float-complex-sin.rkt 15:18 (* t 6.28) -- binary, args all float-arg-expr, return type not Float -- caused by: 15:21 t +TR opt: float-complex-sin.rkt 15:30 0.0+0.0i -- unboxed literal -0.0031853017931379904+0.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/float-complex.rkt b/collects/tests/typed-scheme/optimizer/tests/float-complex.rkt index dd103153..90e1ebde 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-complex.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-complex.rkt @@ -1,13 +1,11 @@ #; ( -TR opt: float-complex.rkt 18:0 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex.rkt 18:0 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex.rkt 18:3 1.0+2.0i -- unboxed literal -TR opt: float-complex.rkt 18:12 2.0+4.0i -- unboxed literal -TR opt: float-complex.rkt 19:0 (- 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: float-complex.rkt 19:0 (- 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: float-complex.rkt 19:3 1.0+2.0i -- unboxed literal -TR opt: float-complex.rkt 19:12 2.0+4.0i -- unboxed literal +TR opt: float-complex.rkt 16:0 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex.rkt 16:3 1.0+2.0i -- unboxed literal +TR opt: float-complex.rkt 16:12 2.0+4.0i -- unboxed literal +TR opt: float-complex.rkt 17:0 (- 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: float-complex.rkt 17:3 1.0+2.0i -- unboxed literal +TR opt: float-complex.rkt 17:12 2.0+4.0i -- unboxed literal 3.0+6.0i -1.0-2.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let.rkt b/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let.rkt index df48ef04..ce3d049c 100644 --- a/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let.rkt @@ -1,19 +1,17 @@ #; ( -TR opt: invalid-unboxed-let.rkt 22:0 (let ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (+ 3.0+6.0i 4.0+8.0i)) (t3 1.0+2.0i) (t4 1)) (display (+ t1 t1)) (display t2) (display t3) (display t4)) -- unboxed let bindings -TR opt: invalid-unboxed-let.rkt 22:10 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: invalid-unboxed-let.rkt 22:13 1.0+2.0i -- unboxed literal -TR opt: invalid-unboxed-let.rkt 22:22 2.0+4.0i -- unboxed literal -TR opt: invalid-unboxed-let.rkt 23:10 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex -TR opt: invalid-unboxed-let.rkt 23:10 (+ 3.0+6.0i 4.0+8.0i) -- unboxed float complex -TR opt: invalid-unboxed-let.rkt 23:13 3.0+6.0i -- unboxed literal -TR opt: invalid-unboxed-let.rkt 23:22 4.0+8.0i -- unboxed literal -TR opt: invalid-unboxed-let.rkt 26:11 (+ t1 t1) -- unboxed binary float complex -TR opt: invalid-unboxed-let.rkt 26:11 (+ t1 t1) -- unboxed float complex -TR opt: invalid-unboxed-let.rkt 26:14 t1 -- leave var unboxed -TR opt: invalid-unboxed-let.rkt 26:14 t1 -- unbox float-complex -TR opt: invalid-unboxed-let.rkt 26:17 t1 -- leave var unboxed -TR opt: invalid-unboxed-let.rkt 26:17 t1 -- unbox float-complex +TR opt: invalid-unboxed-let.rkt 20:0 (let ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (+ 3.0+6.0i 4.0+8.0i)) (t3 1.0+2.0i) (t4 1)) (display (+ t1 t1)) (display t2) (display t3) (display t4)) -- unboxed let bindings +TR opt: invalid-unboxed-let.rkt 20:10 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: invalid-unboxed-let.rkt 20:13 1.0+2.0i -- unboxed literal +TR opt: invalid-unboxed-let.rkt 20:22 2.0+4.0i -- unboxed literal +TR opt: invalid-unboxed-let.rkt 21:10 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex +TR opt: invalid-unboxed-let.rkt 21:13 3.0+6.0i -- unboxed literal +TR opt: invalid-unboxed-let.rkt 21:22 4.0+8.0i -- unboxed literal +TR opt: invalid-unboxed-let.rkt 24:11 (+ t1 t1) -- unboxed binary float complex +TR opt: invalid-unboxed-let.rkt 24:14 t1 -- leave var unboxed +TR opt: invalid-unboxed-let.rkt 24:14 t1 -- unbox float-complex +TR opt: invalid-unboxed-let.rkt 24:17 t1 -- leave var unboxed +TR opt: invalid-unboxed-let.rkt 24:17 t1 -- unbox float-complex 6.0+12.0i7.0+14.0i1.0+2.0i1) #lang typed/scheme diff --git a/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let2.rkt b/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let2.rkt index 2532811e..6f3ef64a 100644 --- a/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let2.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/invalid-unboxed-let2.rkt @@ -1,17 +1,14 @@ #; ( -TR opt: invalid-unboxed-let2.rkt 24:30 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: invalid-unboxed-let2.rkt 24:30 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: invalid-unboxed-let2.rkt 24:33 1.0+2.0i -- unboxed literal -TR opt: invalid-unboxed-let2.rkt 24:42 2.0+4.0i -- unboxed literal -TR opt: invalid-unboxed-let2.rkt 24:52 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex -TR opt: invalid-unboxed-let2.rkt 24:52 (+ 3.0+6.0i 4.0+8.0i) -- unboxed float complex -TR opt: invalid-unboxed-let2.rkt 24:55 3.0+6.0i -- unboxed literal -TR opt: invalid-unboxed-let2.rkt 24:64 4.0+8.0i -- unboxed literal -TR opt: invalid-unboxed-let2.rkt 25:2 (+ t1 t2) -- unboxed binary float complex -TR opt: invalid-unboxed-let2.rkt 25:2 (+ t1 t2) -- unboxed float complex -TR opt: invalid-unboxed-let2.rkt 25:5 t1 -- unbox float-complex -TR opt: invalid-unboxed-let2.rkt 25:8 t2 -- unbox float-complex +TR opt: invalid-unboxed-let2.rkt 21:30 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: invalid-unboxed-let2.rkt 21:33 1.0+2.0i -- unboxed literal +TR opt: invalid-unboxed-let2.rkt 21:42 2.0+4.0i -- unboxed literal +TR opt: invalid-unboxed-let2.rkt 21:52 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex +TR opt: invalid-unboxed-let2.rkt 21:55 3.0+6.0i -- unboxed literal +TR opt: invalid-unboxed-let2.rkt 21:64 4.0+8.0i -- unboxed literal +TR opt: invalid-unboxed-let2.rkt 22:2 (+ t1 t2) -- unboxed binary float complex +TR opt: invalid-unboxed-let2.rkt 22:5 t1 -- unbox float-complex +TR opt: invalid-unboxed-let2.rkt 22:8 t2 -- unbox float-complex 10.0+20.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/magnitude.rkt b/collects/tests/typed-scheme/optimizer/tests/magnitude.rkt index 3a74de16..40ed5325 100644 --- a/collects/tests/typed-scheme/optimizer/tests/magnitude.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/magnitude.rkt @@ -1,8 +1,7 @@ #; ( -TR opt: magnitude.rkt 14:0 (magnitude 3.0+4.0i) -- unboxed float complex->float -TR opt: magnitude.rkt 14:0 (magnitude 3.0+4.0i) -- unboxed unary float complex -TR opt: magnitude.rkt 14:11 3.0+4.0i -- unboxed literal +TR opt: magnitude.rkt 13:0 (magnitude 3.0+4.0i) -- unboxed unary float complex +TR opt: magnitude.rkt 13:11 3.0+4.0i -- unboxed literal 5.0 ) diff --git a/collects/tests/typed-scheme/optimizer/tests/make-polar.rkt b/collects/tests/typed-scheme/optimizer/tests/make-polar.rkt index ef92e041..20612263 100644 --- a/collects/tests/typed-scheme/optimizer/tests/make-polar.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/make-polar.rkt @@ -1,20 +1,19 @@ #; ( -TR opt: make-polar.rkt 28:0 (make-polar 1.0 1.0) -- make-polar -TR opt: make-polar.rkt 28:0 (make-polar 1.0 1.0) -- make-rectangular elimination -TR opt: make-polar.rkt 31:0 (let ((p (+ 1.0+2.0i (make-polar 2.0 4.0)))) (string-append (real->decimal-string (real-part p) 10) (real->decimal-string (imag-part p) 10))) -- unboxed let bindings -TR opt: make-polar.rkt 31:9 (+ 1.0+2.0i (make-polar 2.0 4.0)) -- unboxed binary float complex -TR opt: make-polar.rkt 31:12 1.0+2.0i -- unboxed literal -TR opt: make-polar.rkt 31:21 (make-polar 2.0 4.0) -- make-rectangular elimination -TR opt: make-polar.rkt 32:39 (real-part p) -- unboxed float complex -TR opt: make-polar.rkt 32:39 (real-part p) -- unboxed float complex->float -TR opt: make-polar.rkt 32:39 (real-part p) -- unboxed unary float complex +TR opt: make-polar.rkt 27:0 (make-polar 1.0 1.0) -- make-polar +TR opt: make-polar.rkt 27:0 (make-polar 1.0 1.0) -- make-rectangular elimination +TR opt: make-polar.rkt 30:0 (let ((p (+ 1.0+2.0i (make-polar 2.0 4.0)))) (string-append (real->decimal-string (real-part p) 10) (real->decimal-string (imag-part p) 10))) -- unboxed let bindings +TR opt: make-polar.rkt 30:9 (+ 1.0+2.0i (make-polar 2.0 4.0)) -- unboxed binary float complex +TR opt: make-polar.rkt 30:12 1.0+2.0i -- unboxed literal +TR opt: make-polar.rkt 30:21 (make-polar 2.0 4.0) -- make-rectangular elimination +TR opt: make-polar.rkt 31:39 (real-part p) -- complex accessor elimination +TR opt: make-polar.rkt 31:39 (real-part p) -- unboxed unary float complex +TR opt: make-polar.rkt 31:50 p -- leave var unboxed +TR opt: make-polar.rkt 31:50 p -- unbox float-complex +TR opt: make-polar.rkt 31:50 p -- unboxed complex variable +TR opt: make-polar.rkt 32:39 (imag-part p) -- complex accessor elimination TR opt: make-polar.rkt 32:50 p -- leave var unboxed -TR opt: make-polar.rkt 32:50 p -- unbox float-complex TR opt: make-polar.rkt 32:50 p -- unboxed complex variable -TR opt: make-polar.rkt 33:39 (imag-part p) -- unboxed float complex -TR opt: make-polar.rkt 33:50 p -- leave var unboxed -TR opt: make-polar.rkt 33:50 p -- unboxed complex variable 0.5403023058681398+0.8414709848078965i "-0.30728724170.4863950094" ) diff --git a/collects/tests/typed-scheme/optimizer/tests/maybe-exact-complex.rkt b/collects/tests/typed-scheme/optimizer/tests/maybe-exact-complex.rkt index 5d72587c..df1b53df 100644 --- a/collects/tests/typed-scheme/optimizer/tests/maybe-exact-complex.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/maybe-exact-complex.rkt @@ -1,9 +1,8 @@ #; ( -TR opt: maybe-exact-complex.rkt 15:0 (+ 1.0+2.0i 2+4i) -- unboxed binary float complex -TR opt: maybe-exact-complex.rkt 15:0 (+ 1.0+2.0i 2+4i) -- unboxed float complex -TR opt: maybe-exact-complex.rkt 15:3 1.0+2.0i -- unboxed literal -TR opt: maybe-exact-complex.rkt 15:12 2+4i -- unboxed literal +TR opt: maybe-exact-complex.rkt 14:0 (+ 1.0+2.0i 2+4i) -- unboxed binary float complex +TR opt: maybe-exact-complex.rkt 14:3 1.0+2.0i -- unboxed literal +TR opt: maybe-exact-complex.rkt 14:12 2+4i -- unboxed literal 3.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/n-ary-float-complex.rkt b/collects/tests/typed-scheme/optimizer/tests/n-ary-float-complex.rkt index dd5a0212..3419ba7b 100644 --- a/collects/tests/typed-scheme/optimizer/tests/n-ary-float-complex.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/n-ary-float-complex.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: n-ary-float-complex.rkt 15:0 (+ 1.0+2.0i 2.0+4.0i 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex -TR opt: n-ary-float-complex.rkt 15:0 (+ 1.0+2.0i 2.0+4.0i 3.0+6.0i 4.0+8.0i) -- unboxed float complex -TR opt: n-ary-float-complex.rkt 15:3 1.0+2.0i -- unboxed literal -TR opt: n-ary-float-complex.rkt 15:12 2.0+4.0i -- unboxed literal -TR opt: n-ary-float-complex.rkt 15:21 3.0+6.0i -- unboxed literal -TR opt: n-ary-float-complex.rkt 15:30 4.0+8.0i -- unboxed literal +TR opt: n-ary-float-complex.rkt 14:0 (+ 1.0+2.0i 2.0+4.0i 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex +TR opt: n-ary-float-complex.rkt 14:3 1.0+2.0i -- unboxed literal +TR opt: n-ary-float-complex.rkt 14:12 2.0+4.0i -- unboxed literal +TR opt: n-ary-float-complex.rkt 14:21 3.0+6.0i -- unboxed literal +TR opt: n-ary-float-complex.rkt 14:30 4.0+8.0i -- unboxed literal 10.0+20.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/nested-float-complex.rkt b/collects/tests/typed-scheme/optimizer/tests/nested-float-complex.rkt index 9fcc7003..2800fbe7 100644 --- a/collects/tests/typed-scheme/optimizer/tests/nested-float-complex.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/nested-float-complex.rkt @@ -1,11 +1,10 @@ #; ( -TR opt: nested-float-complex.rkt 15:0 (+ 1.0+2.0i (- 2.0+4.0i 3.0+6.0i)) -- unboxed binary float complex -TR opt: nested-float-complex.rkt 15:0 (+ 1.0+2.0i (- 2.0+4.0i 3.0+6.0i)) -- unboxed float complex -TR opt: nested-float-complex.rkt 15:3 1.0+2.0i -- unboxed literal -TR opt: nested-float-complex.rkt 15:12 (- 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: nested-float-complex.rkt 15:15 2.0+4.0i -- unboxed literal -TR opt: nested-float-complex.rkt 15:24 3.0+6.0i -- unboxed literal +TR opt: nested-float-complex.rkt 14:0 (+ 1.0+2.0i (- 2.0+4.0i 3.0+6.0i)) -- unboxed binary float complex +TR opt: nested-float-complex.rkt 14:3 1.0+2.0i -- unboxed literal +TR opt: nested-float-complex.rkt 14:12 (- 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: nested-float-complex.rkt 14:15 2.0+4.0i -- unboxed literal +TR opt: nested-float-complex.rkt 14:24 3.0+6.0i -- unboxed literal 0.0+0.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/nested-let-loop.rkt b/collects/tests/typed-scheme/optimizer/tests/nested-let-loop.rkt index 9ccff9d4..af1bec9b 100644 --- a/collects/tests/typed-scheme/optimizer/tests/nested-let-loop.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/nested-let-loop.rkt @@ -1,36 +1,35 @@ #; ( -TR opt: nested-let-loop.rkt 40:0 (let: loop1 : Float-Complex ((x : (Listof Float-Complex) (quote (1.0+2.0i 2.0+4.0i))) (r : Float-Complex 0.0+0.0i)) (if (null? x) r (let: loop2 : Float-Complex ((y : (Listof Float-Complex) (quote (3.0+6.0i 4.0+8.0i))) (s : Float-Complex 0.0+0.0i)) (if (null? y) (loop1 (cdr x) (+ r s)) (loop2 (cdr y) (+ s (car x) (car y))))))) -- unboxed call site -TR opt: nested-let-loop.rkt 40:6 loop1 -- fun -> unboxed fun -TR opt: nested-let-loop.rkt 40:6 loop1 -- unboxed function -> table -TR opt: nested-let-loop.rkt 40:6 loop1 -- unboxed let loop -TR opt: nested-let-loop.rkt 42:8 r -- unboxed var -> table -TR opt: nested-let-loop.rkt 42:28 0.0+0.0i -- unboxed literal -TR opt: nested-let-loop.rkt 44:10 r -- unboxed complex variable -TR opt: nested-let-loop.rkt 45:10 (let: loop2 : Float-Complex ((y : (Listof Float-Complex) (quote (3.0+6.0i 4.0+8.0i))) (s : Float-Complex 0.0+0.0i)) (if (null? y) (loop1 (cdr x) (+ r s)) (loop2 (cdr y) (+ s (car x) (car y))))) -- unboxed call site -TR opt: nested-let-loop.rkt 45:16 loop2 -- fun -> unboxed fun -TR opt: nested-let-loop.rkt 45:16 loop2 -- unboxed function -> table -TR opt: nested-let-loop.rkt 45:16 loop2 -- unboxed let loop -TR opt: nested-let-loop.rkt 47:18 s -- unboxed var -> table -TR opt: nested-let-loop.rkt 47:38 0.0+0.0i -- unboxed literal -TR opt: nested-let-loop.rkt 49:20 (loop1 (cdr x) (+ r s)) -- call to fun with unboxed args -TR opt: nested-let-loop.rkt 49:20 (loop1 (cdr x) (+ r s)) -- unboxed call site -TR opt: nested-let-loop.rkt 49:27 (cdr x) -- pair -TR opt: nested-let-loop.rkt 49:35 (+ r s) -- unboxed binary float complex -TR opt: nested-let-loop.rkt 49:35 (+ r s) -- unboxed float complex -TR opt: nested-let-loop.rkt 49:38 r -- leave var unboxed -TR opt: nested-let-loop.rkt 49:38 r -- unbox float-complex -TR opt: nested-let-loop.rkt 49:40 s -- leave var unboxed -TR opt: nested-let-loop.rkt 49:40 s -- unbox float-complex -TR opt: nested-let-loop.rkt 50:20 (loop2 (cdr y) (+ s (car x) (car y))) -- call to fun with unboxed args -TR opt: nested-let-loop.rkt 50:20 (loop2 (cdr y) (+ s (car x) (car y))) -- unboxed call site -TR opt: nested-let-loop.rkt 50:27 (cdr y) -- pair -TR opt: nested-let-loop.rkt 50:35 (+ s (car x) (car y)) -- unboxed binary float complex -TR opt: nested-let-loop.rkt 50:38 s -- leave var unboxed -TR opt: nested-let-loop.rkt 50:40 (car x) -- pair -TR opt: nested-let-loop.rkt 50:40 (car x) -- unbox float-complex -TR opt: nested-let-loop.rkt 50:48 (car y) -- pair -TR opt: nested-let-loop.rkt 50:48 (car y) -- unbox float-complex +TR opt: nested-let-loop.rkt 39:0 (let: loop1 : Float-Complex ((x : (Listof Float-Complex) (quote (1.0+2.0i 2.0+4.0i))) (r : Float-Complex 0.0+0.0i)) (if (null? x) r (let: loop2 : Float-Complex ((y : (Listof Float-Complex) (quote (3.0+6.0i 4.0+8.0i))) (s : Float-Complex 0.0+0.0i)) (if (null? y) (loop1 (cdr x) (+ r s)) (loop2 (cdr y) (+ s (car x) (car y))))))) -- unboxed call site +TR opt: nested-let-loop.rkt 39:6 loop1 -- fun -> unboxed fun +TR opt: nested-let-loop.rkt 39:6 loop1 -- unboxed function -> table +TR opt: nested-let-loop.rkt 39:6 loop1 -- unboxed let loop +TR opt: nested-let-loop.rkt 41:8 r -- unboxed var -> table +TR opt: nested-let-loop.rkt 41:28 0.0+0.0i -- unboxed literal +TR opt: nested-let-loop.rkt 43:10 r -- unboxed complex variable +TR opt: nested-let-loop.rkt 44:10 (let: loop2 : Float-Complex ((y : (Listof Float-Complex) (quote (3.0+6.0i 4.0+8.0i))) (s : Float-Complex 0.0+0.0i)) (if (null? y) (loop1 (cdr x) (+ r s)) (loop2 (cdr y) (+ s (car x) (car y))))) -- unboxed call site +TR opt: nested-let-loop.rkt 44:16 loop2 -- fun -> unboxed fun +TR opt: nested-let-loop.rkt 44:16 loop2 -- unboxed function -> table +TR opt: nested-let-loop.rkt 44:16 loop2 -- unboxed let loop +TR opt: nested-let-loop.rkt 46:18 s -- unboxed var -> table +TR opt: nested-let-loop.rkt 46:38 0.0+0.0i -- unboxed literal +TR opt: nested-let-loop.rkt 48:20 (loop1 (cdr x) (+ r s)) -- call to fun with unboxed args +TR opt: nested-let-loop.rkt 48:20 (loop1 (cdr x) (+ r s)) -- unboxed call site +TR opt: nested-let-loop.rkt 48:27 (cdr x) -- pair +TR opt: nested-let-loop.rkt 48:35 (+ r s) -- unboxed binary float complex +TR opt: nested-let-loop.rkt 48:38 r -- leave var unboxed +TR opt: nested-let-loop.rkt 48:38 r -- unbox float-complex +TR opt: nested-let-loop.rkt 48:40 s -- leave var unboxed +TR opt: nested-let-loop.rkt 48:40 s -- unbox float-complex +TR opt: nested-let-loop.rkt 49:20 (loop2 (cdr y) (+ s (car x) (car y))) -- call to fun with unboxed args +TR opt: nested-let-loop.rkt 49:20 (loop2 (cdr y) (+ s (car x) (car y))) -- unboxed call site +TR opt: nested-let-loop.rkt 49:27 (cdr y) -- pair +TR opt: nested-let-loop.rkt 49:35 (+ s (car x) (car y)) -- unboxed binary float complex +TR opt: nested-let-loop.rkt 49:38 s -- leave var unboxed +TR opt: nested-let-loop.rkt 49:40 (car x) -- pair +TR opt: nested-let-loop.rkt 49:40 (car x) -- unbox float-complex +TR opt: nested-let-loop.rkt 49:48 (car y) -- pair +TR opt: nested-let-loop.rkt 49:48 (car y) -- unbox float-complex 20.0+40.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/nested-unboxed-let.rkt b/collects/tests/typed-scheme/optimizer/tests/nested-unboxed-let.rkt index 28e5a26a..19a87be8 100644 --- a/collects/tests/typed-scheme/optimizer/tests/nested-unboxed-let.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/nested-unboxed-let.rkt @@ -1,20 +1,18 @@ #; ( -TR opt: nested-unboxed-let.rkt 24:0 (let ((x (+ 1.0+2.0i 2.0+3.0i))) (let ((x (+ x 2.0+3.0i))) (+ x 3.0+6.0i))) -- unboxed let bindings -TR opt: nested-unboxed-let.rkt 24:9 (+ 1.0+2.0i 2.0+3.0i) -- unboxed binary float complex -TR opt: nested-unboxed-let.rkt 24:12 1.0+2.0i -- unboxed literal -TR opt: nested-unboxed-let.rkt 24:21 2.0+3.0i -- unboxed literal -TR opt: nested-unboxed-let.rkt 25:2 (let ((x (+ x 2.0+3.0i))) (+ x 3.0+6.0i)) -- unboxed let bindings -TR opt: nested-unboxed-let.rkt 25:11 (+ x 2.0+3.0i) -- unboxed binary float complex -TR opt: nested-unboxed-let.rkt 25:11 (+ x 2.0+3.0i) -- unboxed float complex -TR opt: nested-unboxed-let.rkt 25:14 x -- leave var unboxed -TR opt: nested-unboxed-let.rkt 25:14 x -- unbox float-complex -TR opt: nested-unboxed-let.rkt 25:16 2.0+3.0i -- unboxed literal -TR opt: nested-unboxed-let.rkt 26:4 (+ x 3.0+6.0i) -- unboxed binary float complex -TR opt: nested-unboxed-let.rkt 26:4 (+ x 3.0+6.0i) -- unboxed float complex -TR opt: nested-unboxed-let.rkt 26:7 x -- leave var unboxed -TR opt: nested-unboxed-let.rkt 26:7 x -- unbox float-complex -TR opt: nested-unboxed-let.rkt 26:9 3.0+6.0i -- unboxed literal +TR opt: nested-unboxed-let.rkt 22:0 (let ((x (+ 1.0+2.0i 2.0+3.0i))) (let ((x (+ x 2.0+3.0i))) (+ x 3.0+6.0i))) -- unboxed let bindings +TR opt: nested-unboxed-let.rkt 22:9 (+ 1.0+2.0i 2.0+3.0i) -- unboxed binary float complex +TR opt: nested-unboxed-let.rkt 22:12 1.0+2.0i -- unboxed literal +TR opt: nested-unboxed-let.rkt 22:21 2.0+3.0i -- unboxed literal +TR opt: nested-unboxed-let.rkt 23:2 (let ((x (+ x 2.0+3.0i))) (+ x 3.0+6.0i)) -- unboxed let bindings +TR opt: nested-unboxed-let.rkt 23:11 (+ x 2.0+3.0i) -- unboxed binary float complex +TR opt: nested-unboxed-let.rkt 23:14 x -- leave var unboxed +TR opt: nested-unboxed-let.rkt 23:14 x -- unbox float-complex +TR opt: nested-unboxed-let.rkt 23:16 2.0+3.0i -- unboxed literal +TR opt: nested-unboxed-let.rkt 24:4 (+ x 3.0+6.0i) -- unboxed binary float complex +TR opt: nested-unboxed-let.rkt 24:7 x -- leave var unboxed +TR opt: nested-unboxed-let.rkt 24:7 x -- unbox float-complex +TR opt: nested-unboxed-let.rkt 24:9 3.0+6.0i -- unboxed literal 8.0+14.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/real-part-loop.rkt b/collects/tests/typed-scheme/optimizer/tests/real-part-loop.rkt index b24389bb..dd22fe7b 100644 --- a/collects/tests/typed-scheme/optimizer/tests/real-part-loop.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/real-part-loop.rkt @@ -1,23 +1,22 @@ #; ( -TR opt: real-part-loop.rkt 30:1 (let loop ((v 0.0+1.0i)) (if (> (real-part v) 70000.2) 0 (loop (+ v 3.6)))) -- unboxed call site -TR opt: real-part-loop.rkt 30:6 loop -- fun -> unboxed fun -TR opt: real-part-loop.rkt 30:6 loop -- unboxed function -> table -TR opt: real-part-loop.rkt 30:6 loop -- unboxed let loop -TR opt: real-part-loop.rkt 30:13 v -- unboxed var -> table -TR opt: real-part-loop.rkt 30:15 0.0+1.0i -- unboxed literal -TR opt: real-part-loop.rkt 31:6 (> (real-part v) 70000.2) -- binary float comp -TR opt: real-part-loop.rkt 31:9 (real-part v) -- unboxed float complex -TR opt: real-part-loop.rkt 31:9 (real-part v) -- unboxed float complex->float -TR opt: real-part-loop.rkt 31:9 (real-part v) -- unboxed unary float complex -TR opt: real-part-loop.rkt 31:20 v -- leave var unboxed -TR opt: real-part-loop.rkt 31:20 v -- unbox float-complex -TR opt: real-part-loop.rkt 31:20 v -- unboxed complex variable -TR opt: real-part-loop.rkt 33:6 (loop (+ v 3.6)) -- call to fun with unboxed args -TR opt: real-part-loop.rkt 33:6 (loop (+ v 3.6)) -- unboxed call site -TR opt: real-part-loop.rkt 33:12 (+ v 3.6) -- unboxed binary float complex -TR opt: real-part-loop.rkt 33:15 v -- leave var unboxed -TR opt: real-part-loop.rkt 33:17 3.6 -- float-arg-expr in complex ops +TR opt: real-part-loop.rkt 29:1 (let loop ((v 0.0+1.0i)) (if (> (real-part v) 70000.2) 0 (loop (+ v 3.6)))) -- unboxed call site +TR opt: real-part-loop.rkt 29:6 loop -- fun -> unboxed fun +TR opt: real-part-loop.rkt 29:6 loop -- unboxed function -> table +TR opt: real-part-loop.rkt 29:6 loop -- unboxed let loop +TR opt: real-part-loop.rkt 29:13 v -- unboxed var -> table +TR opt: real-part-loop.rkt 29:15 0.0+1.0i -- unboxed literal +TR opt: real-part-loop.rkt 30:6 (> (real-part v) 70000.2) -- binary float comp +TR opt: real-part-loop.rkt 30:9 (real-part v) -- complex accessor elimination +TR opt: real-part-loop.rkt 30:9 (real-part v) -- unboxed unary float complex +TR opt: real-part-loop.rkt 30:20 v -- leave var unboxed +TR opt: real-part-loop.rkt 30:20 v -- unbox float-complex +TR opt: real-part-loop.rkt 30:20 v -- unboxed complex variable +TR opt: real-part-loop.rkt 32:6 (loop (+ v 3.6)) -- call to fun with unboxed args +TR opt: real-part-loop.rkt 32:6 (loop (+ v 3.6)) -- unboxed call site +TR opt: real-part-loop.rkt 32:12 (+ v 3.6) -- unboxed binary float complex +TR opt: real-part-loop.rkt 32:15 v -- leave var unboxed +TR opt: real-part-loop.rkt 32:17 3.6 -- float-arg-expr in complex ops 0 ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-for.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-for.rkt index b8ae1879..b5fbc627 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-for.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-for.rkt @@ -1,30 +1,29 @@ #; ( -TR opt: unboxed-for.rkt 31:0 #%module-begin -- in-list -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- call to fun with unboxed args -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- fun -> unboxed fun -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unbox float-complex -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed call site -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed function -> table -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let bindings -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let bindings -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let loop -TR opt: unboxed-for.rkt 34:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed call site -TR opt: unboxed-for.rkt 34:31 sum -- leave var unboxed -TR opt: unboxed-for.rkt 34:31 sum -- unbox float-complex -TR opt: unboxed-for.rkt 34:31 sum -- unboxed complex variable -TR opt: unboxed-for.rkt 34:31 sum -- unboxed complex variable -TR opt: unboxed-for.rkt 34:31 sum -- unboxed complex variable -TR opt: unboxed-for.rkt 34:31 sum -- unboxed var -> table -TR opt: unboxed-for.rkt 34:53 0.0+0.0i -- unboxed literal -TR opt: unboxed-for.rkt 35:13 i -- unboxed complex variable -TR opt: unboxed-for.rkt 35:13 i -- unboxed complex variable -TR opt: unboxed-for.rkt 36:6 (+ i sum) -- unboxed binary float complex -TR opt: unboxed-for.rkt 36:6 (+ i sum) -- unboxed float complex -TR opt: unboxed-for.rkt 36:9 i -- leave var unboxed -TR opt: unboxed-for.rkt 36:9 i -- unbox float-complex -TR opt: unboxed-for.rkt 36:11 sum -- leave var unboxed -TR opt: unboxed-for.rkt 36:11 sum -- unbox float-complex +TR opt: unboxed-for.rkt 30:0 #%module-begin -- in-list +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- call to fun with unboxed args +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- fun -> unboxed fun +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unbox float-complex +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed call site +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed function -> table +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let bindings +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let bindings +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed let loop +TR opt: unboxed-for.rkt 33:0 (for/fold: : Float-Complex ((sum : Float-Complex 0.0+0.0i)) ((i : Float-Complex (quote (1.0+2.0i 2.0+4.0i)))) (+ i sum)) -- unboxed call site +TR opt: unboxed-for.rkt 33:31 sum -- leave var unboxed +TR opt: unboxed-for.rkt 33:31 sum -- unbox float-complex +TR opt: unboxed-for.rkt 33:31 sum -- unboxed complex variable +TR opt: unboxed-for.rkt 33:31 sum -- unboxed complex variable +TR opt: unboxed-for.rkt 33:31 sum -- unboxed complex variable +TR opt: unboxed-for.rkt 33:31 sum -- unboxed var -> table +TR opt: unboxed-for.rkt 33:53 0.0+0.0i -- unboxed literal +TR opt: unboxed-for.rkt 34:13 i -- unboxed complex variable +TR opt: unboxed-for.rkt 34:13 i -- unboxed complex variable +TR opt: unboxed-for.rkt 35:6 (+ i sum) -- unboxed binary float complex +TR opt: unboxed-for.rkt 35:9 i -- leave var unboxed +TR opt: unboxed-for.rkt 35:9 i -- unbox float-complex +TR opt: unboxed-for.rkt 35:11 sum -- leave var unboxed +TR opt: unboxed-for.rkt 35:11 sum -- unbox float-complex 3.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions1.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions1.rkt index 271717f8..e5242846 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions1.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions1.rkt @@ -1,18 +1,17 @@ #; ( -TR opt: unboxed-let-functions1.rkt 23:7 f -- fun -> unboxed fun -TR opt: unboxed-let-functions1.rkt 23:7 f -- unboxed function -> table -TR opt: unboxed-let-functions1.rkt 23:20 x -- unboxed var -> table -TR opt: unboxed-let-functions1.rkt 23:42 (+ x 3.0+6.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions1.rkt 23:42 (+ x 3.0+6.0i) -- unboxed float complex -TR opt: unboxed-let-functions1.rkt 23:45 x -- leave var unboxed -TR opt: unboxed-let-functions1.rkt 23:45 x -- unbox float-complex -TR opt: unboxed-let-functions1.rkt 23:47 3.0+6.0i -- unboxed literal -TR opt: unboxed-let-functions1.rkt 24:2 (f (+ 1.0+2.0i 2.0+4.0i)) -- call to fun with unboxed args -TR opt: unboxed-let-functions1.rkt 24:2 (f (+ 1.0+2.0i 2.0+4.0i)) -- unboxed call site -TR opt: unboxed-let-functions1.rkt 24:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions1.rkt 24:8 1.0+2.0i -- unboxed literal -TR opt: unboxed-let-functions1.rkt 24:17 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions1.rkt 22:7 f -- fun -> unboxed fun +TR opt: unboxed-let-functions1.rkt 22:7 f -- unboxed function -> table +TR opt: unboxed-let-functions1.rkt 22:20 x -- unboxed var -> table +TR opt: unboxed-let-functions1.rkt 22:42 (+ x 3.0+6.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions1.rkt 22:45 x -- leave var unboxed +TR opt: unboxed-let-functions1.rkt 22:45 x -- unbox float-complex +TR opt: unboxed-let-functions1.rkt 22:47 3.0+6.0i -- unboxed literal +TR opt: unboxed-let-functions1.rkt 23:2 (f (+ 1.0+2.0i 2.0+4.0i)) -- call to fun with unboxed args +TR opt: unboxed-let-functions1.rkt 23:2 (f (+ 1.0+2.0i 2.0+4.0i)) -- unboxed call site +TR opt: unboxed-let-functions1.rkt 23:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions1.rkt 23:8 1.0+2.0i -- unboxed literal +TR opt: unboxed-let-functions1.rkt 23:17 2.0+4.0i -- unboxed literal 6.0+12.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions2.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions2.rkt index 4d086c77..e206c009 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions2.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions2.rkt @@ -1,21 +1,20 @@ #; ( -TR opt: unboxed-let-functions2.rkt 26:7 f -- fun -> unboxed fun -TR opt: unboxed-let-functions2.rkt 26:7 f -- unboxed function -> table -TR opt: unboxed-let-functions2.rkt 26:20 x -- unboxed var -> table -TR opt: unboxed-let-functions2.rkt 26:42 y -- unboxed var -> table -TR opt: unboxed-let-functions2.rkt 27:18 (+ x y) -- unboxed binary float complex -TR opt: unboxed-let-functions2.rkt 27:18 (+ x y) -- unboxed float complex -TR opt: unboxed-let-functions2.rkt 27:21 x -- leave var unboxed -TR opt: unboxed-let-functions2.rkt 27:21 x -- unbox float-complex -TR opt: unboxed-let-functions2.rkt 27:23 y -- leave var unboxed -TR opt: unboxed-let-functions2.rkt 27:23 y -- unbox float-complex -TR opt: unboxed-let-functions2.rkt 28:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0+6.0i) -- call to fun with unboxed args -TR opt: unboxed-let-functions2.rkt 28:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0+6.0i) -- unboxed call site -TR opt: unboxed-let-functions2.rkt 28:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions2.rkt 28:8 1.0+2.0i -- unboxed literal -TR opt: unboxed-let-functions2.rkt 28:17 2.0+4.0i -- unboxed literal -TR opt: unboxed-let-functions2.rkt 29:5 3.0+6.0i -- unboxed literal +TR opt: unboxed-let-functions2.rkt 25:7 f -- fun -> unboxed fun +TR opt: unboxed-let-functions2.rkt 25:7 f -- unboxed function -> table +TR opt: unboxed-let-functions2.rkt 25:20 x -- unboxed var -> table +TR opt: unboxed-let-functions2.rkt 25:42 y -- unboxed var -> table +TR opt: unboxed-let-functions2.rkt 26:18 (+ x y) -- unboxed binary float complex +TR opt: unboxed-let-functions2.rkt 26:21 x -- leave var unboxed +TR opt: unboxed-let-functions2.rkt 26:21 x -- unbox float-complex +TR opt: unboxed-let-functions2.rkt 26:23 y -- leave var unboxed +TR opt: unboxed-let-functions2.rkt 26:23 y -- unbox float-complex +TR opt: unboxed-let-functions2.rkt 27:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0+6.0i) -- call to fun with unboxed args +TR opt: unboxed-let-functions2.rkt 27:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0+6.0i) -- unboxed call site +TR opt: unboxed-let-functions2.rkt 27:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions2.rkt 27:8 1.0+2.0i -- unboxed literal +TR opt: unboxed-let-functions2.rkt 27:17 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions2.rkt 28:5 3.0+6.0i -- unboxed literal 6.0+12.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions3.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions3.rkt index f22de134..8da15d41 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions3.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions3.rkt @@ -1,18 +1,17 @@ #; ( -TR opt: unboxed-let-functions3.rkt 23:7 f -- fun -> unboxed fun -TR opt: unboxed-let-functions3.rkt 23:7 f -- unboxed function -> table -TR opt: unboxed-let-functions3.rkt 23:20 x -- unboxed var -> table -TR opt: unboxed-let-functions3.rkt 24:18 (+ x y) -- unboxed binary float complex -TR opt: unboxed-let-functions3.rkt 24:18 (+ x y) -- unboxed float complex -TR opt: unboxed-let-functions3.rkt 24:21 x -- leave var unboxed -TR opt: unboxed-let-functions3.rkt 24:21 x -- unbox float-complex -TR opt: unboxed-let-functions3.rkt 24:23 y -- float-arg-expr in complex ops -TR opt: unboxed-let-functions3.rkt 25:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0) -- call to fun with unboxed args -TR opt: unboxed-let-functions3.rkt 25:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0) -- unboxed call site -TR opt: unboxed-let-functions3.rkt 25:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions3.rkt 25:8 1.0+2.0i -- unboxed literal -TR opt: unboxed-let-functions3.rkt 25:17 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions3.rkt 22:7 f -- fun -> unboxed fun +TR opt: unboxed-let-functions3.rkt 22:7 f -- unboxed function -> table +TR opt: unboxed-let-functions3.rkt 22:20 x -- unboxed var -> table +TR opt: unboxed-let-functions3.rkt 23:18 (+ x y) -- unboxed binary float complex +TR opt: unboxed-let-functions3.rkt 23:21 x -- leave var unboxed +TR opt: unboxed-let-functions3.rkt 23:21 x -- unbox float-complex +TR opt: unboxed-let-functions3.rkt 23:23 y -- float-arg-expr in complex ops +TR opt: unboxed-let-functions3.rkt 24:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0) -- call to fun with unboxed args +TR opt: unboxed-let-functions3.rkt 24:2 (f (+ 1.0+2.0i 2.0+4.0i) 3.0) -- unboxed call site +TR opt: unboxed-let-functions3.rkt 24:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions3.rkt 24:8 1.0+2.0i -- unboxed literal +TR opt: unboxed-let-functions3.rkt 24:17 2.0+4.0i -- unboxed literal 6.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions4.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions4.rkt index 289378a5..5b927425 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions4.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions4.rkt @@ -1,18 +1,17 @@ #; ( -TR opt: unboxed-let-functions4.rkt 23:7 f -- fun -> unboxed fun -TR opt: unboxed-let-functions4.rkt 23:7 f -- unboxed function -> table -TR opt: unboxed-let-functions4.rkt 23:32 x -- unboxed var -> table -TR opt: unboxed-let-functions4.rkt 24:18 (+ x y) -- unboxed binary float complex -TR opt: unboxed-let-functions4.rkt 24:18 (+ x y) -- unboxed float complex -TR opt: unboxed-let-functions4.rkt 24:21 x -- leave var unboxed -TR opt: unboxed-let-functions4.rkt 24:21 x -- unbox float-complex -TR opt: unboxed-let-functions4.rkt 24:23 y -- float-arg-expr in complex ops -TR opt: unboxed-let-functions4.rkt 25:2 (f 3.0 (+ 1.0+2.0i 2.0+4.0i)) -- call to fun with unboxed args -TR opt: unboxed-let-functions4.rkt 25:2 (f 3.0 (+ 1.0+2.0i 2.0+4.0i)) -- unboxed call site -TR opt: unboxed-let-functions4.rkt 26:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions4.rkt 26:8 1.0+2.0i -- unboxed literal -TR opt: unboxed-let-functions4.rkt 26:17 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions4.rkt 22:7 f -- fun -> unboxed fun +TR opt: unboxed-let-functions4.rkt 22:7 f -- unboxed function -> table +TR opt: unboxed-let-functions4.rkt 22:32 x -- unboxed var -> table +TR opt: unboxed-let-functions4.rkt 23:18 (+ x y) -- unboxed binary float complex +TR opt: unboxed-let-functions4.rkt 23:21 x -- leave var unboxed +TR opt: unboxed-let-functions4.rkt 23:21 x -- unbox float-complex +TR opt: unboxed-let-functions4.rkt 23:23 y -- float-arg-expr in complex ops +TR opt: unboxed-let-functions4.rkt 24:2 (f 3.0 (+ 1.0+2.0i 2.0+4.0i)) -- call to fun with unboxed args +TR opt: unboxed-let-functions4.rkt 24:2 (f 3.0 (+ 1.0+2.0i 2.0+4.0i)) -- unboxed call site +TR opt: unboxed-let-functions4.rkt 25:5 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions4.rkt 25:8 1.0+2.0i -- unboxed literal +TR opt: unboxed-let-functions4.rkt 25:17 2.0+4.0i -- unboxed literal 6.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions5.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions5.rkt index d2047d34..b1d30e70 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions5.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions5.rkt @@ -1,9 +1,8 @@ #; ( -TR opt: unboxed-let-functions5.rkt 20:12 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions5.rkt 20:12 (+ 1.0+2.0i 2.0+4.0i) -- unboxed float complex -TR opt: unboxed-let-functions5.rkt 20:15 1.0+2.0i -- unboxed literal -TR opt: unboxed-let-functions5.rkt 20:24 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions5.rkt 19:12 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions5.rkt 19:15 1.0+2.0i -- unboxed literal +TR opt: unboxed-let-functions5.rkt 19:24 2.0+4.0i -- unboxed literal 3.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions6.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions6.rkt index ec87dd67..0cff6cd2 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions6.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions6.rkt @@ -1,23 +1,22 @@ #; ( -TR opt: unboxed-let-functions6.rkt 27:0 (let: loop : Float-Complex ((z : Float-Complex 0.0+0.0i) (l : (Listof Integer) (quote (1 2 3)))) (if (null? l) (+ z 0.0+1.0i) (loop (+ z (car l)) (cdr l)))) -- unboxed call site -TR opt: unboxed-let-functions6.rkt 27:6 loop -- fun -> unboxed fun -TR opt: unboxed-let-functions6.rkt 27:6 loop -- unboxed function -> table -TR opt: unboxed-let-functions6.rkt 27:6 loop -- unboxed let loop -TR opt: unboxed-let-functions6.rkt 27:31 z -- unboxed var -> table -TR opt: unboxed-let-functions6.rkt 27:51 0.0+0.0i -- unboxed literal -TR opt: unboxed-let-functions6.rkt 30:10 (+ z 0.0+1.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions6.rkt 30:10 (+ z 0.0+1.0i) -- unboxed float complex -TR opt: unboxed-let-functions6.rkt 30:13 z -- leave var unboxed -TR opt: unboxed-let-functions6.rkt 30:13 z -- unbox float-complex -TR opt: unboxed-let-functions6.rkt 30:15 0.0+1.0i -- unboxed literal -TR opt: unboxed-let-functions6.rkt 31:10 (loop (+ z (car l)) (cdr l)) -- call to fun with unboxed args -TR opt: unboxed-let-functions6.rkt 31:10 (loop (+ z (car l)) (cdr l)) -- unboxed call site -TR opt: unboxed-let-functions6.rkt 31:16 (+ z (car l)) -- unboxed binary float complex -TR opt: unboxed-let-functions6.rkt 31:19 z -- leave var unboxed -TR opt: unboxed-let-functions6.rkt 31:21 (car l) -- float-arg-expr in complex ops -TR opt: unboxed-let-functions6.rkt 31:21 (car l) -- pair -TR opt: unboxed-let-functions6.rkt 32:16 (cdr l) -- pair +TR opt: unboxed-let-functions6.rkt 26:0 (let: loop : Float-Complex ((z : Float-Complex 0.0+0.0i) (l : (Listof Integer) (quote (1 2 3)))) (if (null? l) (+ z 0.0+1.0i) (loop (+ z (car l)) (cdr l)))) -- unboxed call site +TR opt: unboxed-let-functions6.rkt 26:6 loop -- fun -> unboxed fun +TR opt: unboxed-let-functions6.rkt 26:6 loop -- unboxed function -> table +TR opt: unboxed-let-functions6.rkt 26:6 loop -- unboxed let loop +TR opt: unboxed-let-functions6.rkt 26:31 z -- unboxed var -> table +TR opt: unboxed-let-functions6.rkt 26:51 0.0+0.0i -- unboxed literal +TR opt: unboxed-let-functions6.rkt 29:10 (+ z 0.0+1.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions6.rkt 29:13 z -- leave var unboxed +TR opt: unboxed-let-functions6.rkt 29:13 z -- unbox float-complex +TR opt: unboxed-let-functions6.rkt 29:15 0.0+1.0i -- unboxed literal +TR opt: unboxed-let-functions6.rkt 30:10 (loop (+ z (car l)) (cdr l)) -- call to fun with unboxed args +TR opt: unboxed-let-functions6.rkt 30:10 (loop (+ z (car l)) (cdr l)) -- unboxed call site +TR opt: unboxed-let-functions6.rkt 30:16 (+ z (car l)) -- unboxed binary float complex +TR opt: unboxed-let-functions6.rkt 30:19 z -- leave var unboxed +TR opt: unboxed-let-functions6.rkt 30:21 (car l) -- float-arg-expr in complex ops +TR opt: unboxed-let-functions6.rkt 30:21 (car l) -- pair +TR opt: unboxed-let-functions6.rkt 31:16 (cdr l) -- pair 6.0+1.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions7.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions7.rkt index 108d7930..dc58153c 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions7.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions7.rkt @@ -1,21 +1,20 @@ #; ( -TR opt: unboxed-let-functions7.rkt 26:0 (let: loop : Float-Complex ((z : Float-Complex 0.0+0.0i) (l : (Listof Integer) (quote (1 2 3)))) (if (null? l) z (loop (+ z (car l)) (cdr l)))) -- unboxed call site -TR opt: unboxed-let-functions7.rkt 26:6 loop -- fun -> unboxed fun -TR opt: unboxed-let-functions7.rkt 26:6 loop -- unboxed function -> table -TR opt: unboxed-let-functions7.rkt 26:6 loop -- unboxed let loop -TR opt: unboxed-let-functions7.rkt 26:31 z -- unboxed var -> table -TR opt: unboxed-let-functions7.rkt 26:51 0.0+0.0i -- unboxed literal -TR opt: unboxed-let-functions7.rkt 29:6 z -- unboxed complex variable -TR opt: unboxed-let-functions7.rkt 30:6 (loop (+ z (car l)) (cdr l)) -- call to fun with unboxed args -TR opt: unboxed-let-functions7.rkt 30:6 (loop (+ z (car l)) (cdr l)) -- unboxed call site -TR opt: unboxed-let-functions7.rkt 30:12 (+ z (car l)) -- unboxed binary float complex -TR opt: unboxed-let-functions7.rkt 30:12 (+ z (car l)) -- unboxed float complex -TR opt: unboxed-let-functions7.rkt 30:15 z -- leave var unboxed -TR opt: unboxed-let-functions7.rkt 30:15 z -- unbox float-complex -TR opt: unboxed-let-functions7.rkt 30:17 (car l) -- float-arg-expr in complex ops -TR opt: unboxed-let-functions7.rkt 30:17 (car l) -- pair -TR opt: unboxed-let-functions7.rkt 31:12 (cdr l) -- pair +TR opt: unboxed-let-functions7.rkt 25:0 (let: loop : Float-Complex ((z : Float-Complex 0.0+0.0i) (l : (Listof Integer) (quote (1 2 3)))) (if (null? l) z (loop (+ z (car l)) (cdr l)))) -- unboxed call site +TR opt: unboxed-let-functions7.rkt 25:6 loop -- fun -> unboxed fun +TR opt: unboxed-let-functions7.rkt 25:6 loop -- unboxed function -> table +TR opt: unboxed-let-functions7.rkt 25:6 loop -- unboxed let loop +TR opt: unboxed-let-functions7.rkt 25:31 z -- unboxed var -> table +TR opt: unboxed-let-functions7.rkt 25:51 0.0+0.0i -- unboxed literal +TR opt: unboxed-let-functions7.rkt 28:6 z -- unboxed complex variable +TR opt: unboxed-let-functions7.rkt 29:6 (loop (+ z (car l)) (cdr l)) -- call to fun with unboxed args +TR opt: unboxed-let-functions7.rkt 29:6 (loop (+ z (car l)) (cdr l)) -- unboxed call site +TR opt: unboxed-let-functions7.rkt 29:12 (+ z (car l)) -- unboxed binary float complex +TR opt: unboxed-let-functions7.rkt 29:15 z -- leave var unboxed +TR opt: unboxed-let-functions7.rkt 29:15 z -- unbox float-complex +TR opt: unboxed-let-functions7.rkt 29:17 (car l) -- float-arg-expr in complex ops +TR opt: unboxed-let-functions7.rkt 29:17 (car l) -- pair +TR opt: unboxed-let-functions7.rkt 30:12 (cdr l) -- pair 6.0+0.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions8.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions8.rkt index 2eec993f..5152e1c1 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions8.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let-functions8.rkt @@ -1,9 +1,8 @@ #; ( -TR opt: unboxed-let-functions8.rkt 15:64 (+ x 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let-functions8.rkt 15:64 (+ x 2.0+4.0i) -- unboxed float complex -TR opt: unboxed-let-functions8.rkt 15:67 x -- unbox float-complex -TR opt: unboxed-let-functions8.rkt 15:69 2.0+4.0i -- unboxed literal +TR opt: unboxed-let-functions8.rkt 14:64 (+ x 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let-functions8.rkt 14:67 x -- unbox float-complex +TR opt: unboxed-let-functions8.rkt 14:69 2.0+4.0i -- unboxed literal 3.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let.rkt index 65b8c0e5..ae81bfeb 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let.rkt @@ -1,23 +1,21 @@ #; ( -TR opt: unboxed-let.rkt 29:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings -TR opt: unboxed-let.rkt 29:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings -TR opt: unboxed-let.rkt 29:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings -TR opt: unboxed-let.rkt 29:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let.rkt 29:14 1.0+2.0i -- unboxed literal -TR opt: unboxed-let.rkt 29:23 2.0+4.0i -- unboxed literal -TR opt: unboxed-let.rkt 30:11 (- t1 3.0+6.0i) -- unboxed binary float complex -TR opt: unboxed-let.rkt 30:11 (- t1 3.0+6.0i) -- unboxed float complex -TR opt: unboxed-let.rkt 30:14 t1 -- leave var unboxed -TR opt: unboxed-let.rkt 30:14 t1 -- unbox float-complex -TR opt: unboxed-let.rkt 30:17 3.0+6.0i -- unboxed literal -TR opt: unboxed-let.rkt 31:11 4.0+8.0i -- unboxed literal -TR opt: unboxed-let.rkt 32:2 (+ t2 t3) -- unboxed binary float complex -TR opt: unboxed-let.rkt 32:2 (+ t2 t3) -- unboxed float complex -TR opt: unboxed-let.rkt 32:5 t2 -- leave var unboxed -TR opt: unboxed-let.rkt 32:5 t2 -- unbox float-complex -TR opt: unboxed-let.rkt 32:8 t3 -- leave var unboxed -TR opt: unboxed-let.rkt 32:8 t3 -- unbox float-complex +TR opt: unboxed-let.rkt 27:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings +TR opt: unboxed-let.rkt 27:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings +TR opt: unboxed-let.rkt 27:0 (let* ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (- t1 3.0+6.0i)) (t3 4.0+8.0i)) (+ t2 t3)) -- unboxed let bindings +TR opt: unboxed-let.rkt 27:11 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let.rkt 27:14 1.0+2.0i -- unboxed literal +TR opt: unboxed-let.rkt 27:23 2.0+4.0i -- unboxed literal +TR opt: unboxed-let.rkt 28:11 (- t1 3.0+6.0i) -- unboxed binary float complex +TR opt: unboxed-let.rkt 28:14 t1 -- leave var unboxed +TR opt: unboxed-let.rkt 28:14 t1 -- unbox float-complex +TR opt: unboxed-let.rkt 28:17 3.0+6.0i -- unboxed literal +TR opt: unboxed-let.rkt 29:11 4.0+8.0i -- unboxed literal +TR opt: unboxed-let.rkt 30:2 (+ t2 t3) -- unboxed binary float complex +TR opt: unboxed-let.rkt 30:5 t2 -- leave var unboxed +TR opt: unboxed-let.rkt 30:5 t2 -- unbox float-complex +TR opt: unboxed-let.rkt 30:8 t3 -- leave var unboxed +TR opt: unboxed-let.rkt 30:8 t3 -- unbox float-complex 4.0+8.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let2.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let2.rkt index 84732b12..da1f2a5b 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let2.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let2.rkt @@ -1,18 +1,17 @@ #; ( -TR opt: unboxed-let2.rkt 22:0 (let ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (+ 3.0+6.0i 4.0+8.0i))) (+ t1 t2)) -- unboxed let bindings -TR opt: unboxed-let2.rkt 22:10 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let2.rkt 22:13 1.0+2.0i -- unboxed literal -TR opt: unboxed-let2.rkt 22:22 2.0+4.0i -- unboxed literal -TR opt: unboxed-let2.rkt 23:10 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex -TR opt: unboxed-let2.rkt 23:13 3.0+6.0i -- unboxed literal -TR opt: unboxed-let2.rkt 23:22 4.0+8.0i -- unboxed literal -TR opt: unboxed-let2.rkt 24:2 (+ t1 t2) -- unboxed binary float complex -TR opt: unboxed-let2.rkt 24:2 (+ t1 t2) -- unboxed float complex -TR opt: unboxed-let2.rkt 24:5 t1 -- leave var unboxed -TR opt: unboxed-let2.rkt 24:5 t1 -- unbox float-complex -TR opt: unboxed-let2.rkt 24:8 t2 -- leave var unboxed -TR opt: unboxed-let2.rkt 24:8 t2 -- unbox float-complex +TR opt: unboxed-let2.rkt 21:0 (let ((t1 (+ 1.0+2.0i 2.0+4.0i)) (t2 (+ 3.0+6.0i 4.0+8.0i))) (+ t1 t2)) -- unboxed let bindings +TR opt: unboxed-let2.rkt 21:10 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let2.rkt 21:13 1.0+2.0i -- unboxed literal +TR opt: unboxed-let2.rkt 21:22 2.0+4.0i -- unboxed literal +TR opt: unboxed-let2.rkt 22:10 (+ 3.0+6.0i 4.0+8.0i) -- unboxed binary float complex +TR opt: unboxed-let2.rkt 22:13 3.0+6.0i -- unboxed literal +TR opt: unboxed-let2.rkt 22:22 4.0+8.0i -- unboxed literal +TR opt: unboxed-let2.rkt 23:2 (+ t1 t2) -- unboxed binary float complex +TR opt: unboxed-let2.rkt 23:5 t1 -- leave var unboxed +TR opt: unboxed-let2.rkt 23:5 t1 -- unbox float-complex +TR opt: unboxed-let2.rkt 23:8 t2 -- leave var unboxed +TR opt: unboxed-let2.rkt 23:8 t2 -- unbox float-complex 10.0+20.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-let3.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-let3.rkt index 7e8748fb..3e037881 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-let3.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-let3.rkt @@ -1,15 +1,14 @@ #; ( -TR opt: unboxed-let3.rkt 26:0 (let ((x (+ 1.0+2.0i 2.0+4.0i))) (if (even? 2) x (+ x 2.0+4.0i))) -- unboxed let bindings -TR opt: unboxed-let3.rkt 26:9 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let3.rkt 26:12 1.0+2.0i -- unboxed literal -TR opt: unboxed-let3.rkt 26:21 2.0+4.0i -- unboxed literal -TR opt: unboxed-let3.rkt 28:6 x -- unboxed complex variable -TR opt: unboxed-let3.rkt 29:6 (+ x 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-let3.rkt 29:6 (+ x 2.0+4.0i) -- unboxed float complex -TR opt: unboxed-let3.rkt 29:9 x -- leave var unboxed -TR opt: unboxed-let3.rkt 29:9 x -- unbox float-complex -TR opt: unboxed-let3.rkt 29:11 2.0+4.0i -- unboxed literal +TR opt: unboxed-let3.rkt 25:0 (let ((x (+ 1.0+2.0i 2.0+4.0i))) (if (even? 2) x (+ x 2.0+4.0i))) -- unboxed let bindings +TR opt: unboxed-let3.rkt 25:9 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let3.rkt 25:12 1.0+2.0i -- unboxed literal +TR opt: unboxed-let3.rkt 25:21 2.0+4.0i -- unboxed literal +TR opt: unboxed-let3.rkt 27:6 x -- unboxed complex variable +TR opt: unboxed-let3.rkt 28:6 (+ x 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-let3.rkt 28:9 x -- leave var unboxed +TR opt: unboxed-let3.rkt 28:9 x -- unbox float-complex +TR opt: unboxed-let3.rkt 28:11 2.0+4.0i -- unboxed literal 3.0+6.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec-syntaxes+values.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec-syntaxes+values.rkt index 1ba4145b..7f5d6aee 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec-syntaxes+values.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec-syntaxes+values.rkt @@ -1,14 +1,13 @@ #; ( -TR opt: unboxed-letrec-syntaxes+values.rkt 18:0 (letrec-syntaxes+values (((s) (syntax-rules () ((_ x) x)))) (((x) (+ 1.0+2.0i 2.0+4.0i))) (+ x 2.0+4.0i)) -- unboxed let bindings -TR opt: unboxed-letrec-syntaxes+values.rkt 19:30 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-letrec-syntaxes+values.rkt 19:33 1.0+2.0i -- unboxed literal -TR opt: unboxed-letrec-syntaxes+values.rkt 19:42 2.0+4.0i -- unboxed literal -TR opt: unboxed-letrec-syntaxes+values.rkt 20:24 (+ x 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-letrec-syntaxes+values.rkt 20:24 (+ x 2.0+4.0i) -- unboxed float complex -TR opt: unboxed-letrec-syntaxes+values.rkt 20:27 x -- leave var unboxed -TR opt: unboxed-letrec-syntaxes+values.rkt 20:27 x -- unbox float-complex -TR opt: unboxed-letrec-syntaxes+values.rkt 20:29 2.0+4.0i -- unboxed literal +TR opt: unboxed-letrec-syntaxes+values.rkt 17:0 (letrec-syntaxes+values (((s) (syntax-rules () ((_ x) x)))) (((x) (+ 1.0+2.0i 2.0+4.0i))) (+ x 2.0+4.0i)) -- unboxed let bindings +TR opt: unboxed-letrec-syntaxes+values.rkt 18:30 (+ 1.0+2.0i 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-letrec-syntaxes+values.rkt 18:33 1.0+2.0i -- unboxed literal +TR opt: unboxed-letrec-syntaxes+values.rkt 18:42 2.0+4.0i -- unboxed literal +TR opt: unboxed-letrec-syntaxes+values.rkt 19:24 (+ x 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-letrec-syntaxes+values.rkt 19:27 x -- leave var unboxed +TR opt: unboxed-letrec-syntaxes+values.rkt 19:27 x -- unbox float-complex +TR opt: unboxed-letrec-syntaxes+values.rkt 19:29 2.0+4.0i -- unboxed literal 5.0+10.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec.rkt index 011a608d..512a2ba7 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-letrec.rkt @@ -1,16 +1,15 @@ #; ( -TR opt: unboxed-letrec.rkt 22:0 (letrec: ((f : (Any -> Any) (lambda: ((x : Any)) (f x))) (x : Float-Complex 1.0+2.0i) (y : Float-Complex (+ 2.0+4.0i 3.0+6.0i))) (+ x y)) -- unboxed let bindings -TR opt: unboxed-letrec.rkt 23:31 1.0+2.0i -- unboxed literal -TR opt: unboxed-letrec.rkt 24:31 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex -TR opt: unboxed-letrec.rkt 24:34 2.0+4.0i -- unboxed literal -TR opt: unboxed-letrec.rkt 24:43 3.0+6.0i -- unboxed literal -TR opt: unboxed-letrec.rkt 25:2 (+ x y) -- unboxed binary float complex -TR opt: unboxed-letrec.rkt 25:2 (+ x y) -- unboxed float complex -TR opt: unboxed-letrec.rkt 25:5 x -- leave var unboxed -TR opt: unboxed-letrec.rkt 25:5 x -- unbox float-complex -TR opt: unboxed-letrec.rkt 25:7 y -- leave var unboxed -TR opt: unboxed-letrec.rkt 25:7 y -- unbox float-complex +TR opt: unboxed-letrec.rkt 21:0 (letrec: ((f : (Any -> Any) (lambda: ((x : Any)) (f x))) (x : Float-Complex 1.0+2.0i) (y : Float-Complex (+ 2.0+4.0i 3.0+6.0i))) (+ x y)) -- unboxed let bindings +TR opt: unboxed-letrec.rkt 22:31 1.0+2.0i -- unboxed literal +TR opt: unboxed-letrec.rkt 23:31 (+ 2.0+4.0i 3.0+6.0i) -- unboxed binary float complex +TR opt: unboxed-letrec.rkt 23:34 2.0+4.0i -- unboxed literal +TR opt: unboxed-letrec.rkt 23:43 3.0+6.0i -- unboxed literal +TR opt: unboxed-letrec.rkt 24:2 (+ x y) -- unboxed binary float complex +TR opt: unboxed-letrec.rkt 24:5 x -- leave var unboxed +TR opt: unboxed-letrec.rkt 24:5 x -- unbox float-complex +TR opt: unboxed-letrec.rkt 24:7 y -- leave var unboxed +TR opt: unboxed-letrec.rkt 24:7 y -- unbox float-complex 6.0+12.0i ) diff --git a/collects/tests/typed-scheme/optimizer/tests/unboxed-make-rectangular.rkt b/collects/tests/typed-scheme/optimizer/tests/unboxed-make-rectangular.rkt index aa3da5cd..6e6b73c9 100644 --- a/collects/tests/typed-scheme/optimizer/tests/unboxed-make-rectangular.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/unboxed-make-rectangular.rkt @@ -1,19 +1,17 @@ #; ( -TR opt: unboxed-make-rectangular.rkt 27:0 (let ((x (make-rectangular 1.0 2.0))) (+ x 2.0+4.0i)) -- unboxed let bindings -TR opt: unboxed-make-rectangular.rkt 27:9 (make-rectangular 1.0 2.0) -- make-rectangular elimination +TR opt: unboxed-make-rectangular.rkt 25:0 (let ((x (make-rectangular 1.0 2.0))) (+ x 2.0+4.0i)) -- unboxed let bindings +TR opt: unboxed-make-rectangular.rkt 25:9 (make-rectangular 1.0 2.0) -- make-rectangular elimination +TR opt: unboxed-make-rectangular.rkt 26:2 (+ x 2.0+4.0i) -- unboxed binary float complex +TR opt: unboxed-make-rectangular.rkt 26:5 x -- leave var unboxed +TR opt: unboxed-make-rectangular.rkt 26:5 x -- unbox float-complex +TR opt: unboxed-make-rectangular.rkt 26:7 2.0+4.0i -- unboxed literal +TR opt: unboxed-make-rectangular.rkt 27:0 (let ((x (unsafe-make-flrectangular 1.0 2.0))) (+ x 2.0+4.0i)) -- unboxed let bindings +TR opt: unboxed-make-rectangular.rkt 27:9 (unsafe-make-flrectangular 1.0 2.0) -- make-rectangular elimination TR opt: unboxed-make-rectangular.rkt 28:2 (+ x 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-make-rectangular.rkt 28:2 (+ x 2.0+4.0i) -- unboxed float complex TR opt: unboxed-make-rectangular.rkt 28:5 x -- leave var unboxed TR opt: unboxed-make-rectangular.rkt 28:5 x -- unbox float-complex TR opt: unboxed-make-rectangular.rkt 28:7 2.0+4.0i -- unboxed literal -TR opt: unboxed-make-rectangular.rkt 29:0 (let ((x (unsafe-make-flrectangular 1.0 2.0))) (+ x 2.0+4.0i)) -- unboxed let bindings -TR opt: unboxed-make-rectangular.rkt 29:9 (unsafe-make-flrectangular 1.0 2.0) -- make-rectangular elimination -TR opt: unboxed-make-rectangular.rkt 30:2 (+ x 2.0+4.0i) -- unboxed binary float complex -TR opt: unboxed-make-rectangular.rkt 30:2 (+ x 2.0+4.0i) -- unboxed float complex -TR opt: unboxed-make-rectangular.rkt 30:5 x -- leave var unboxed -TR opt: unboxed-make-rectangular.rkt 30:5 x -- unbox float-complex -TR opt: unboxed-make-rectangular.rkt 30:7 2.0+4.0i -- unboxed literal 3.0+6.0i 3.0+6.0i ) diff --git a/collects/typed-scheme/optimizer/float-complex.rkt b/collects/typed-scheme/optimizer/float-complex.rkt index b7ab5acf..f05c5b37 100644 --- a/collects/typed-scheme/optimizer/float-complex.rkt +++ b/collects/typed-scheme/optimizer/float-complex.rkt @@ -244,9 +244,9 @@ (pattern e:float-arg-expr #:with real-binding (unboxed-gensym 'unboxed-float-) #:with imag-binding #f - #:when (log-optimization "float-arg-expr in complex ops" this-syntax) #:with (bindings ...) - #`(((real-binding) e.opt))) + (begin (log-optimization "float-arg-expr in complex ops" this-syntax) + #`(((real-binding) e.opt)))) ;; we can eliminate boxing that was introduced by the user @@ -393,7 +393,7 @@ c:float-complex-expr) #:with c*:unboxed-float-complex-opt-expr #'c #:with opt - (begin (log-optimization "unboxed float complex" this-syntax) + (begin (log-optimization "complex accessor elimination" this-syntax) (reset-unboxed-gensym) #`(let*-values (c*.bindings ...) #,(if (or (free-identifier=? #'op #'real-part) @@ -440,8 +440,7 @@ #:with imag-binding #f #:with (bindings ...) #'(exp*.bindings ...) #:with opt - (begin (log-optimization "unboxed float complex->float" this-syntax) - (reset-unboxed-gensym) + (begin (reset-unboxed-gensym) #'(let*-values (exp*.bindings ...) real-binding))) @@ -452,8 +451,7 @@ #:with imag-binding #'exp*.imag-binding #:with (bindings ...) #'(exp*.bindings ...) #:with opt - (begin (log-optimization "unboxed float complex" this-syntax) - (reset-unboxed-gensym) + (begin (reset-unboxed-gensym) #'(let*-values (exp*.bindings ...) (unsafe-make-flrectangular exp*.real-binding exp*.imag-binding))))