Цитата Сообщение от Vslav Посмотреть сообщение
По ветвлению интересно можно сделать, на каждое ветвление порождать свою ветку виртуального состояния процессора - конвейеров у нас много, можно тащить сразу две ветки, для выполненного и пропущенного условия перехода. Если дальше опять ветвления - новые ветки породить. По коммиту инструкции ветвления - ложные ветки убивать, верные коммитить в реальность. Такой себе мета-квантовый подход
Весь out-of-order прекрасен, пока не изменяется внешнее состояние (например запись/чтение периферийных адресов нельзя ни переупорядочивать, ни откатывать), однако если принять, что страница ввода/вывода находится всегда по фиксированным адресам (как в большинстве реализаций), то можно считать что запись/чтение RAM не имеет побочных эффектов — вот уж правда безграничный простор для оптимизаций. Оно и так порвёт FPGA без вопросов, а если сделать что RAM не имеет побочных эффектов то отрыв будет космическим.