hotspot/src/share/vm/opto/graphKit.cpp
changeset 2008 898493b2e3f1
parent 1404 4a969f79e3e6
child 2034 ca0ff0c51e3b
equal deleted inserted replaced
2007:b31e32c0076f 2008:898493b2e3f1
  3231   Node* buffer_adr  = __ AddP(no_base, thread, __ ConX(buffer_offset));
  3231   Node* buffer_adr  = __ AddP(no_base, thread, __ ConX(buffer_offset));
  3232   Node* index_adr   = __ AddP(no_base, thread, __ ConX(index_offset));
  3232   Node* index_adr   = __ AddP(no_base, thread, __ ConX(index_offset));
  3233 
  3233 
  3234   // Now some of the values
  3234   // Now some of the values
  3235 
  3235 
  3236   Node* marking = __ load(no_ctrl, marking_adr, TypeInt::INT, active_type, Compile::AliasIdxRaw);
  3236   Node* marking = __ load(__ ctrl(), marking_adr, TypeInt::INT, active_type, Compile::AliasIdxRaw);
  3237   Node* index   = __ load(no_ctrl, index_adr, TypeInt::INT, T_INT, Compile::AliasIdxRaw);
       
  3238   Node* buffer  = __ load(no_ctrl, buffer_adr, TypeRawPtr::NOTNULL, T_ADDRESS, Compile::AliasIdxRaw);
       
  3239 
  3237 
  3240   // if (!marking)
  3238   // if (!marking)
  3241   __ if_then(marking, BoolTest::ne, zero); {
  3239   __ if_then(marking, BoolTest::ne, zero); {
       
  3240     Node* index   = __ load(__ ctrl(), index_adr, TypeInt::INT, T_INT, Compile::AliasIdxRaw);
  3242 
  3241 
  3243     const Type* t1 = adr->bottom_type();
  3242     const Type* t1 = adr->bottom_type();
  3244     const Type* t2 = val->bottom_type();
  3243     const Type* t2 = val->bottom_type();
  3245 
  3244 
  3246     Node* orig = __ load(no_ctrl, adr, val_type, bt, alias_idx);
  3245     Node* orig = __ load(no_ctrl, adr, val_type, bt, alias_idx);
  3247     // if (orig != NULL)
  3246     // if (orig != NULL)
  3248     __ if_then(orig, BoolTest::ne, null()); {
  3247     __ if_then(orig, BoolTest::ne, null()); {
       
  3248       Node* buffer  = __ load(__ ctrl(), buffer_adr, TypeRawPtr::NOTNULL, T_ADDRESS, Compile::AliasIdxRaw);
  3249 
  3249 
  3250       // load original value
  3250       // load original value
  3251       // alias_idx correct??
  3251       // alias_idx correct??
  3252 
  3252 
  3253       // is the queue for this thread full?
  3253       // is the queue for this thread full?