< prev index next >

src/share/vm/opto/node.hpp

Print this page

        

*** 283,292 **** --- 283,294 ---- // users of this node. node_idx_t _outcnt; // Total number of Node outputs. node_idx_t _outmax; // Actual length of output array. + node_idx_t _attr; // Programmable phase attribute used for scratch info + // Grow the actual input array to the next larger power-of-2 bigger than len. void grow( uint len ); // Grow the output array to the next larger power-of-2 bigger than len. void out_grow( uint len );
*** 298,307 **** --- 300,310 ---- const node_idx_t _idx; // Get the (read-only) number of input edges uint req() const { return _cnt; } uint len() const { return _max; } + uint attr() const { return _attr; } // Get the (read-only) number of output edges uint outcnt() const { return _outcnt; } #if OPTO_DU_ITERATOR_ASSERT // Iterate over the out-edges of this node. Deletions are illegal.
*** 400,409 **** --- 403,413 ---- if (*p != NULL) (*p)->del_out((Node *)this); (*p) = n; if (n != NULL) n->add_out((Node *)this); Compile::current()->record_modified_node(this); } + void set_attr(uint i) { _attr = i; } // Light version of set_req() to init inputs after node creation. void init_req( uint i, Node *n ) { assert( i == 0 && this == n || is_not_dead(n), "can not use dead node"); assert( i < _cnt, "oob");
*** 671,681 **** Flag_is_dead_loop_safe = Flag_is_cisc_alternate << 1, Flag_may_be_short_branch = Flag_is_dead_loop_safe << 1, Flag_avoid_back_to_back_before = Flag_may_be_short_branch << 1, Flag_avoid_back_to_back_after = Flag_avoid_back_to_back_before << 1, Flag_has_call = Flag_avoid_back_to_back_after << 1, ! Flag_is_expensive = Flag_has_call << 1, _max_flags = (Flag_is_expensive << 1) - 1 // allow flags combination }; private: jushort _class_id; --- 675,687 ---- Flag_is_dead_loop_safe = Flag_is_cisc_alternate << 1, Flag_may_be_short_branch = Flag_is_dead_loop_safe << 1, Flag_avoid_back_to_back_before = Flag_may_be_short_branch << 1, Flag_avoid_back_to_back_after = Flag_avoid_back_to_back_before << 1, Flag_has_call = Flag_avoid_back_to_back_after << 1, ! Flag_is_loop_carried_dep = Flag_has_call << 1, ! Flag_has_reduction = Flag_is_loop_carried_dep << 1, ! Flag_is_expensive = Flag_has_reduction << 1, _max_flags = (Flag_is_expensive << 1) - 1 // allow flags combination }; private: jushort _class_id;
*** 699,708 **** --- 705,718 ---- public: const jushort class_id() const { return _class_id; } const jushort flags() const { return _flags; } + void add_flag(jushort fl) { init_flags(fl); } + + void remove_flag(jushort fl) { clear_flag(fl); } + // Return a dense integer opcode number virtual int Opcode() const; // Virtual inherited Node size virtual uint size_of() const;
< prev index next >