13:39:42drmeisterACTION is so deep in the rabbit hole that he's planning what carrot canapes to serve when he next hosts bridge night with his rabbity friends.
14:24:43Bikeso the problem with this mask thing is that we're working with three arrays at once (the result and two inputs), and we need to do the same number of iterations for all them
14:25:15Bikeand i just checked and sbcl just does it slowly, bit by bit, in the case of the start being nonzero, which is the only case this is needed for
14:25:26Bikeso i think i should shelve this, at least for now
14:25:48drmeisterIsn't it also needed if the end doesn't align with a word boundary?
14:26:30BikeIt's needed if the end doesn't align with a word boundary AND we actually care about what's beyond the end, which can happen with displaced arrays only
14:26:43Bikeif they're just simple bit vectors there's no harm in ANDing the noise at the end together
14:29:51Bikeand then think about where to go from there
14:40:40Bikewell here's a stupid problem, there's a different popcount intrinsic for int and long and long long, but Fixnum is a int64_t and who knows what it is
14:53:06Bikeit's actually byte32_t (aka uint32_t)... and i can look at the defs and see it's unsigned int... but when i've tried this sort of thing before it's been different on linux
15:17:40Bikeokay, i wrote it. the assertion might trigger on linux and break the build though.