Mercurial > hg > truffle
comparison src/share/vm/opto/block.hpp @ 4120:f03a3c8bd5e5
7077312: Provide a CALL effect for instruct declaration in the ad file
Summary: abstracted way to declare that the MachNode has the effect of a call (kills caller save registers, preserves callee save registers)
Reviewed-by: twisti, never
author | roland |
---|---|
date | Wed, 14 Sep 2011 09:22:51 +0200 |
parents | f6f3bb0ee072 |
children | cf407b7d3d78 |
comparison
equal
deleted
inserted
replaced
4119:7793051af7d6 | 4120:f03a3c8bd5e5 |
---|---|
279 // Find node in block | 279 // Find node in block |
280 uint find_node( const Node *n ) const; | 280 uint find_node( const Node *n ) const; |
281 // Find and remove n from block list | 281 // Find and remove n from block list |
282 void find_remove( const Node *n ); | 282 void find_remove( const Node *n ); |
283 | 283 |
284 // helper function that adds caller save registers to MachProjNode | |
285 void add_call_kills(MachProjNode *proj, RegMask& regs, const char* save_policy, bool exclude_soe); | |
284 // Schedule a call next in the block | 286 // Schedule a call next in the block |
285 uint sched_call(Matcher &matcher, Block_Array &bbs, uint node_cnt, Node_List &worklist, int *ready_cnt, MachCallNode *mcall, VectorSet &next_call); | 287 uint sched_call(Matcher &matcher, Block_Array &bbs, uint node_cnt, Node_List &worklist, int *ready_cnt, MachCallNode *mcall, VectorSet &next_call); |
286 | 288 |
287 // Perform basic-block local scheduling | 289 // Perform basic-block local scheduling |
288 Node *select(PhaseCFG *cfg, Node_List &worklist, int *ready_cnt, VectorSet &next_call, uint sched_slot); | 290 Node *select(PhaseCFG *cfg, Node_List &worklist, int *ready_cnt, VectorSet &next_call, uint sched_slot); |