480 old->replace_by(v); |
480 old->replace_by(v); |
481 return yank_if_dead(old, current_block, &value, ®nd); |
481 return yank_if_dead(old, current_block, &value, ®nd); |
482 } |
482 } |
483 |
483 |
484 int yank_if_dead( Node *old, Block *current_block, Node_List *value, Node_List *regnd ); |
484 int yank_if_dead( Node *old, Block *current_block, Node_List *value, Node_List *regnd ); |
|
485 int yank( Node *old, Block *current_block, Node_List *value, Node_List *regnd ); |
485 int elide_copy( Node *n, int k, Block *current_block, Node_List &value, Node_List ®nd, bool can_change_regs ); |
486 int elide_copy( Node *n, int k, Block *current_block, Node_List &value, Node_List ®nd, bool can_change_regs ); |
486 int use_prior_register( Node *copy, uint idx, Node *def, Block *current_block, Node_List &value, Node_List ®nd ); |
487 int use_prior_register( Node *copy, uint idx, Node *def, Block *current_block, Node_List &value, Node_List ®nd ); |
487 bool may_be_copy_of_callee( Node *def ) const; |
488 bool may_be_copy_of_callee( Node *def ) const; |
488 |
489 |
489 // If nreg already contains the same constant as val then eliminate it |
490 // If nreg already contains the same constant as val then eliminate it |