Comment by nicula

4 months ago

> So it's not a Clang regression per se, it's an issue with the LLVM core?

Yes.

> If you run LLVM 18's `opt` on bytecode generated by Clang 19 and then compile it, does it also generate the same bad assembly?

No. If you pass the LLVM IR bitcode generated by Clang 18 to Clang 19, then the assembly is good.

I called it a 'Clang regression' in the sense that the way in which I discovered and tested this difference in performance was via Clang. So from a typical user's perspective (who doesn't care about the inner workings and distinct components of Clang), this is a 'Clang regression'.