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.
I was reasonably certain, but left it open in case OP knew of some edge case where flags that are intended to be machine independent caused bugs on different architectures
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.