В C ++ у вас есть флаги компиляции для включения «Оптимизации отладки» с помощью «-Og» или «/ Og» (и, возможно, других флагов в других компиляторах).
Этот флаг включает очень базовые c оптимизации, которые не мешают отладке (насколько я понимаю). Но это означает, что для программы разрешены тривиальные или «бесплатные» оптимизации, сделанные компилятором, о которых вам не нужно беспокоиться.
From G CC optimize options , «Оптимизация процесса отладки»:
Оптимизация процесса отладки. -Og должен быть уровнем оптимизации для стандартного цикла редактирования-компиляции-отладки, предлагая разумный уровень оптимизации при сохранении быстрой компиляции и хорошего опыта отладки. Это лучший выбор, чем -O0 для создания отлаживаемого кода, потому что некоторые проходы компилятора, которые собирают отладочную информацию, отключены в -O0.
Мне было интересно, есть ли где-нибудь возможность включить такой же вид выгоды, или планируются ли такие варианты. В идеале, который может быть включен через car go и как можно более кроссплатформенным способом.
Обратите внимание, что я не спрашиваю о «opt-level», которые эквивалентны «-O1, - 02, et. c ".