Sometimes, for performance critical paths, I would like gcc to be dumb and
follow *my* code and not its hard-coded probabilities.
If you really want that, simple: just disable optimization @)
Maybe one thing we would need would be the ability to assign probabilities
to each branch based on what we expect, so that gcc could build a better
tree keeping most frequently used code tight.
Just use profile feedback then for user space. I don't think it's a good
idea for kernel code though because it leads to unreproducible binaries
which would wreck the development model.
Hmm I've just noticed -fno-guess-branch-probability in the man, I never tried
it.
Or -fno-reorder-blocks
-Andi