Member predicate Instruction::Instruction::isGLValue

Holds if the result produced by this instruction is a glvalue. If this holds, the result of the instruction represents the address of a location, and the type of the location is given by getResultType(). If this does not hold, the result of the instruction represents a value whose type is given by getResultType().

For example, the statement y = x; generates the following IR: r1_0(glval: int) = VariableAddress[x] r1_1(int) = Load r1_0, mu0_1 r1_2(glval: int) = VariableAddress[y] mu1_3(int) = Store r1_2, r1_1

The result of each VariableAddress instruction is a glvalue of type int, representing the address of the corresponding integer variable. The result of the Load instruction is a prvalue of type int, representing the integer value loaded from variable x.

predicate isGLValue()