# HG changeset patch # User Roland Schatz # Date 1447331435 -3600 # Thu Nov 12 13:30:35 2015 +0100 # Node ID 9dff14ef066c2175f53379936c0a7ed2a5626098 # Parent 9dbae662b09db5d8c9250dee01a7005ea31a7974 8142387: Various JVMCI tests fail on unexpected exception diff --git a/test/compiler/jvmci/errors/CodeInstallerTest.java b/test/compiler/jvmci/errors/CodeInstallerTest.java --- a/test/compiler/jvmci/errors/CodeInstallerTest.java +++ b/test/compiler/jvmci/errors/CodeInstallerTest.java @@ -71,6 +71,12 @@ codeCache.addCode(dummyMethod, result, null, null); } + protected CompilationResult createEmptyCompilationResult() { + CompilationResult ret = new CompilationResult(); + ret.setTotalFrameSize(0); + return ret; + } + protected Register getRegister(PlatformKind kind, int index) { Register[] allRegs = arch.getAvailableValueRegisters(); for (int i = 0; i < allRegs.length; i++) { diff --git a/test/compiler/jvmci/errors/TestInvalidCompilationResult.java b/test/compiler/jvmci/errors/TestInvalidCompilationResult.java --- a/test/compiler/jvmci/errors/TestInvalidCompilationResult.java +++ b/test/compiler/jvmci/errors/TestInvalidCompilationResult.java @@ -25,7 +25,7 @@ * @test * @requires (os.simpleArch == "x64" | os.simpleArch == "sparcv9") & os.arch != "aarch64" * @compile CodeInstallerTest.java - * @run junit/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidCompilationResult + * @run junit/othervm -da:jdk.vm.ci... -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidCompilationResult */ package compiler.jvmci.errors; @@ -82,21 +82,21 @@ @Test(expected = JVMCIError.class) public void testInvalidAssumption() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.setAssumptions(new Assumption[]{new InvalidAssumption()}); installCode(result); } @Test(expected = JVMCIError.class) public void testInvalidAlignment() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.getDataSection().insertData(new Data(7, 1, DataBuilder.zero(1))); installCode(result); } @Test(expected = NullPointerException.class) public void testNullDataPatchInDataSection() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); Data data = new Data(1, 1, (buffer, patch) -> { patch.accept(null); buffer.put((byte) 0); @@ -107,7 +107,7 @@ @Test(expected = NullPointerException.class) public void testNullReferenceInDataSection() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); Data data = new Data(1, 1, (buffer, patch) -> { patch.accept(new DataPatch(buffer.position(), null)); buffer.put((byte) 0); @@ -118,7 +118,7 @@ @Test(expected = JVMCIError.class) public void testInvalidDataSectionReference() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); DataSectionReference ref = result.getDataSection().insertData(new Data(1, 1, DataBuilder.zero(1))); Data data = new Data(1, 1, (buffer, patch) -> { patch.accept(new DataPatch(buffer.position(), ref)); @@ -130,7 +130,7 @@ @Test(expected = JVMCIError.class) public void testInvalidNarrowMethodInDataSection() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); HotSpotConstant c = (HotSpotConstant) dummyMethod.getEncoding(); Data data = new Data(4, 4, (buffer, patch) -> { patch.accept(new DataPatch(buffer.position(), new ConstantReference((VMConstant) c.compress()))); @@ -142,7 +142,7 @@ @Test(expected = NullPointerException.class) public void testNullConstantInDataSection() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); Data data = new Data(1, 1, (buffer, patch) -> { patch.accept(new DataPatch(buffer.position(), new ConstantReference(null))); }); @@ -152,7 +152,7 @@ @Test(expected = JVMCIError.class) public void testInvalidConstantInDataSection() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); Data data = new Data(1, 1, (buffer, patch) -> { patch.accept(new DataPatch(buffer.position(), new ConstantReference(new InvalidVMConstant()))); }); @@ -162,35 +162,35 @@ @Test(expected = NullPointerException.class) public void testNullReferenceInCode() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordDataPatch(0, null); installCode(result); } @Test(expected = NullPointerException.class) public void testNullConstantInCode() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordDataPatch(0, new ConstantReference(null)); installCode(result); } @Test(expected = JVMCIError.class) public void testInvalidConstantInCode() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordDataPatch(0, new ConstantReference(new InvalidVMConstant())); installCode(result); } @Test(expected = JVMCIError.class) public void testInvalidReference() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordDataPatch(0, new InvalidReference()); installCode(result); } @Test(expected = JVMCIError.class) public void testOutOfBoundsDataSectionReference() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); DataSectionReference ref = new DataSectionReference(); ref.setOffset(0x1000); result.recordDataPatch(0, ref); @@ -199,42 +199,42 @@ @Test(expected = JVMCIError.class) public void testInvalidMark() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordMark(0, new Object()); installCode(result); } @Test(expected = JVMCIError.class) public void testInvalidMarkInt() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.recordMark(0, -1); installCode(result); } @Test(expected = NullPointerException.class) public void testNullInfopoint() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(null); installCode(result); } @Test(expected = JVMCIError.class) public void testUnknownInfopointReason() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(new Infopoint(0, null, InfopointReason.UNKNOWN)); installCode(result); } @Test(expected = JVMCIError.class) public void testInfopointMissingDebugInfo() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(new Infopoint(0, null, InfopointReason.METHOD_START)); installCode(result); } @Test(expected = JVMCIError.class) public void testSafepointMissingDebugInfo() { - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(new Infopoint(0, null, InfopointReason.SAFEPOINT)); installCode(result); } diff --git a/test/compiler/jvmci/errors/TestInvalidDebugInfo.java b/test/compiler/jvmci/errors/TestInvalidDebugInfo.java --- a/test/compiler/jvmci/errors/TestInvalidDebugInfo.java +++ b/test/compiler/jvmci/errors/TestInvalidDebugInfo.java @@ -25,7 +25,7 @@ * @test * @requires (os.simpleArch == "x64" | os.simpleArch == "sparcv9") & os.arch != "aarch64" * @compile CodeInstallerTest.java - * @run junit/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidDebugInfo + * @run junit/othervm -da:jdk.vm.ci... -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidDebugInfo */ package compiler.jvmci.errors; @@ -68,7 +68,7 @@ DebugInfo info = new DebugInfo(frame, vobj); info.setReferenceMap(new HotSpotReferenceMap(new Location[0], new Location[0], new int[0], 8)); - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(new Infopoint(0, info, InfopointReason.SAFEPOINT)); installCode(result); } diff --git a/test/compiler/jvmci/errors/TestInvalidOopMap.java b/test/compiler/jvmci/errors/TestInvalidOopMap.java --- a/test/compiler/jvmci/errors/TestInvalidOopMap.java +++ b/test/compiler/jvmci/errors/TestInvalidOopMap.java @@ -25,7 +25,7 @@ * @test * @requires (os.simpleArch == "x64" | os.simpleArch == "sparcv9") & os.arch != "aarch64" * @compile CodeInstallerTest.java - * @run junit/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidOopMap + * @run junit/othervm -da:jdk.vm.ci... -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI compiler.jvmci.errors.TestInvalidOopMap */ package compiler.jvmci.errors; @@ -61,7 +61,7 @@ DebugInfo info = new DebugInfo(pos); info.setReferenceMap(refMap); - CompilationResult result = new CompilationResult(); + CompilationResult result = createEmptyCompilationResult(); result.addInfopoint(new Infopoint(0, info, InfopointReason.SAFEPOINT)); installCode(result); }