On 11/10/22 14:36, Philipp Tomsich wrote:
Add a split for cases where we can use two bclri (or one bclri and an andi) to clear two bits. gcc/ChangeLog: * config/riscv/bitmanip.md (*bclri<mode>_nottwobits): New pattern. (*bclridisi_nottwobits): New pattern, handling the sign-bit. * config/riscv/predicates.md (const_nottwobits_operand): New predicate. gcc/testsuite/ChangeLog: * gcc.target/riscv/zbs-bclri.c: New test.
Don't we only have to worry about (subreg:DI (reg:SI )) to preserve the extension constraints? Not that I think there's any value in allowing HI/QI, mostly wanting to double check my understanding of the extension constraints.
OK jeff