//builtin type: if x86_64, then since i use simd, should align them //typedef struct vec2 { // float x; // float y; // float _padding1; // float _padding2; //} __attribute__((aligned(16)));//losing 8 byte //typedef struct vec3 { // float x; // float y; // float z; // float _padding; //} __attribute__((aligned(16)));//losing 4 byte //typedef struct vec4 { // float x; // float y; // float z; // float w; //} __attribute__((aligned(16)));