The general case is already so complex that it would probably be worthwhile just to bail and defer to the microcode primitive, but I don't think Liar can do that only for particular uses of primitives, and obviously we don't want to do that for every use of the FIXNUM-LSH primitive.