Skip to content

Commit f2f013a

Browse files
committed
CHanges for Github gate.
1 parent 6faffc6 commit f2f013a

File tree

2 files changed

+6
-45
lines changed

2 files changed

+6
-45
lines changed

substratevm/src/com.oracle.objectfile/src/com/oracle/objectfile/pecoff/cv/CVSymbolSubrecord.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -377,15 +377,14 @@ protected CVSymbolDefRangeBase(CVDebugInfo debugInfo, short recordType, String p
377377
}
378378
}
379379

380+
@SuppressWarnings("unused")
380381
void addGap() {
381382
/* TODO */
382383
GraalError.shouldNotReachHere("addGap() not implemented");
383384
}
384385

385386
int computeRange(byte[] buffer, int initialPos) {
386387
/* Emit CV_LVAR_ADDR_RANGE. */
387-
// int pos = cvDebugInfo.getCVSymbolSection().markRelocationSite(buffer, initialPos,
388-
// procName, (long) procOffset);
389388
int pos = cvDebugInfo.getCVSymbolSection().markRelocationSite(buffer, initialPos, procName);
390389
pos = CVUtil.putShort(range, buffer, pos);
391390
return pos;

substratevm/src/com.oracle.objectfile/src/com/oracle/objectfile/pecoff/cv/CVSymbolSubsectionBuilder.java

Lines changed: 5 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@
3636
import org.graalvm.compiler.debug.GraalError;
3737

3838
import java.lang.reflect.Modifier;
39-
import java.util.ArrayList;
4039

4140
import static com.oracle.objectfile.pecoff.cv.CVConstants.CV_AMD64_CL;
4241
import static com.oracle.objectfile.pecoff.cv.CVConstants.CV_AMD64_CX;
@@ -83,8 +82,6 @@ final class CVSymbolSubsectionBuilder {
8382
private static final short[] javaGP32registers = {CV_AMD64_EDX, CV_AMD64_R8D, CV_AMD64_R9D, CV_AMD64_EDI, CV_AMD64_ESI, CV_AMD64_ECX};
8483
private static final short[] javaGP16registers = {CV_AMD64_DX, CV_AMD64_R8W, CV_AMD64_R9W, CV_AMD64_DI, CV_AMD64_SI, CV_AMD64_CX};
8584
private static final short[] javaGP8registers = {CV_AMD64_DL, CV_AMD64_R8B, CV_AMD64_R9B, CV_AMD64_DIL, CV_AMD64_SIL, CV_AMD64_CL};
86-
// private static final short[] javaFP128registers = {CV_AMD64_XMM0, CV_AMD64_XMM1,
87-
// CV_AMD64_XMM2, CV_AMD64_XMM3};
8885
private static final short[] javaFP64registers = {CV_AMD64_XMM0L, CV_AMD64_XMM1L, CV_AMD64_XMM2L, CV_AMD64_XMM3L};
8986
private static final short[] javaFP32registers = {CV_AMD64_XMM0_0, CV_AMD64_XMM1_0, CV_AMD64_XMM2_0, CV_AMD64_XMM3_0};
9087

@@ -174,14 +171,13 @@ private void buildFunction(CompiledMethodEntry compiledEntry) {
174171
/* The name as exposed to the linker. */
175172
final String externalName = primaryRange.getSymbolName();
176173

177-
/* S_PROC32 add function definition. */
174+
/* add function definition. */
178175
final int functionTypeIndex = addTypeRecords(compiledEntry);
179176
final byte funcFlags = 0;
180177
CVSymbolSubrecord.CVSymbolGProc32Record proc32 = new CVSymbolSubrecord.CVSymbolGProc32Record(cvDebugInfo, externalName, debuggerName, 0, 0, 0, primaryRange.getHi() - primaryRange.getLo(), 0,
181178
0, functionTypeIndex, (short) 0, funcFlags);
182179
addSymbolRecord(proc32);
183180

184-
/* NB: LLVM uses 0x14000. */
185181
final int frameFlags = FRAME_ASYNC_EH + FRAME_LOCAL_BP + FRAME_PARAM_BP;
186182
addSymbolRecord(new CVSymbolSubrecord.CVSymbolFrameProcRecord(cvDebugInfo, compiledEntry.getFrameSize(), frameFlags));
187183

@@ -194,18 +190,14 @@ private void buildFunction(CompiledMethodEntry compiledEntry) {
194190
addLineNumberRecords(compiledEntry);
195191
}
196192

197-
198193
void addLocals(CompiledMethodEntry primaryEntry) {
199194
final Range primaryRange = primaryEntry.getPrimary();
200195
/* The name as exposed to the linker. */
201196
final String externalName = primaryRange.getSymbolName();
202197

203198
/* Add register parameters - only valid for the first instruction or two. */
204-
// addToSymbolSubsection(new CVSymbolSubrecord.CVSymbolBlock32Record(cvDebugInfo,
205-
// externalName));
206199

207200
MethodEntry method = primaryRange.getMethodEntry();
208-
ArrayList<CVSymbolSubrecord> regRelRecords = new ArrayList<>(method.getParamCount() + 1);
209201
int gpRegisterIndex = 0;
210202
int fpRegisterIndex = 0;
211203

@@ -219,7 +211,7 @@ void addLocals(CompiledMethodEntry primaryEntry) {
219211
gpRegisterIndex++;
220212
}
221213

222-
/* define function parameters accoording to the calling convention */
214+
/* define function parameters (p1, p2...) according to the calling convention */
223215
for (int i = 0; i < method.getParamCount(); i++) {
224216
final TypeEntry paramType = method.getParamType(i);
225217
final int typeIndex = cvDebugInfo.getCVTypeSection().addTypeRecords(paramType).getSequenceNumber();
@@ -229,19 +221,11 @@ void addLocals(CompiledMethodEntry primaryEntry) {
229221
if (fpRegisterIndex < javaFP64registers.length) {
230222
final short register = typeIndex == T_REAL64 ? javaFP64registers[fpRegisterIndex] : javaFP32registers[fpRegisterIndex];
231223
addSymbolRecord(new CVSymbolSubrecord.CVSymbolLocalRecord(cvDebugInfo, paramName, typeIndex, 1));
232-
// addSymbolRecord(new CVSymbolSubrecord.CVSymbolRegisterRecord(cvDebugInfo,
233-
// paramName, typeIndex, javaFPregisters[fpRegisterIndex]));
234224
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeRegisterRecord(cvDebugInfo, register, externalName, 0, 8));
235-
// addSymbolRecord(new
236-
// CVSymbolSubrecord.CVSymbolDefRangeFramepointerRel(cvDebugInfo, "main", 8,
237-
// (short) 8, 32));
238225
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeFramepointerRelFullScope(cvDebugInfo, 0));
239-
// regRelRecords.add(new
240-
// CVSymbolSubrecord.CVSymbolRegRel32Record(cvDebugInfo, paramName,
241-
// typeIndex, 0, javaFPregisters[fpRegisterIndex]));
242226
fpRegisterIndex++;
243227
} else {
244-
/* TODO: stack parameter; keep track of stack offset, etc. */
228+
/* TODO: handle stack parameter; keep track of stack offset, etc. */
245229
break;
246230
}
247231
} else if (paramType.isPrimitive()) {
@@ -261,49 +245,27 @@ void addLocals(CompiledMethodEntry primaryEntry) {
261245
GraalError.shouldNotReachHere("Unknown primitive (type" + paramType.getTypeName() + ") size:" + paramType.getSize());
262246
}
263247
addSymbolRecord(new CVSymbolSubrecord.CVSymbolLocalRecord(cvDebugInfo, paramName, typeIndex, 1));
264-
// addSymbolRecord(new
265-
// CVSymbolSubrecord.CVSymbolRegisterRecord(cvDebugInfo, paramName,
266-
// typeIndex, javaGPregisters[gpRegisterIndex]));
267248
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeRegisterRecord(cvDebugInfo, register, externalName, 0, 8));
268-
// addSymbolRecord(new
269-
// CVSymbolSubrecord.CVSymbolDefRangeFramepointerRel(cvDebugInfo,
270-
// "main", 8, (short) 8, 32));
271249
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeFramepointerRelFullScope(cvDebugInfo, 8));
272-
// regRelRecords.add(new
273-
// CVSymbolSubrecord.CVSymbolRegRel32Record(cvDebugInfo, paramName,
274-
// typeIndex, 0, javaGPregisters[gpRegisterIndex]));
275250
gpRegisterIndex++;
276251
} else {
277-
/* TODO: stack parameter; keep track of stack offset, etc. */
252+
/* TODO: handle stack parameter; keep track of stack offset, etc. */
278253
break;
279254
}
280255
} else {
281256
/* Java object. */
282257
if (gpRegisterIndex < javaGP64registers.length) {
283-
// int pointerIndex =
284-
// cvDebugInfo.getCVTypeSection().getIndexForPointer(paramType);
285-
// define as offset from register addSymbolRecord(new
286-
// CVSymbolSubrecord.CVSymbolRegRel32Record(cvDebugInfo, paramName,
287-
// typeIndex, 0, javaGPregisters[gpRegisterIndex]));
288258
addSymbolRecord(new CVSymbolSubrecord.CVSymbolLocalRecord(cvDebugInfo, paramName, typeIndex, 1));
289259
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeRegisterRecord(cvDebugInfo, javaGP64registers[gpRegisterIndex], externalName, 0, 8));
290260
addSymbolRecord(new CVSymbolSubrecord.CVSymbolDefRangeFramepointerRelFullScope(cvDebugInfo, 0));
291-
// regRelRecords.add(new
292-
// CVSymbolSubrecord.CVSymbolRegRel32Record(cvDebugInfo, paramName,
293-
// typeIndex, 0, javaGPregisters[gpRegisterIndex]));
294261
gpRegisterIndex++;
295262
} else {
296-
// TODO: stack parameter; keep track of stack offset, etc.
263+
/* TODO: handle stack parameter; keep track of stack offset, etc. */
297264
break;
298265
}
299266
}
300267
}
301-
for (CVSymbolSubrecord record : regRelRecords) {
302-
addSymbolRecord(record);
303-
}
304268
/* TODO: add entries for stack parameters. */
305-
// addToSymbolSubsection(new CVSymbolSubrecord.CVSymbolEndRecord(cvDebugInfo));
306-
307269
/* TODO: add local variables, and their types. */
308270
/* TODO: add block definitions. */
309271
}

0 commit comments

Comments
 (0)