How do they avoid the subsequent bugs O3 tends to produce?
First time I’m hearing of this. Do you have some more details?
Not like Ubuntu works very well on old hardware but hopefully O2 support will still be there. Many people need it.
-O2 vs -O3 adds
-fgcse-after-reload -fipa-cp-clone -floop-interchange -floop-unroll-and-jam -fpeel-loops -fpredictive-commoning -fsplit-loops -fsplit-paths -ftree-loop-distribution -ftree-partial-pre -funswitch-loops -fvect-cost-model=dynamic -fversion-loops-for-strides
I don’t think any of these optimizations require more modern hardware?
Yeah, adding a separate microarchitecture like amd64v3 would be a separate item. They might be able to do that with amd64v3 overlay repos that only contain packages that most benefit from the newer microarchitecture.
Right. GCC -f optimizations are basically like “how hard are we going to try to be clever” and are, I believe, orthogonal to the actual instructions used. Machine dependent args start with -m, like -march or -mavx etc.