Да, надо, но это сложная инженерная задача, затрагивающая всю систему разработки целиком.
То есть, при настройке диалога человека и компилятора по оптимизации неизбежно затрагиваются:
VCS
Editor
Profiler
AOT Compiler
Скорее всего сюда добавятся Debugger, JIT.
Если это делать на mainstream языках, то придётся думать об эволюции окружающих программных систем. А этого, кмк, делают не только лишь все, мало кто это делает.
Соответственно, этот диалог нужно делать не на С/С++, а на "модельных" языках.
Все верно, конечно же нужен модельный язык перед тем как в мейнстрим пытаться