C ABI структуры с плавающей запятой как параметр - PullRequest
0 голосов
/ 05 мая 2020

Я работаю над некоторыми zig-привязками, но поскольку язык не имеет полной C поддержки ABI , я пытаюсь взломать его, чтобы хоть немного поработать. Из приведенного выше вопроса я знаю, что обычные параметры структуры и объединения <= 16 байтов разбиты на части без каких-либо изменений, за исключением структур или объединений, которые являются просто плавающими и <= 16. Мой вопрос: что делает C для эти структуры? </p>

Изменить (дополнительная информация): при передаче структуры в качестве параметра в C, C по-разному обрабатывает различные типы структур. Для структур, размер которых на 16 байт меньше, существует два вида: «нормальные» и структуры, состоящие только из чисел с плавающей запятой. Я знаю, как C передает обычные структуры, просто разбивая их на части и помещая их в стек, но я не знаю, как он передает структуры only-float.

Информация о платформе:
64-битная macOS, компилятор - apple clang версии 11.0.3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...