Здравствуйте, cppguard, Вы писали:
C>Может ли SSA быть не в виде трёх-адресного кода? Если да, то как это выглядит?
Возможно я вопрос не понял, но если в SSA хочется записывать что-то типа a = b + c * d в одной инструкции,
то нужно опкод соответствующий иметь — типа ADDMUL b, c, d.
Иначе, это будут две трехадресные инструкции.
C>Может ли SSA быть не в виде трёх-адресного кода? Если да, то как это выглядит?
Ну, почитайте же вы уже книжки по компилятором.
Еще в 1975 году на русском вышел перевод книжки Гриса.
Там этих промежуточных представлений — дофига.
В то время трехадресный код назывался "тетрады".
Но там рассматриваются и триады и косвенные тетрады, и польская запись.
Байт-код, который в яве — это тоже промежуточное представление вполне себе.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, cppguard, Вы писали:
C>Может ли SSA быть не в виде трёх-адресного кода? Если да, то как это выглядит?
Это уже обсуждалось: https://rsdn.org/forum/alg/8464449.1
Здравствуйте, Sinclair, Вы писали:
S>Откуда вы вообще берёте взаимосвязь SSA и трёхадресного кода?
Примеры дурацкие приводят, которые похожи друг на друга. Но по совету другого коментатора я почитал книгу дракона, и теперь стало гораздо яснее