8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package jdk.test.lib.jittester.loops;
25
26 import jdk.test.lib.jittester.IRNode;
27 import jdk.test.lib.jittester.LocalVariable;
28 import jdk.test.lib.jittester.visitors.Visitor;
29
30 /*
31 * Note: Can be theoretically subclassed from Operator and have an
32 * operatorPriority field. Therefore, it can used later as a part
33 * of some expression.
34 */
35
36 public class CounterManipulator extends IRNode {
37 LocalVariable counter;
38
39 public CounterManipulator(IRNode manipulator) {
40 addChild(manipulator);
41 }
42
43 @Override
44 public long complexity() {
45 IRNode manipulator = getChild(0);
46 return manipulator != null ? manipulator.complexity() : 0;
47 }
48
49 @Override
50 public<T> T accept(Visitor<T> v) {
51 return v.visit(this);
52 }
53 }
|
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package jdk.test.lib.jittester.loops;
25
26 import jdk.test.lib.jittester.IRNode;
27 import jdk.test.lib.jittester.LocalVariable;
28 import jdk.test.lib.jittester.Statement;
29 import jdk.test.lib.jittester.visitors.Visitor;
30
31 /*
32 * Note: Can be theoretically subclassed from Operator and have an
33 * operatorPriority field. Therefore, it can used later as a part
34 * of some expression.
35 */
36
37 public class CounterManipulator extends IRNode {
38 LocalVariable counter;
39
40 public CounterManipulator(Statement manipulator) {
41 super(manipulator.getResultType());
42 addChild(manipulator);
43 }
44
45 @Override
46 public long complexity() {
47 IRNode manipulator = getChild(0);
48 return manipulator != null ? manipulator.complexity() : 0;
49 }
50
51 @Override
52 public<T> T accept(Visitor<T> v) {
53 return v.visit(this);
54 }
55 }
|