Report opts and missed opts in terms of the original programs, not in terms of expanded code.

original commit: fddf18953094f1a98fe8b4afe0a95dd1500f5194
This commit is contained in:
Vincent St-Amour 2011-06-15 18:45:16 -04:00
parent 56279151a7
commit 205f0882a5
71 changed files with 313 additions and 335 deletions

View File

@ -1,10 +1,10 @@
#;
(
TR missed opt: all-real.rkt 24:0 (#%app + (quote 3) (quote 4)) -- binary, args all float-arg-expr, return type not Float -- caused by: 24:8 (quote 3), 24:21 (quote 4)
TR missed opt: all-real.rkt 25:0 (#%app * (quote 3) (quote 4)) -- binary, args all float-arg-expr, return type not Float -- caused by: 25:8 (quote 3), 25:21 (quote 4)
7
12
)
TR missed opt: all-real.rkt 24:0 (+ (ann 3 Real) (ann 4 Real)) -- binary, args all float-arg-expr, return type not Float -- caused by: 24:8 (quote 3), 24:21 (quote 4)
TR missed opt: all-real.rkt 25:0 (* (ann 3 Real) (ann 4 Real)) -- binary, args all float-arg-expr, return type not Float -- caused by: 25:8 (quote 3), 25:21 (quote 4)
7
12
)
#lang typed/racket

View File

@ -1,6 +1,6 @@
#;
(
TR missed opt: multiple-irritants.rkt 9:0 (#%app * (quote 4) (quote 5) (quote 6.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 9:8 (quote 4), 9:24 (quote 5)
TR missed opt: multiple-irritants.rkt 9:0 (* (ann 4 Integer) (ann 5 Integer) 6.0) -- binary, args all float-arg-expr, return type not Float -- caused by: 9:8 (quote 4), 9:24 (quote 5)
120.0
)

View File

@ -1,14 +1,14 @@
#;
(
TR missed opt: nested-same-kind.rkt 25:0 (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4))) -- binary, args all float-arg-expr, return type not Float -- caused by: 25:19 (quote 4)
TR missed opt: nested-same-kind.rkt 25:0 (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 25:7 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 26:0 (#%app * (quote 1.0) (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4)))) -- binary, args all float-arg-expr, return type not Float -- caused by: 26:26 (quote 4)
TR missed opt: nested-same-kind.rkt 26:0 (#%app * (quote 1.0) (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4)))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 26:14 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 27:0 (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4) (quote 5))) -- binary, args all float-arg-expr, return type not Float -- caused by: 27:19 (quote 4), 27:35 (quote 5)
TR missed opt: nested-same-kind.rkt 27:0 (#%app * (quote 2.0) (#%app * (quote 3.0) (quote 4) (quote 5))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 27:7 (#%app * (quote 3.0) (quote 4) (quote 5))
TR missed opt: nested-same-kind.rkt 28:0 (#%app * (#%app * (quote 3.0) (quote 4)) (#%app * (quote 3.0) (quote 4))) -- binary, args all float-arg-expr, return type not Float -- caused by: 28:15 (quote 4), 28:39 (quote 4)
TR missed opt: nested-same-kind.rkt 28:0 (#%app * (#%app * (quote 3.0) (quote 4)) (#%app * (quote 3.0) (quote 4))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:27 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 28:0 (#%app * (#%app * (quote 3.0) (quote 4)) (#%app * (quote 3.0) (quote 4))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:3 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 25:0 (* 2.0 (* 3.0 (ann 4 Integer))) -- binary, args all float-arg-expr, return type not Float -- caused by: 25:19 (quote 4)
TR missed opt: nested-same-kind.rkt 25:0 (* 2.0 (* 3.0 (ann 4 Integer))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 25:7 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 26:0 (* 1.0 (* 2.0 (* 3.0 (ann 4 Integer)))) -- binary, args all float-arg-expr, return type not Float -- caused by: 26:26 (quote 4)
TR missed opt: nested-same-kind.rkt 26:0 (* 1.0 (* 2.0 (* 3.0 (ann 4 Integer)))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 26:14 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 27:0 (* 2.0 (* 3.0 (ann 4 Integer) (ann 5 Integer))) -- binary, args all float-arg-expr, return type not Float -- caused by: 27:19 (quote 4), 27:35 (quote 5)
TR missed opt: nested-same-kind.rkt 27:0 (* 2.0 (* 3.0 (ann 4 Integer) (ann 5 Integer))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 27:7 (#%app * (quote 3.0) (quote 4) (quote 5))
TR missed opt: nested-same-kind.rkt 28:0 (* (* 3.0 (ann 4 Integer)) (* 3.0 (ann 4 Integer))) -- binary, args all float-arg-expr, return type not Float -- caused by: 28:15 (quote 4), 28:39 (quote 4)
TR missed opt: nested-same-kind.rkt 28:0 (* (* 3.0 (ann 4 Integer)) (* 3.0 (ann 4 Integer))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:27 (#%app * (quote 3.0) (quote 4))
TR missed opt: nested-same-kind.rkt 28:0 (* (* 3.0 (ann 4 Integer)) (* 3.0 (ann 4 Integer))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:3 (#%app * (quote 3.0) (quote 4))
24.0
24.0
120.0

View File

@ -1,38 +1,38 @@
#;
(
TR missed opt: pair.rkt 58:0 (#%app car (#%app list (quote 1) (quote 2) (quote 3))) -- car/cdr on a potentially empty list -- caused by: 58:10 (#%app list (quote 1) (quote 2) (quote 3))
TR missed opt: pair.rkt 58:0 (car (ann (list 1 2 3) (Listof Byte))) -- car/cdr on a potentially empty list -- caused by: 58:10 (#%app list (quote 1) (quote 2) (quote 3))
TR opt: pair.rkt 59:1 car -- pair
TR missed opt: pair.rkt 60:0 (#%app cdr (#%app list (quote 1) (quote 2) (quote 3))) -- car/cdr on a potentially empty list -- caused by: 60:10 (#%app list (quote 1) (quote 2) (quote 3))
TR missed opt: pair.rkt 60:0 (cdr (ann (list 1 2 3) (Listof Byte))) -- car/cdr on a potentially empty list -- caused by: 60:10 (#%app list (quote 1) (quote 2) (quote 3))
TR opt: pair.rkt 61:1 cdr -- pair
TR opt: pair.rkt 62:1 cdr -- pair
TR opt: pair.rkt 62:6 cdr -- pair
TR opt: pair.rkt 63:1 cdr -- pair
TR opt: pair.rkt 63:6 cdr -- pair
TR opt: pair.rkt 63:11 cdr -- pair
TR missed opt: pair.rkt 64:16 (#%app cdr (#%app cdr (#%app cdr (#%app cdr (#%app list (quote 1) (quote 2) (quote 3)))))) -- car/cdr on a potentially empty list -- caused by: 64:21 (#%app cdr (#%app cdr (#%app cdr (#%app list (quote 1) (quote 2) (quote 3)))))
TR missed opt: pair.rkt 64:16 (cdr (cdr (cdr (cdr (list 1 2 3))))) -- car/cdr on a potentially empty list -- caused by: 64:21 (#%app cdr (#%app cdr (#%app cdr (#%app list (quote 1) (quote 2) (quote 3)))))
TR opt: pair.rkt 64:22 cdr -- pair
TR opt: pair.rkt 64:27 cdr -- pair
TR opt: pair.rkt 64:32 cdr -- pair
TR missed opt: pair.rkt 67:0 (#%app mcar (#%app mcons (quote 1) null)) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 1) null)
TR missed opt: pair.rkt 67:0 (mcar (ann (mlist 1) (MListof Byte))) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 1) null)
TR opt: pair.rkt 68:1 mcar -- mutable pair
TR missed opt: pair.rkt 69:0 (#%app mcdr (#%app mcons (quote 1) null)) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 1) null)
TR missed opt: pair.rkt 69:0 (mcdr (ann (mlist 1) (MListof Byte))) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 1) null)
TR opt: pair.rkt 70:1 mcdr -- mutable pair
TR opt: pair.rkt 71:1 mcdr -- mutable pair
TR opt: pair.rkt 71:7 mcdr -- mutable pair
TR opt: pair.rkt 72:1 mcdr -- mutable pair
TR opt: pair.rkt 72:7 mcdr -- mutable pair
TR opt: pair.rkt 72:13 mcdr -- mutable pair
TR missed opt: pair.rkt 73:0 (#%app set-mcar! (#%app mcons (quote 2) null) (quote 2)) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 2) null)
TR missed opt: pair.rkt 73:0 (set-mcar! (ann (mlist 2) (MListof Byte)) 2) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 2) null)
TR opt: pair.rkt 74:1 set-mcar! -- mutable pair
TR missed opt: pair.rkt 75:0 (#%app set-mcdr! (#%app mcons (quote 2) null) (#%app mcons (quote 2) null)) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 2) null)
TR missed opt: pair.rkt 75:0 (set-mcdr! (ann (mlist 2) (MListof Byte)) (ann (mlist 2) (MListof Byte))) -- mpair op on a potentially empty mlist -- caused by: (no location) (#%app mcons (quote 2) null)
TR opt: pair.rkt 77:1 mcar -- mutable pair
TR opt: pair.rkt 78:1 mcdr -- mutable pair
TR opt: pair.rkt 79:1 set-mcar! -- mutable pair
TR opt: pair.rkt 80:1 set-mcdr! -- mutable pair
TR missed opt: pair.rkt 81:17 (#%app mcar (quote ())) -- mpair op on a potentially empty mlist -- caused by: 81:23 (quote ())
TR missed opt: pair.rkt 82:17 (#%app mcdr (quote ())) -- mpair op on a potentially empty mlist -- caused by: 82:23 (quote ())
TR missed opt: pair.rkt 83:17 (#%app set-mcar! (quote ()) (quote 2)) -- mpair op on a potentially empty mlist -- caused by: 83:28 (quote ())
TR missed opt: pair.rkt 84:17 (#%app set-mcdr! (quote ()) (#%app mcons (quote 3) null)) -- mpair op on a potentially empty mlist -- caused by: 84:33 (quote ())
TR missed opt: pair.rkt 81:17 (mcar (quote ())) -- mpair op on a potentially empty mlist -- caused by: 81:23 (quote ())
TR missed opt: pair.rkt 82:17 (mcdr (quote ())) -- mpair op on a potentially empty mlist -- caused by: 82:23 (quote ())
TR missed opt: pair.rkt 83:17 (set-mcar! (quote ()) 2) -- mpair op on a potentially empty mlist -- caused by: 83:28 (quote ())
TR missed opt: pair.rkt 84:17 (set-mcdr! (ann (quote ()) (MListof Integer)) (ann (mlist 3) (MListof Integer))) -- mpair op on a potentially empty mlist -- caused by: 84:33 (quote ())
1
1
'(2 3)
@ -47,7 +47,7 @@ TR missed opt: pair.rkt 84:17 (#%app set-mcdr! (quote ()) (#%app mcons (quote 3)
'()
2
3
)
)
#lang typed/racket
(require racket/mpair)

View File

@ -1,19 +1,19 @@
#;
(
TR missed opt: precision-loss.rkt 24:0 (#%app + (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 24:3 (#%app * (quote 3/4) (quote 2/3))
TR missed opt: precision-loss.rkt 24:0 (+ (* 3/4 2/3) 2.0) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 24:3 (#%app * (quote 3/4) (quote 2/3))
TR opt: precision-loss.rkt 24:1 + -- binary float
TR opt: precision-loss.rkt 26:1 + -- binary float
TR missed opt: precision-loss.rkt 28:0 (#%app + (#%app - (quote 3/4)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:3 (#%app - (quote 3/4))
TR missed opt: precision-loss.rkt 28:0 (+ (- 3/4) 2.0) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:3 (#%app - (quote 3/4))
TR opt: precision-loss.rkt 28:1 + -- binary float
TR opt: precision-loss.rkt 30:1 + -- binary float
TR missed opt: precision-loss.rkt 36:0 (#%app * (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 36:11 (quote 3/4), 36:15 (quote 2/3)
TR missed opt: precision-loss.rkt 36:0 (#%app * (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 36:8 (#%app * (quote 3/4) (quote 2/3))
TR missed opt: precision-loss.rkt 36:0 (* (ann (* 3/4 2/3) Real) 2.0) -- binary, args all float-arg-expr, return type not Float -- caused by: 36:11 (quote 3/4), 36:15 (quote 2/3)
TR missed opt: precision-loss.rkt 36:0 (* (ann (* 3/4 2/3) Real) 2.0) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 36:8 (#%app * (quote 3/4) (quote 2/3))
2.5
2.75
1.25
2.5
1.0
)
)
#lang typed/racket

View File

@ -1,17 +1,17 @@
#;
(
TR missed opt: real-in-float-expr.rkt 17:0 (#%app * (quote 3) (quote 2.3)) -- binary, args all float-arg-expr, return type not Float -- caused by: 17:8 (quote 3)
TR missed opt: real-in-float-expr.rkt 17:0 (* (ann 3 Real) 2.3) -- binary, args all float-arg-expr, return type not Float -- caused by: 17:8 (quote 3)
TR opt: real-in-float-expr.rkt 22:1 * -- fixnum bounded expr
TR opt: real-in-float-expr.rkt 23:1 + -- fixnum bounded expr
TR missed opt: real-in-float-expr.rkt 26:0 (#%app * (quote 2) (quote 2.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 26:8 (quote 2)
6.8999999999999995
6
5
6
5
17/12
4.0
)
TR missed opt: real-in-float-expr.rkt 26:0 (* (ann 2 Natural) 2.0) -- binary, args all float-arg-expr, return type not Float -- caused by: 26:8 (quote 2)
6.8999999999999995
6
5
6
5
17/12
4.0
)
#lang typed/racket
(* (ann 3 Real) ; with type Real, typechecker must assume it could be exact 0

View File

@ -1,8 +1,8 @@
#;
(
TR missed opt: unary-float.rkt 14:0 (#%app sin (quote 3.4)) -- unary, arg float-arg-expr, return type not Float
TR missed opt: unary-float.rkt 15:0 (#%app sin (quote 3)) -- unary, arg float-arg-expr, return type not Float
TR missed opt: unary-float.rkt 16:0 (#%app abs (quote 3.4)) -- unary, arg float-arg-expr, return type not Float
TR missed opt: unary-float.rkt 14:0 (sin (ann 3.4 Real)) -- unary, arg float-arg-expr, return type not Float
TR missed opt: unary-float.rkt 15:0 (sin 3) -- unary, arg float-arg-expr, return type not Float
TR missed opt: unary-float.rkt 16:0 (abs (ann 3.4 Real)) -- unary, arg float-arg-expr, return type not Float
-0.2555411020268312
0.1411200080598672
3.4

View File

@ -1,13 +1,13 @@
#;
(
TR missed opt: unexpected-complex.rkt 16:0 (#%app sqrt (quote 4)) -- unexpected complex type
TR opt: unexpected-complex.rkt 17:0 (#%app + (quote 1.2+3.4i) (quote 2.0)) -- unboxed float complex
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 float complex
TR opt: unexpected-complex.rkt 17:1 + -- unboxed binary float complex
TR opt: unexpected-complex.rkt 17:3 1.2+3.4i -- unboxed literal
TR opt: unexpected-complex.rkt 17:12 (quote 2.0) -- float-arg-expr in complex ops
TR opt: unexpected-complex.rkt 17:12 2.0 -- float-arg-expr in complex ops
2
3.2+3.4i
)
)
#lang typed/racket

View File

@ -1,5 +1,6 @@
#;
()
(
)
#lang typed/scheme #:optimize

View File

@ -1,11 +1,10 @@
#;
(
TR opt: dead-else.rkt 14:14 + -- binary float
TR opt: dead-else.rkt 15:13 (#%app + (quote 4.0) (quote 5.0)) -- dead else branch
TR opt: dead-else.rkt 17:14 + -- binary float
TR opt: dead-else.rkt 18:13 (#%app + (quote 4.0) (quote 5.0)) -- dead else branch
5.05.0
)
TR opt: dead-else.rkt 13:14 + -- binary float
TR opt: dead-else.rkt 14:13 (+ 4.0 5.0) -- dead else branch
TR opt: dead-else.rkt 16:14 + -- binary float
TR opt: dead-else.rkt 17:13 (+ 4.0 5.0) -- dead else branch
5.05.0)
#lang typed/scheme
#:optimize

View File

@ -1,11 +1,10 @@
#;
(
TR opt: dead-then.rkt 14:13 (#%app + (quote 2.0) (quote 3.0)) -- dead then branch
TR opt: dead-then.rkt 15:14 + -- binary float
TR opt: dead-then.rkt 17:13 (#%app + (quote 2.0) (quote 3.0)) -- dead then branch
TR opt: dead-then.rkt 18:14 + -- binary float
9.09.0
)
TR opt: dead-then.rkt 13:13 (+ 2.0 3.0) -- dead then branch
TR opt: dead-then.rkt 14:14 + -- binary float
TR opt: dead-then.rkt 16:13 (+ 2.0 3.0) -- dead then branch
TR opt: dead-then.rkt 17:14 + -- binary float
9.09.0)
#lang typed/scheme
#:optimize

View File

@ -1,9 +1,8 @@
#;
(
TR opt: define-begin-float.rkt 11:27 - -- binary float
TR opt: define-begin-float.rkt 12:18 * -- binary float
-1.0
)
TR opt: define-begin-float.rkt 10:27 - -- binary float
TR opt: define-begin-float.rkt 11:18 * -- binary float
-1.0)
#lang typed/scheme
#:optimize

View File

@ -1,15 +1,13 @@
#;
(
TR opt: derived-pair.rkt 21:0 (#%app caar (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3))) -- derived pair
TR opt: derived-pair.rkt 21:0 car -- pair
TR opt: derived-pair.rkt 22:0 (#%app cadr (#%app cons (quote 1) (#%app cons (quote 2) (quote 3)))) -- derived pair
TR opt: derived-pair.rkt 22:0 car -- pair
TR opt: derived-pair.rkt 22:0 cdr -- pair
TR opt: derived-pair.rkt 23:0 (#%app cdar (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3))) -- derived pair
TR opt: derived-pair.rkt 23:0 car -- pair
TR opt: derived-pair.rkt 23:0 cdr -- pair
TR opt: derived-pair.rkt 24:0 (#%app cddr (#%app cons (quote 1) (#%app cons (quote 2) (quote 3)))) -- derived pair
TR opt: derived-pair.rkt 24:0 cdr -- pair
TR opt: derived-pair.rkt 19:0 (caar (cons (cons 1 2) 3)) -- derived pair
TR opt: derived-pair.rkt 19:0 (caar (cons (cons 1 2) 3)) -- pair
TR opt: derived-pair.rkt 20:0 (cadr (cons 1 (cons 2 3))) -- derived pair
TR opt: derived-pair.rkt 20:0 (cadr (cons 1 (cons 2 3))) -- pair
TR opt: derived-pair.rkt 21:0 (cdar (cons (cons 1 2) 3)) -- derived pair
TR opt: derived-pair.rkt 21:0 (cdar (cons (cons 1 2) 3)) -- pair
TR opt: derived-pair.rkt 22:0 (cddr (cons 1 (cons 2 3))) -- derived pair
TR opt: derived-pair.rkt 22:0 (cddr (cons 1 (cons 2 3))) -- pair
1
2
2

View File

@ -1,27 +1,21 @@
#;
(
TR opt: derived-pair2.rkt 37:0 (#%app caaar (#%app cons (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3)) (quote 4))) -- derived pair
TR opt: derived-pair2.rkt 37:0 car -- pair
TR opt: derived-pair2.rkt 38:0 (#%app caadr (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4)))) -- derived pair
TR opt: derived-pair2.rkt 38:0 car -- pair
TR opt: derived-pair2.rkt 38:0 cdr -- pair
TR opt: derived-pair2.rkt 39:0 (#%app cadar (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (quote 3))) (quote 4))) -- derived pair
TR opt: derived-pair2.rkt 39:0 car -- pair
TR opt: derived-pair2.rkt 39:0 cdr -- pair
TR opt: derived-pair2.rkt 40:0 (#%app caddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (quote 4))))) -- derived pair
TR opt: derived-pair2.rkt 40:0 car -- pair
TR opt: derived-pair2.rkt 40:0 cdr -- pair
TR opt: derived-pair2.rkt 41:0 (#%app cdaar (#%app cons (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3)) (quote 4))) -- derived pair
TR opt: derived-pair2.rkt 41:0 car -- pair
TR opt: derived-pair2.rkt 41:0 cdr -- pair
TR opt: derived-pair2.rkt 42:0 (#%app cdadr (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4)))) -- derived pair
TR opt: derived-pair2.rkt 42:0 car -- pair
TR opt: derived-pair2.rkt 42:0 cdr -- pair
TR opt: derived-pair2.rkt 43:0 (#%app cddar (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (quote 3))) (quote 4))) -- derived pair
TR opt: derived-pair2.rkt 43:0 car -- pair
TR opt: derived-pair2.rkt 43:0 cdr -- pair
TR opt: derived-pair2.rkt 44:0 (#%app cdddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (quote 4))))) -- derived pair
TR opt: derived-pair2.rkt 44:0 cdr -- pair
TR opt: derived-pair2.rkt 31:0 (caaar (cons (cons (cons 1 2) 3) 4)) -- derived pair
TR opt: derived-pair2.rkt 31:0 (caaar (cons (cons (cons 1 2) 3) 4)) -- pair
TR opt: derived-pair2.rkt 32:0 (caadr (cons 1 (cons (cons 2 3) 4))) -- derived pair
TR opt: derived-pair2.rkt 32:0 (caadr (cons 1 (cons (cons 2 3) 4))) -- pair
TR opt: derived-pair2.rkt 33:0 (cadar (cons (cons 1 (cons 2 3)) 4)) -- derived pair
TR opt: derived-pair2.rkt 33:0 (cadar (cons (cons 1 (cons 2 3)) 4)) -- pair
TR opt: derived-pair2.rkt 34:0 (caddr (cons 1 (cons 2 (cons 3 4)))) -- derived pair
TR opt: derived-pair2.rkt 34:0 (caddr (cons 1 (cons 2 (cons 3 4)))) -- pair
TR opt: derived-pair2.rkt 35:0 (cdaar (cons (cons (cons 1 2) 3) 4)) -- derived pair
TR opt: derived-pair2.rkt 35:0 (cdaar (cons (cons (cons 1 2) 3) 4)) -- pair
TR opt: derived-pair2.rkt 36:0 (cdadr (cons 1 (cons (cons 2 3) 4))) -- derived pair
TR opt: derived-pair2.rkt 36:0 (cdadr (cons 1 (cons (cons 2 3) 4))) -- pair
TR opt: derived-pair2.rkt 37:0 (cddar (cons (cons 1 (cons 2 3)) 4)) -- derived pair
TR opt: derived-pair2.rkt 37:0 (cddar (cons (cons 1 (cons 2 3)) 4)) -- pair
TR opt: derived-pair2.rkt 38:0 (cdddr (cons 1 (cons 2 (cons 3 4)))) -- derived pair
TR opt: derived-pair2.rkt 38:0 (cdddr (cons 1 (cons 2 (cons 3 4)))) -- pair
1
2
2

View File

@ -1,51 +1,37 @@
#;
(
TR opt: derived-pair3.rkt 69:0 (#%app caaaar (#%app cons (#%app cons (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3)) (quote 4)) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 69:0 car -- pair
TR opt: derived-pair3.rkt 70:0 (#%app caaadr (#%app cons (quote 1) (#%app cons (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4)) (quote 5)))) -- derived pair
TR opt: derived-pair3.rkt 70:0 car -- pair
TR opt: derived-pair3.rkt 70:0 cdr -- pair
TR opt: derived-pair3.rkt 71:0 (#%app caadar (#%app cons (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4))) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 71:0 car -- pair
TR opt: derived-pair3.rkt 71:0 cdr -- pair
TR opt: derived-pair3.rkt 72:0 (#%app caaddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (#%app cons (quote 3) (quote 4)) (quote 5))))) -- derived pair
TR opt: derived-pair3.rkt 72:0 car -- pair
TR opt: derived-pair3.rkt 72:0 cdr -- pair
TR opt: derived-pair3.rkt 73:0 (#%app cadaar (#%app cons (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (quote 3))) (quote 4)) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 73:0 car -- pair
TR opt: derived-pair3.rkt 73:0 cdr -- pair
TR opt: derived-pair3.rkt 74:0 (#%app cadadr (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (#%app cons (quote 3) (quote 4))) (quote 5)))) -- derived pair
TR opt: derived-pair3.rkt 74:0 car -- pair
TR opt: derived-pair3.rkt 74:0 cdr -- pair
TR opt: derived-pair3.rkt 75:0 (#%app caddar (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (quote 4)))) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 75:0 car -- pair
TR opt: derived-pair3.rkt 75:0 cdr -- pair
TR opt: derived-pair3.rkt 76:0 (#%app cadddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (#%app cons (quote 4) (quote 5)))))) -- derived pair
TR opt: derived-pair3.rkt 76:0 car -- pair
TR opt: derived-pair3.rkt 76:0 cdr -- pair
TR opt: derived-pair3.rkt 77:0 (#%app cdaaar (#%app cons (#%app cons (#%app cons (#%app cons (quote 1) (quote 2)) (quote 3)) (quote 4)) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 77:0 car -- pair
TR opt: derived-pair3.rkt 77:0 cdr -- pair
TR opt: derived-pair3.rkt 78:0 (#%app cdaadr (#%app cons (quote 1) (#%app cons (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4)) (quote 5)))) -- derived pair
TR opt: derived-pair3.rkt 78:0 car -- pair
TR opt: derived-pair3.rkt 78:0 cdr -- pair
TR opt: derived-pair3.rkt 79:0 (#%app cdadar (#%app cons (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (quote 3)) (quote 4))) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 79:0 car -- pair
TR opt: derived-pair3.rkt 79:0 cdr -- pair
TR opt: derived-pair3.rkt 80:0 (#%app cdaddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (#%app cons (quote 3) (quote 4)) (quote 5))))) -- derived pair
TR opt: derived-pair3.rkt 80:0 car -- pair
TR opt: derived-pair3.rkt 80:0 cdr -- pair
TR opt: derived-pair3.rkt 81:0 (#%app cddaar (#%app cons (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (quote 3))) (quote 4)) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 81:0 car -- pair
TR opt: derived-pair3.rkt 81:0 cdr -- pair
TR opt: derived-pair3.rkt 82:0 (#%app cddadr (#%app cons (quote 1) (#%app cons (#%app cons (quote 2) (#%app cons (quote 3) (quote 4))) (quote 5)))) -- derived pair
TR opt: derived-pair3.rkt 82:0 car -- pair
TR opt: derived-pair3.rkt 82:0 cdr -- pair
TR opt: derived-pair3.rkt 83:0 (#%app cdddar (#%app cons (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (quote 4)))) (quote 5))) -- derived pair
TR opt: derived-pair3.rkt 83:0 car -- pair
TR opt: derived-pair3.rkt 83:0 cdr -- pair
TR opt: derived-pair3.rkt 84:0 (#%app cddddr (#%app cons (quote 1) (#%app cons (quote 2) (#%app cons (quote 3) (#%app cons (quote 4) (quote 5)))))) -- derived pair
TR opt: derived-pair3.rkt 84:0 cdr -- pair
TR opt: derived-pair3.rkt 55:0 (caaaar (cons (cons (cons (cons 1 2) 3) 4) 5)) -- derived pair
TR opt: derived-pair3.rkt 55:0 (caaaar (cons (cons (cons (cons 1 2) 3) 4) 5)) -- pair
TR opt: derived-pair3.rkt 56:0 (caaadr (cons 1 (cons (cons (cons 2 3) 4) 5))) -- derived pair
TR opt: derived-pair3.rkt 56:0 (caaadr (cons 1 (cons (cons (cons 2 3) 4) 5))) -- pair
TR opt: derived-pair3.rkt 57:0 (caadar (cons (cons 1 (cons (cons 2 3) 4)) 5)) -- derived pair
TR opt: derived-pair3.rkt 57:0 (caadar (cons (cons 1 (cons (cons 2 3) 4)) 5)) -- pair
TR opt: derived-pair3.rkt 58:0 (caaddr (cons 1 (cons 2 (cons (cons 3 4) 5)))) -- derived pair
TR opt: derived-pair3.rkt 58:0 (caaddr (cons 1 (cons 2 (cons (cons 3 4) 5)))) -- pair
TR opt: derived-pair3.rkt 59:0 (cadaar (cons (cons (cons 1 (cons 2 3)) 4) 5)) -- derived pair
TR opt: derived-pair3.rkt 59:0 (cadaar (cons (cons (cons 1 (cons 2 3)) 4) 5)) -- pair
TR opt: derived-pair3.rkt 60:0 (cadadr (cons 1 (cons (cons 2 (cons 3 4)) 5))) -- derived pair
TR opt: derived-pair3.rkt 60:0 (cadadr (cons 1 (cons (cons 2 (cons 3 4)) 5))) -- pair
TR opt: derived-pair3.rkt 61:0 (caddar (cons (cons 1 (cons 2 (cons 3 4))) 5)) -- derived pair
TR opt: derived-pair3.rkt 61:0 (caddar (cons (cons 1 (cons 2 (cons 3 4))) 5)) -- pair
TR opt: derived-pair3.rkt 62:0 (cadddr (cons 1 (cons 2 (cons 3 (cons 4 5))))) -- derived pair
TR opt: derived-pair3.rkt 62:0 (cadddr (cons 1 (cons 2 (cons 3 (cons 4 5))))) -- pair
TR opt: derived-pair3.rkt 63:0 (cdaaar (cons (cons (cons (cons 1 2) 3) 4) 5)) -- derived pair
TR opt: derived-pair3.rkt 63:0 (cdaaar (cons (cons (cons (cons 1 2) 3) 4) 5)) -- pair
TR opt: derived-pair3.rkt 64:0 (cdaadr (cons 1 (cons (cons (cons 2 3) 4) 5))) -- derived pair
TR opt: derived-pair3.rkt 64:0 (cdaadr (cons 1 (cons (cons (cons 2 3) 4) 5))) -- pair
TR opt: derived-pair3.rkt 65:0 (cdadar (cons (cons 1 (cons (cons 2 3) 4)) 5)) -- derived pair
TR opt: derived-pair3.rkt 65:0 (cdadar (cons (cons 1 (cons (cons 2 3) 4)) 5)) -- pair
TR opt: derived-pair3.rkt 66:0 (cdaddr (cons 1 (cons 2 (cons (cons 3 4) 5)))) -- derived pair
TR opt: derived-pair3.rkt 66:0 (cdaddr (cons 1 (cons 2 (cons (cons 3 4) 5)))) -- pair
TR opt: derived-pair3.rkt 67:0 (cddaar (cons (cons (cons 1 (cons 2 3)) 4) 5)) -- derived pair
TR opt: derived-pair3.rkt 67:0 (cddaar (cons (cons (cons 1 (cons 2 3)) 4) 5)) -- pair
TR opt: derived-pair3.rkt 68:0 (cddadr (cons 1 (cons (cons 2 (cons 3 4)) 5))) -- derived pair
TR opt: derived-pair3.rkt 68:0 (cddadr (cons 1 (cons (cons 2 (cons 3 4)) 5))) -- pair
TR opt: derived-pair3.rkt 69:0 (cdddar (cons (cons 1 (cons 2 (cons 3 4))) 5)) -- derived pair
TR opt: derived-pair3.rkt 69:0 (cdddar (cons (cons 1 (cons 2 (cons 3 4))) 5)) -- pair
TR opt: derived-pair3.rkt 70:0 (cddddr (cons 1 (cons 2 (cons 3 (cons 4 5))))) -- derived pair
TR opt: derived-pair3.rkt 70:0 (cddddr (cons 1 (cons 2 (cons 3 (cons 4 5))))) -- pair
1
2
2

View File

@ -1,6 +1,6 @@
#;
(
TR opt: float-complex-conjugate-top.rkt 14:0 (#%app conjugate (#%app + (quote 1.0+2.0i) (quote 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 float complex
TR opt: float-complex-conjugate-top.rkt 14:1 conjugate -- unboxed unary float complex
TR opt: float-complex-conjugate-top.rkt 14:12 + -- unboxed binary float complex
TR opt: float-complex-conjugate-top.rkt 14:14 1.0+2.0i -- unboxed literal

View File

@ -1,6 +1,6 @@
#;
(
TR opt: float-complex-conjugate.rkt 15:0 (#%app + (#%app conjugate (quote 1.0+2.0i)) (#%app conjugate (quote 2.0+4.0i))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-conjugate.rkt 15:4 conjugate -- unboxed unary float complex
TR opt: float-complex-conjugate.rkt 15:14 1.0+2.0i -- unboxed literal

View File

@ -1,6 +1,6 @@
#;
(
TR opt: float-complex-div.rkt 14:0 (#%app / (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0+6.0i)) -- unboxed 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:1 / -- unboxed binary 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

View File

@ -1,8 +1,8 @@
#;
(
TR opt: float-complex-fixnum.rkt 15:0 (#%app + (#%app modulo (quote 2) (quote 1)) (quote 1.0+2.0i) (quote 3.0+6.0i)) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-fixnum.rkt 15:3 (#%app modulo (quote 2) (quote 1)) -- float-arg-expr in complex ops
TR opt: float-complex-fixnum.rkt 15:3 (modulo 2 1) -- float-arg-expr in complex ops
TR opt: float-complex-fixnum.rkt 15:4 modulo -- binary nonzero fixnum
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

View File

@ -4,38 +4,38 @@ TR opt: float-complex-float-div.rkt 47:52 real-part -- unboxed float complex
TR opt: float-complex-float-div.rkt 47:62 x -- unbox float-complex
TR opt: float-complex-float-div.rkt 48:52 imag-part -- 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 (#%app / (quote 1.0) (quote 2.0+4.0i)) -- unboxed 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:7 / -- unboxed binary float complex
TR opt: float-complex-float-div.rkt 50:9 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app / (quote 1.0+2.0i) (quote 2.0)) -- unboxed 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:7 / -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-div.rkt 52:6 (#%app / (quote 1.0) (quote 2.0+4.0i) (quote 3.0+6.0i)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-div.rkt 52:7 / -- unboxed binary float complex
TR opt: float-complex-float-div.rkt 52:9 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app / (quote 1.0+2.0i) (quote 2.0) (quote 3.0+6.0i)) -- unboxed 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:7 / -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
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 (#%app / (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0)) -- unboxed 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:7 / -- unboxed binary 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 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-div.rkt 55:6 (#%app / (quote 1.0+2.0i) (quote 2.0) (quote 3.0)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-div.rkt 55:7 / -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-div.rkt 55:22 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-div.rkt 56:6 (#%app / (quote 1.0) (quote 2.0) (quote 3.0+6.0i)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-div.rkt 56:7 / -- unboxed binary float complex
TR opt: float-complex-float-div.rkt 56:9 (quote 1.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-div.rkt 56:13 (quote 2.0) -- float-arg-expr in complex ops
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
'("0.1000000000-0.2000000000" "0.50000000001.0000000000" "-0.0200000000-0.0266666667" "0.16666666670.0000000000" "0.16666666670.0000000000" "0.16666666670.3333333333" "0.0333333333-0.0666666667")
)

View File

@ -1,33 +1,33 @@
#;
(
TR opt: float-complex-float-mul.rkt 42:0 (#%app * (quote 1.0) (quote 2.0+4.0i)) -- unboxed 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:1 * -- unboxed binary float complex
TR opt: float-complex-float-mul.rkt 42:3 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app * (quote 1.0+2.0i) (quote 2.0)) -- unboxed 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:1 * -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-mul.rkt 44:0 (#%app * (quote 1.0) (quote 2.0+4.0i) (quote 3.0+6.0i)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-mul.rkt 44:1 * -- unboxed binary float complex
TR opt: float-complex-float-mul.rkt 44:3 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app * (quote 1.0+2.0i) (quote 2.0) (quote 3.0+6.0i)) -- unboxed 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:1 * -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
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 (#%app * (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0)) -- unboxed 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:1 * -- unboxed binary 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 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-mul.rkt 47:0 (#%app * (quote 1.0+2.0i) (quote 2.0) (quote 3.0)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-mul.rkt 47:1 * -- unboxed binary 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 (quote 2.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-mul.rkt 47:16 (quote 3.0) -- float-arg-expr in complex ops
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
2.0+4.0i
2.0+4.0i
-18.0+24.0i

View File

@ -1,28 +1,28 @@
#;
(
TR opt: float-complex-float-small.rkt 36:0 (#%app + (quote 1.0+2.0i) (quote 3.0)) -- unboxed 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:1 + -- unboxed binary 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 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-small.rkt 37:0 (#%app + (quote 1.0) (quote 2.0+4.0i)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-small.rkt 37:1 + -- unboxed binary float complex
TR opt: float-complex-float-small.rkt 37:3 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app - (quote 1.0+2.0i) (quote 3.0)) -- unboxed 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:1 - -- unboxed binary 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 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-small.rkt 39:0 (#%app - (quote 1.0) (quote 2.0+4.0i)) -- unboxed float complex
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 float complex
TR opt: float-complex-float-small.rkt 39:1 - -- unboxed binary float complex
TR opt: float-complex-float-small.rkt 39:3 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app + (quote 1.0+2.0i) (#%app + (quote 1.0) (quote 2.0))) -- unboxed 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:1 + -- unboxed binary 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 (#%app + (quote 1.0) (quote 2.0)) -- float-arg-expr in complex ops
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:13 + -- binary float
TR opt: float-complex-float-small.rkt 40:15 (quote 1.0) -- float-arg-expr in complex ops
TR opt: float-complex-float-small.rkt 40:19 (quote 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
4.0+2.0i
3.0+4.0i
-2.0+2.0i

View File

@ -1,25 +1,25 @@
#;
(
TR opt: float-complex-float.rkt 32:0 (#%app + (quote 1.0+2.0i) (quote 2.0) (quote 3.0+6.0i)) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-float.rkt 32:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-float.rkt 32:12 (quote 2.0) -- float-arg-expr in complex ops
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 (#%app - (quote 1.0) (quote 2.0+4.0i) (quote 3.0+6.0i)) -- unboxed 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:1 - -- unboxed binary float complex
TR opt: float-complex-float.rkt 33:3 (quote 1.0) -- float-arg-expr in complex ops
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 (#%app - (quote 1.0+2.0i) (quote 2.0) (quote 3.0+6.0i)) -- unboxed 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:1 - -- unboxed binary float complex
TR opt: float-complex-float.rkt 34:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-float.rkt 34:12 (quote 2.0) -- float-arg-expr in complex ops
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 (#%app - (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0)) -- unboxed 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:1 - -- unboxed binary 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 (quote 3.0) -- float-arg-expr in complex ops
TR opt: float-complex-float.rkt 35:21 3.0 -- float-arg-expr in complex ops
6.0+8.0i
-4.0-10.0i
-4.0-4.0i

View File

@ -1,6 +1,6 @@
#;
(
TR opt: float-complex-i.rkt 15:0 (#%app + (quote 1.0+2.0i) (#%app * (quote 0+1.0i) (quote 2.0+4.0i))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-i.rkt 15:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-i.rkt 15:13 * -- unboxed binary float complex

View File

@ -1,8 +1,8 @@
#;
(
TR opt: float-complex-integer.rkt 13:0 (#%app + (#%app expt (quote 2) (quote 100)) (quote 1.0+2.0i)) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-integer.rkt 13:3 (#%app expt (quote 2) (quote 100)) -- float-arg-expr in complex ops
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
1.2676506002282294e+30+2.0i
)

View File

@ -1,6 +1,6 @@
#;
(
TR opt: float-complex-mult.rkt 14:0 (#%app * (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0+6.0i)) -- unboxed 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:1 * -- unboxed binary 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

View File

@ -1,22 +1,22 @@
#;
(
TR opt: float-complex-parts2.rkt 34:1 real-part -- unboxed float complex
TR opt: float-complex-parts2.rkt 34:11 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:12 + -- unboxed binary 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:1 unsafe-flreal-part -- unboxed float complex
TR opt: float-complex-parts2.rkt 35:20 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:21 + -- unboxed binary 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:1 imag-part -- unboxed float complex
TR opt: float-complex-parts2.rkt 36:11 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:12 + -- unboxed binary 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:1 unsafe-flimag-part -- unboxed float complex
TR opt: float-complex-parts2.rkt 37:20 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:21 + -- unboxed binary 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

View File

@ -1,27 +1,27 @@
#;
(
TR opt: float-complex-parts3.rkt 42:0 (#%app + (quote 1.0+2.0i) (#%app real-part (#%app + (quote 2.0+4.0i) (quote 3.0+6.0i)))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-parts3.rkt 42:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-parts3.rkt 42:13 real-part -- unboxed unary float complex
TR opt: float-complex-parts3.rkt 42:24 + -- 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 (#%app + (quote 1.0+2.0i) (#%app unsafe-flreal-part (#%app + (quote 2.0+4.0i) (quote 3.0+6.0i)))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-parts3.rkt 43:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-parts3.rkt 43:13 unsafe-flreal-part -- unboxed unary float complex
TR opt: float-complex-parts3.rkt 43:33 + -- 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 (#%app + (quote 1.0+2.0i) (#%app imag-part (#%app + (quote 2.0+4.0i) (quote 3.0+6.0i)))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-parts3.rkt 44:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-parts3.rkt 44:13 imag-part -- unboxed unary float complex
TR opt: float-complex-parts3.rkt 44:24 + -- 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 (#%app + (quote 1.0+2.0i) (#%app unsafe-flimag-part (#%app + (quote 2.0+4.0i) (quote 3.0+6.0i)))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: float-complex-parts3.rkt 45:3 1.0+2.0i -- unboxed literal
TR opt: float-complex-parts3.rkt 45:13 unsafe-flimag-part -- unboxed unary float complex

View File

@ -1,10 +1,10 @@
#;
(
TR opt: float-complex-sin.rkt 16:10 (#%app + (#%app sin (#%app * t (quote 6.28))) (quote 0.0+0.0i)) -- unboxed float complex
TR opt: float-complex-sin.rkt 16:10 (+ (sin (* t 6.28)) 0.0+0.0i) -- unboxed float complex
TR opt: float-complex-sin.rkt 16:11 + -- unboxed binary float complex
TR missed opt: float-complex-sin.rkt 16:13 (#%app sin (#%app * t (quote 6.28))) -- unary, arg float-arg-expr, return type not Float
TR opt: float-complex-sin.rkt 16:13 (#%app sin (#%app * t (quote 6.28))) -- float-arg-expr in complex ops
TR missed opt: float-complex-sin.rkt 16:18 (#%app * t (quote 6.28)) -- binary, args all float-arg-expr, return type not Float -- caused by: 16:21 t
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
-0.0031853017931379904+0.0i
)

View File

@ -1,10 +1,10 @@
#;
(
TR opt: float-complex.rkt 18:0 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:1 + -- unboxed binary 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 (#%app - (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:1 - -- unboxed binary 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

View File

@ -1,15 +1,15 @@
#;
(
TR opt: float-real.rkt 18:1 + -- binary float
TR missed opt: float-real.rkt 19:0 (#%app + (quote 2.3) (#%app * (quote 2) (quote 3.2))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 19:7 (#%app * (quote 2) (quote 3.2))
TR missed opt: float-real.rkt 19:0 (+ 2.3 (* (ann 2 Integer) 3.2)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 19:7 (#%app * (quote 2) (quote 3.2))
TR opt: float-real.rkt 19:1 + -- binary float
TR missed opt: float-real.rkt 19:7 (#%app * (quote 2) (quote 3.2)) -- binary, args all float-arg-expr, return type not Float -- caused by: 19:15 (quote 2)
TR missed opt: float-real.rkt 20:0 (#%app * (quote 2.3) (#%app * (quote 2) (quote 3.1))) -- binary, args all float-arg-expr, return type not Float -- caused by: 20:15 (quote 2)
TR missed opt: float-real.rkt 20:0 (#%app * (quote 2.3) (#%app * (quote 2) (quote 3.1))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 20:7 (#%app * (quote 2) (quote 3.1))
TR missed opt: float-real.rkt 19:7 (* (ann 2 Integer) 3.2) -- binary, args all float-arg-expr, return type not Float -- caused by: 19:15 (quote 2)
TR missed opt: float-real.rkt 20:0 (* 2.3 (* (ann 2 Integer) 3.1)) -- binary, args all float-arg-expr, return type not Float -- caused by: 20:15 (quote 2)
TR missed opt: float-real.rkt 20:0 (* 2.3 (* (ann 2 Integer) 3.1)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 20:7 (#%app * (quote 2) (quote 3.1))
5.3
8.7
14.26
)
)
#lang typed/racket

View File

@ -1,6 +1,6 @@
#;
(
TR opt: #f (no location) make-sequence -- in-bytes
TR opt: in-bytes.rkt 6:0 #%module-begin -- in-bytes
495051)
#lang typed/scheme

View File

@ -1,6 +1,6 @@
#;
(
TR opt: #f (no location) make-sequence -- in-list
TR opt: in-list.rkt 6:0 #%module-begin -- in-list
123)
#lang typed/scheme

View File

@ -1,6 +1,6 @@
#;
(
TR opt: #f (no location) make-sequence -- in-string
TR opt: in-string.rkt 6:0 #%module-begin -- in-string
123)
#lang typed/scheme

View File

@ -1,6 +1,6 @@
#;
(
TR opt: #f (no location) make-sequence -- in-vector
TR opt: in-vector.rkt 6:0 #%module-begin -- in-vector
123)
#lang typed/scheme

View File

@ -1,5 +1,6 @@
#;
()
(
)
#lang typed/scheme
#:optimize

View File

@ -1,8 +1,8 @@
#;
(
TR missed opt: invalid-derived-pair.rkt 12:2 (#%app car (#%app cdr x)) -- car/cdr on a potentially empty list -- caused by: 12:2 (#%app cdr x)
TR missed opt: invalid-derived-pair.rkt 17:6 (#%app car (#%app cdr x)) -- car/cdr on a potentially empty list -- caused by: 17:6 (#%app cdr x)
)
TR missed opt: invalid-derived-pair.rkt 12:2 (cadr x) -- car/cdr on a potentially empty list -- caused by: 12:2 (#%app cdr x)
TR missed opt: invalid-derived-pair.rkt 17:6 (cadr x) -- car/cdr on a potentially empty list -- caused by: 17:6 (#%app cdr x)
)
#lang typed/racket #:optimize

View File

@ -1,7 +1,7 @@
#;
(
TR missed opt: invalid-float-promotion.rkt 12:0 (#%app / (quote 1) (quote 2.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 12:8 (quote 1)
TR missed opt: invalid-float-promotion.rkt 13:0 (#%app * (quote 2/3) (quote 3.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 13:8 (quote 2/3)
TR missed opt: invalid-float-promotion.rkt 12:0 (/ (ann 1 Integer) 2.0) -- binary, args all float-arg-expr, return type not Float -- caused by: 12:8 (quote 1)
TR missed opt: invalid-float-promotion.rkt 13:0 (* (ann 2/3 Exact-Rational) 3.0) -- binary, args all float-arg-expr, return type not Float -- caused by: 13:8 (quote 2/3)
0.5
2.0
)

View File

@ -1,6 +1,6 @@
#;
(
TR missed opt: invalid-log-complex.rkt 10:11 (#%app log (quote 2.0)) -- unexpected complex type
TR missed opt: invalid-log-complex.rkt 10:11 (log (ann 2.0 Float)) -- unexpected complex type
0.6931471805599453
)

View File

@ -1,7 +1,7 @@
#;
(
TR missed opt: invalid-mpair.rkt 10:2 (#%app mcar x) -- mpair op on a potentially empty mlist -- caused by: 10:8 x
)
TR missed opt: invalid-mpair.rkt 10:2 (mcar x) -- mpair op on a potentially empty mlist -- caused by: 10:8 x
)
#lang typed/scheme
#:optimize

View File

@ -1,6 +1,6 @@
#;
(
TR missed opt: invalid-sqrt.rkt 9:0 (#%app sqrt (quote -2.0)) -- unexpected complex type
TR missed opt: invalid-sqrt.rkt 9:0 (sqrt -2.0) -- unexpected complex type
0+1.4142135623730951i
)

View File

@ -1,14 +1,14 @@
#;
(
TR opt: invalid-unboxed-let.rkt 22:0 (let-values (((t1) (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i))) ((t2) (#%app + (quote 3.0+6.0i) (quote 4.0+8.0i))) ((t3) (quote 1.0+2.0i)) ((t4) (quote 1))) (#%app display (#%app + t1 t1)) (#%app display t2) (#%app display t3) (#%app display t4)) -- unboxed let bindings
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:11 + -- 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 (#%app + (quote 3.0+6.0i) (quote 4.0+8.0i)) -- unboxed 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:11 + -- unboxed binary 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 (#%app + t1 t1) -- unboxed float complex
TR opt: invalid-unboxed-let.rkt 26:11 (+ t1 t1) -- unboxed float complex
TR opt: invalid-unboxed-let.rkt 26:12 + -- unboxed binary 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

View File

@ -1,14 +1,14 @@
#;
(
TR opt: invalid-unboxed-let2.rkt 24:30 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:31 + -- unboxed binary 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 (#%app + (quote 3.0+6.0i) (quote 4.0+8.0i)) -- unboxed 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:53 + -- unboxed binary 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 (#%app + t1 t2) -- unboxed float complex
TR opt: invalid-unboxed-let2.rkt 25:2 (+ t1 t2) -- unboxed float complex
TR opt: invalid-unboxed-let2.rkt 25:3 + -- unboxed binary 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

View File

@ -1,5 +1,6 @@
#;
()
(
)
#lang typed/scheme
#:optimize

View File

@ -1,5 +1,6 @@
#;
()
(
)
#lang typed/scheme
#:optimize

View File

@ -1,6 +1,6 @@
#;
(
TR opt: magnitude.rkt 14:0 (#%app magnitude (quote 3.0+4.0i)) -- unboxed float complex->float
TR opt: magnitude.rkt 14:0 (magnitude 3.0+4.0i) -- unboxed float complex->float
TR opt: magnitude.rkt 14:1 magnitude -- unboxed unary float complex
TR opt: magnitude.rkt 14:11 3.0+4.0i -- unboxed literal
5.0

View File

@ -2,11 +2,11 @@
(
TR opt: make-polar.rkt 28:1 make-polar -- make-polar
TR opt: make-polar.rkt 28:1 make-polar -- make-rectangular elimination
TR opt: make-polar.rkt 31:0 (let-values (((p) (#%app + (quote 1.0+2.0i) (#%app make-polar (quote 2.0) (quote 4.0))))) (#%app string-append (#%app real->decimal-string (#%app real-part p) (quote 10)) (#%app real->decimal-string (#%app imag-part p) (quote 10)))) -- unboxed let bindings
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:10 + -- unboxed binary float complex
TR opt: make-polar.rkt 31:12 1.0+2.0i -- unboxed literal
TR opt: make-polar.rkt 31:22 make-polar -- make-rectangular elimination
TR opt: make-polar.rkt 32:39 (#%app real-part p) -- unboxed float complex->float
TR opt: make-polar.rkt 32:39 (real-part p) -- unboxed float complex->float
TR opt: make-polar.rkt 32:40 real-part -- unboxed float complex
TR opt: make-polar.rkt 32:40 real-part -- unboxed unary float complex
TR opt: make-polar.rkt 32:50 p -- leave var unboxed

View File

@ -1,6 +1,6 @@
#;
(
TR opt: maybe-exact-complex.rkt 15:0 (#%app + (quote 1.0+2.0i) (quote 2+4i)) -- unboxed 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:1 + -- unboxed binary 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

View File

@ -1,6 +1,6 @@
#;
(
TR opt: n-ary-float-complex.rkt 15:0 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i) (quote 3.0+6.0i) (quote 4.0+8.0i)) -- unboxed 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:1 + -- unboxed binary 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

View File

@ -1,6 +1,6 @@
#;
(
TR opt: nested-float-complex.rkt 15:0 (#%app + (quote 1.0+2.0i) (#%app - (quote 2.0+4.0i) (quote 3.0+6.0i))) -- unboxed 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:1 + -- unboxed binary float complex
TR opt: nested-float-complex.rkt 15:3 1.0+2.0i -- unboxed literal
TR opt: nested-float-complex.rkt 15:13 - -- unboxed binary float complex

View File

@ -1,7 +1,7 @@
#;
(
TR opt: #f (no location) (letrec-values (((loop1) (lambda (x r) (if (#%app null? x) r (#%app (letrec-values (((loop2) (lambda (y s) (if (#%app null? y) (#%app loop1 (#%app cdr x) (#%app + r s)) (#%app loop2 (#%app cdr y) (#%app + s (#%app car x) (#%app car y))))))) loop2) (quote (3.0+6.0i 4.0+8.0i)) (quote 0.0+0.0i)))))) loop1) -- unboxed call site
TR opt: #f (no location) (letrec-values (((loop2) (lambda (y s) (if (#%app null? y) (#%app loop1 (#%app cdr x) (#%app + r s)) (#%app loop2 (#%app cdr y) (#%app + s (#%app car x) (#%app car y))))))) loop2) -- unboxed call site
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 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 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
@ -16,7 +16,7 @@ TR opt: nested-let-loop.rkt 47:38 0.0+0.0i -- unboxed literal
TR opt: nested-let-loop.rkt 49:21 loop1 -- call to fun with unboxed args
TR opt: nested-let-loop.rkt 49:21 loop1 -- unboxed call site
TR opt: nested-let-loop.rkt 49:28 cdr -- pair
TR opt: nested-let-loop.rkt 49:35 (#%app + r s) -- unboxed float complex
TR opt: nested-let-loop.rkt 49:35 (+ r s) -- unboxed float complex
TR opt: nested-let-loop.rkt 49:36 + -- unboxed binary 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
@ -27,9 +27,9 @@ TR opt: nested-let-loop.rkt 50:21 loop2 -- unboxed call site
TR opt: nested-let-loop.rkt 50:28 cdr -- pair
TR opt: nested-let-loop.rkt 50:36 + -- unboxed binary float complex
TR opt: nested-let-loop.rkt 50:38 s -- leave var unboxed
TR opt: nested-let-loop.rkt 50:40 (#%app car x) -- unbox float-complex
TR opt: nested-let-loop.rkt 50:40 (car x) -- unbox float-complex
TR opt: nested-let-loop.rkt 50:41 car -- pair
TR opt: nested-let-loop.rkt 50:48 (#%app car y) -- unbox float-complex
TR opt: nested-let-loop.rkt 50:48 (car y) -- unbox float-complex
TR opt: nested-let-loop.rkt 50:49 car -- pair
20.0+40.0i
)

View File

@ -1,16 +1,16 @@
#;
(
TR opt: nested-unboxed-let.rkt 24:0 (let-values (((x) (#%app + (quote 1.0+2.0i) (quote 2.0+3.0i)))) (let-values (((x) (#%app + x (quote 2.0+3.0i)))) (#%app + x (quote 3.0+6.0i)))) -- unboxed let bindings
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:10 + -- 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-values (((x) (#%app + x (quote 2.0+3.0i)))) (#%app + x (quote 3.0+6.0i))) -- unboxed let bindings
TR opt: nested-unboxed-let.rkt 25:11 (#%app + x (quote 2.0+3.0i)) -- unboxed float complex
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 float complex
TR opt: nested-unboxed-let.rkt 25:12 + -- unboxed binary 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 (#%app + x (quote 3.0+6.0i)) -- unboxed 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:5 + -- unboxed binary 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

View File

@ -1,13 +1,13 @@
#;
(
TR opt: real-part-loop.rkt 30:1 (letrec-values (((loop) (lambda (v) (if (#%app > (#%app real-part v) (quote 70000.2)) (quote 0) (#%app loop (#%app + v (quote 3.6))))))) loop) -- unboxed call site
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:7 > -- binary float comp
TR opt: real-part-loop.rkt 31:9 (#%app real-part v) -- unboxed float complex->float
TR opt: real-part-loop.rkt 31:9 (real-part v) -- unboxed float complex->float
TR opt: real-part-loop.rkt 31:10 real-part -- unboxed float complex
TR opt: real-part-loop.rkt 31:10 real-part -- unboxed unary float complex
TR opt: real-part-loop.rkt 31:20 v -- leave var unboxed
@ -17,7 +17,7 @@ TR opt: real-part-loop.rkt 33:7 loop -- call to fun with unboxed args
TR opt: real-part-loop.rkt 33:7 loop -- unboxed call site
TR opt: real-part-loop.rkt 33:13 + -- unboxed binary float complex
TR opt: real-part-loop.rkt 33:15 v -- leave var unboxed
TR opt: real-part-loop.rkt 33:17 (quote 3.6) -- float-arg-expr in complex ops
TR opt: real-part-loop.rkt 33:17 3.6 -- float-arg-expr in complex ops
0
)

View File

@ -1,7 +1,7 @@
#;
(
TR opt: silent-dead-branch.rkt 12:0 (let-values () (quote 1)) -- dead then branch
)
TR opt: silent-dead-branch.rkt 12:0 (when (number? 1) 1) -- dead then branch
)
#lang typed/racket

View File

@ -2,7 +2,7 @@
(
TR opt: sqrt-segfault.rkt 18:15 - -- binary float
TR opt: sqrt-segfault.rkt 19:15 * -- binary float
TR missed opt: sqrt-segfault.rkt 20:31 (#%app sqrt dist2) -- unexpected complex type
TR missed opt: sqrt-segfault.rkt 20:31 (sqrt dist2) -- unexpected complex type
)
#lang typed/scheme

View File

@ -1,27 +1,26 @@
#;
(
TR opt: #f (no location) (#%app pos->vals pos) -- unbox float-complex
TR opt: #f (no location) (let-values (((i) (#%app pos->vals pos))) (if (#%expression (if val-cont? (#%app val-cont? i) (quote #t))) (let-values (((sum) (let-values (((sum) sum)) (let-values () (#%app + i sum))))) (if (#%expression (if all-cont? (#%app all-cont? pos i) (quote #t))) (#%app for-loop sum (#%app pos-next pos)) sum)) sum)) -- unboxed let bindings
TR opt: #f (no location) (let-values (((sum) sum)) (let-values () (#%app + i sum))) -- unboxed let bindings
TR opt: #f (no location) for-loop -- call to fun with unboxed args
TR opt: #f (no location) for-loop -- fun -> unboxed fun
TR opt: #f (no location) for-loop -- unboxed call site
TR opt: #f (no location) for-loop -- unboxed function -> table
TR opt: #f (no location) for-loop -- unboxed let loop
TR opt: #f (no location) make-sequence -- in-list
TR opt: unboxed-for.rkt 31:0 (letrec-values (((for-loop) (lambda (sum pos) (if (#%expression (if pos-cont? (#%app pos-cont? pos) (quote #t))) (let-values (((i) (#%app pos->vals pos))) (if (#%expression (if val-cont? (#%app val-cont? i) (quote #t))) (let-values (((sum) (let-values (((sum) sum)) (let-values () (#%app + i sum))))) (if (#%expression (if all-cont? (#%app all-cont? pos i) (quote #t))) (#%app for-loop sum (#%app pos-next pos)) sum)) sum)) sum)))) for-loop) -- unboxed call site
TR opt: unboxed-for.rkt 31:31 sum -- leave var unboxed
TR opt: unboxed-for.rkt 31:31 sum -- unbox float-complex
TR opt: unboxed-for.rkt 31:31 sum -- unboxed complex variable
TR opt: unboxed-for.rkt 31:31 sum -- unboxed var -> table
TR opt: unboxed-for.rkt 31:53 0.0+0.0i -- unboxed literal
TR opt: unboxed-for.rkt 32:13 i -- unboxed complex variable
TR opt: unboxed-for.rkt 33:6 (#%app + i sum) -- unboxed float complex
TR opt: unboxed-for.rkt 33:7 + -- unboxed binary float complex
TR opt: unboxed-for.rkt 33:9 i -- leave var unboxed
TR opt: unboxed-for.rkt 33:9 i -- unbox float-complex
TR opt: unboxed-for.rkt 33:11 sum -- leave var unboxed
TR opt: unboxed-for.rkt 33:11 sum -- unbox float-complex
TR opt: unboxed-for.rkt 27:0 #%module-begin -- in-list
TR opt: unboxed-for.rkt 30: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 30: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 30: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 30: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 30: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 30: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 30: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 30: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 30:31 sum -- leave var unboxed
TR opt: unboxed-for.rkt 30:31 sum -- unbox float-complex
TR opt: unboxed-for.rkt 30:31 sum -- unboxed complex variable
TR opt: unboxed-for.rkt 30:31 sum -- unboxed var -> table
TR opt: unboxed-for.rkt 30:53 0.0+0.0i -- unboxed literal
TR opt: unboxed-for.rkt 31:13 i -- unboxed complex variable
TR opt: unboxed-for.rkt 32:6 (+ i sum) -- unboxed float complex
TR opt: unboxed-for.rkt 32:7 + -- unboxed binary float complex
TR opt: unboxed-for.rkt 32:9 i -- leave var unboxed
TR opt: unboxed-for.rkt 32:9 i -- unbox float-complex
TR opt: unboxed-for.rkt 32:11 sum -- leave var unboxed
TR opt: unboxed-for.rkt 32:11 sum -- unbox float-complex
3.0+6.0i
)

View File

@ -3,7 +3,7 @@
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 (#%app + x (quote 3.0+6.0i)) -- unboxed 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:43 + -- unboxed binary 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

View File

@ -4,7 +4,7 @@ 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 (#%app + x y) -- unboxed float complex
TR opt: unboxed-let-functions2.rkt 27:18 (+ x y) -- unboxed float complex
TR opt: unboxed-let-functions2.rkt 27:19 + -- unboxed binary 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

View File

@ -3,7 +3,7 @@
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 (#%app + x y) -- unboxed float complex
TR opt: unboxed-let-functions3.rkt 24:18 (+ x y) -- unboxed float complex
TR opt: unboxed-let-functions3.rkt 24:19 + -- unboxed binary 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

View File

@ -3,7 +3,7 @@
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 (#%app + x y) -- unboxed float complex
TR opt: unboxed-let-functions4.rkt 24:18 (+ x y) -- unboxed float complex
TR opt: unboxed-let-functions4.rkt 24:19 + -- unboxed binary 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

View File

@ -1,6 +1,6 @@
#;
(
TR opt: unboxed-let-functions5.rkt 20:12 (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)) -- unboxed 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:13 + -- unboxed binary 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

View File

@ -1,12 +1,12 @@
#;
(
TR opt: #f (no location) (letrec-values (((loop) (lambda (z l) (if (#%app null? l) (#%app + z (quote 0.0+1.0i)) (#%app loop (#%app + z (#%app car l)) (#%app cdr l)))))) loop) -- unboxed call site
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 (#%app + z (quote 0.0+1.0i)) -- unboxed 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:11 + -- unboxed binary 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
@ -15,7 +15,7 @@ TR opt: unboxed-let-functions6.rkt 31:11 loop -- call to fun with unboxed args
TR opt: unboxed-let-functions6.rkt 31:11 loop -- unboxed call site
TR opt: unboxed-let-functions6.rkt 31:17 + -- unboxed binary float complex
TR opt: unboxed-let-functions6.rkt 31:19 z -- leave var unboxed
TR opt: unboxed-let-functions6.rkt 31:21 (#%app car l) -- float-arg-expr in complex ops
TR opt: unboxed-let-functions6.rkt 31:21 (car l) -- float-arg-expr in complex ops
TR opt: unboxed-let-functions6.rkt 31:22 car -- pair
TR opt: unboxed-let-functions6.rkt 32:17 cdr -- pair
6.0+1.0i

View File

@ -1,6 +1,6 @@
#;
(
TR opt: #f (no location) (letrec-values (((loop) (lambda (z l) (if (#%app null? l) z (#%app loop (#%app + z (#%app car l)) (#%app cdr l)))))) loop) -- unboxed call site
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
@ -9,11 +9,11 @@ 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:7 loop -- call to fun with unboxed args
TR opt: unboxed-let-functions7.rkt 30:7 loop -- unboxed call site
TR opt: unboxed-let-functions7.rkt 30:12 (#%app + z (#%app car l)) -- unboxed float complex
TR opt: unboxed-let-functions7.rkt 30:12 (+ z (car l)) -- unboxed float complex
TR opt: unboxed-let-functions7.rkt 30:13 + -- unboxed binary 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 (#%app car l) -- float-arg-expr in complex ops
TR opt: unboxed-let-functions7.rkt 30:17 (car l) -- float-arg-expr in complex ops
TR opt: unboxed-let-functions7.rkt 30:18 car -- pair
TR opt: unboxed-let-functions7.rkt 31:13 cdr -- pair
6.0+0.0i

View File

@ -1,6 +1,6 @@
#;
(
TR opt: unboxed-let-functions8.rkt 15:64 (#%app + x (quote 2.0+4.0i)) -- unboxed 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:65 + -- unboxed binary 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

View File

@ -1,23 +1,21 @@
#;
(
TR opt: unboxed-let.rkt 29:0 (let-values (((t1) (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)))) (let-values (((t2) (#%app - t1 (quote 3.0+6.0i)))) (let-values (((t3) (quote 4.0+8.0i))) (#%app + t2 t3)))) -- unboxed let bindings
TR opt: unboxed-let.rkt 29:0 (let-values (((t2) (#%app - t1 (quote 3.0+6.0i)))) (let-values (((t3) (quote 4.0+8.0i))) (#%app + t2 t3))) -- unboxed let bindings
TR opt: unboxed-let.rkt 29:0 (let-values (((t3) (quote 4.0+8.0i))) (#%app + t2 t3)) -- unboxed let bindings
TR opt: unboxed-let.rkt 29:12 + -- 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 (#%app - t1 (quote 3.0+6.0i)) -- unboxed float complex
TR opt: unboxed-let.rkt 30:12 - -- unboxed binary 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 (#%app + t2 t3) -- unboxed float complex
TR opt: unboxed-let.rkt 32:3 + -- unboxed binary 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:12 + -- 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 float complex
TR opt: unboxed-let.rkt 28:12 - -- 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 float complex
TR opt: unboxed-let.rkt 30:3 + -- 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
)

View File

@ -1,13 +1,13 @@
#;
(
TR opt: unboxed-let2.rkt 22:0 (let-values (((t1) (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i))) ((t2) (#%app + (quote 3.0+6.0i) (quote 4.0+8.0i)))) (#%app + t1 t2)) -- unboxed let bindings
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:11 + -- 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:11 + -- 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 (#%app + t1 t2) -- unboxed float complex
TR opt: unboxed-let2.rkt 24:2 (+ t1 t2) -- unboxed float complex
TR opt: unboxed-let2.rkt 24:3 + -- unboxed binary float complex
TR opt: unboxed-let2.rkt 24:5 t1 -- leave var unboxed
TR opt: unboxed-let2.rkt 24:5 t1 -- unbox float-complex

View File

@ -1,11 +1,11 @@
#;
(
TR opt: unboxed-let3.rkt 26:0 (let-values (((x) (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)))) (if (#%app even? (quote 2)) x (#%app + x (quote 2.0+4.0i)))) -- unboxed let bindings
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:10 + -- 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 (#%app + x (quote 2.0+4.0i)) -- unboxed float complex
TR opt: unboxed-let3.rkt 29:6 (+ x 2.0+4.0i) -- unboxed float complex
TR opt: unboxed-let3.rkt 29:7 + -- unboxed binary float complex
TR opt: unboxed-let3.rkt 29:9 x -- leave var unboxed
TR opt: unboxed-let3.rkt 29:9 x -- unbox float-complex

View File

@ -1,10 +1,10 @@
#;
(
TR opt: unboxed-letrec-syntaxes+values.rkt 18:0 (letrec-syntaxes+values (((s) (syntax-rules () ((_ x) x)))) (((x) (#%app + (quote 1.0+2.0i) (quote 2.0+4.0i)))) (#%app + x (quote 2.0+4.0i))) -- unboxed let bindings
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:31 + -- 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 (#%app + x (quote 2.0+4.0i)) -- unboxed 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:25 + -- unboxed binary 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

View File

@ -1,11 +1,11 @@
#;
(
TR opt: unboxed-letrec.rkt 22:0 (letrec-values (((f) (lambda (x) (#%app f x))) ((x) (quote 1.0+2.0i)) ((y) (#%app + (quote 2.0+4.0i) (quote 3.0+6.0i)))) (#%app + x y)) -- unboxed let bindings
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:32 + -- 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 (#%app + x y) -- unboxed float complex
TR opt: unboxed-letrec.rkt 25:2 (+ x y) -- unboxed float complex
TR opt: unboxed-letrec.rkt 25:3 + -- unboxed binary float complex
TR opt: unboxed-letrec.rkt 25:5 x -- leave var unboxed
TR opt: unboxed-letrec.rkt 25:5 x -- unbox float-complex

View File

@ -1,15 +1,15 @@
#;
(
TR opt: unboxed-make-rectangular.rkt 27:0 (let-values (((x) (#%app make-rectangular (quote 1.0) (quote 2.0)))) (#%app + x (quote 2.0+4.0i))) -- unboxed let bindings
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:10 make-rectangular -- make-rectangular elimination
TR opt: unboxed-make-rectangular.rkt 28:2 (#%app + x (quote 2.0+4.0i)) -- unboxed 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:3 + -- unboxed binary 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-values (((x) (#%app unsafe-make-flrectangular (quote 1.0) (quote 2.0)))) (#%app + x (quote 2.0+4.0i))) -- unboxed let bindings
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:10 unsafe-make-flrectangular -- make-rectangular elimination
TR opt: unboxed-make-rectangular.rkt 30:2 (#%app + x (quote 2.0+4.0i)) -- unboxed 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:3 + -- unboxed binary 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

View File

@ -1,7 +1,8 @@
#lang racket/base
(require racket/set racket/string racket/match racket/list
unstable/syntax)
unstable/syntax
"../utils/tc-utils.rkt")
(provide log-optimization log-missed-optimization
optimization-log-key
@ -28,12 +29,13 @@
(define log-so-far (set))
(define (gen-log-message msg stx from)
(format "~a: ~a ~a ~a -- ~a"
from
(syntax-source-file-name stx)
(line+col->string stx)
(syntax->datum stx)
msg))
(let ([stx (locate-stx stx)])
(format "~a: ~a ~a ~a -- ~a"
from
(syntax-source-file-name stx)
(line+col->string stx)
(syntax->datum stx)
msg)))
(define (log-optimization msg stx #:from [from "TR opt"])
(let* ([new-message (gen-log-message msg stx from)]