Skip to content

Commit 45a10c9

Browse files
committed
Clean up hole count assertion.
1 parent eca46dd commit 45a10c9

File tree

5 files changed

+14
-6
lines changed

5 files changed

+14
-6
lines changed

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/array/dyn/AbstractWritableArray.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ protected final void setLengthLessContiguous(JSDynamicObject object, long length
521521
if (SET_LENGTH_PROFILE.contiguousShrinkUsed(profile, newUsedLength < oldUsed)) {
522522
if (isHolesType()) {
523523
incrementHolesCount(object, -countHolesPrepared(object, arrayOffset + newUsedLength, arrayOffset + oldUsed));
524-
assert arrayGetHoleCount(object) == countHoles(object);
524+
assert assertHoleCount(object);
525525
}
526526

527527
// use old arrayOffset
@@ -615,7 +615,7 @@ protected final ScriptArray deleteElementHoles(JSDynamicObject object, long inde
615615
}
616616
}
617617
}
618-
assert arrayGetHoleCount(object) == countHoles(object);
618+
assert assertHoleCount(object);
619619
return this;
620620
}
621621

@@ -807,6 +807,14 @@ private int countHolesPrepared(JSDynamicObject object, int start, int end) {
807807
return holeCount;
808808
}
809809

810+
protected final boolean assertHoleCount(JSDynamicObject object) {
811+
assert isHolesType();
812+
int holeCount = arrayGetHoleCount(object);
813+
int countedHoles = countHoles(object);
814+
assert holeCount == countedHoles : String.format("holeCount, %d, differs from the actual count, %d", holeCount, countedHoles);
815+
return true;
816+
}
817+
810818
/**
811819
* Move {@code len} elements from {@code src} to {@code dst}.
812820
*/

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/array/dyn/HolesDoubleArray.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public static HolesDoubleArray makeHolesDoubleArray(JSDynamicObject object, int
6565
HolesDoubleArray arrayType = createHolesDoubleArray().setIntegrityLevel(integrityLevel);
6666
setArrayProperties(object, array, length, usedLength, indexOffset, arrayOffset);
6767
arraySetHoleCount(object, holeCount);
68-
assert holeCount == arrayType.countHoles(object);
68+
assert arrayType.assertHoleCount(object);
6969
return arrayType;
7070
}
7171

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/array/dyn/HolesIntArray.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public static HolesIntArray makeHolesIntArray(JSDynamicObject object, int length
6464
HolesIntArray arrayType = createHolesIntArray().setIntegrityLevel(integrityLevel);
6565
setArrayProperties(object, array, length, usedLength, indexOffset, arrayOffset);
6666
arraySetHoleCount(object, holeCount);
67-
assert holeCount == arrayType.countHoles(object) : String.format("holeCount, %d, differs from the actual count, %d", holeCount, arrayType.countHoles(object));
67+
assert arrayType.assertHoleCount(object);
6868
return arrayType;
6969
}
7070

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/array/dyn/HolesJSObjectArray.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public static HolesJSObjectArray makeHolesJSObjectArray(JSDynamicObject object,
6464
HolesJSObjectArray arrayType = createHolesJSObjectArray().setIntegrityLevel(integrityLevel);
6565
setArrayProperties(object, array, length, usedLength, indexOffset, arrayOffset);
6666
arraySetHoleCount(object, holeCount);
67-
assert holeCount == arrayType.countHoles(object);
67+
assert arrayType.assertHoleCount(object);
6868
return arrayType;
6969
}
7070

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/array/dyn/HolesObjectArray.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public static HolesObjectArray makeHolesObjectArray(JSDynamicObject object, int
6363
HolesObjectArray arrayType = createHolesObjectArray().setIntegrityLevel(integrityLevel);
6464
setArrayProperties(object, array, length, usedLength, indexOffset, arrayOffset);
6565
arraySetHoleCount(object, holeCount);
66-
assert holeCount == arrayType.countHoles(object) : String.format("holeCount, %d, differs from the actual count, %d", holeCount, arrayType.countHoles(object));
66+
assert arrayType.assertHoleCount(object);
6767
return arrayType;
6868
}
6969

0 commit comments

Comments
 (0)