src/share/vm/opto/library_call.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/library_call.cpp	Wed Mar 30 11:22:43 2011
--- new/src/share/vm/opto/library_call.cpp	Wed Mar 30 11:22:43 2011

*** 1118,1128 **** --- 1118,1128 ---- Node* target = _gvn.transform( makecon(TypeOopPtr::make_from_constant(target_array, true)) ); jint target_length = target_array->length(); const TypeAry* target_array_type = TypeAry::make(TypeInt::CHAR, TypeInt::make(0, target_length, Type::WidenMin)); const TypeAryPtr* target_type = TypeAryPtr::make(TypePtr::BotPTR, target_array_type, target_array->klass(), true, Type::OffsetBot); ! IdealKit kit(gvn(), control(), merged_memory(), false, true); ! IdealKit kit(this, false, true); #define __ kit. Node* zero = __ ConI(0); Node* one = __ ConI(1); Node* cache = __ ConI(cache_i); Node* md2 = __ ConI(md2_i);
*** 2316,2336 **** --- 2316,2334 ---- } else { // We can't tell at compile time if we are storing in the Java heap or outside // of it. So we need to emit code to conditionally do the proper type of // store. ! IdealKit ideal(gvn(), control(), merged_memory()); ! IdealKit ideal(this); #define __ ideal. // QQQ who knows what probability is here?? __ if_then(heap_base_oop, BoolTest::ne, null(), PROB_UNLIKELY(0.999)); { // Sync IdealKit and graphKit. ! set_all_memory( __ merged_memory()); set_control(__ ctrl()); ! sync_kit(ideal, false); Node* st = store_oop_to_unknown(control(), heap_base_oop, adr, adr_type, val, type); // Update IdealKit memory. ! __ set_all_memory(merged_memory()); __ set_ctrl(control()); ! __ sync_kit(this); } __ else_(); { __ store(__ ctrl(), adr, val, type, alias_type->index(), is_volatile); } __ end_if(); // Final sync IdealKit and GraphKit. sync_kit(ideal);

src/share/vm/opto/library_call.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File