4.15 Архитектура ¶
- Значения или выражения, присваиваемые макросам, указанным в заголовках
<float.h>,<limits.h>, и<stdint.h>(C90, C99 и C11 5.2.4.2, C99 7.18.2, C99 7.18.3, C11 7.20.2, C11 7.20.3).Определяется ABI.
- Результат попытки косвенного доступа к объекту со статической или потоковой длительностью хранения из потока, отличного от того, к которому он относится (C11 6.2.4).
Такие обращения поддерживаются, при условии соблюдения тех же требований к синхронизации для одновременных обращений, что и для одновременных обращений к любому объекту.
- Количество, порядок и кодировка байтов в любом объекте (если это не указано явно в настоящем Международном стандарте) (C99 и C11 6.2.6.1).
Определяется ABI.
- Поддержка расширенных выравниваний и контекстов, в которых они поддерживаются (C11 6.2.8).
Расширенные выравнивания до 2^{28} (байтов) поддерживаются для объектов со статической длительностью хранения. Выравнивания, поддерживаемые для объектов со статической и потоковой длительностью хранения, определяются ABI.
- Действительные значения выравнивания, отличные от тех, которые возвращает выражение _Alignof для фундаментальных типов, если таковые имеются (C11 6.2.8).
Действительные значения выравнивания являются степенями двойки до и включая 2^{28}.
- Значение результата операторов
sizeofи_Alignof(C90 6.3.3.4, C99 и C11 6.5.3.4).Определяется ABI.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.5.0/gcc/Architecture-implementation.html