comparison src/share/vm/opto/parse1.cpp @ 1281:7d236a9688c5

6930398: fix for return address locals in OSR entries uses wrong test Reviewed-by: kvn
author never
date Mon, 01 Mar 2010 12:12:35 -0800
parents da9559b49b84
children fdd57634910e
comparison
equal deleted inserted replaced
1280:336c6c200f5f 1281:7d236a9688c5
315 if (!live_oops.at(index)) { 315 if (!live_oops.at(index)) {
316 // skip type check for dead oops 316 // skip type check for dead oops
317 continue; 317 continue;
318 } 318 }
319 } 319 }
320 if (type->basic_type() == T_ADDRESS) { 320 if (osr_block->flow()->local_type_at(index)->is_return_address()) {
321 // In our current system it's illegal for jsr addresses to be 321 // In our current system it's illegal for jsr addresses to be
322 // live into an OSR entry point because the compiler performs 322 // live into an OSR entry point because the compiler performs
323 // inlining of jsrs. ciTypeFlow has a bailout that detect this 323 // inlining of jsrs. ciTypeFlow has a bailout that detect this
324 // case and aborts the compile if addresses are live into an OSR 324 // case and aborts the compile if addresses are live into an OSR
325 // entry point. Because of that we can assume that any address 325 // entry point. Because of that we can assume that any address