< prev index next >
src/share/vm/opto/memnode.hpp
Print this page
@@ -1011,23 +1011,26 @@
virtual int Opcode() const;
};
//------------------------------ClearArray-------------------------------------
class ClearArrayNode: public Node {
+private:
+ bool _is_large;
public:
- ClearArrayNode( Node *ctrl, Node *arymem, Node *word_cnt, Node *base )
- : Node(ctrl,arymem,word_cnt,base) {
+ ClearArrayNode( Node *ctrl, Node *arymem, Node *word_cnt, Node *base, bool is_large = false)
+ : Node(ctrl,arymem,word_cnt,base), _is_large(is_large) {
init_class_id(Class_ClearArray);
}
virtual int Opcode() const;
virtual const Type *bottom_type() const { return Type::MEMORY; }
// ClearArray modifies array elements, and so affects only the
// array memory addressed by the bottom_type of its base address.
virtual const class TypePtr *adr_type() const;
virtual Node* Identity(PhaseGVN* phase);
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
virtual uint match_edge(uint idx) const;
+ bool is_large() const { return _is_large; }
// Clear the given area of an object or array.
// The start offset must always be aligned mod BytesPerInt.
// The end offset must always be aligned mod BytesPerLong.
// Return the new memory.
< prev index next >