x86 64 — Почему x86-64 использует IA-64 C ++ ABI?

От ПСАБИ x86-64:

9.1 C ++

Для C ++ ABI мы будем использовать IA-64 C ++ ABI и соответственно создавать его экземпляры.
Текущий проект этого ABI доступен по адресу:

http://mentorembedded.github.io/cxx-abi/

Почему бы не разработать свой собственный ABI?

3

Решение

Потому что «Itanium» C ++ ABI разработан как универсальный или, по крайней мере, обобщаемый. квотирование вступление:

В общем, этот документ написан как общая спецификация, которая может использоваться реализациями C ++ на различных архитектурах. Тем не менее, он содержит специфичный для процессора материал для 64-разрядной ABI Itanium, идентифицированный как таковой. В тех случаях, когда описывается структура структурированных данных, мы обычно принимаем размеры элементов Itanium psABI. Реализация 32-разрядного ABI обычно просто изменяет размеры элементов соответствующим образом (то есть указатели и длинные целые становятся 32-разрядными), но иногда для компактности требуется изменение порядка, и мы отмечаем более существенные изменения.

Фраза «создать соответствующий экземпляр» относится к адаптациям, необходимым для корректировки предположений о Itanium psABI для использования с x86-64 psABI.

6

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector