Ha HA ! Good one !
I believe that the core of the problem with the C language is that is based upon abstracting the PDP-11 instruction set. CPUs, such as Intel/AMD x64 are vastly more complex so "optimising" C compilers are trying to make something simple take advantage of something far more complex. Perhaps we should call them "complexifying" compilers.
Generally, model-to-model transformations (which is effectively what compilers do under the covers) are easier to define when we transform from a higher level of abstraction to a lower level of abstraction. As folks in the MBSE field explain it, trying to put a pig together from sausages.