我正在尝试在Perl 6中声明以下C结构:
struct myStruct
{
int A[2]; //<---NEED to declare this
int B;
int C;
};
Run Code Online (Sandbox Code Playgroud)
我的问题是我不知道如何int A[2];使用内置的NativeCall api 声明该部件.
所以我所拥有的是:
class myStruct is repr('CStruct') {
has CArray[int32] $.A;
has int32 $.B;
has int32 $.C;
};
Run Code Online (Sandbox Code Playgroud)
但是,我知道该has CArray[int32] $.A;部分是错误的,因为它没有在我的结构中声明只占用2个int32大小的部分.
是否有一个寄存器包含向量/数组中的元素数量,我必须在使用mulssor 之类的操作之前加载它addss,或者我是否必须将该数字压入堆栈?SSE 指令如何在不超过末尾的情况下知道向量的长度?