equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
152 virtual const Type* Value(PhaseGVN* phase) const { return bottom_type(); } |
152 virtual const Type* Value(PhaseGVN* phase) const { return bottom_type(); } |
153 virtual uint hash() const { return Node::hash(); } |
153 virtual uint hash() const { return Node::hash(); } |
154 virtual bool is_CFG() const { return false; } |
154 virtual bool is_CFG() const { return false; } |
155 virtual uint ideal_reg() const { return NotAMachineReg; } |
155 virtual uint ideal_reg() const { return NotAMachineReg; } |
156 |
156 |
157 ProjNode* div_proj() { return proj_out(div_proj_num); } |
157 ProjNode* div_proj() { return proj_out_or_null(div_proj_num); } |
158 ProjNode* mod_proj() { return proj_out(mod_proj_num); } |
158 ProjNode* mod_proj() { return proj_out_or_null(mod_proj_num); } |
159 }; |
159 }; |
160 |
160 |
161 //------------------------------DivModINode--------------------------------------- |
161 //------------------------------DivModINode--------------------------------------- |
162 // Integer division with remainder result. |
162 // Integer division with remainder result. |
163 class DivModINode : public DivModNode { |
163 class DivModINode : public DivModNode { |