libera/#sbcl - IRC Chatlog
Search
23:14:04
sveit
the point is that the disassembly of test-caller-untyped and test-caller-typed-with-ftype clearly show incf-counter is inlined, but in test-caller-typed it is not
23:15:17
sveit
test-caller-typed can be compiled with (declare (optimize (speed 3) (safety 0) (debug 0))) and still not inline incf-counter
23:16:58
sveit
this is of course a simplified example where it ended up being pretty easy to tell what was going on, but sometimes lambdas and other things are passed around, or functions with a more general type than the one requested by a caller, and I wonder if this means I should just never annotate the type of functions. more generally, i'd like warnings when things aren't inlined since it seems that the reasons can be a bit subtle (unless I
0:40:22
stassats
sveit: i fixed cast elimination for local functions, should do something to one of your variants
0:58:39
sveit
stassats: amazing! will try out HEAD soon. actually, i wanted to take this chance to extend a huge thanks to you and all the maintainers of SBCL. it's become an indispensable tool for me; without it, there are probably certain approaches to problems in my work that I would never even try. so thank you again.