我正在编写一个用于常量折叠的Pass。
类似于这个C代码:
我该如何从指针“i32*%a”中获取值“%a”以在我的Pass中将所有使用Value%a的位置替换为ConstantInt?
int a = 4;
int b = a + 5;
我希望将其转换为:
int b = 4 + 5;
但是第一段代码将生成一个名为int a
的指令:
store i32 4, i32* %a, align 4
我该如何从指针“i32*%a”中获取值“%a”以在我的Pass中将所有使用Value%a的位置替换为ConstantInt?
alloca
分配的堆栈内存位置。 - wangbo15