libera/#sbcl - IRC Chatlog
Search
9:43:06
moon-child
I am trying to add avx512 support to sbcl. I have it mostly working, but have one problem: the mask registers. These should be able to hold integers, so I added to primtype: (!def-primitive-type unsigned-byte-64 (unsigned-reg descriptor-reg mask-reg). I have also done (define-move-vop move-from-mask :move (mask-reg) (unsigned-reg signed-reg)) (for appropriately defined move-from-mask). But I get
9:43:08
moon-child
the following error during bootstrapping: '#<TN t1 :NORMAL> is not valid as the first argument to the MOVE-FROM-WORD/FIXNUM VOP, since the TN's primitive type UNSIGNED-BYTE-64 allows SCs: (MASK-REG) which cannot be coerced or loaded into the allowed SCs: (SIGNED-REG UNSIGNED-REG) Current cost info inconsistent with that in effect at compile time. Recompile. Compilation order may be incorrect.'
9:43:25
moon-child
any hints? I would expect that define-move-vop to allow moving from mask-reg to unsigned-reg