< prev index next >
test/hotspot/jtreg/runtime/condy/CondyLDCTest.java
Print this page
rev 59076 : [mq]: 8243945
@@ -28,37 +28,40 @@
* @modules java.base/jdk.internal.misc
* @library /test/lib
* @compile CondyUseLDC_W.jasm
* @compile CondyBadLDC2_W.jasm
* @compile CondyBadLDC.jasm
- * @run main/othervm -Xverify:all CondyLDCTest
+ * @run driver CondyLDCTest
*/
import jdk.test.lib.process.ProcessTools;
import jdk.test.lib.process.OutputAnalyzer;
import jdk.test.lib.compiler.InMemoryJavaCompiler;
public class CondyLDCTest {
public static void main(String args[]) throws Throwable {
// 1. Test a ldc_w instruction can be used with condy's which generate
// loadable constants of the following types: byte, char, short, float, integer, boolean.
- ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("CondyUseLDC_W");
+ ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-Xverify:all",
+ "CondyUseLDC_W");
OutputAnalyzer oa = new OutputAnalyzer(pb.start());
oa.shouldNotContain("VerifyError");
oa.shouldHaveExitValue(0);
// 2. Test ldc2_w of a condy which returns a dynamically generated
// float constant, generates a VerifyError.
- pb = ProcessTools.createJavaProcessBuilder("CondyBadLDC2_W");
+ pb = ProcessTools.createJavaProcessBuilder("-Xverify:all",
+ "CondyBadLDC2_W");
oa = new OutputAnalyzer(pb.start());
oa.shouldContain("java.lang.VerifyError: Illegal type at constant pool entry");
oa.shouldContain("CondyBadLDC2_W.F()F @0: ldc2_w");
oa.shouldHaveExitValue(1);
// 3. Test a ldc of a condy which returns a dynamically generated
// double constant, generates a VerifyError.
- pb = ProcessTools.createJavaProcessBuilder("CondyBadLDC");
+ pb = ProcessTools.createJavaProcessBuilder("-Xverify:all",
+ "CondyBadLDC");
oa = new OutputAnalyzer(pb.start());
oa.shouldContain("java.lang.VerifyError: Illegal type at constant pool entry");
oa.shouldContain("CondyBadLDC.D()D @0: ldc");
oa.shouldHaveExitValue(1);
}
< prev index next >