diff --git a/typed-racket-test/optimizer/missed-optimizations/marketplace-struct.rkt b/typed-racket-test/optimizer/missed-optimizations/marketplace-struct.rkt index 581b99cf..9abb81e6 100644 --- a/typed-racket-test/optimizer/missed-optimizations/marketplace-struct.rkt +++ b/typed-racket-test/optimizer/missed-optimizations/marketplace-struct.rkt @@ -10,12 +10,15 @@ TR opt: marketplace-struct.rkt 112:60 (vm-processes state) -- struct ref TR opt: marketplace-struct.rkt 118:14 state -- dead else branch TR opt: marketplace-struct.rkt 118:14 state -- dead else branch TR opt: marketplace-struct.rkt 118:2 (for/fold ((state state)) ((pid (in-hash-keys (vm-processes state)))) (let-values (((state wp) (extract-process state pid))) (if (not wp) state (unwrap-process State vm (p wp) (inject-process state (mkProcess (f p))))))) -- dead else branch +TR opt: marketplace-struct.rkt 118:2 (for/fold ((state state)) ((pid (in-hash-keys (vm-processes state)))) (let-values (((state wp) (extract-process state pid))) (if (not wp) state (unwrap-process State vm (p wp) (inject-process state (mkProcess (f p))))))) -- dead else branch TR opt: marketplace-struct.rkt 118:48 (vm-processes state) -- struct ref TR opt: marketplace-struct.rkt 127:14 seed -- dead else branch TR opt: marketplace-struct.rkt 127:14 seed -- dead else branch TR opt: marketplace-struct.rkt 127:2 (for/fold ((seed seed)) ((pid (in-hash-keys (vm-processes state)))) (let-values (((state wp) (extract-process state pid))) (if (not wp) seed (unwrap-process State A (p wp) (for/fold ((seed seed)) ((pre-eid (in-hash-keys (process-endpoints p)))) (define ep (hash-ref (process-endpoints p) pre-eid)) ((inst f State) p ep seed)))))) -- dead else branch +TR opt: marketplace-struct.rkt 127:2 (for/fold ((seed seed)) ((pid (in-hash-keys (vm-processes state)))) (let-values (((state wp) (extract-process state pid))) (if (not wp) seed (unwrap-process State A (p wp) (for/fold ((seed seed)) ((pre-eid (in-hash-keys (process-endpoints p)))) (define ep (hash-ref (process-endpoints p) pre-eid)) ((inst f State) p ep seed)))))) -- dead else branch TR opt: marketplace-struct.rkt 127:46 (vm-processes state) -- struct ref TR opt: marketplace-struct.rkt 132:12 (for/fold ((seed seed)) ((pre-eid (in-hash-keys (process-endpoints p)))) (define ep (hash-ref (process-endpoints p) pre-eid)) ((inst f State) p ep seed)) -- dead else branch +TR opt: marketplace-struct.rkt 132:12 (for/fold ((seed seed)) ((pre-eid (in-hash-keys (process-endpoints p)))) (define ep (hash-ref (process-endpoints p) pre-eid)) ((inst f State) p ep seed)) -- dead else branch TR opt: marketplace-struct.rkt 132:24 seed -- dead else branch TR opt: marketplace-struct.rkt 132:24 seed -- dead else branch TR opt: marketplace-struct.rkt 132:60 (process-endpoints p) -- struct ref diff --git a/typed-racket-test/optimizer/tests/fx2fl.rkt b/typed-racket-test/optimizer/tests/fx2fl.rkt index a46be9c2..5d6c60c6 100644 --- a/typed-racket-test/optimizer/tests/fx2fl.rkt +++ b/typed-racket-test/optimizer/tests/fx2fl.rkt @@ -7,6 +7,7 @@ TR opt: fx2fl.rkt 10:32 (fx->fl i) -- fixnum to float TR opt: fx2fl.rkt 12:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl (* 1024 i))))) -- dead else branch TR opt: fx2fl.rkt 12:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl (* 1024 i))))) -- dead else branch TR opt: fx2fl.rkt 12:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl (* 1024 i))))) -- dead else branch +TR opt: fx2fl.rkt 12:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl (* 1024 i))))) -- dead else branch TR opt: fx2fl.rkt 13:22 s -- dead else branch TR opt: fx2fl.rkt 13:22 s -- dead else branch TR opt: fx2fl.rkt 15:20 (+ s (/ 1.0 (fx->fl (* 1024 i)))) -- binary float @@ -14,6 +15,7 @@ TR opt: fx2fl.rkt 15:25 (/ 1.0 (fx->fl (* 1024 i))) -- binary float TR opt: fx2fl.rkt 7:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl i)))) -- dead else branch TR opt: fx2fl.rkt 7:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl i)))) -- dead else branch TR opt: fx2fl.rkt 7:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl i)))) -- dead else branch +TR opt: fx2fl.rkt 7:9 (for/fold: : Float ((s : Float 0.0)) ((i : Fixnum (in-range 1 100000001))) (+ s (/ 1.0 (fx->fl i)))) -- dead else branch TR opt: fx2fl.rkt 8:22 s -- dead else branch TR opt: fx2fl.rkt 8:22 s -- dead else branch END diff --git a/typed-racket-test/optimizer/tests/vector-sum.rkt b/typed-racket-test/optimizer/tests/vector-sum.rkt index 1772dfbd..a2d42ae3 100644 --- a/typed-racket-test/optimizer/tests/vector-sum.rkt +++ b/typed-racket-test/optimizer/tests/vector-sum.rkt @@ -7,6 +7,7 @@ TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vecto TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) -- dead else branch TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) -- dead else branch TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) -- dead else branch +TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) -- dead else branch TR opt: vector-sum.rkt 10:2 (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) -- fixnum bounded expr TR opt: vector-sum.rkt 11:21 (sin (exact->inexact i)) -- unary float TR opt: vector-sum.rkt 11:26 (exact->inexact i) -- fixnum to float @@ -17,6 +18,7 @@ TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fix TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i))) -- dead else branch TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i))) -- dead else branch TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i))) -- dead else branch +TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i))) -- dead else branch TR opt: vector-sum.rkt 12:2 (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i))) -- fixnum bounded expr TR opt: vector-sum.rkt 14:11 (vector-ref v i) -- vector partial bounds checking elimination TR opt: vector-sum.rkt 14:4 (+ sum (vector-ref v i)) -- binary float @@ -25,6 +27,7 @@ TR opt: vector-sum.rkt 9:0 (for ((i (in-range 1))) (for: ((i : Nonnegative-Fixnu TR opt: vector-sum.rkt 9:0 (for ((i (in-range 1))) (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i)))) -- dead else branch TR opt: vector-sum.rkt 9:0 (for ((i (in-range 1))) (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i)))) -- dead else branch TR opt: vector-sum.rkt 9:0 (for ((i (in-range 1))) (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i)))) -- dead else branch +TR opt: vector-sum.rkt 9:0 (for ((i (in-range 1))) (for: ((i : Nonnegative-Fixnum (in-range l))) (vector-set! v i (sin (exact->inexact i)))) (for/fold: ((sum : Float 0.0)) ((i : Nonnegative-Fixnum (in-range l))) (+ sum (vector-ref v i)))) -- dead else branch END "" #lang typed/racket