< prev index next >

test/compiler/intrinsics/montgomerymultiply/MontgomeryMultiplyTest.java

Print this page




  20 // Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 // or visit www.oracle.com if you need additional information or have any
  22 // questions.
  23 //
  24 //
  25 
  26 import java.lang.invoke.MethodHandle;
  27 import java.lang.invoke.MethodHandles;
  28 import java.lang.invoke.MethodType;
  29 import java.lang.reflect.Constructor;
  30 import java.lang.reflect.Field;
  31 import java.lang.reflect.Method;
  32 import java.math.BigInteger;
  33 import java.util.Arrays;
  34 import java.util.Random;
  35 
  36 /**
  37  * @test
  38  * @bug 8130150
  39  * @library /testlibrary
  40  * @requires (os.simpleArch == "x64") & (os.family != "windows")
  41  * @summary Verify that the Montgomery multiply intrinsic works and correctly checks its arguments.
  42  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+UseMontgomerySquareIntrinsic
  43  *      -XX:+UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  44  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+UseMontgomerySquareIntrinsic
  45  *      -XX:-UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  46  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-UseMontgomerySquareIntrinsic
  47  *      -XX:+UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  48  */
  49 
  50 public class MontgomeryMultiplyTest {
  51 
  52     static final MethodHandles.Lookup lookup = MethodHandles.lookup();
  53 
  54     static final MethodHandle montgomeryMultiplyHandle, montgomerySquareHandle;
  55     static final MethodHandle bigIntegerConstructorHandle;
  56     static final Field bigIntegerMagField;
  57 
  58     static {
  59        // Use reflection to gain access to the methods we want to test.
  60         try {




  20 // Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 // or visit www.oracle.com if you need additional information or have any
  22 // questions.
  23 //
  24 //
  25 
  26 import java.lang.invoke.MethodHandle;
  27 import java.lang.invoke.MethodHandles;
  28 import java.lang.invoke.MethodType;
  29 import java.lang.reflect.Constructor;
  30 import java.lang.reflect.Field;
  31 import java.lang.reflect.Method;
  32 import java.math.BigInteger;
  33 import java.util.Arrays;
  34 import java.util.Random;
  35 
  36 /**
  37  * @test
  38  * @bug 8130150
  39  * @library /testlibrary
  40  * @requires (os.simpleArch == "x64")
  41  * @summary Verify that the Montgomery multiply intrinsic works and correctly checks its arguments.
  42  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+UseMontgomerySquareIntrinsic
  43  *      -XX:+UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  44  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+UseMontgomerySquareIntrinsic
  45  *      -XX:-UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  46  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-UseMontgomerySquareIntrinsic
  47  *      -XX:+UseMontgomeryMultiplyIntrinsic MontgomeryMultiplyTest
  48  */
  49 
  50 public class MontgomeryMultiplyTest {
  51 
  52     static final MethodHandles.Lookup lookup = MethodHandles.lookup();
  53 
  54     static final MethodHandle montgomeryMultiplyHandle, montgomerySquareHandle;
  55     static final MethodHandle bigIntegerConstructorHandle;
  56     static final Field bigIntegerMagField;
  57 
  58     static {
  59        // Use reflection to gain access to the methods we want to test.
  60         try {


< prev index next >