33 lines
814 B
Java
Executable File
33 lines
814 B
Java
Executable File
package midend.llvm.value;
|
|
|
|
import midend.llvm.type.IrType;
|
|
import midend.llvm.constant.IrConstant;
|
|
|
|
public class IrGlobalValue extends IrValue {
|
|
private boolean isConstant;
|
|
private IrConstant initVal;
|
|
|
|
public IrGlobalValue(IrType type, String name, boolean isConstant, IrConstant initVal) {
|
|
super(type, name);
|
|
this.isConstant = isConstant;
|
|
this.initVal = initVal;
|
|
}
|
|
|
|
public boolean isConstant() {
|
|
return isConstant;
|
|
}
|
|
|
|
public IrConstant getInitVal() {
|
|
return initVal;
|
|
}
|
|
|
|
public String toString() {
|
|
return isConstant ? getName() + " = dso_local constant " + initVal.toString() :
|
|
getName() + " = dso_local global " + initVal.toString();
|
|
}
|
|
|
|
public void toMips() {
|
|
initVal.toMips(getMipsLabel());
|
|
}
|
|
}
|