ZHCUAQ1F july 2015 – april 2023
__x128_t 容器类型仅在为 C6600 编译时可用,它存储 128 位数据,在 C6600 上执行某些 SIMD 运算时必须使用它。另外,请注意前导的双下划线。使用 __x128_t 容器类型时,必须包含 c6x.h。
此类型可用于定义可与某些 C6600 内在函数一同使用的对象。(请参阅表 8-7。)对象可以使用各种内在函数进行填充和操作。此类型并非成熟的内置类型(如 long-long),因此不允许进行各种本机 C 运算。将此类型视为具有私有成员和特殊操作函数的结构。
当编译器将一个 __x128_t 对象放入寄存器文件中时,__x128_t 对象接受四个寄存器(寄存器 quad)。类型为 __x128_t 的对象与存储器中的 64 位边界对齐。
当 __x128_t 对象在栈上传递时,它被放置在相对于栈开始的 64 位边界上。(默认情况下,栈本身与 64 位边界对齐。)相关详细信息,请参阅节 8.6.2 中的注释。
支持以下操作:
__x128_t a;
)。默认情况下,它将放在 .far 段中。__x128_t a;
)。它将被放在栈上。__x128_t *a;
)。__x128_t a[10];
)。不支持以下运算: