001/*
002 * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
003 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
004 *
005 * This code is free software; you can redistribute it and/or modify it
006 * under the terms of the GNU General Public License version 2 only, as
007 * published by the Free Software Foundation.
008 *
009 * This code is distributed in the hope that it will be useful, but WITHOUT
010 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
011 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
012 * version 2 for more details (a copy is included in the LICENSE file that
013 * accompanied this code).
014 *
015 * You should have received a copy of the GNU General Public License version
016 * 2 along with this work; if not, write to the Free Software Foundation,
017 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
018 *
019 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
020 * or visit www.oracle.com if you need additional information or have any
021 * questions.
022 */
023// Checkstyle: stop
024package com.oracle.graal.jtt.hotpath;
025
026import jdk.internal.jvmci.meta.*;
027
028import org.junit.*;
029
030import com.oracle.graal.jtt.*;
031
032/*
033 */
034public class HP_field03 extends JTTTest {
035
036    public static byte b;
037    public static char c;
038    public static short s;
039    public static int i;
040    public static long l;
041    public static float f;
042    public static double d;
043
044    public static int test(int count) {
045        for (int x = 0; x <= count; x++) {
046            b += x;
047            c += x;
048            s += x;
049            i += x;
050            l += x;
051            f += x;
052            d += x;
053        }
054        return (int) (b + c + s + i + l + f + d);
055    }
056
057    @Override
058    public void before(ResolvedJavaMethod m) {
059        b = 0;
060        c = 0;
061        s = 0;
062        i = 0;
063        l = 0L;
064        f = 0.0F;
065        d = 0.0D;
066    }
067
068    @Test
069    public void run0() throws Throwable {
070        runTest("test", 1000);
071    }
072
073}