From 12eea12a7df909f61aec1cbef15d59d9d82eb9e1 Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Thu, 20 Jun 2013 22:40:33 -0700 Subject: [PATCH] Make optimizer read TR expected logs as a list of entries versus a raw string. original commit: ccf947e31e50678067ac6aa546ff1fd7f4d37ad9 --- .../typed-racket/optimizer/logging.rkt | 11 +- .../missed-optimizations/all-real.rkt | 9 +- .../optimizer/missed-optimizations/fixnum.rkt | 29 ++- .../missed-optimizations/multi-file1.rkt | 5 +- .../missed-optimizations/multi-file2.rkt | 9 +- .../multiple-irritants.rkt | 5 +- .../missed-optimizations/nested-same-kind.rkt | 41 ++-- .../optimizer/missed-optimizations/pair.rkt | 67 ++++--- .../missed-optimizations/precision-loss.rkt | 1 - .../real-in-float-expr.rkt | 15 +- .../missed-optimizations/unary-float.rkt | 13 +- .../unexpected-complex.rkt | 9 +- .../tests/typed-racket/optimizer/run.rkt | 3 +- .../typed-racket/optimizer/tests/add1.rkt | 9 +- .../optimizer/tests/annotations.rkt | 9 +- .../optimizer/tests/apply-plus.rkt | 5 +- .../optimizer/tests/begin-float.rkt | 5 +- .../optimizer/tests/binary-fixnum.rkt | 5 +- .../optimizer/tests/binary-nonzero-fixnum.rkt | 5 +- .../optimizer/tests/bounds-check.rkt | 29 ++- .../typed-racket/optimizer/tests/box.rkt | 7 +- .../optimizer/tests/case-arrow.rkt | 17 +- .../tests/case-lambda-dead-branch.rkt | 5 +- .../optimizer/tests/complex-exp.rkt | 9 +- .../optimizer/tests/cross-module-struct.rkt | 1 - .../optimizer/tests/cross-module-struct2.rkt | 3 +- .../optimizer/tests/dead-else.rkt | 13 +- .../optimizer/tests/dead-inf-comp.rkt | 121 ++++++------ .../optimizer/tests/dead-substructs.rkt | 5 +- .../optimizer/tests/dead-then.rkt | 13 +- .../optimizer/tests/define-begin-float.rkt | 7 +- .../optimizer/tests/define-call-float.rkt | 3 +- .../optimizer/tests/define-float.rkt | 3 +- .../optimizer/tests/define-pair.rkt | 3 +- .../optimizer/tests/derived-pair.rkt | 17 +- .../optimizer/tests/derived-pair2.rkt | 49 +++-- .../optimizer/tests/derived-pair3.rkt | 129 +++++++------ .../optimizer/tests/different-langs.rkt | 3 +- .../optimizer/tests/double-float.rkt | 3 +- .../optimizer/tests/drop-pure-pred.rkt | 1 - .../optimizer/tests/exact-inexact.rkt | 17 +- .../typed-racket/optimizer/tests/expt.rkt | 5 +- .../optimizer/tests/false-huh-dead-code.rkt | 5 +- .../optimizer/tests/fixnum-bounded-expr.rkt | 51 +++-- .../optimizer/tests/fixnum-comparison.rkt | 7 +- .../optimizer/tests/float-comp.rkt | 3 +- .../tests/float-complex-conjugate-top.rkt | 9 +- .../tests/float-complex-conjugate.rkt | 11 +- .../optimizer/tests/float-complex-div.rkt | 9 +- .../optimizer/tests/float-complex-fixnum.rkt | 15 +- .../tests/float-complex-float-div.rkt | 53 +++--- .../tests/float-complex-float-mul.rkt | 39 ++-- .../tests/float-complex-float-small.rkt | 37 ++-- .../optimizer/tests/float-complex-float.rkt | 27 ++- .../optimizer/tests/float-complex-i.rkt | 11 +- .../optimizer/tests/float-complex-integer.rkt | 7 +- .../optimizer/tests/float-complex-mult.rkt | 9 +- .../optimizer/tests/float-complex-parts.rkt | 9 +- .../optimizer/tests/float-complex-parts2.rkt | 57 +++--- .../optimizer/tests/float-complex-parts3.rkt | 47 +++-- .../optimizer/tests/float-complex-sin.rkt | 23 ++- .../optimizer/tests/float-complex.rkt | 9 +- .../optimizer/tests/float-fun.rkt | 3 +- .../optimizer/tests/float-promotion.rkt | 1 - .../optimizer/tests/float-real.rkt | 17 +- .../optimizer/tests/flvector-length.rkt | 3 +- .../typed-racket/optimizer/tests/fx-fl.rkt | 3 +- .../typed-racket/optimizer/tests/in-bytes.rkt | 7 +- .../typed-racket/optimizer/tests/in-list.rkt | 7 +- .../typed-racket/optimizer/tests/in-range.rkt | 7 +- .../optimizer/tests/in-string.rkt | 7 +- .../optimizer/tests/in-vector.rkt | 7 +- .../tests/invalid-binary-nonzero-fixnum.rkt | 3 +- .../optimizer/tests/invalid-derived-pair.rkt | 5 +- .../optimizer/tests/invalid-exact-inexact.rkt | 3 +- .../optimizer/tests/invalid-float-comp.rkt | 1 - .../tests/invalid-float-promotion.rkt | 9 +- .../optimizer/tests/invalid-fxquotient.rkt | 3 +- .../tests/invalid-inexact-complex-parts.rkt | 1 - .../optimizer/tests/invalid-log-complex.rkt | 3 +- .../tests/invalid-make-flrectangular.rkt | 1 - .../optimizer/tests/invalid-make-polar.rkt | 1 - .../optimizer/tests/invalid-mpair.rkt | 3 +- .../optimizer/tests/invalid-sqrt.rkt | 3 +- .../optimizer/tests/invalid-unboxed-let.rkt | 41 ++-- .../optimizer/tests/invalid-unboxed-let2.rkt | 19 +- .../optimizer/tests/invalid-vector-ref.rkt | 3 +- .../optimizer/tests/invalid-vector-set.rkt | 3 +- .../optimizer/tests/known-length-lists.rkt | 1 - .../optimizer/tests/known-vector-length.rkt | 5 +- .../optimizer/tests/let-float.rkt | 5 +- .../typed-racket/optimizer/tests/let-rhs.rkt | 3 +- .../typed-racket/optimizer/tests/list.rkt | 27 ++- .../optimizer/tests/literal-int.rkt | 3 +- .../optimizer/tests/magnitude.rkt | 5 +- .../optimizer/tests/make-flrectangular.rkt | 5 +- .../optimizer/tests/make-polar.rkt | 25 ++- .../optimizer/tests/maybe-exact-complex.rkt | 7 +- .../optimizer/tests/module-path.rkt | 3 +- .../typed-racket/optimizer/tests/mpair.rkt | 15 +- .../optimizer/tests/multi-flcomp.rkt | 13 +- .../optimizer/tests/n-ary-float-complex.rkt | 11 +- .../optimizer/tests/n-ary-float.rkt | 3 +- .../optimizer/tests/nested-float-complex.rkt | 11 +- .../optimizer/tests/nested-float.rkt | 5 +- .../optimizer/tests/nested-float2.rkt | 5 +- .../optimizer/tests/nested-let-loop.rkt | 65 ++++--- .../optimizer/tests/nested-pair1.rkt | 5 +- .../optimizer/tests/nested-pair2.rkt | 5 +- .../optimizer/tests/nested-unboxed-let.rkt | 35 ++-- .../optimizer/tests/one-arg-arith.rkt | 31 ++-- .../typed-racket/optimizer/tests/pair-fun.rkt | 3 +- .../tests/pair-known-length-list.rkt | 19 +- .../typed-racket/optimizer/tests/pr13468.rkt | 1 - .../typed-racket/optimizer/tests/pr13788.rkt | 3 +- .../typed-racket/optimizer/tests/quote.rkt | 1 - .../optimizer/tests/rational-literal.rkt | 3 +- .../optimizer/tests/real-part-loop.rkt | 1 - .../optimizer/tests/silent-dead-branch.rkt | 3 +- .../optimizer/tests/simple-float.rkt | 3 +- .../optimizer/tests/simple-pair.rkt | 3 +- .../optimizer/tests/sqrt-segfault.rkt | 7 +- .../typed-racket/optimizer/tests/sqrt.rkt | 3 +- .../optimizer/tests/string-length.rkt | 5 +- .../typed-racket/optimizer/tests/structs.rkt | 7 +- .../optimizer/tests/ternary-equality.rkt | 3 +- .../optimizer/tests/unary-fixnum-nested.rkt | 7 +- .../optimizer/tests/unary-fixnum.rkt | 5 +- .../optimizer/tests/unary-float.rkt | 3 +- .../optimizer/tests/unboxed-exp.rkt | 27 ++- .../optimizer/tests/unboxed-for.rkt | 69 ++++--- .../tests/unboxed-let-functions1.rkt | 27 ++- .../tests/unboxed-let-functions2.rkt | 37 ++-- .../tests/unboxed-let-functions3.rkt | 27 ++- .../tests/unboxed-let-functions4.rkt | 27 ++- .../tests/unboxed-let-functions5.rkt | 7 +- .../tests/unboxed-let-functions6.rkt | 37 ++-- .../tests/unboxed-let-functions7.rkt | 35 ++-- .../tests/unboxed-let-functions8.rkt | 7 +- .../optimizer/tests/unboxed-let.rkt | 45 +++-- .../optimizer/tests/unboxed-let2.rkt | 33 ++-- .../optimizer/tests/unboxed-let3.rkt | 23 ++- .../tests/unboxed-letrec-syntaxes+values.rkt | 21 +-- .../optimizer/tests/unboxed-letrec.rkt | 29 ++- .../tests/unboxed-make-rectangular.rkt | 33 ++-- .../optimizer/tests/vector-bounds-check.rkt | 5 +- .../optimizer/tests/vector-chaperone1.rkt | 1 - .../optimizer/tests/vector-chaperone2.rkt | 3 +- .../optimizer/tests/vector-length-nested.rkt | 5 +- .../optimizer/tests/vector-length.rkt | 5 +- .../optimizer/tests/vector-ref-set-ref.rkt | 7 +- .../optimizer/tests/vector-ref.rkt | 3 +- .../optimizer/tests/vector-ref2.rkt | 3 +- .../optimizer/tests/vector-set-quote.rkt | 3 +- .../optimizer/tests/vector-set.rkt | 3 +- .../optimizer/tests/vector-set2.rkt | 3 +- .../optimizer/tests/vector-sum.rkt | 175 +++++++++--------- .../optimizer/tests/with-type.rkt | 3 +- .../typed-racket/optimizer/tests/zero.rkt | 7 +- .../typed-racket/optimizer/transform.rkt | 3 +- .../tests/typed-racket/places.rkt | 10 +- 161 files changed, 1130 insertions(+), 1286 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/logging.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/logging.rkt index 19d0892d..18516a8e 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/logging.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/logging.rkt @@ -2,10 +2,11 @@ (require racket/set racket/string racket/match racket/list unstable/syntax unstable/logging + data/queue "../utils/tc-utils.rkt") (provide log-optimization log-missed-optimization log-optimization-info - with-tr-logging-to-port + with-tr-logging-to-queue (struct-out log-entry) (struct-out opt-log-entry) (struct-out missed-opt-log-entry) @@ -127,12 +128,10 @@ ;;-------------------------------------------------------------------- -(define (with-tr-logging-to-port port thunk) +(define (with-tr-logging-to-queue queue thunk) (with-intercepted-logging (lambda (l) - (displayln ; print log message - (string-trim (vector-ref l 1) "TR-optimizer: ") ; remove logger prefix - port) - (flush-output port)) + (enqueue! queue + (string-trim (vector-ref l 1) "TR-optimizer: "))) ; remove logger prefix thunk 'debug 'TR-optimizer)) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/missed-optimizations/all-real.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/missed-optimizations/all-real.rkt index 8c4c06fc..4a61b271 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/missed-optimizations/all-real.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/missed-optimizations/all-real.rkt @@ -1,10 +1,9 @@ #;#; #<