LLM: «x86: CALL near/ far — явный push return‑address на стек или запись RIP+len в стек; кодировка ближайшего/дальнего перехода в машинных кодах; явная семантика push-retaddr. (возврат через RET, адрес в стекe).
ARM: BL пишeт LR (link register), BLR/RET используют LR/X30; AArch64 имеет явный link register X30; вызов обычно PC‑relative (иммедиат смещён).
Loongson/MIPS: обычно jump-and-link сохраняет PC в регистр (ra), целевой адрес может быть регистровым/иммедиатным; схож с ARM.
JVM/CLR: вызовы — виртуальные/статические/интерфейсные/специальные — семантика больше про вызов метода и стек фрейм/operand stack; return address не экспонируется регистрам — управление управляется фрейм‑структурой.
WASM: call записан индекс функции (table/function index), return handled by structured control flow — нет явного return‑address регистров; indirect calls via table.
EBC: гибридный дизайн: текстовые суффиксы (EX, a), есть бит выбора Absolute/Relativ»
Ранее по теме:
CALL(32|64)[EX][a] - мнемоники и инструкции
Отсутствие описания для виртуальной машины помешало воплотить "сказочную колесницу" детальнее, чем она сделана сейчас.
Раньше на форуме были темы про формальное описание семантики инструкций Intel.
Зачем исследовать те разные практические варианты от LLM, если есть отличный теоретический подход?
Отредактировано Лис (Сегодня 05:57:17)