我有以下
.c
文件:
#include <stdio.h>
int main() {
int a[2][3] = { 0 };
int i = 1, j = 2;
int c = 10, d = 20;
d = c + a[i][j];
printf("%d\n", d);
return 0;
}
在它的LLVM IR 形式@Compiler Explorer 中,数组
a
的对齐是16
:
%2 = alloca [2 x [3 x i32]], align 16
有没有可能解释为什么会这样
16
?