Profiling results ----------------- Total cpu time observed: 33710ms (out of 34308ms) Number of samples taken: 90 (once every 375ms) ======================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================= ??? [21] 100.0% [1] 33052(98.0%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [6] 100.0% ----------------------------------------------------------------------- ??? [21] 100.0% [2] 14102(41.8%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [7] 95.0% loop [24] 2.6% setup-alt-simplified [10] 2.4% ----------------------------------------------------------------------- hash-ref! [49] 100.0% [3] 1052(3.1%) 0(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:15:0 parse-loop12 [55] 65.8% f37 [9] 34.2% ----------------------------------------------------------------------- hash-ref! [49] 100.0% [4] 722(2.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:292:23 for-loop [8] 100.0% ----------------------------------------------------------------------- loop [56] 100.0% [5] 334(1.0%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [49] 100.0% ----------------------------------------------------------------------- profile-thunk16 [1] 100.0% [6] 33052(98.0%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [21] 100.0% ----------------------------------------------------------------------- run-improve50 [2] 100.0% [7] 13402(39.8%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [11] 100.0% ----------------------------------------------------------------------- ??? [4] 100.0% [8] 722(2.1%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:295:27 hash-ref! [49] 100.0% ----------------------------------------------------------------------- simplify [3] 100.0% [9] 360(1.1%) 360(1.1%) f37 ...t/collects/racket/match/compiler.rkt:507:40 ----------------------------------------------------------------------- run-improve50 [2] 100.0% [10] 336(1.0%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:48:0 simplify-alt [12] 100.0% ----------------------------------------------------------------------- for-loop [7] 100.0% [11] 13402(39.8%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [13] 54.1% gen-rewrites! [14] 20.7% finalize-iter! [15] 14.8% gen-series! [16] 7.8% localize-error [17] 2.5% ----------------------------------------------------------------------- setup-alt-simplified [10] 100.0% [12] 336(1.0%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:81:0 ??? [40] 100.0% ----------------------------------------------------------------------- run-iter! [11] 100.0% [13] 7252(21.5%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [18] 100.0% ----------------------------------------------------------------------- run-iter! [11] 100.0% [14] 2776(8.2%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [19] 100.0% ----------------------------------------------------------------------- run-iter! [11] 100.0% [15] 1988(5.9%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [70] 100.0% ----------------------------------------------------------------------- run-iter! [11] 100.0% [16] 1052(3.1%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:129:0 for-loop [20] 100.0% ----------------------------------------------------------------------- run-iter! [11] 100.0% [17] 334(1.0%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [49] 100.0% ----------------------------------------------------------------------- simplify! [13] 100.0% [18] 7252(21.5%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [21] 100.0% ----------------------------------------------------------------------- gen-rewrites! [14] 100.0% [19] 2776(8.2%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [22] 100.0% ----------------------------------------------------------------------- gen-series! [16] 100.0% [20] 1052(3.1%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:135:7 taylor-alt [23] 100.0% ----------------------------------------------------------------------- for-loop [18] 7.2% run [6] 45.4% [21] 33710(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 45.4% loop [24] 29.1% run-improve50 [2] 18.3% ??? [40] 7.2% ----------------------------------------------------------------------- for-loop [19] 100.0% [22] 2776(8.2%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [25] 100.0% ----------------------------------------------------------------------- for-loop [20] 100.0% [23] 1052(3.1%) 0(0.0%) taylor-alt ...es/herbie/develop/src/glue.rkt:139:0 for-loop [26] 100.0% ----------------------------------------------------------------------- run-improve50 [2] 1.8% ??? [21] 98.2% [24] 19972(59.2%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:193:2 loop [27] 42.4% make-exacts* [31] 35.9% loop [32] 17.8% for-loop [30] 4.0% ----------------------------------------------------------------------- ??? [22] 14.3% matcher [33] 85.7% [25] 2776(8.2%) 326(1.0%) rewriter ...bie/develop/src/core/matcher.rkt:127:2 for-loop [28] 90.3% *rules* [29] 8.0% ----------------------------------------------------------------------- taylor-alt [23] 100.0% [26] 1052(3.1%) 0(0.0%) for-loop ...lies/herbie/develop/src/glue.rkt:141:2 ??? [38] 100.0% ----------------------------------------------------------------------- loop [24] 100.0% [27] 8464(25.1%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:151:2 loop [32] 62.1% make-exacts* [31] 37.9% ----------------------------------------------------------------------- rewriter [25] 100.0% [28] 2776(8.2%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:130:10 matcher [33] 100.0% ----------------------------------------------------------------------- rewriter [25] 100.0% [29] 1422(4.2%) 0(0.0%) *rules* ...rbie/develop/src/syntax/rules.rkt:445:0 for-loop [34] 100.0% ----------------------------------------------------------------------- loop [24] 100.0% [30] 792(2.3%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:200:24 for-loop [35] 100.0% ----------------------------------------------------------------------- loop [27] 30.9% loop [24] 69.1% [31] 10370(30.8%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [56] 60.0% map [36] 40.0% ----------------------------------------------------------------------- loop [24] 40.3% loop [27] 59.7% [32] 8810(26.1%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 map [36] 100.0% ----------------------------------------------------------------------- for-loop [37] 13.5% matcher [33] 35.2% for-loop [28] 51.2% [33] 2776(8.2%) 1028(3.0%) matcher ...rbie/develop/src/core/matcher.rkt:163:2 rewriter [25] 48.8% matcher [33] 35.2% for-loop [37] 13.5% ----------------------------------------------------------------------- *rules* [29] 100.0% [34] 1422(4.2%) 358(1.1%) for-loop ...ies/herbie/develop/src/common.rkt:94:9 ormap [39] 74.8% ----------------------------------------------------------------------- for-loop [30] 100.0% [35] 792(2.3%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:201:26 ??? [38] 100.0% ----------------------------------------------------------------------- make-exacts* [31] 32.0% loop [32] 68.0% [36] 12954(38.4%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [56] 94.4% ??? [89] 5.6% ----------------------------------------------------------------------- matcher [33] 100.0% [37] 2776(8.2%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:179:21 matcher [33] 100.0% ----------------------------------------------------------------------- ??? [40] 28.5% for-loop [26] 28.5% for-loop [35] 43.0% [38] 1844(5.5%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [40] 71.5% approximate9 [41] 28.5% ----------------------------------------------------------------------- for-loop [34] 100.0% [39] 1064(3.2%) 362(1.1%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [42] 66.0% ----------------------------------------------------------------------- simplify-alt [12] 1.8% ??? [38] 13.6% ??? [40] 17.2% for-loop [44] 29.0% ??? [21] 38.4% [40] 9432(28.0%) 432(1.3%) ??? ...llects/racket/private/norm-define.rkt:53:83 iterate-egraph!13 [43] 40.2% for-loop [44] 29.0% ??? [40] 17.2% ??? [38] 5.2% loop [47] 3.8% ----------------------------------------------------------------------- ??? [38] 100.0% [41] 1052(3.1%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [45] 100.0% ----------------------------------------------------------------------- ormap [39] 100.0% [42] 702(2.1%) 0(0.0%) flag-set? ...es/herbie/develop/src/config.rkt:32:0 return/no-unsupplied [46] 52.4% ??? [96] 47.6% ----------------------------------------------------------------------- ??? [40] 100.0% [43] 7588(22.5%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:102:0 one-iter [48] 95.3% map-enodes [51] 4.7% ----------------------------------------------------------------------- ??? [40] 100.0% [44] 5472(16.2%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:63:12 ??? [40] 100.0% ----------------------------------------------------------------------- approximate9 [41] 100.0% [45] 1052(3.1%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:83:4 hash-ref! [49] 100.0% ----------------------------------------------------------------------- flag-set? [42] 100.0% [46] 368(1.1%) 0(0.0%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [50] 100.0% ----------------------------------------------------------------------- ??? [40] 100.0% [47] 360(1.1%) 360(1.1%) loop ...ghtlies/herbie/develop/src/points.rkt:66:6 ----------------------------------------------------------------------- iterate-egraph!13 [43] 100.0% [48] 7230(21.4%) 0(0.0%) one-iter ...ie/develop/src/core/simplify.rkt:113:0 for-loop [52] 58.6% loop [53] 41.4% ----------------------------------------------------------------------- localize-error [17] 6.0% ??? [5] 18.1% ??? [54] 22.8% loop [45] 22.8% for-loop [8] 30.4% [49] 1386(4.1%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [4] 30.4% parse-loop12 [55] 24.1% ??? [54] 22.8% simplify [3] 22.8% ----------------------------------------------------------------------- return/no-unsupplied [46] 100.0% [50] 368(1.1%) 368(1.1%) filter ...t/collects/racket/private/list.rkt:256:2 ----------------------------------------------------------------------- iterate-egraph!13 [43] 100.0% [51] 358(1.1%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:139:0 loop [56] 100.0% ----------------------------------------------------------------------- for-loop [52] 45.7% one-iter [48] 54.3% [52] 4240(12.6%) 728(2.2%) for-loop ...e/develop/src/core/simplify.rkt:123:12 for-loop [52] 45.7% match-e [58] 41.4% ----------------------------------------------------------------------- one-iter [48] 100.0% [53] 2990(8.9%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [57] 100.0% ----------------------------------------------------------------------- hash-ref! [49] 100.0% [54] 1052(3.1%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:43:15 hash-ref! [49] 100.0% ----------------------------------------------------------------------- hash-ref! [49] 32.6% simplify [3] 67.4% [55] 1026(3.0%) 692(2.1%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [56] 32.6% ----------------------------------------------------------------------- parse-loop12 [55] 0.1% loop! [69] 0.8% map-enodes [51] 1.8% make-exacts* [31] 1.9% map [36] 3.8% loop [56] 91.6% [56] 19478(57.8%) 334(1.0%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [56] 91.6% ??? [89] 4.7% for-loop [61] 1.8% ->flonum [92] 1.0% loop! [69] 0.8% ??? [5] 0.1% ----------------------------------------------------------------------- loop [53] 100.0% [57] 2990(8.9%) 336(1.0%) apply-match ...develop/src/core/simplify.rkt:129:2 merge-egraph-nodes! [59] 22.2% match-e [58] 22.1% substitute-e [60] 12.2% reduce-to-single! [62] 11.2% for-loop [63] 11.0% mk-enode! [64] 10.1% ----------------------------------------------------------------------- apply-match [57] 11.9% for-loop [71] 25.3% for-loop [52] 62.8% [58] 4172(12.4%) 1370(4.1%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [65] 56.6% variable? [66] 8.7% for-loop [71] 5.8% ----------------------------------------------------------------------- apply-match [57] 100.0% [59] 664(2.0%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:152:0 update-leader! [67] 100.0% ----------------------------------------------------------------------- substitute-e [60] 50.0% apply-match [57] 50.0% [60] 364(1.1%) 364(1.1%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 substitute-e [60] 50.0% ----------------------------------------------------------------------- loop [56] 100.0% [61] 358(1.1%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:168:2 eval-const-expr [68] 100.0% ----------------------------------------------------------------------- apply-match [57] 100.0% [62] 334(1.0%) 334(1.0%) reduce-to-single! ...lop/src/core/egraph.rkt:324:0 ----------------------------------------------------------------------- apply-match [57] 100.0% [63] 330(1.0%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:143:10 loop! [69] 100.0% ----------------------------------------------------------------------- apply-match [57] 100.0% [64] 302(0.9%) 0(0.0%) mk-enode! ...bie/develop/src/core/egraph.rkt:101:0 hash-has-key? [76] 100.0% ----------------------------------------------------------------------- match-e [58] 100.0% [65] 3130(9.3%) 718(2.1%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [71] 50.5% list-cartesian-product [72] 26.5% ----------------------------------------------------------------------- match-e [58] 100.0% [66] 1086(3.2%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:529:0 ??? [70] 100.0% ----------------------------------------------------------------------- merge-egraph-nodes! [59] 100.0% [67] 664(2.0%) 336(1.0%) update-leader! ...evelop/src/core/egraph.rkt:217:0 for-loop [74] 49.4% ----------------------------------------------------------------------- for-loop [61] 100.0% [68] 358(1.1%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:167:0 parse-app [73] 100.0% ----------------------------------------------------------------------- loop [56] 50.0% for-loop [63] 50.0% [69] 330(1.0%) 330(1.0%) loop! ...s/herbie/develop/src/core/enode.rkt:163:2 loop [56] 50.0% ----------------------------------------------------------------------- variable? [66] 35.3% finalize-iter! [15] 64.7% [70] 3074(9.1%) 724(2.1%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [75] 54.0% hash-has-key? [76] 11.8% atab-add-altns [79] 10.7% ----------------------------------------------------------------------- match-e [58] 20.7% for-loop [65] 79.3% [71] 1750(5.2%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [58] 100.0% ----------------------------------------------------------------------- list-cartesian-product [72] 16.5% for-loop [65] 83.5% [72] 998(3.0%) 662(2.0%) list-cartesian-product ...src/core/ematch.rkt:20:0 for-loop [77] 33.7% list-cartesian-product [72] 16.5% ----------------------------------------------------------------------- eval-const-expr [68] 100.0% [73] 358(1.1%) 358(1.1%) parse-app .../collects/racket/private/kw.rkt:951:2 ----------------------------------------------------------------------- update-leader! [67] 100.0% [74] 328(1.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:222:6 for-loop [78] 100.0% ----------------------------------------------------------------------- ??? [70] 100.0% [75] 1660(4.9%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [80] 100.0% ----------------------------------------------------------------------- mk-enode! [64] 45.5% ??? [70] 54.5% [76] 664(2.0%) 664(2.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ----------------------------------------------------------------------- list-cartesian-product [72] 100.0% [77] 336(1.0%) 336(1.0%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ----------------------------------------------------------------------- for-loop [74] 100.0% [78] 328(1.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:223:8 hash-update! [81] 100.0% ----------------------------------------------------------------------- ??? [70] 100.0% [79] 328(1.0%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [80] 100.0% ----------------------------------------------------------------------- atab-add-altns [79] 16.5% for-loop [75] 83.5% [80] 1988(5.9%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [82] 83.3% override-at-pnts [83] 16.7% ----------------------------------------------------------------------- for-loop [78] 100.0% [81] 328(1.0%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [84] 100.0% ----------------------------------------------------------------------- atab-add-altn [80] 100.0% [82] 1656(4.9%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [85] 100.0% ----------------------------------------------------------------------- atab-add-altn [80] 100.0% [83] 332(1.0%) 0(0.0%) override-at-pnts ...p/src/core/alt-table.rkt:145:0 errors [85] 100.0% ----------------------------------------------------------------------- hash-update! [81] 100.0% [84] 328(1.0%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:225:24 for-loop [86] 100.0% ----------------------------------------------------------------------- override-at-pnts [83] 16.7% best-and-tied-at-points [82] 83.3% [85] 1988(5.9%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:218:0 for-loop [87] 83.2% eval-prog [88] 16.8% ----------------------------------------------------------------------- ??? [84] 100.0% [86] 328(1.0%) 328(1.0%) for-loop ...bie/develop/src/core/egraph.rkt:226:26 ----------------------------------------------------------------------- errors [85] 100.0% [87] 1654(4.9%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:221:4 ??? [89] 81.7% ->flonum [92] 18.3% ----------------------------------------------------------------------- errors [85] 100.0% [88] 334(1.0%) 334(1.0%) eval-prog ...herbie/develop/src/programs.rkt:149:0 ----------------------------------------------------------------------- map [36] 3.9% for-loop [87] 7.2% loop [56] 88.9% [89] 18778(55.7%) 1068(3.2%) ??? ...tlies/herbie/develop/src/programs.rkt:155:4 ??? [90] 75.9% ??? [91] 16.5% ->flonum [92] 2.0% ----------------------------------------------------------------------- ??? [89] 100.0% [90] 14244(42.3%) 3136(9.3%) ??? ...acket/collects/racket/private/kw.rkt:444:14 bf* [93] 71.2% ??? [97] 2.3% ...higher-order.rkt:346:33 [98] 2.2% ??? [99] 2.2% ----------------------------------------------------------------------- ??? [89] 100.0% [91] 3098(9.2%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [94] 100.0% ----------------------------------------------------------------------- for-loop [87] 12.5% ??? [89] 15.2% loop [56] 72.4% [92] 2424(7.2%) 1336(4.0%) ->flonum ...s/herbie/develop/src/programs.rkt:37:0 ??? [95] 29.7% ??? [96] 15.2% ----------------------------------------------------------------------- ??? [90] 100.0% [93] 10140(30.1%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [100] 100.0% ----------------------------------------------------------------------- ??? [91] 100.0% [94] 3098(9.2%) 2738(8.1%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [106] 11.6% ----------------------------------------------------------------------- ->flonum [92] 100.0% [95] 720(2.1%) 346(1.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [106] 51.9% ----------------------------------------------------------------------- flag-set? [42] 47.6% ->flonum [92] 52.4% [96] 702(2.1%) 0(0.0%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [105] 52.4% ??? [101] 47.6% ----------------------------------------------------------------------- ??? [90] 100.0% [97] 332(1.0%) 332(1.0%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ----------------------------------------------------------------------- ??? [90] 100.0% [98] 320(0.9%) 0(0.0%) ...higher-order.rkt:346:33 (unknown source) ??? [102] 100.0% ----------------------------------------------------------------------- ??? [90] 100.0% [99] 316(0.9%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [103] 100.0% ----------------------------------------------------------------------- bf* [93] 100.0% [100] 10140(30.1%) 700(2.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [104] 93.1% ----------------------------------------------------------------------- ??? [96] 100.0% [101] 334(1.0%) 334(1.0%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ----------------------------------------------------------------------- ...higher-order.rkt:346:33 [98]100.0% [102] 320(0.9%) 0(0.0%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [105] 100.0% ----------------------------------------------------------------------- ??? [99] 100.0% [103] 316(0.9%) 316(0.9%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ----------------------------------------------------------------------- ??? [100] 100.0% [104] 9440(28.0%) 7620(22.6%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [106] 19.3% ----------------------------------------------------------------------- ??? [102] 46.5% ??? [96] 53.5% [105] 688(2.0%) 688(2.0%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ----------------------------------------------------------------------- real->bigfloat [94] 14.1% ??? [95] 14.6% bfmul [104] 71.3% [106] 2554(7.6%) 2554(7.6%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -----------------------------------------------------------------------