Profiling results ----------------- Total cpu time observed: 289222ms (out of 292300ms) Number of samples taken: 832 (once every 348ms) (Hiding functions with self<1.0% and local<2.0%: 7 of 293 hidden) =========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================================== ??? [125] 100.0% [1] 289222(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [12] 100.0% ------------------------------------------------------------------------------------------- ??? [125] 100.0% [2] 131628(45.5%) 0(0.0%) run-improve43 .../js-tweaks/src/mainloop.rkt:339:0 for-loop [13] 89.0% simplify! [32] 8.6% setup-prog!34 [18] 2.4% ------------------------------------------------------------------------------------------- ??? [125] 100.0% [3] 13256(4.6%) 0(0.0%) get-final-combination ...ks/src/mainloop.rkt:360:0 infer-splitpoints [14] 100.0% ------------------------------------------------------------------------------------------- matcher [102] 100.0% [4] 11920(4.1%) 0(0.0%) ??? ...erbie/js-tweaks/src/core/matcher.rkt:130:11 for-loop [15] 97.2% for-loop [21] 2.2% foldl [192] 0.6% ------------------------------------------------------------------------------------------- loop [28] 12.2% for-loop [199] 87.8% [5] 5392(1.9%) 0(0.0%) syntax-e (unknown source) syntax-e/no-taint [16] 100.0% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [6] 5260(1.8%) 0(0.0%) approximate9 ...js-tweaks/src/core/taylor.rkt:12:0 loop [17] 81.7% for-loop [23] 12.6% taylor [29] 5.7% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [7] 3662(1.3%) 0(0.0%) ??? .../herbie/js-tweaks/src/core/taylor.rkt:45:15 hash-ref! [213] 91.2% ??? [24] 8.8% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [8] 2342(0.8%) 0(0.0%) ??? .../herbie/js-tweaks/src/core/taylor.rkt:68:15 ??? [198] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [9] 1708(0.6%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/taylor.rkt:291:26 for-loop [19] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [10] 1350(0.5%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/taylor.rkt:301:23 for-loop [20] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [11] 686(0.2%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/taylor.rkt:423:23 for-loop [22] 100.0% ------------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [12] 289222(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [125] 100.0% ------------------------------------------------------------------------------------------- run-improve43 [2] 100.0% [13] 117104(40.5%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:354:4 run-iter! [26] 100.0% ------------------------------------------------------------------------------------------- get-final-combination [3] 100.0% [14] 13256(4.6%) 0(0.0%) infer-splitpoints ...aks/src/core/regimes.rkt:34:0 for-loop [27] 95.5% loop [86] 2.3% exprs-to-branch-on [30] 2.3% ------------------------------------------------------------------------------------------- ??? [4] 100.0% [15] 11920(4.1%) 0(0.0%) for-loop .../js-tweaks/src/core/matcher.rkt:132:15 matcher [102] 100.0% ------------------------------------------------------------------------------------------- expand-id-application-form17 [39] 25.9% syntax-e [5] 74.1% [16] 7280(2.5%) 0(0.0%) syntax-e/no-taint (unknown source) loop [28] 100.0% ------------------------------------------------------------------------------------------- approximate9 [6] 100.0% [17] 4296(1.5%) 0(0.0%) loop .../herbie/js-tweaks/src/core/taylor.rkt:87:4 hash-ref! [213] 54.5% ??? [198] 45.5% ------------------------------------------------------------------------------------------- run-improve43 [2] 100.0% [18] 3200(1.1%) 0(0.0%) setup-prog!34 ...e/js-tweaks/src/mainloop.rkt:67:0 prepare-points [25] 89.6% ??? [46] 10.4% ------------------------------------------------------------------------------------------- ??? [9] 100.0% [19] 1708(0.6%) 0(0.0%) for-loop ...e/js-tweaks/src/core/taylor.rkt:291:52 hash-ref! [213] 100.0% ------------------------------------------------------------------------------------------- ??? [10] 100.0% [20] 1350(0.5%) 0(0.0%) for-loop ...e/js-tweaks/src/core/taylor.rkt:304:27 hash-ref! [213] 100.0% ------------------------------------------------------------------------------------------- ??? [4] 100.0% [21] 1062(0.4%) 0(0.0%) for-loop ...e/js-tweaks/src/core/matcher.rkt:106:4 foldl [192] 100.0% ------------------------------------------------------------------------------------------- ??? [11] 100.0% [22] 686(0.2%) 0(0.0%) for-loop ...e/js-tweaks/src/core/taylor.rkt:426:30 hash-ref! [213] 100.0% ------------------------------------------------------------------------------------------- approximate9 [6] 100.0% [23] 662(0.2%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/taylor.rkt:30:18 taylor [29] 100.0% ------------------------------------------------------------------------------------------- ??? [7] 100.0% [24] 324(0.1%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/taylor.rkt:294:19 hash-ref! [213] 100.0% ------------------------------------------------------------------------------------------- setup-prog!34 [18] 2.4% ??? [125] 97.6% [25] 120906(41.8%) 0(0.0%) prepare-points ...e/js-tweaks/src/points.rkt:166:0 loop [31] 100.0% ------------------------------------------------------------------------------------------- for-loop [13] 100.0% [26] 117104(40.5%) 0(0.0%) run-iter! ...rbie/js-tweaks/src/mainloop.rkt:320:0 simplify! [32] 62.8% finalize-iter! [33] 15.3% gen-rewrites! [35] 10.2% gen-series! [36] 4.5% localize! [37] 4.3% choose-best-alt! [38] 3.0% ------------------------------------------------------------------------------------------- infer-splitpoints [14] 100.0% [27] 12654(4.4%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/regimes.rkt:46:6 option-on-expr [34] 100.0% ------------------------------------------------------------------------------------------- syntax->list [256] 1.1% apply-transformer52 [195] 1.4% expand-capturing-lifts [164] 1.5% temp74_0 [140] 1.5% gf [215] 1.7% eval-prog [100] 1.8% loop [28] 1.9% lambda-clause-expander [175] 8.4% loop [169] 8.9% for-loop [199] 19.2% syntax-e/no-taint [16] 52.7% [28] 11194(3.9%) 1666(0.6%) loop (unknown source) gf [215] 54.0% expand-id-application-form17 [39] 16.5% dispatch-transformer41 [182] 7.1% expand-capturing-lifts [164] 3.3% expand-identifier [40] 2.7% syntax-e [5] 2.4% loop [28] 1.9% core-form-sym [42] 1.4% ------------------------------------------------------------------------------------------- approximate9 [6] 18.9% hash-ref! [213] 19.8% taylor [29] 29.2% for-loop [23] 32.0% [29] 1598(0.6%) 0(0.0%) taylor ...rbie/js-tweaks/src/core/taylor.rkt:170:0 loop [41] 38.7% taylor [29] 29.2% loop [172] 22.7% debug-print [56] 9.4% ------------------------------------------------------------------------------------------- infer-splitpoints [14] 100.0% [30] 300(0.1%) 0(0.0%) exprs-to-branch-on ...ks/src/core/regimes.rkt:58:0 all-critical-subexpressions [43] 100.0% ------------------------------------------------------------------------------------------- prepare-points [25] 100.0% [31] 120906(41.8%) 0(0.0%) loop ...lies/herbie/js-tweaks/src/points.rkt:143:4 loop [44] 98.0% ??? [52] 1.8% andmap [57] 0.3% ------------------------------------------------------------------------------------------- run-improve43 [2] 13.4% run-iter! [26] 86.6% [32] 84818(29.3%) 0(0.0%) simplify! ...rbie/js-tweaks/src/mainloop.rkt:217:0 ??? [45] 98.9% for-loop [55] 1.1% ------------------------------------------------------------------------------------------- run-iter! [26] 100.0% [33] 17904(6.2%) 0(0.0%) finalize-iter! ...js-tweaks/src/mainloop.rkt:271:0 ??? [46] 100.0% ------------------------------------------------------------------------------------------- for-loop [27] 100.0% [34] 12654(4.4%) 0(0.0%) option-on-expr ...weaks/src/core/regimes.rkt:123:0 for-loop [48] 75.7% sort-context-on-expr [53] 14.5% err-lsts->split-indices [54] 7.5% debug-print [56] 2.4% ------------------------------------------------------------------------------------------- run-iter! [26] 100.0% [35] 11920(4.1%) 0(0.0%) gen-rewrites! .../js-tweaks/src/mainloop.rkt:176:0 for-loop [47] 100.0% ------------------------------------------------------------------------------------------- run-iter! [26] 100.0% [36] 5260(1.8%) 0(0.0%) gen-series! ...ie/js-tweaks/src/mainloop.rkt:153:0 for-loop [49] 100.0% ------------------------------------------------------------------------------------------- run-iter! [26] 100.0% [37] 5064(1.8%) 0(0.0%) localize! ...rbie/js-tweaks/src/mainloop.rkt:120:0 localize-error [50] 93.6% errors-score [142] 6.4% ------------------------------------------------------------------------------------------- run-iter! [26] 100.0% [38] 3462(1.2%) 0(0.0%) choose-best-alt! ...-tweaks/src/mainloop.rkt:111:0 ??? [46] 100.0% ------------------------------------------------------------------------------------------- loop [28] 100.0% [39] 2840(1.0%) 0(0.0%) expand-id-application-form17 (unknown source) syntax-e/no-taint [16] 66.5% resolve+shift28 [51] 33.5% ------------------------------------------------------------------------------------------- loop [28] 23.9% for-loop [199] 76.1% [40] 1262(0.4%) 300(0.1%) expand-identifier (unknown source) resolve+shift28 [51] 76.2% ------------------------------------------------------------------------------------------- taylor [29] 100.0% [41] 936(0.3%) 0(0.0%) loop ...herbie/js-tweaks/src/core/taylor.rkt:268:2 hash-ref! [213] 100.0% ------------------------------------------------------------------------------------------- loop [28] 100.0% [42] 324(0.1%) 0(0.0%) core-form-sym (unknown source) resolve+shift28 [51] 100.0% ------------------------------------------------------------------------------------------- exprs-to-branch-on [30] 100.0% [43] 300(0.1%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:75:0 for-loop [58] 100.0% ------------------------------------------------------------------------------------------- loop [31] 100.0% [44] 118456(41.0%) 2292(0.8%) loop ...lies/herbie/js-tweaks/src/points.rkt:102:2 ??? [137] 97.5% ??? [46] 0.6% ------------------------------------------------------------------------------------------- simplify! [32] 100.0% [45] 83890(29.0%) 298(0.1%) ??? ...herbie/js-tweaks/src/core/simplify.rkt:26:0 for-loop [59] 80.6% loop [61] 17.1% one-iter [72] 1.9% ------------------------------------------------------------------------------------------- substitute-e [121] 1.1% free-variables [71] 1.1% inductor [122] 1.1% setup-prog!34 [18] 1.2% loop [44] 2.4% match-e [115] 7.2% variable? [130] 8.0% choose-best-alt! [38] 12.6% finalize-iter! [33] 65.3% [46] 27418(9.5%) 5388(1.9%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [60] 64.1% ??? [65] 12.6% atab-add-altns [69] 1.2% ??? [146] 1.2% ------------------------------------------------------------------------------------------- gen-rewrites! [35] 100.0% [47] 11920(4.1%) 0(0.0%) for-loop ...rbie/js-tweaks/src/mainloop.rkt:184:11 rewrite-expression-head20 [62] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [34] 100.0% [48] 9582(3.3%) 0(0.0%) for-loop ...e/js-tweaks/src/core/regimes.rkt:131:4 errors [83] 100.0% ------------------------------------------------------------------------------------------- gen-series! [36] 100.0% [49] 5260(1.8%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:160:7 taylor-alt [63] 100.0% ------------------------------------------------------------------------------------------- localize! [37] 100.0% [50] 4740(1.6%) 0(0.0%) localize-error ...weaks/src/core/localize.rkt:57:0 hash-ref! [213] 53.2% ??? [64] 46.8% ------------------------------------------------------------------------------------------- core-form-sym [42] 12.6% expand-implicit [226] 13.0% expand-id-application-form17 [39] 37.0% expand-identifier [40] 37.4% [51] 2572(0.9%) 334(0.1%) resolve+shift28 (unknown source) fallback-loop [66] 87.0% ------------------------------------------------------------------------------------------- loop [31] 100.0% [52] 2118(0.7%) 0(0.0%) ??? ...tlies/herbie/js-tweaks/src/points.rkt:127:2 loop [172] 69.6% ??? [198] 30.4% ------------------------------------------------------------------------------------------- option-on-expr [34] 100.0% [53] 1830(0.6%) 0(0.0%) sort-context-on-expr ...src/core/regimes.rkt:118:0 ??? [64] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [34] 100.0% [54] 944(0.3%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:254:0 loop [67] 100.0% ------------------------------------------------------------------------------------------- simplify! [32] 100.0% [55] 928(0.3%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:255:6 for-loop [68] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [34] 49.8% taylor [29] 50.2% [56] 598(0.2%) 298(0.1%) debug-print ...erbie/js-tweaks/src/debug.rkt:110:0 ??? [70] 50.2% ------------------------------------------------------------------------------------------- loop [31] 100.0% [57] 332(0.1%) 0(0.0%) andmap ...0/collects/racket/private/map.rkt:102:13 ordinary-value? [190] 100.0% ------------------------------------------------------------------------------------------- all-critical-subexpressions [43] 100.0% [58] 300(0.1%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/regimes.rkt:82:2 free-variables [71] 100.0% ------------------------------------------------------------------------------------------- ??? [45] 100.0% [59] 67644(23.4%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:33:2 one-iter [72] 100.0% ------------------------------------------------------------------------------------------- ??? [46] 100.0% [60] 17570(6.1%) 0(0.0%) for-loop .../js-tweaks/src/core/alt-table.rkt:56:2 atab-add-altn [75] 58.9% errors [83] 35.7% loop [79] 3.5% override-at-pnts [92] 1.9% ------------------------------------------------------------------------------------------- ??? [45] 100.0% [61] 14386(5.0%) 300(0.1%) loop ...rbie/js-tweaks/src/core/simplify.rkt:105:2 for-loop [73] 97.9% ------------------------------------------------------------------------------------------- for-loop [47] 100.0% [62] 11920(4.1%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [74] 100.0% ------------------------------------------------------------------------------------------- for-loop [49] 100.0% [63] 5260(1.8%) 0(0.0%) taylor-alt ...bie/js-tweaks/src/mainloop.rkt:139:0 for-loop [76] 100.0% ------------------------------------------------------------------------------------------- sort-context-on-expr [53] 45.2% localize-error [50] 54.8% [64] 4048(1.4%) 0(0.0%) ??? ...-7.0/collects/racket/private/sort.rkt:369:3 generic-sort/key [77] 92.6% loop [109] 7.4% ------------------------------------------------------------------------------------------- ??? [46] 100.0% [65] 3462(1.2%) 0(0.0%) ??? ...erbie/js-tweaks/src/core/alt-table.rkt:59:0 ??? [198] 100.0% ------------------------------------------------------------------------------------------- resolve+shift28 [51] 100.0% [66] 2238(0.8%) 660(0.2%) fallback-loop (unknown source) for-loop [199] 70.5% ------------------------------------------------------------------------------------------- err-lsts->split-indices [54] 100.0% [67] 944(0.3%) 0(0.0%) loop ...erbie/js-tweaks/src/core/regimes.rkt:305:4 for-loop [78] 100.0% ------------------------------------------------------------------------------------------- for-loop [55] 100.0% [68] 928(0.3%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:256:8 expression-cost [103] 100.0% ------------------------------------------------------------------------------------------- ??? [46] 100.0% [69] 334(0.1%) 0(0.0%) atab-add-altns ...eaks/src/core/alt-table.rkt:50:0 atab-add-altn [75] 100.0% ------------------------------------------------------------------------------------------- debug-print [56] 100.0% [70] 300(0.1%) 0(0.0%) ??? .../contract/private/arrow-val-first.rkt:428:3 mk-call [80] 100.0% ------------------------------------------------------------------------------------------- for-loop [58] 9.1% append-map [81] 90.9% [71] 300(0.1%) 0(0.0%) free-variables .../js-tweaks/src/programs.rkt:57:0 append-map [81] 90.9% ??? [46] 9.1% ------------------------------------------------------------------------------------------- ??? [45] 2.3% for-loop [59] 97.7% [72] 69206(23.9%) 0(0.0%) one-iter ...e/js-tweaks/src/core/simplify.rkt:65:0 find-matches [82] 51.4% for-loop [84] 43.7% for-loop [87] 4.9% ------------------------------------------------------------------------------------------- loop [61] 100.0% [73] 14086(4.9%) 302(0.1%) for-loop .../js-tweaks/src/core/simplify.rkt:111:4 loop [86] 35.5% argmin [88] 24.0% for-loop [91] 13.6% expression-cost [103] 13.3% for-loop [105] 11.5% ------------------------------------------------------------------------------------------- rewrite-expression-head20 [62] 15.1% matcher [102] 84.9% [74] 11920(4.1%) 1022(0.4%) rewriter ...ie/js-tweaks/src/core/matcher.rkt:90:2 for-loop [85] 95.0% *rules* [90] 3.9% ------------------------------------------------------------------------------------------- atab-add-altns [69] 3.1% for-loop [60] 96.9% [75] 10682(3.7%) 0(0.0%) atab-add-altn ...eaks/src/core/alt-table.rkt:202:0 errors [83] 85.8% override-at-pnts [92] 5.7% append-at-pnts [94] 5.6% loop [95] 2.8% ------------------------------------------------------------------------------------------- taylor-alt [63] 100.0% [76] 5260(1.8%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:145:6 ??? [198] 100.0% ------------------------------------------------------------------------------------------- ??? [64] 100.0% [77] 3750(1.3%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:156:2 copying-mergesort [89] 82.6% jloop [107] 17.4% ------------------------------------------------------------------------------------------- loop [67] 100.0% [78] 944(0.3%) 0(0.0%) for-loop ...e/js-tweaks/src/core/regimes.rkt:270:4 for-loop [93] 100.0% ------------------------------------------------------------------------------------------- for-loop [60] 100.0% [79] 610(0.2%) 0(0.0%) loop ...bie/js-tweaks/src/core/alt-table.rkt:176:2 map [165] 50.8% argmax [97] 49.2% ------------------------------------------------------------------------------------------- ??? [70] 100.0% [80] 300(0.1%) 0(0.0%) mk-call ...tract/private/arrow-val-first.rkt:431:5 loop [96] 100.0% ------------------------------------------------------------------------------------------- free-variables [71] 100.0% [81] 300(0.1%) 0(0.0%) append-map ...t-7.0/collects/racket/list.rkt:586:2 free-variables [71] 100.0% ------------------------------------------------------------------------------------------- one-iter [72] 100.0% [82] 35566(12.3%) 0(0.0%) find-matches ...-tweaks/src/core/simplify.rkt:55:0 for-loop [98] 100.0% ------------------------------------------------------------------------------------------- ??? [125] 5.3% ??? [254] 11.4% for-loop [60] 20.6% atab-add-altn [75] 30.1% for-loop [48] 31.5% [83] 30418(10.5%) 0(0.0%) errors ...es/herbie/js-tweaks/src/points.rkt:223:0 for-loop [101] 57.5% eval-prog [100] 42.5% ------------------------------------------------------------------------------------------- one-iter [72] 100.0% [84] 30236(10.5%) 322(0.1%) for-loop ...e/js-tweaks/src/core/simplify.rkt:67:2 for-loop [99] 98.9% ------------------------------------------------------------------------------------------- rewriter [74] 100.0% [85] 11920(4.1%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/matcher.rkt:92:4 matcher [102] 93.4% for-loop [104] 6.6% ------------------------------------------------------------------------------------------- infer-splitpoints [14] 5.1% baseline-error [147] 10.7% for-loop [73] 84.2% [86] 5944(2.1%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [103] 48.2% for-loop [105] 36.0% ??? [112] 10.7% errors-score [142] 5.1% ------------------------------------------------------------------------------------------- one-iter [72] 100.0% [87] 3404(1.2%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:72:2 set-precompute! [106] 100.0% ------------------------------------------------------------------------------------------- for-loop [73] 100.0% [88] 3380(1.2%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 expression-cost [103] 64.5% for-loop [105] 35.5% ------------------------------------------------------------------------------------------- copying-mergesort [89] 33.6% generic-sort/key [77] 66.4% [89] 3098(1.1%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:129:8 jloop [107] 48.4% copying-mergesort [89] 33.6% loop [109] 18.0% ------------------------------------------------------------------------------------------- rewriter [74] 100.0% [90] 3002(1.0%) 334(0.1%) *rules* ...ie/js-tweaks/src/syntax/rules.rkt:666:0 for-loop [108] 88.9% ------------------------------------------------------------------------------------------- for-loop [73] 100.0% [91] 1918(0.7%) 962(0.3%) for-loop ...js-tweaks/src/core/simplify.rkt:115:16 for-loop [110] 49.8% ------------------------------------------------------------------------------------------- for-loop [60] 35.4% atab-add-altn [75] 64.6% [92] 950(0.3%) 0(0.0%) override-at-pnts ...s/src/core/alt-table.rkt:138:0 for-loop [111] 100.0% ------------------------------------------------------------------------------------------- for-loop [78] 100.0% [93] 944(0.3%) 944(0.3%) for-loop ...e/js-tweaks/src/core/regimes.rkt:274:8 ------------------------------------------------------------------------------------------- atab-add-altn [75] 100.0% [94] 600(0.2%) 0(0.0%) append-at-pnts ...aks/src/core/alt-table.rkt:146:0 loop [113] 50.0% loop [172] 50.0% ------------------------------------------------------------------------------------------- atab-add-altn [75] 100.0% [95] 302(0.1%) 302(0.1%) loop ...-7.0/collects/racket/private/hash.rkt:20:4 ------------------------------------------------------------------------------------------- mk-call [80] 100.0% [96] 300(0.1%) 0(0.0%) loop ...contract/private/arrow-val-first.rkt:435:8 ??? [114] 100.0% ------------------------------------------------------------------------------------------- loop [79] 100.0% [97] 300(0.1%) 0(0.0%) argmax ...acket-7.0/collects/racket/list.rkt:766:0 expression-cost [103] 100.0% ------------------------------------------------------------------------------------------- for-loop [98] 49.2% find-matches [82] 50.8% [98] 35566(12.3%) 1234(0.4%) for-loop ...e/js-tweaks/src/core/simplify.rkt:57:8 for-loop [98] 49.2% match-e [115] 47.8% ??? [158] 0.4% ------------------------------------------------------------------------------------------- for-loop [84] 100.0% [99] 29914(10.3%) 300(0.1%) for-loop ...e/js-tweaks/src/core/simplify.rkt:70:4 merge-egraph-nodes! [127] 62.3% dedup-children! [154] 30.4% substitute-e [121] 5.2% mk-enode! [148] 1.0% ------------------------------------------------------------------------------------------- loop [172] 6.5% eval-const-expr [267] 28.1% errors [83] 65.4% [100] 19742(6.8%) 640(0.2%) eval-prog ...erbie/js-tweaks/src/programs.rkt:83:0 temp68_2 [116] 86.8% inductor [122] 4.9% loop [28] 3.3% hash-ref! [213] 1.7% ------------------------------------------------------------------------------------------- errors [83] 100.0% [101] 17504(6.1%) 630(0.2%) for-loop .../herbie/js-tweaks/src/points.rkt:225:2 ??? [125] 96.4% ------------------------------------------------------------------------------------------- for-loop [15] 49.0% for-loop [85] 51.0% [102] 11920(4.1%) 300(0.1%) matcher ...ie/js-tweaks/src/core/matcher.rkt:118:2 ??? [4] 50.7% rewriter [74] 49.0% constant? [273] 0.1% ------------------------------------------------------------------------------------------- argmax [97] 3.7% for-loop [68] 11.4% for-loop [73] 22.9% argmin [88] 26.8% loop [86] 35.2% [103] 8140(2.8%) 0(0.0%) expression-cost ...s-tweaks/src/programs.rkt:157:0 compile [117] 100.0% ------------------------------------------------------------------------------------------- for-loop [85] 100.0% [104] 5868(2.0%) 660(0.2%) for-loop ...ie/js-tweaks/src/core/matcher.rkt:99:8 fix-up-variables [118] 88.8% ------------------------------------------------------------------------------------------- argmin [88] 24.2% for-loop [73] 32.6% loop [86] 43.2% [105] 4954(1.7%) 942(0.3%) for-loop ...erbie/js-tweaks/src/programs.rkt:158:2 table-ref [129] 81.0% ------------------------------------------------------------------------------------------- for-loop [87] 100.0% [106] 3404(1.2%) 0(0.0%) set-precompute! ...eaks/src/core/simplify.rkt:79:0 for-loop [119] 100.0% ------------------------------------------------------------------------------------------- generic-sort/key [77] 22.9% copying-mergesort [89] 77.1% [107] 2842(1.0%) 0(0.0%) jloop ...0/collects/racket/private/sort.rkt:120:23 errors-score [142] 67.6% ??? [137] 21.0% ??? [198] 11.4% ------------------------------------------------------------------------------------------- *rules* [90] 100.0% [108] 2668(0.9%) 1356(0.5%) for-loop ...s/herbie/js-tweaks/src/common.rkt:70:9 ormap [123] 36.0% flag-set? [134] 13.2% ------------------------------------------------------------------------------------------- ??? [64] 24.7% copying-mergesort [89] 75.3% [109] 1206(0.4%) 600(0.2%) loop ...7.0/collects/racket/private/sort.rkt:96:12 ??? [137] 25.5% errors-score [142] 24.7% ------------------------------------------------------------------------------------------- for-loop [91] 100.0% [110] 956(0.3%) 956(0.3%) for-loop ...js-tweaks/src/core/simplify.rkt:119:23 ------------------------------------------------------------------------------------------- override-at-pnts [92] 100.0% [111] 950(0.3%) 950(0.3%) for-loop ...s-tweaks/src/core/alt-table.rkt:139:22 ------------------------------------------------------------------------------------------- loop [86] 100.0% [112] 638(0.2%) 0(0.0%) ??? ...lies/herbie/js-tweaks/src/points.rkt:212:27 loop [156] 52.7% eval-errors [120] 47.3% ------------------------------------------------------------------------------------------- append-at-pnts [94] 100.0% [113] 300(0.1%) 300(0.1%) loop ...bie/js-tweaks/src/core/alt-table.rkt:101:2 ------------------------------------------------------------------------------------------- loop [96] 100.0% [114] 300(0.1%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:519:4 ??? [124] 100.0% ------------------------------------------------------------------------------------------- for-loop [138] 32.0% for-loop [98] 68.0% [115] 34030(11.8%) 3858(1.3%) match-e ...rbie/js-tweaks/src/core/ematch.rkt:39:0 for-loop [126] 81.4% constant? [273] 3.6% variable? [130] 3.5% ??? [46] 1.9% make-sequence [170] 0.9% ------------------------------------------------------------------------------------------- eval-prog [100] 100.0% [116] 17136(5.9%) 0(0.0%) temp68_2 (unknown source) compile16 [128] 100.0% ------------------------------------------------------------------------------------------- expression-cost [103] 100.0% [117] 8140(2.8%) 300(0.1%) compile ...herbie/js-tweaks/src/programs.rkt:134:0 hash-ref! [213] 96.3% ------------------------------------------------------------------------------------------- for-loop [104] 100.0% [118] 5208(1.8%) 360(0.1%) fix-up-variables ...aks/src/core/matcher.rkt:111:2 for-loop [131] 52.9% pattern-match [269] 27.8% pattern-substitute [135] 12.4% ------------------------------------------------------------------------------------------- set-precompute! [106] 100.0% [119] 3404(1.2%) 334(0.1%) for-loop ...e/js-tweaks/src/core/simplify.rkt:81:2 merge-egraph-nodes! [127] 53.4% ??? [125] 36.8% ------------------------------------------------------------------------------------------- ??? [112] 15.4% ??? [125] 84.6% [120] 1964(0.7%) 0(0.0%) eval-errors ...rbie/js-tweaks/src/points.rkt:198:0 for-loop [132] 100.0% ------------------------------------------------------------------------------------------- for-loop [133] 22.7% for-loop [99] 77.3% [121] 1566(0.5%) 310(0.1%) substitute-e ...js-tweaks/src/core/ematch.rkt:64:0 for-loop [133] 83.7% ??? [46] 6.4% ------------------------------------------------------------------------------------------- eval-prog [100] 27.6% inductor [122] 72.4% [122] 972(0.3%) 0(0.0%) inductor ...herbie/js-tweaks/src/programs.rkt:88:4 inductor [122] 72.4% table-ref [129] 24.6% ??? [46] 2.9% ------------------------------------------------------------------------------------------- for-loop [108] 100.0% [123] 960(0.3%) 336(0.1%) ormap ....0/collects/racket/private/map.rkt:141:13 flag-set? [134] 65.0% ------------------------------------------------------------------------------------------- ??? [114] 100.0% [124] 300(0.1%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:681:0 contract-struct-first-order [136] 100.0% ------------------------------------------------------------------------------------------- for-loop [119] 0.1% for-loop [101] 1.9% run [12] 49.0% [125] 289222(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.0% run-improve43 [2] 22.2% prepare-points [25] 20.4% oracle-error [139] 3.5% get-final-combination [3] 1.9% ??? [137] 1.6% eval-errors [120] 0.3% loop [172] 0.2% errors [83] 0.2% ulp-difference [203] 0.2% eval-const-expr [267] 0.1% ??? [198] 0.1% errors-score [142] 0.1% baseline-error [147] 0.1% ordinary-value? [190] 0.1% ------------------------------------------------------------------------------------------- match-e [115] 100.0% [126] 31196(10.8%) 8610(3.0%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:52:11 for-loop [138] 53.0% loop [172] 21.8% cp-2 [145] 2.5% foldl [192] 2.0% ------------------------------------------------------------------------------------------- for-loop [144] 2.7% for-loop [119] 8.1% merge-egraph-nodes! [127] 12.7% for-loop [99] 76.5% [127] 20458(7.1%) 300(0.1%) merge-egraph-nodes! ...s/src/core/egraph.rkt:143:0 loop! [186] 47.0% update-leader! [141] 26.0% merge-egraph-nodes! [127] 12.7% dedup-children! [154] 7.2% for-loop [144] 4.2% enode-merge! [150] 1.5% ------------------------------------------------------------------------------------------- temp68_2 [116] 100.0% [128] 17136(5.9%) 0(0.0%) compile16 (unknown source) temp74_0 [140] 100.0% ------------------------------------------------------------------------------------------- inductor [122] 14.1% for-loop [105] 85.9% [129] 4672(1.6%) 1906(0.7%) table-ref .../herbie/js-tweaks/src/common.rkt:41:0 for-loop [143] 52.8% assoc-iterate-first [149] 6.4% ------------------------------------------------------------------------------------------- match-e [115] 100.0% [130] 3466(1.2%) 0(0.0%) variable? ...js-tweaks/src/syntax/syntax.rkt:724:0 ??? [46] 63.1% value? [275] 36.9% ------------------------------------------------------------------------------------------- fix-up-variables [118] 100.0% [131] 2756(1.0%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/matcher.rkt:42:9 for-loop [272] 100.0% ------------------------------------------------------------------------------------------- eval-errors [120] 100.0% [132] 1964(0.7%) 0(0.0%) for-loop .../herbie/js-tweaks/src/points.rkt:200:2 ??? [137] 100.0% ------------------------------------------------------------------------------------------- substitute-e [121] 100.0% [133] 1566(0.5%) 632(0.2%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:73:24 substitute-e [121] 39.0% mk-enode! [148] 20.7% ------------------------------------------------------------------------------------------- for-loop [108] 36.1% ormap [123] 63.9% [134] 976(0.3%) 624(0.2%) flag-set? .../herbie/js-tweaks/src/config.rkt:28:0 ??? [146] 36.1% ------------------------------------------------------------------------------------------- pattern-substitute [135] 50.0% fix-up-variables [118] 50.0% [135] 644(0.2%) 310(0.1%) pattern-substitute ...ks/src/core/matcher.rkt:46:0 pattern-substitute [135] 50.0% return/no-unsupplied [261] 25.9% ------------------------------------------------------------------------------------------- ??? [124] 100.0% [136] 300(0.1%) 300(0.1%) contract-struct-first-order ...ivate/prop.rkt:93:0 ------------------------------------------------------------------------------------------- loop [109] 0.2% jloop [107] 0.4% for-loop [132] 1.3% loop [172] 5.1% ??? [187] 5.6% ??? [125] 9.3% loop [44] 78.1% [137] 147934(51.1%) 3112(1.1%) ??? ...lies/herbie/js-tweaks/src/programs.rkt:99:2 ??? [151] 87.4% ??? [198] 6.6% loop [172] 4.0% ------------------------------------------------------------------------------------------- for-loop [126] 100.0% [138] 21266(7.4%) 934(0.3%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:58:37 match-e [115] 89.9% ??? [158] 7.2% ------------------------------------------------------------------------------------------- ??? [125] 100.0% [139] 20444(7.1%) 0(0.0%) oracle-error ...bie/js-tweaks/src/points.rkt:207:0 for-loop [152] 100.0% ------------------------------------------------------------------------------------------- compile16 [128] 100.0% [140] 17136(5.9%) 0(0.0%) temp74_0 (unknown source) expand-single [153] 84.9% compile-top9 [157] 13.1% loop [28] 2.0% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [127] 100.0% [141] 6224(2.2%) 610(0.2%) update-leader! ...tweaks/src/core/egraph.rkt:211:0 for-loop [155] 85.2% custom-set-union! [161] 5.0% ------------------------------------------------------------------------------------------- loop [109] 8.5% loop [86] 8.6% localize! [37] 9.2% ??? [125] 19.3% jloop [107] 54.5% [142] 3522(1.2%) 0(0.0%) errors-score ...bie/js-tweaks/src/points.rkt:215:0 loop [156] 90.2% loop [172] 9.8% ------------------------------------------------------------------------------------------- table-ref [129] 100.0% [143] 2466(0.9%) 2466(0.9%) for-loop ...s/herbie/js-tweaks/src/common.rkt:43:4 ------------------------------------------------------------------------------------------- merge-egraph-nodes! [127] 100.0% [144] 1842(0.6%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/egraph.rkt:197:4 merge-egraph-nodes! [127] 83.4% dedup-children! [154] 16.6% ------------------------------------------------------------------------------------------- for-loop [126] 100.0% [145] 944(0.3%) 298(0.1%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 for-loop [159] 68.4% ------------------------------------------------------------------------------------------- ??? [46] 48.4% flag-set? [134] 51.6% [146] 682(0.2%) 682(0.2%) ??? ...ects/racket/contract/private/guts.rkt:746:8 ------------------------------------------------------------------------------------------- ??? [125] 100.0% [147] 638(0.2%) 0(0.0%) baseline-error ...e/js-tweaks/src/points.rkt:211:0 loop [86] 100.0% ------------------------------------------------------------------------------------------- for-loop [99] 48.2% for-loop [133] 51.8% [148] 626(0.2%) 302(0.1%) mk-enode! ...ie/js-tweaks/src/core/egraph.rkt:97:0 new-enode [160] 51.8% ------------------------------------------------------------------------------------------- table-ref [129] 100.0% [149] 300(0.1%) 300(0.1%) assoc-iterate-first ...cket/private/dict.rkt:166:0 ------------------------------------------------------------------------------------------- merge-egraph-nodes! [127] 100.0% [150] 298(0.1%) 0(0.0%) enode-merge! ...js-tweaks/src/core/enode.rkt:124:0 adopt-enode! [162] 100.0% ------------------------------------------------------------------------------------------- ??? [137] 100.0% [151] 129258(44.7%) 6682(2.3%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [163] 66.3% ??? [198] 16.4% ??? [184] 12.2% ------------------------------------------------------------------------------------------- oracle-error [139] 100.0% [152] 20444(7.1%) 0(0.0%) for-loop .../herbie/js-tweaks/src/points.rkt:208:2 loop [172] 68.2% map [165] 31.8% ------------------------------------------------------------------------------------------- temp74_0 [140] 100.0% [153] 14552(5.0%) 0(0.0%) expand-single (unknown source) expand-capturing-lifts [164] 100.0% ------------------------------------------------------------------------------------------- for-loop [144] 2.7% merge-egraph-nodes! [127] 17.2% for-loop [99] 80.1% [154] 11372(3.9%) 0(0.0%) dedup-children! ...tweaks/src/core/enode.rkt:195:0 loop [166] 85.5% loop [169] 14.5% ------------------------------------------------------------------------------------------- update-leader! [141] 100.0% [155] 5302(1.8%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/egraph.rkt:216:6 for-loop [167] 53.0% hash-update! [179] 47.0% ------------------------------------------------------------------------------------------- ??? [112] 9.6% errors-score [142] 90.4% [156] 3514(1.2%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [190] 100.0% ------------------------------------------------------------------------------------------- temp74_0 [140] 100.0% [157] 2248(0.8%) 308(0.1%) compile-top9 (unknown source) compile-forms31 [168] 86.3% ------------------------------------------------------------------------------------------- for-loop [98] 16.4% for-loop [138] 83.6% [158] 1840(0.6%) 904(0.3%) ??? ...s/herbie/js-tweaks/src/core/ematch.rkt:43:5 for-loop [171] 32.7% make-sequence [170] 18.2% ------------------------------------------------------------------------------------------- cp-2 [145] 100.0% [159] 646(0.2%) 646(0.2%) for-loop ...ket-7.0/collects/racket/list.rkt:827:4 ------------------------------------------------------------------------------------------- mk-enode! [148] 100.0% [160] 324(0.1%) 0(0.0%) new-enode ...bie/js-tweaks/src/core/enode.rkt:94:0 set [204] 100.0% ------------------------------------------------------------------------------------------- update-leader! [141] 100.0% [161] 312(0.1%) 312(0.1%) custom-set-union! ...t/private/set-types.rkt:245:0 ------------------------------------------------------------------------------------------- enode-merge! [150] 100.0% [162] 298(0.1%) 0(0.0%) adopt-enode! ...js-tweaks/src/core/enode.rkt:102:0 custom-set-union [200] 100.0% ------------------------------------------------------------------------------------------- ??? [151] 100.0% [163] 85664(29.6%) 19198(6.6%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-cos [173] 23.4% ival-sin [174] 22.3% ival-atan2 [176] 9.3% ival-sqrt [177] 7.2% ival-div [178] 7.1% ival-sub [180] 6.0% ival-add [181] 2.3% ------------------------------------------------------------------------------------------- loop [28] 6.4% expand-single [153] 93.6% [164] 15548(5.4%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [175] 93.6% dispatch-transformer41 [182] 4.2% loop [28] 2.2% ------------------------------------------------------------------------------------------- loop [79] 2.9% f46 [263] 12.2% parse-loop30 [253] 23.8% for-loop [152] 61.1% [165] 10618(3.7%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 loop [172] 54.4% hash-ref! [213] 22.1% ??? [187] 11.4% parse-loop30 [253] 9.4% f46 [263] 2.8% ------------------------------------------------------------------------------------------- dedup-children! [154] 8.3% loop [166] 91.7% [166] 9718(3.4%) 9718(3.4%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [166] 91.7% ------------------------------------------------------------------------------------------- for-loop [155] 100.0% [167] 2812(1.0%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/egraph.rkt:217:8 hash-update! [179] 100.0% ------------------------------------------------------------------------------------------- compile-top9 [157] 100.0% [168] 1940(0.7%) 0(0.0%) compile-forms31 (unknown source) for-loop [199] 100.0% ------------------------------------------------------------------------------------------- dedup-children! [154] 31.4% loop [169] 68.6% [169] 1654(0.6%) 296(0.1%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [169] 68.6% loop [28] 9.8% member [183] 3.7% ------------------------------------------------------------------------------------------- match-e [115] 48.1% ??? [158] 51.9% [170] 644(0.2%) 644(0.2%) make-sequence ...ects/racket/private/for.rkt:528:2 ------------------------------------------------------------------------------------------- ??? [158] 100.0% [171] 602(0.2%) 302(0.1%) for-loop ...bie/js-tweaks/src/core/ematch.rkt:44:7 constant? [273] 49.8% ------------------------------------------------------------------------------------------- errors-score [142] 0.0% ??? [245] 0.0% append-at-pnts [94] 0.0% for-loop [126] 0.1% parse-loop30 [253] 0.4% taylor [29] 0.9% ??? [125] 1.1% loop! [186] 2.4% ??? [52] 3.6% map [165] 8.6% ??? [137] 10.9% for-loop [152] 12.7% loop [172] 59.3% [172] 41456(14.3%) 6012(2.1%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [172] 59.3% ??? [198] 13.8% ??? [187] 11.7% ??? [137] 7.0% loop! [186] 2.4% eval-prog [100] 1.1% simplify [235] 0.9% ulp-difference [203] 0.5% parse-loop30 [253] 0.4% ordinary-value? [190] 0.1% bf* [197] 0.1% ??? [208] 0.0% ??? [184] 0.0% foldl [192] 0.0% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [173] 20068(6.9%) 4834(1.7%) ival-cos ...ie/js-tweaks/src/biginterval.rkt:275:0 bfdiv [251] 38.5% bffloor [193] 8.8% pi.bf [191] 8.7% bfeven? [194] 8.7% bfsqrt [188] 7.9% bfodd? [196] 3.3% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [174] 19092(6.6%) 10064(3.5%) ival-sin ...ie/js-tweaks/src/biginterval.rkt:292:0 bfdiv [251] 20.9% bffloor [193] 8.9% bfsqrt [188] 8.9% pi.bf [191] 7.0% bfeven? [194] 1.7% ------------------------------------------------------------------------------------------- expand-capturing-lifts [164] 100.0% [175] 14552(5.0%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [185] 88.6% loop [28] 9.1% for-loop [199] 2.3% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [176] 7982(2.8%) 4854(1.7%) ival-atan2 .../js-tweaks/src/biginterval.rkt:318:0 bfdiv [251] 21.1% pi.bf [191] 18.1% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [177] 6186(2.1%) 300(0.1%) ival-sqrt ...e/js-tweaks/src/biginterval.rkt:198:0 bfsqrt [188] 95.2% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [178] 6084(2.1%) 624(0.2%) ival-div ...ie/js-tweaks/src/biginterval.rkt:148:0 bfdiv [251] 89.7% ------------------------------------------------------------------------------------------- for-loop [155] 47.0% for-loop [167] 53.0% [179] 5302(1.8%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [189] 100.0% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [180] 5126(1.8%) 1008(0.3%) ival-sub ...ie/js-tweaks/src/biginterval.rkt:100:0 bfdiv [251] 80.3% ------------------------------------------------------------------------------------------- ??? [163] 100.0% [181] 1928(0.7%) 456(0.2%) ival-add ...bie/js-tweaks/src/biginterval.rkt:94:0 bfdiv [251] 76.3% ------------------------------------------------------------------------------------------- expand-capturing-lifts [164] 39.1% loop [28] 60.9% [182] 1690(0.6%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [195] 100.0% ------------------------------------------------------------------------------------------- loop [169] 100.0% [183] 364(0.1%) 364(0.1%) member (unknown source) ------------------------------------------------------------------------------------------- loop [172] 2.1% ??? [151] 97.9% [184] 16088(5.6%) 9496(3.3%) ??? ...rbie/js-tweaks/src/syntax/syntax.rkt:209:17 return/no-unsupplied [261] 28.7% ??? [262] 12.3% ------------------------------------------------------------------------------------------- lambda-clause-expander [175] 13.0% for-loop [199] 87.0% [185] 12886(4.5%) 0(0.0%) finish-bodys (unknown source) for-loop [199] 100.0% ------------------------------------------------------------------------------------------- loop [172] 27.0% merge-egraph-nodes! [127] 73.0% [186] 11370(3.9%) 3148(1.1%) loop! ...herbie/js-tweaks/src/core/enode.rkt:187:2 custom-set-union [200] 44.3% loop [172] 27.0% set [204] 8.0% update-en-expr [224] 4.2% ------------------------------------------------------------------------------------------- map [165] 11.9% loop [172] 88.1% [187] 10174(3.5%) 300(0.1%) ??? ...lies/herbie/js-tweaks/src/points.rkt:209:26 ??? [137] 81.8% ulp-difference [203] 9.3% *bit-width* [210] 3.0% ??? [198] 2.9% ------------------------------------------------------------------------------------------- ival-cos [173] 17.3% ival-sin [174] 18.5% ival-sqrt [177] 64.2% [188] 9164(3.2%) 650(0.2%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:618:4 new-mpfr [259] 70.9% ??? [260] 22.0% ------------------------------------------------------------------------------------------- hash-update! [179] 100.0% [189] 5302(1.8%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/egraph.rkt:219:24 for-loop [201] 100.0% ------------------------------------------------------------------------------------------- loop [172] 6.5% andmap [57] 7.0% ??? [125] 12.6% loop [156] 73.9% [190] 4756(1.6%) 310(0.1%) ordinary-value? ...ie/js-tweaks/src/float.rkt:80:0 special-value? [202] 93.5% ------------------------------------------------------------------------------------------- ival-sin [174] 29.5% ival-atan2 [176] 31.9% ival-cos [173] 38.6% [191] 4530(1.6%) 334(0.1%) pi.bf ...-lib/math/private/bigfloat/mpfr.rkt:998:4 new-mpfr [259] 54.9% ??? [260] 37.7% ------------------------------------------------------------------------------------------- ??? [4] 7.9% for-loop [21] 24.9% for-loop [126] 29.2% loop [172] 38.0% [192] 4266(1.5%) 644(0.2%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [205] 52.1% ??? [206] 32.8% ------------------------------------------------------------------------------------------- ival-sin [174] 49.1% ival-cos [173] 50.9% [193] 3450(1.2%) 362(0.1%) bffloor ...ib/math/private/bigfloat/mpfr.rkt:716:4 new-mpfr [259] 50.7% ??? [260] 38.8% ------------------------------------------------------------------------------------------- ival-sin [174] 15.5% ival-cos [173] 84.5% [194] 2068(0.7%) 1748(0.6%) bfeven? ...ib/math/private/bigfloat/mpfr.rkt:800:0 ??? [260] 15.5% ------------------------------------------------------------------------------------------- dispatch-transformer41 [182] 100.0% [195] 1690(0.6%) 334(0.1%) apply-transformer52 (unknown source) apply-transformer-in-context [207] 41.2% apply-post-expansion [209] 19.9% loop [28] 19.2% ------------------------------------------------------------------------------------------- ival-cos [173] 100.0% [196] 664(0.2%) 0(0.0%) bfodd? ...lib/math/private/bigfloat/mpfr.rkt:803:0 ??? [260] 54.5% size+limbs->integer [211] 45.5% ------------------------------------------------------------------------------------------- loop [172] 100.0% [197] 360(0.1%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [208] 100.0% ------------------------------------------------------------------------------------------- for-loop [247] 0.3% ??? [187] 0.6% jloop [107] 0.7% ??? [52] 1.3% loop [17] 1.3% ??? [8] 1.6% ??? [125] 2.1% location-do [217] 3.9% for-loop [76] 3.9% ??? [65] 6.7% loop [172] 15.3% ??? [137] 19.6% ??? [151] 42.8% [198] 49488(17.1%) 1910(0.7%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ival-mult [212] 34.4% ->flonum [214] 19.3% mk-ival [216] 13.3% ival-pow [219] 8.3% best-alt [220] 6.7% location-do [217] 3.9% approximate9 [6] 3.9% sample-multi-bounded [223] 3.3% hash-ref! [213] 2.9% bf [234] 0.6% ------------------------------------------------------------------------------------------- fallback-loop [66] 1.9% lambda-clause-expander [175] 2.2% for-loop [199] 7.2% compile-forms31 [168] 12.5% finish-bodys [185] 76.3% [199] 15486(5.4%) 5704(2.0%) for-loop (unknown source) finish-bodys [185] 67.5% for-loop [199] 7.2% syntax-e [5] 3.0% add-local-binding!37 [225] 2.8% loop [28] 2.3% expand-implicit [226] 0.9% expand-identifier [40] 0.2% ------------------------------------------------------------------------------------------- adopt-enode! [162] 5.3% loop! [186] 94.7% [200] 5632(1.9%) 1872(0.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [221] 55.5% for-loop [227] 11.2% ------------------------------------------------------------------------------------------- ??? [189] 100.0% [201] 5302(1.8%) 4668(1.6%) for-loop ...e/js-tweaks/src/core/egraph.rkt:220:26 update-en-expr [224] 12.0% ------------------------------------------------------------------------------------------- ordinary-value? [190] 100.0% [202] 4446(1.5%) 298(0.1%) special-value? ...bie/js-tweaks/src/float.rkt:76:0 for-loop [218] 93.3% ------------------------------------------------------------------------------------------- loop [172] 19.2% ??? [187] 30.8% ??? [125] 50.0% [203] 3070(1.1%) 1188(0.4%) ulp-difference ...bie/js-tweaks/src/float.rkt:46:0 infer-representation [222] 61.3% ------------------------------------------------------------------------------------------- new-enode [160] 14.4% loop! [186] 85.6% [204] 2256(0.8%) 2256(0.8%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------- foldl [192] 100.0% [205] 2222(0.8%) 2222(0.8%) merge2 ...erbie/js-tweaks/src/core/ematch.rkt:24:0 ------------------------------------------------------------------------------------------- foldl [192] 100.0% [206] 1400(0.5%) 0(0.0%) ??? .../herbie/js-tweaks/src/core/matcher.rkt:26:7 core651 [274] 75.9% dict? [229] 24.1% ------------------------------------------------------------------------------------------- apply-transformer52 [195] 100.0% [207] 696(0.2%) 0(0.0%) apply-transformer-in-context (unknown source) ??? [228] 51.7% go [230] 48.3% ------------------------------------------------------------------------------------------- loop [172] 45.5% bf* [197] 54.5% [208] 660(0.2%) 300(0.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfdiv [251] 54.5% ------------------------------------------------------------------------------------------- apply-transformer52 [195] 100.0% [209] 336(0.1%) 0(0.0%) apply-post-expansion (unknown source) gf [215] 100.0% ------------------------------------------------------------------------------------------- ??? [187] 100.0% [210] 310(0.1%) 0(0.0%) *bit-width* ...herbie/js-tweaks/src/float.rkt:62:0 list-member? [231] 100.0% ------------------------------------------------------------------------------------------- bfodd? [196] 100.0% [211] 302(0.1%) 302(0.1%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 ------------------------------------------------------------------------------------------- ??? [198] 100.0% [212] 17042(5.9%) 2278(0.8%) ival-mult ...e/js-tweaks/src/biginterval.rkt:112:0 bfdiv [251] 54.3% bfmin* [238] 14.0% bfnext [240] 10.2% bfmax* [241] 8.1% ------------------------------------------------------------------------------------------- ??? [24] 1.1% for-loop [22] 1.1% eval-prog [100] 2.2% for-loop [19] 2.3% loop [41] 2.4% for-loop [20] 2.5% localize-error [50] 3.5% loop [17] 3.7% ??? [7] 7.3% ??? [198] 9.7% map [165] 13.0% compile [117] 19.7% ??? [233] 31.6% [213] 15294(5.3%) 7840(2.7%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [233] 32.9% parse-loop30 [253] 14.9% simplify [235] 10.7% ??? [7] 8.3% ??? [8] 3.7% ??? [10] 2.5% ??? [9] 2.3% taylor [29] 1.4% ??? [245] 1.3% ??? [11] 1.1% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [214] 9678(3.3%) 966(0.3%) ->flonum ...s/herbie/js-tweaks/src/float.rkt:149:0 ??? [232] 90.0% ------------------------------------------------------------------------------------------- apply-post-expansion [209] 0.9% loop [28] 99.1% [215] 7616(2.6%) 986(0.3%) gf (unknown source) propagation-apply [236] 45.7% propagation-apply-shifted [239] 24.6% propagation-merge [243] 12.3% loop [28] 4.4% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [216] 6582(2.3%) 0(0.0%) mk-ival ...rbie/js-tweaks/src/biginterval.rkt:57:0 bf [234] 100.0% ------------------------------------------------------------------------------------------- ??? [198] 10.9% location-do [217] 89.1% [217] 5260(1.8%) 0(0.0%) location-do ...bie/js-tweaks/src/programs.rkt:64:0 location-do [217] 89.1% ??? [198] 10.9% ------------------------------------------------------------------------------------------- special-value? [202] 100.0% [218] 4148(1.4%) 2858(1.0%) for-loop ...es/herbie/js-tweaks/src/float.rkt:17:3 return/no-unsupplied [261] 31.1% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [219] 4116(1.4%) 1658(0.6%) ival-pow ...ie/js-tweaks/src/biginterval.rkt:216:0 bfdiv [251] 59.7% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [220] 3462(1.2%) 0(0.0%) best-alt ...erbie/js-tweaks/src/mainloop.rkt:106:0 loop [237] 90.4% argmins [249] 9.6% ------------------------------------------------------------------------------------------- custom-set-union [200] 100.0% [221] 3128(1.1%) 1930(0.7%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [242] 38.3% ------------------------------------------------------------------------------------------- ulp-difference [203] 100.0% [222] 1882(0.7%) 910(0.3%) infer-representation ...-tweaks/src/float.rkt:15:0 return/no-unsupplied [261] 35.7% ??? [262] 15.9% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [223] 1782(0.6%) 1132(0.4%) sample-multi-bounded ...tweaks/src/points.rkt:15:0 for-loop [247] 19.2% loop [250] 17.3% ------------------------------------------------------------------------------------------- for-loop [201] 39.9% loop! [186] 60.1% [224] 1590(0.5%) 1590(0.5%) update-en-expr ...tweaks/src/core/egraph.rkt:205:0 ------------------------------------------------------------------------------------------- for-loop [199] 100.0% [225] 1268(0.4%) 1268(0.4%) add-local-binding!37 (unknown source) ------------------------------------------------------------------------------------------- for-loop [199] 100.0% [226] 934(0.3%) 0(0.0%) expand-implicit (unknown source) binding-lookup50 [244] 64.2% resolve+shift28 [51] 35.8% ------------------------------------------------------------------------------------------- custom-set-union [200] 100.0% [227] 632(0.2%) 632(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------- apply-transformer-in-context [207] 100.0% [228] 360(0.1%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [246] 100.0% ------------------------------------------------------------------------------------------- ??? [206] 100.0% [229] 338(0.1%) 338(0.1%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------------------- apply-transformer-in-context [207] 100.0% [230] 336(0.1%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 stx-list? [248] 100.0% ------------------------------------------------------------------------------------------- *bit-width* [210] 100.0% [231] 310(0.1%) 310(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 ------------------------------------------------------------------------------------------- ->flonum [214] 100.0% [232] 8712(3.0%) 608(0.2%) ??? ...ghtlies/herbie/js-tweaks/src/float.rkt:23:2 for-loop [252] 93.0% ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [233] 6938(2.4%) 634(0.2%) ??? ...ies/herbie/js-tweaks/src/programs.rkt:142:5 hash-ref! [213] 97.0% ------------------------------------------------------------------------------------------- ??? [198] 4.3% mk-ival [216] 95.7% [234] 6880(2.4%) 298(0.1%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [259] 89.6% ??? [260] 6.0% ------------------------------------------------------------------------------------------- loop [172] 7.3% hash-ref! [213] 92.7% [235] 4960(1.7%) 0(0.0%) simplify ...bie/js-tweaks/src/core/reduce.rkt:16:0 parse-loop30 [253] 60.6% f46 [263] 32.1% ??? [255] 7.3% ------------------------------------------------------------------------------------------- gf [215] 100.0% [236] 3484(1.2%) 3484(1.2%) propagation-apply (unknown source) ------------------------------------------------------------------------------------------- best-alt [220] 100.0% [237] 3128(1.1%) 0(0.0%) loop ...tlies/herbie/js-tweaks/src/common.rkt:93:2 ??? [254] 100.0% ------------------------------------------------------------------------------------------- ival-mult [212] 100.0% [238] 2392(0.8%) 0(0.0%) bfmin* ...rbie/js-tweaks/src/biginterval.rkt:106:0 bfdiv [251] 100.0% ------------------------------------------------------------------------------------------- gf [215] 100.0% [239] 1876(0.6%) 1876(0.6%) propagation-apply-shifted (unknown source) ------------------------------------------------------------------------------------------- ival-mult [212] 100.0% [240] 1744(0.6%) 0(0.0%) bfnext ...lib/math/private/bigfloat/mpfr.rkt:867:0 new-mpfr [259] 100.0% ------------------------------------------------------------------------------------------- ival-mult [212] 100.0% [241] 1372(0.5%) 0(0.0%) bfmax* ...rbie/js-tweaks/src/biginterval.rkt:109:0 bfdiv [251] 100.0% ------------------------------------------------------------------------------------------- for-loop [221] 100.0% [242] 1198(0.4%) 1198(0.4%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------- gf [215] 100.0% [243] 934(0.3%) 934(0.3%) propagation-merge (unknown source) ------------------------------------------------------------------------------------------- expand-implicit [226] 100.0% [244] 600(0.2%) 600(0.2%) binding-lookup50 (unknown source) ------------------------------------------------------------------------------------------- hash-ref! [213] 100.0% [245] 592(0.2%) 0(0.0%) ??? ...erbie/js-tweaks/src/core/localize.rkt:23:13 loop [172] 50.3% repeat [258] 49.7% ------------------------------------------------------------------------------------------- ??? [228] 100.0% [246] 360(0.1%) 0(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 syntax->list [256] 100.0% ------------------------------------------------------------------------------------------- sample-multi-bounded [223] 100.0% [247] 342(0.1%) 0(0.0%) for-loop ...s/herbie/js-tweaks/src/points.rkt:23:4 ??? [198] 100.0% ------------------------------------------------------------------------------------------- go [230] 100.0% [248] 336(0.1%) 336(0.1%) stx-list? .../collects/racket/private/stx.rkt:49:4 ------------------------------------------------------------------------------------------- best-alt [220] 100.0% [249] 334(0.1%) 0(0.0%) argmins ...es/herbie/js-tweaks/src/common.rkt:92:0 ??? [254] 100.0% ------------------------------------------------------------------------------------------- sample-multi-bounded [223] 100.0% [250] 308(0.1%) 0(0.0%) loop ...tlies/herbie/js-tweaks/src/points.rkt:42:6 random-exp [257] 100.0% ------------------------------------------------------------------------------------------- ??? [208] 0.9% bfmax* [241] 3.4% ival-add [181] 3.7% ival-atan2 [176] 4.2% bfmin* [238] 5.9% ival-pow [219] 6.1% ival-sin [174] 9.9% ival-sub [180] 10.2% ival-div [178] 13.6% ival-cos [173] 19.2% ival-mult [212] 23.0% [251] 40288(13.9%) 1262(0.4%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [259] 69.0% ??? [260] 27.9% ------------------------------------------------------------------------------------------- ??? [232] 100.0% [252] 8104(2.8%) 5586(1.9%) for-loop ...es/herbie/js-tweaks/src/float.rkt:24:5 return/no-unsupplied [261] 19.5% ??? [262] 11.5% ------------------------------------------------------------------------------------------- loop [172] 2.8% parse-loop30 [253] 5.7% map [165] 12.2% hash-ref! [213] 38.7% simplify [235] 40.7% [253] 6520(2.3%) 0(0.0%) parse-loop30 ...s/racket/match/compiler.rkt:418:15 eval-const-expr [267] 51.3% map [165] 36.9% parse-loop30 [253] 5.7% loop [172] 2.8% for-loop [264] 1.8% f46 [263] 1.5% ------------------------------------------------------------------------------------------- argmins [249] 9.6% loop [237] 90.4% [254] 3462(1.2%) 0(0.0%) ??? ...es/herbie/js-tweaks/src/mainloop.rkt:108:19 errors [83] 100.0% ------------------------------------------------------------------------------------------- simplify [235] 100.0% [255] 362(0.1%) 0(0.0%) ??? ...s/herbie/js-tweaks/src/core/reduce.rkt:59:5 for-loop [265] 100.0% ------------------------------------------------------------------------------------------- ??? [246] 100.0% [256] 360(0.1%) 0(0.0%) syntax->list (unknown source) loop [28] 100.0% ------------------------------------------------------------------------------------------- loop [250] 100.0% [257] 308(0.1%) 308(0.1%) random-exp ...erbie/js-tweaks/src/common.rkt:172:0 ------------------------------------------------------------------------------------------- ??? [245] 100.0% [258] 294(0.1%) 0(0.0%) repeat ...rbie/js-tweaks/src/core/localize.rkt:9:0 for-loop [266] 100.0% ------------------------------------------------------------------------------------------- bfnext [240] 3.8% bffloor [193] 3.8% pi.bf [191] 5.4% bf [234] 13.3% bfsqrt [188] 14.0% bfdiv [251] 59.9% [259] 46426(16.1%) 46426(16.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------------------------------- bfeven? [194] 1.8% bfodd? [196] 2.1% bf [234] 2.4% bffloor [193] 7.7% pi.bf [191] 9.8% bfsqrt [188] 11.6% bfdiv [251] 64.6% [260] 17406(6.0%) 17406(6.0%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ------------------------------------------------------------------------------------------- pattern-substitute [135] 3.9% infer-representation [222] 7.9% for-loop [218] 15.2% for-loop [252] 18.6% ??? [184] 54.4% [261] 8498(2.9%) 6014(2.1%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [268] 29.2% ------------------------------------------------------------------------------------------- infer-representation [222] 9.4% for-loop [252] 29.2% ??? [184] 61.5% [262] 3208(1.1%) 2846(1.0%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ??? [270] 11.3% ------------------------------------------------------------------------------------------- parse-loop30 [253] 9.5% map [165] 12.5% simplify [235] 78.0% [263] 1594(0.6%) 300(0.1%) f46 ...0/collects/racket/match/compiler.rkt:507:40 map [165] 65.4% eval-const-expr [267] 28.3% ------------------------------------------------------------------------------------------- parse-loop30 [253] 100.0% [264] 636(0.2%) 326(0.1%) for-loop .../js-tweaks/src/core/localize.rkt:45:21 for-loop [271] 48.7% ------------------------------------------------------------------------------------------- ??? [255] 100.0% [265] 362(0.1%) 0(0.0%) for-loop ...bie/js-tweaks/src/core/reduce.rkt:60:7 pattern-match [269] 100.0% ------------------------------------------------------------------------------------------- repeat [258] 100.0% [266] 294(0.1%) 294(0.1%) for-loop ...e/js-tweaks/src/core/localize.rkt:10:2 ------------------------------------------------------------------------------------------- f46 [263] 10.8% ??? [125] 22.6% parse-loop30 [253] 66.6% [267] 5550(1.9%) 0(0.0%) eval-const-expr ...s-tweaks/src/programs.rkt:102:0 eval-prog [100] 100.0% ------------------------------------------------------------------------------------------- return/no-unsupplied [261] 100.0% [268] 2484(0.9%) 2484(0.9%) filter ...0/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------- for-loop [265] 20.0% fix-up-variables [118] 80.0% [269] 1810(0.6%) 0(0.0%) pattern-match ...-tweaks/src/core/matcher.rkt:30:0 for-loop [272] 80.0% constant? [273] 20.0% ------------------------------------------------------------------------------------------- ??? [262] 100.0% [270] 362(0.1%) 362(0.1%) ??? ...ects/racket/contract/private/prop.rkt:274:4 ------------------------------------------------------------------------------------------- for-loop [264] 100.0% [271] 310(0.1%) 310(0.1%) for-loop .../js-tweaks/src/core/localize.rkt:46:23 ------------------------------------------------------------------------------------------- pattern-match [269] 34.4% for-loop [131] 65.6% [272] 4204(1.5%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/matcher.rkt:27:9 core651 [274] 82.9% fallback-update [276] 17.1% ------------------------------------------------------------------------------------------- for-loop [171] 9.6% matcher [102] 10.5% pattern-match [269] 11.5% match-e [115] 68.4% [273] 3136(1.1%) 628(0.2%) constant? ...js-tweaks/src/syntax/syntax.rkt:721:0 value? [275] 80.0% ------------------------------------------------------------------------------------------- ??? [206] 23.4% for-loop [272] 76.6% [274] 4548(1.6%) 1048(0.4%) core651 ...acket/contract/private/arr-i.rkt:918:19 ??? [277] 38.8% un-dep/maybe-chaperone [278] 22.7% successfully-got-the-right-kind-of-function [279] 15.4% ------------------------------------------------------------------------------------------- variable? [130] 33.8% constant? [273] 66.2% [275] 3788(1.3%) 3788(1.3%) value? ...rbie/js-tweaks/src/syntax/types.rkt:18:0 ------------------------------------------------------------------------------------------- for-loop [272] 100.0% [276] 718(0.2%) 718(0.2%) fallback-update ...s/racket/private/dict.rkt:115:2 ------------------------------------------------------------------------------------------- core651 [274] 100.0% [277] 1766(0.6%) 368(0.1%) ??? ...s/racket/contract/private/arr-i.rkt:1249:27 or/c [280] 59.3% build-unary-very-simple--> [282] 19.8% ------------------------------------------------------------------------------------------- core651 [274] 100.0% [278] 1032(0.4%) 302(0.1%) un-dep/maybe-chaperone ...private/arr-i.rkt:1097:2 ??? [281] 70.7% ------------------------------------------------------------------------------------------- core651 [274] 100.0% [279] 702(0.2%) 702(0.2%) successfully-got-the-right-kind-of-function ...5:4 ------------------------------------------------------------------------------------------- ??? [277] 100.0% [280] 1048(0.4%) 360(0.1%) or/c ...lects/racket/contract/private/orc.rkt:16:2 build-compound-type-name [283] 65.6% ------------------------------------------------------------------------------------------- un-dep/maybe-chaperone [278] 100.0% [281] 730(0.3%) 368(0.1%) ??? ...ntract/private/arrow-higher-order.rkt:554:2 get-blame-party-info [284] 49.6% ------------------------------------------------------------------------------------------- ??? [277] 100.0% [282] 350(0.1%) 350(0.1%) build-unary-very-simple--> ...val-first.rkt:1014:0 ------------------------------------------------------------------------------------------- or/c [280] 100.0% [283] 688(0.2%) 0(0.0%) build-compound-type-name ...private/guts.rkt:515:0 contract-struct-name [285] 100.0% ------------------------------------------------------------------------------------------- ??? [281] 100.0% [284] 362(0.1%) 362(0.1%) get-blame-party-info ...ate/arrow-common.rkt:136:0 ------------------------------------------------------------------------------------------- build-compound-type-name [283] 100.0% [285] 688(0.2%) 0(0.0%) contract-struct-name ...ract/private/prop.rkt:87:0 ??? [286] 100.0% ------------------------------------------------------------------------------------------- contract-struct-name [285] 100.0% [286] 688(0.2%) 688(0.2%) ??? ...contract/private/arrow-val-first.rkt:1423:0 -------------------------------------------------------------------------------------------