Search
Sunday, 9th of August 2020, 18:40:12 UTC
21:01:46
no-defun-allowed
"how often is that needed" is the big question.
21:11:36
stassats
then the more generic it is the better, like working on any bignums
21:12:50
stassats
and it should stop converting things that aren't handled by generic-* to generic-*
21:16:01
no-defun-allowed
Although, in my transform, I should probably just inline the (bignum bignum) branch of two-arg-* if I've concluded we have two bignum arguments instead of calling generic-* again.
21:16:55
no-defun-allowed
...or should something rewrite the comparator with two bignum arguments to that case?
21:19:35
stassats
also i don't think you'll ever see <= or >=
21:20:37
no-defun-allowed
I only have one "real world test" for integer-bignum comparisons, so I'm not sure of that.
21:21:10
stassats
i mean not in the real world, but reaching the transform
21:21:46
no-defun-allowed
Oh, fair enough then.
21:26:22
no-defun-allowed
How awful would inlining two-arg-* and having the results of type inference remove the unnecessary clauses be?
21:28:52
no-defun-allowed
That seems like the most generic solution to me, but arguably the most horrid.
21:37:34
stassats
i'm rewriting it in a different fashion
21:43:59
stylewarning
stas “symbol scribe” sats
21:54:02
stassats
tries to fold a bignum-plus-p in bignum.lisp
21:54:12
stassats
but i don't want to disable it on sb-xc-host
21:59:31
stassats
ok, and we don't want to make things worse for ub64 arithmetic
22:02:54
stassats
throw onto the pile of things to do once there's a way to delay transforms until the very end
22:09:00
stassats
no-defun-allowed: that applies both to your original patch and my rewrite
22:11:17
stassats
probably why you saw a slow down
22:13:26
stassats
that additional transform stage, it will either be stupid or slow things down by doing more passes
22:14:09
stassats
well, typechecks perform more passes, but i got it to be restricted to the newly generated code
22:14:18
stassats
something like that could be employed here
Monday, 10th of August 2020, 6:40:12 UTC