将涉及 CPU 个寄存器的指令转换为内存指令
Converting instruction involving CPU registers to memory instruction
我是 LLVM 的新手,了解 LLVM 的指令生成。作为其中的一部分,我正在尝试将基本布尔指令转换为直接将内存寄存器用作操作数。例如,在下面的 IR 中,我希望 and
操作使用 %a
和 %b
而不是 %11
和 %12
。
%11 = load i32, i32* %a, align 4 \n
%12 = load i32, i32* %b, align 4 \n
%13 = and i32 %11, %12\
store i32 %13, i32* %d, align 4\n
我需要为此编写新的 and
指令,还是有其他更简单的方法?
我觉得不可行。如果没有显式加载或存储,则无法访问 LLVM 中的内存。
我是 LLVM 的新手,了解 LLVM 的指令生成。作为其中的一部分,我正在尝试将基本布尔指令转换为直接将内存寄存器用作操作数。例如,在下面的 IR 中,我希望 and
操作使用 %a
和 %b
而不是 %11
和 %12
。
%11 = load i32, i32* %a, align 4 \n
%12 = load i32, i32* %b, align 4 \n
%13 = and i32 %11, %12\
store i32 %13, i32* %d, align 4\n
我需要为此编写新的 and
指令,还是有其他更简单的方法?
我觉得不可行。如果没有显式加载或存储,则无法访问 LLVM 中的内存。