Searched refs:spill (Results 1 - 5 of 5) sorted by relevance

/openjdk7/hotspot/src/share/vm/opto/
H A Dreg_split.cpp41 // HRP between it and one of its uses. We will spill at the transition
65 // wide ideal-register spill-mask if possible. If the 'wide-mask' does
69 // that is forcing us to spill something that isn't spillable.
73 assert(false, "attempted to spill a non-spillable item");
74 C->record_method_not_compilable("attempted to spill a non-spillable item");
109 // Insert the spill at chosen location. Skip over any intervening Proj's or
112 void PhaseChaitin::insert_proj( Block *b, uint i, Node *spill, uint maxlrg ) { argument
134 b->_nodes.insert(i,spill); // Insert node in block
135 _cfg._bbs.map(spill->_idx,b); // Update node->block mapping to reflect
142 new_lrg(spill,maxlr
171 Node *spill = get_spillcopy_wide(def,NULL,0); local
228 Node *spill = get_spillcopy_wide(def,use,useidx); local
280 Node *spill = get_spillcopy_wide( def, use, useidx ); local
345 Node *spill = clone_node(def, b, C); local
1061 Node *spill = new (C) MachSpillCopyNode(def, dmask, *tmp_rm); local
1215 Node *spill = new (C) MachSpillCopyNode(use,use_rm,def_rm); local
[all...]
H A Dchaitin.hpp152 // live range must spill.
177 _at_risk:1; // Simplify says this guy is at risk to spill
318 Node_List **_lrg_nodes; // Array of node; lists for lrgs which spill
356 // Insert the spill at chosen location. Skip over any intervening Proj's or
359 void insert_proj( Block *b, uint i, Node *spill, uint maxlrg );
449 // Split live-ranges that must spill due to register conflicts (as opposed
480 // Convert ideal spill-nodes into machine loads & stores
H A Dchaitin.cpp98 // Compute score from cost and area. Low score is best to spill.
112 // to spill because more other LRGs get freed up.
113 if( _area == 0.0 ) // No area? Then no progress to spill
120 return score + 1e17; // Probably no progress to spill
123 return score + 1e10; // Likely no progress to spill
214 // registers) is the outgoing argument area; above that is the spill/temp
322 // If we have a guaranteed spill, might as well spill now
383 // If we spill, split and recycle the entire thing
388 C->record_method_not_compilable("failed spill
1663 Node *spill = new (C) MachSpillCopyNode( phi, *mask, *mask ); local
[all...]
/openjdk7/hotspot/src/cpu/x86/vm/
H A Dc1_LIRGenerator_x86.cpp1283 // always has to be moved through spill slot since there's no
1286 LIR_Opr spill = new_register(T_LONG); local
1287 set_vreg_flag(spill, must_start_in_memory);
1288 __ move(value, spill);
1289 __ volatile_move(spill, temp_double, T_LONG);
1306 // SSE0 and SSE1 mode it has to be moved through spill slot but in
1312 // no spill slot needed in SSE2 mode because xmm->cpu register move is possible
1326 LIR_Opr spill = new_register(T_LONG); local
1327 set_vreg_flag(spill, must_start_in_memory);
1328 __ move(tmp, spill);
1342 LIR_Opr spill = new_register(T_DOUBLE); local
[all...]
/openjdk7/hotspot/src/share/vm/c1/
H A Dc1_LinearScan.cpp76 // Map BasicType to spill size in 32-bit words, matching VMReg's notion of words
235 assert(_unused_spill_slot == -1, "wasting a spill slot");
257 // spill slot here (altough this value and the later used location name
267 // assign the canonical spill slot of the parent (if a part of the interval
268 // is already spilled) or allocate a new spill slot
272 int spill = allocate_spill_slot(type2spill_size[it->type()] == 2); local
273 it->set_canonical_spill_slot(spill);
274 it->assign_reg(spill);
321 // ********** spill move optimization
338 // second definition found, so no spill optimizatio
[all...]

Completed in 50 milliseconds