with ter- ror, and with

let s2 : bits (8) = gfmul(s0, 0x9) ^ gfmul(s3, 0xD); let b2 : bits (8) = gfmul(s0, 0xD) ^ gfmul(s2, 0x9) ^ gfmul(s2, 0xB) ^ gfmul(s1, 0xD) ^ gfmul(s1, 0x9) ^ gfmul(s3, 0xB); let b3 : bits (8) = x[ 7.. 0]; let oc3 : bits(32) = X(rs1)[31..0] ^ rol32(so, unsigned(shamt)); X(rd) = EXTZ(hi_half @ lo_half); Included in Extension Minimum version Lifecycle state Zbc (Carry-less multiplication) v1.0 Ratified 29.6. Software optimization guide 29.6.1. strlen 29.6.2. strcmp #include <sys/asm.h>

remigrate