And then I guess you can look up the optimizations like e.g. if you wanted to know what
-fbranch-count-reg
```does, then you can look it up on the gcc page where it says:
> `-fno-branch-count-reg`
>
> Disable the optimization pass that scans for opportunities to use “decrement and branch” instructions on a count register instead of instruction sequences that decrement a register, compare it against zero, and then branch based upon the result. This option is only meaningful on architectures that support such instructions, which include x86, PowerPC, IA-64 and S/390. Note that the `-fno-branch-count-reg` option doesn’t remove the decrement and branch instructions from the generated instruction stream introduced by other optimization passes.
>
> The default is `-fbranch-count-reg` at -O1 and higher, except for -Og.
If you want to get even more in-depth then I guess you can look through the source code of `gcc` yourself, although I probably wouldn't recommend that.