23 * questions. 24 */ 25 26 /* 27 * @test 28 * @summary tests on constant folding of unsafe get operations 29 * @library /testlibrary 30 * 31 * @requires vm.flavor != "client" 32 * 33 * @modules java.base/jdk.internal.org.objectweb.asm 34 * java.base/jdk.internal.vm.annotation 35 * java.base/jdk.internal.misc 36 * 37 * @run main/bootclasspath/othervm -XX:+UnlockDiagnosticVMOptions 38 * -Xbatch -XX:-TieredCompilation 39 * -XX:+FoldStableValues 40 * -XX:CompileCommand=dontinline,UnsafeGetConstantField.checkGetAddress() 41 * -XX:CompileCommand=dontinline,*.test* 42 * -XX:+UseUnalignedAccesses 43 * -XaddReads:java.base=ALL-UNNAMED 44 * compiler.unsafe.UnsafeGetConstantField 45 * 46 * @run main/bootclasspath/othervm -XX:+UnlockDiagnosticVMOptions 47 * -Xbatch -XX:-TieredCompilation 48 * -XX:+FoldStableValues 49 * -XX:CompileCommand=dontinline,UnsafeGetConstantField.checkGetAddress() 50 * -XX:CompileCommand=dontinline,*.test* 51 * -XX:CompileCommand=inline,*Unsafe.get* 52 * -XX:-UseUnalignedAccesses 53 * -XaddReads:java.base=ALL-UNNAMED 54 * compiler.unsafe.UnsafeGetConstantField 55 */ 56 package compiler.unsafe; 57 58 import jdk.internal.org.objectweb.asm.ClassWriter; 59 import jdk.internal.org.objectweb.asm.FieldVisitor; 60 import jdk.internal.org.objectweb.asm.MethodVisitor; 61 import jdk.internal.org.objectweb.asm.Opcodes; 62 import jdk.internal.org.objectweb.asm.Type; 63 import jdk.internal.vm.annotation.Stable; 64 import jdk.test.lib.Asserts; 65 import jdk.test.lib.Platform; 66 import jdk.internal.misc.Unsafe; 67 68 import java.io.IOException; 69 import java.nio.file.Files; 70 import java.nio.file.Path; 71 import java.nio.file.Paths; 72 73 import static jdk.internal.org.objectweb.asm.Opcodes.*; | 23 * questions. 24 */ 25 26 /* 27 * @test 28 * @summary tests on constant folding of unsafe get operations 29 * @library /testlibrary 30 * 31 * @requires vm.flavor != "client" 32 * 33 * @modules java.base/jdk.internal.org.objectweb.asm 34 * java.base/jdk.internal.vm.annotation 35 * java.base/jdk.internal.misc 36 * 37 * @run main/bootclasspath/othervm -XX:+UnlockDiagnosticVMOptions 38 * -Xbatch -XX:-TieredCompilation 39 * -XX:+FoldStableValues 40 * -XX:CompileCommand=dontinline,UnsafeGetConstantField.checkGetAddress() 41 * -XX:CompileCommand=dontinline,*.test* 42 * -XX:+UseUnalignedAccesses 43 * --add-reads=java.base=ALL-UNNAMED 44 * compiler.unsafe.UnsafeGetConstantField 45 * 46 * @run main/bootclasspath/othervm -XX:+UnlockDiagnosticVMOptions 47 * -Xbatch -XX:-TieredCompilation 48 * -XX:+FoldStableValues 49 * -XX:CompileCommand=dontinline,UnsafeGetConstantField.checkGetAddress() 50 * -XX:CompileCommand=dontinline,*.test* 51 * -XX:CompileCommand=inline,*Unsafe.get* 52 * -XX:-UseUnalignedAccesses 53 * --add-reads=java.base=ALL-UNNAMED 54 * compiler.unsafe.UnsafeGetConstantField 55 */ 56 package compiler.unsafe; 57 58 import jdk.internal.org.objectweb.asm.ClassWriter; 59 import jdk.internal.org.objectweb.asm.FieldVisitor; 60 import jdk.internal.org.objectweb.asm.MethodVisitor; 61 import jdk.internal.org.objectweb.asm.Opcodes; 62 import jdk.internal.org.objectweb.asm.Type; 63 import jdk.internal.vm.annotation.Stable; 64 import jdk.test.lib.Asserts; 65 import jdk.test.lib.Platform; 66 import jdk.internal.misc.Unsafe; 67 68 import java.io.IOException; 69 import java.nio.file.Files; 70 import java.nio.file.Path; 71 import java.nio.file.Paths; 72 73 import static jdk.internal.org.objectweb.asm.Opcodes.*; |