3

Consider the following .c file:

#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;
}

In its LLVM IR form @ Compiler Explorer, the alignment of the array a is 16:

%2 = alloca [2 x [3 x i32]], align 16

Is it possible to explain why it is 16?

hengxin
  • 1,867
  • 2
  • 21
  • 42

0 Answers0