Skip to content

Commit

Permalink
8242923: Trigger interface MethodHandle resolve in test without Nashorn
Browse files Browse the repository at this point in the history
Reviewed-by: iignatyev
  • Loading branch information
Evgeny Nikitin committed Jun 10, 2020
1 parent 7e05213 commit 212ab17
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 36 deletions.
2 changes: 0 additions & 2 deletions test/hotspot/jtreg/ProblemList.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,6 @@ compiler/rtm/print/TestPrintPreciseRTMLockingStatistics.java 8183263 generic-x64

compiler/c2/Test8004741.java 8235801 generic-all

compiler/jsr292/CreatesInterfaceDotEqualsCallInfo.java 8242923 generic-all

#############################################################################

# :hotspot_gc
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
Expand All @@ -24,19 +24,22 @@
/**
* @test
* @bug 8026124
* @summary Javascript file provoked assertion failure in linkResolver.cpp
* @modules jdk.scripting.nashorn/jdk.nashorn.tools
* @summary MethodHandle lookup for an interface method causes assertion failure in linkResolver.cpp
*
* @run main/othervm compiler.jsr292.CreatesInterfaceDotEqualsCallInfo
*/

package compiler.jsr292;

import java.lang.invoke.MethodHandles;
import java.nio.file.Path;

public class CreatesInterfaceDotEqualsCallInfo {
public static void main(String[] args) throws java.io.IOException {
String[] jsargs = {System.getProperty("test.src", ".") +
"/createsInterfaceDotEqualsCallInfo.js"};
jdk.nashorn.tools.Shell.main(System.in, System.out, System.err, jsargs);
System.out.println("PASS, did not crash running Javascript");
public static void main(String[] args) throws Throwable {
MethodHandles.publicLookup()
.unreflect(Path.class.getMethod("toString", new Class[]{}))
.invoke(Path.of("."));

System.out.println("PASS, did not crash calling interface method handle");
}
}

This file was deleted.

0 comments on commit 212ab17

Please sign in to comment.