topperc wrote: > Is there any reason we can't pattern match ISD::ABS -> absw, e.g. `def : PatGprGpr<binop_allwusers<abs>, ABSW>;`? An i64 abs would use bit 63 as the sign bit. We need to use bit 31. Having all W users isn't enough. https://github.com/llvm/llvm-project/pull/165047