Mercurial > hg > truffle
comparison src/share/vm/opto/parse1.cpp @ 1377:ef74d6d1ac1e
6938026: C2 compiler fails in Node::rematerialize()const
Reviewed-by: twisti
author | never |
---|---|
date | Wed, 14 Apr 2010 15:30:13 -0700 |
parents | fdd57634910e |
children | c18cbe5936b8 |
comparison
equal
deleted
inserted
replaced
1371:fc3cd2277dc7 | 1377:ef74d6d1ac1e |
---|---|
278 // makes it go dead. | 278 // makes it go dead. |
279 if (type == Type::BOTTOM) { | 279 if (type == Type::BOTTOM) { |
280 continue; | 280 continue; |
281 } | 281 } |
282 // Construct code to access the appropriate local. | 282 // Construct code to access the appropriate local. |
283 Node *value = fetch_interpreter_state(index, type->basic_type(), locals_addr, osr_buf); | 283 BasicType bt = type->basic_type(); |
284 if (type == TypePtr::NULL_PTR) { | |
285 // Ptr types are mixed together with T_ADDRESS but NULL is | |
286 // really for T_OBJECT types so correct it. | |
287 bt = T_OBJECT; | |
288 } | |
289 Node *value = fetch_interpreter_state(index, bt, locals_addr, osr_buf); | |
284 set_local(index, value); | 290 set_local(index, value); |
285 } | 291 } |
286 | 292 |
287 // Extract the needed stack entries from the interpreter frame. | 293 // Extract the needed stack entries from the interpreter frame. |
288 for (index = 0; index < sp(); index++) { | 294 for (index = 0; index < sp(); index++) { |