1118 buf.append("illegal");
1119 } else {
1120 Location.Where w = loc.getWhere();
1121 Location.Type type = loc.getType();
1122
1123 if (w == Location.Where.ON_STACK) {
1124 buf.append("stack[" + loc.getStackOffset() + "]");
1125 } else if (w == Location.Where.IN_REGISTER) {
1126 boolean isFloat = (type == Location.Type.FLOAT_IN_DBL ||
1127 type == Location.Type.DBL);
1128 int regNum = loc.getRegisterNumber();
1129 VMReg vmReg = new VMReg(regNum);
1130 buf.append(VMRegImpl.getRegisterName(vmReg.getValue()));
1131 }
1132
1133 buf.append(", ");
1134 if (type == Location.Type.NORMAL) {
1135 buf.append("normal");
1136 } else if (type == Location.Type.OOP) {
1137 buf.append("oop");
1138 } else if (type == Location.Type.INT_IN_LONG) {
1139 buf.append("int");
1140 } else if (type == Location.Type.LNG) {
1141 buf.append("long");
1142 } else if (type == Location.Type.FLOAT_IN_DBL) {
1143 buf.append("float");
1144 } else if (type == Location.Type.DBL) {
1145 buf.append("double");
1146 } else if (type == Location.Type.ADDR) {
1147 buf.append("address");
1148 } else if (type == Location.Type.INVALID) {
1149 buf.append("invalid");
1150 }
1151 }
1152 return buf.toString();
1153 }
1154
1155 private String scopeValueAsString(ScopeValue sv) {
1156 Formatter buf = new Formatter(genHTML);
1157 if (sv.isConstantInt()) {
|
1118 buf.append("illegal");
1119 } else {
1120 Location.Where w = loc.getWhere();
1121 Location.Type type = loc.getType();
1122
1123 if (w == Location.Where.ON_STACK) {
1124 buf.append("stack[" + loc.getStackOffset() + "]");
1125 } else if (w == Location.Where.IN_REGISTER) {
1126 boolean isFloat = (type == Location.Type.FLOAT_IN_DBL ||
1127 type == Location.Type.DBL);
1128 int regNum = loc.getRegisterNumber();
1129 VMReg vmReg = new VMReg(regNum);
1130 buf.append(VMRegImpl.getRegisterName(vmReg.getValue()));
1131 }
1132
1133 buf.append(", ");
1134 if (type == Location.Type.NORMAL) {
1135 buf.append("normal");
1136 } else if (type == Location.Type.OOP) {
1137 buf.append("oop");
1138 } else if (type == Location.Type.NARROWOOP) {
1139 buf.append("narrowoop");
1140 } else if (type == Location.Type.INT_IN_LONG) {
1141 buf.append("int");
1142 } else if (type == Location.Type.LNG) {
1143 buf.append("long");
1144 } else if (type == Location.Type.FLOAT_IN_DBL) {
1145 buf.append("float");
1146 } else if (type == Location.Type.DBL) {
1147 buf.append("double");
1148 } else if (type == Location.Type.ADDR) {
1149 buf.append("address");
1150 } else if (type == Location.Type.INVALID) {
1151 buf.append("invalid");
1152 }
1153 }
1154 return buf.toString();
1155 }
1156
1157 private String scopeValueAsString(ScopeValue sv) {
1158 Formatter buf = new Formatter(genHTML);
1159 if (sv.isConstantInt()) {
|