Skip to content

Commit 3fe3fe0

Browse files
committed
Record more activity in buildRuntimeMetadata().
1 parent 2f9c6bf commit 3fe3fe0

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/FrameInfoEncoder.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ void addFrameSlice(FrameData data, List<CompressedFrameData> slice) {
295295
sliceFrequency.addObject(frameSliceIndex);
296296
}
297297

298-
void encodeCompressedData(UnsafeArrayTypeWriter encodingBuffer, Encoders encoders) {
298+
void encodeCompressedData(Runnable recordActivity, UnsafeArrayTypeWriter encodingBuffer, Encoders encoders) {
299299
assert !sealed : "already sealed";
300300
sealed = true;
301301

@@ -332,6 +332,7 @@ void encodeCompressedData(UnsafeArrayTypeWriter encodingBuffer, Encoders encoder
332332
uniqueSuccessorIndex = NO_SUCCESSOR_INDEX_MARKER;
333333
}
334334
encodeCompressedFrame(encodingBuffer, encoders, frame, uniqueSuccessorIndex);
335+
recordActivity.run();
335336
}
336337

337338
/*
@@ -901,7 +902,7 @@ private static void afterInstallation(CodeInfo info) {
901902

902903
private NonmovableArray<Byte> encodeFrameDatas(Runnable recordActivity) {
903904
UnsafeArrayTypeWriter encodingBuffer = UnsafeArrayTypeWriter.create(ByteArrayReader.supportsUnalignedMemoryAccess());
904-
frameMetadata.encodeCompressedData(encodingBuffer, encoders);
905+
frameMetadata.encodeCompressedData(recordActivity, encodingBuffer, encoders);
905906
for (FrameData data : allDebugInfos) {
906907
if (data.frameSliceIndex == UNCOMPRESSED_FRAME_SLICE_INDEX) {
907908
data.encodedFrameInfoIndex = encodingBuffer.getBytesWritten();

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageCodeCache.java

+2
Original file line numberDiff line numberDiff line change
@@ -435,6 +435,8 @@ protected void buildRuntimeMetadata(DebugContext debug, SnippetReflectionProvide
435435
}
436436
}
437437

438+
watchdog.recordActivity();
439+
438440
if (SubstrateOptions.IncludeMethodData.getValue()) {
439441
for (HostedField field : hUniverse.getFields()) {
440442
if (field.isAccessed() && !field.getWrapped().isInBaseLayer() && !includedFields.contains(field.getWrapped())) {

0 commit comments

Comments
 (0)