Я думаю, что это категорически доказывает давнее предложение о том, что у GCC слишком много вариантов.
Что касается ответа на ваш конкретный вопрос, я думаю, вы собираетесь сделать что-то, что, в конце концов,не имеет большого значения.Одна из основных проблем заключается в том, что ваш полученный ген будет полезен только для конкретной архитектуры, среды и версии gcc.
Кроме того, я уверен, что кто-то, знакомый с GCC, будет лучше, чем ваш алгоритм в большинстве реальныхслучаи из жизни.
Я не имею в виду дождь на вашем параде или что-то еще, это, безусловно, интересное техническое / интеллектуальное упражнение.Я написал бы программу на C / C ++, которая выводит скрипт / командную строку оболочки, затем запускает результирующий скрипт / командную строку, рассчитывает время и сохраняет время, необходимое для выполнения , и правильность результата .Некоторые оптимизации могут привести к тому, что определенный код будет выполняться по-разному, что приведет к неверному результату.Убедитесь, что ваш тест-кейс выводит числовые данные, чтобы вы могли рассчитать, насколько ваша оптимизированная программа приблизилась к ожидаемому результату.
Здесь ваши тест-кейсы никогда не пройдут достаточно, и ваша фитнес-функцияэто будет главным образом догадки (поскольку это будет во многом зависеть от того, какие другие процессы выполнялись на машине в то время и что они делали).Это займет долго время, чтобы развиться.