> I opened: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107061
The online docs for encodekey256 also say XMM4 through XMM6 are reserved for future usages and software should not rely upon them being zeroed. I believe we also zero there. > This sounds like an issue. So with your patch for encodekey128 the regression is gone and we zero (pxor) xmm0 in both versions. The case I outlined before does not actually happen since cprop_hardreg propagates the (newly) zeroed register to the use sites rather than zeroing every time. I guess this just leaves the situation where we implicitly know that a reg is zero and by rather zeroing another one we miss the cprop_hardreg opportunity. Not sure how common this is and if it's a blocker for this patch. No regressions on x86, aarch64, power9 and s390 now. Most likely we don't check to that granularity in the test suite and even here it was more of accidental hit.