Path: blob/master/test/hotspot/jtreg/compiler/jvmci/compilerToVM/DummyClass.java
41153 views
/*1* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation.7*8* This code is distributed in the hope that it will be useful, but WITHOUT9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License11* version 2 for more details (a copy is included in the LICENSE file that12* accompanied this code).13*14* You should have received a copy of the GNU General Public License version15* 2 along with this work; if not, write to the Free Software Foundation,16* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.17*18* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA19* or visit www.oracle.com if you need additional information or have any20* questions.21*/2223package compiler.jvmci.compilerToVM;2425import jdk.test.lib.Utils;26import sun.hotspot.WhiteBox;2728import java.util.Random;2930class DummyClass extends DummyAbstractClass {31private static final WhiteBox WB = WhiteBox.getWhiteBox();32int p1 = 5;33int p2 = 6;3435public int dummyInstanceFunction() {36String str1 = "123123123";37double x = 3.14;38int y = Integer.parseInt(str1);3940return y / (int) x;41}4243public int dummyEmptyInstanceFunction() {44return 42;45}4647public static int dummyEmptyStaticFunction() {48return -42;49}5051@Override52public int dummyAbstractFunction() {53int z = p1 * p2;54return (int) (Math.cos(p2 - p1 + z) * 100);55}5657@Override58public void dummyFunction() {59dummyEmptyInstanceFunction();60}6162public void withLoop() {63long tier4 = (Long) WB.getVMFlag("Tier4BackEdgeThreshold");64for (long i = 0; i < tier4; ++i) {65randomProfile();66}67}6869private double randomProfile() {70String str1 = "123123123";71double x = 3.14;72int y = Integer.parseInt(str1);7374Random rnd = Utils.getRandomInstance();75if (rnd.nextDouble() > 0.2) {76return y / (int) x;77} else {78return x / y;79}80}8182}838485