> Ну так надо всего-лишь, чтобы эта «хрень» узнала… Теоретически.Теоретически, оно для этого должно было знать о том что такое VLIW еще на фазе дизайна проекта, до начала реализации оного. И иметь штатные возможности учета взаимозависимостей команд и как оно там лучше параллелится, что с чем можно комбинировать и прочая.
А сейчас уже немного поздно пить боржоми: проект уже реализован. И оно такое хорошее было совсем не в курсе что такое VLIW и как ему надо команды по нормальному генерить. АМДшники ухайдакали массу ресурсов на прыг по граблям и зверский костылинг чтобы вообще получить просто технически валидный поток команд который VLIW потом вообще в принципе сможет прожевать. Об оптимальности этого потока команд... ну вы поняли.
Справедливости ради - это "фирменный" геморрой VLIW и похожих по смыслу, всю историю этого типа архитектур, т.к. большинство компилеров писалось под более-менее типовые процессорные архитектуры, а это не про VLIW с его закидонами на предмет того что с чем можно группировать в "широком слове", какие где взаимозависимости, что кого клинит и прочая. По факту при этом компилер должен явно знать какие в проце по факту есть блоки выполнения и что и как именно их озадачивает.
Теоретически, кастомный кодогенератор сильно использующий это мог бы всем надрать попы. Практически, сделать хороший компилер под VLIW - рокетсайнс и брейнфак. И отсутствие хороших компилеров, изначально задизайненых под VLIW и оптимальное использование его особенностей - всегда икалось VLIWам. Итанику вон тоже икалось, например.