From 2d1cf4763643d4a7ed71c41bba27584781792d29 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 22 Aug 2012 10:28:01 -0600 Subject: [PATCH] add `flexpt' to compiler's table of flonum functions Relevant to PR 13052 - works around the problem while improving the optimizer, but doesn't fix the real problem, I think. --- src/racket/src/optimize.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/racket/src/optimize.c b/src/racket/src/optimize.c index 3b80cbd7fe..838b3eee31 100644 --- a/src/racket/src/optimize.c +++ b/src/racket/src/optimize.c @@ -1452,6 +1452,7 @@ int scheme_wants_flonum_arguments(Scheme_Object *rator, int argpos, int rotate_m || IS_NAMED_PRIM(rator, "flatan") || IS_NAMED_PRIM(rator, "fllog") || IS_NAMED_PRIM(rator, "flexp") + || IS_NAMED_PRIM(rator, "flexpt") || IS_NAMED_PRIM(rator, "fl+") || IS_NAMED_PRIM(rator, "fl-") || IS_NAMED_PRIM(rator, "fl*") @@ -1535,6 +1536,7 @@ static int produces_unboxed(Scheme_Object *rator, int *non_fl_args, int argc, in || IS_NAMED_PRIM(rator, "fl/") || IS_NAMED_PRIM(rator, "flmin") || IS_NAMED_PRIM(rator, "flmax") + || IS_NAMED_PRIM(rator, "flexpt") || (for_args && (IS_NAMED_PRIM(rator, "fl<") || IS_NAMED_PRIM(rator, "fl<=")