src/hotspot/share/opto/library_call.cpp
changeset 57811 947252a54b98
parent 57804 9b7b9f16dfd9
child 58273 08a5148e7c4e
equal deleted inserted replaced
57805:e62f402c337f 57811:947252a54b98
  4028   generate_slow_guard(test_unlocked, slow_region);
  4028   generate_slow_guard(test_unlocked, slow_region);
  4029 
  4029 
  4030   // Get the hash value and check to see that it has been properly assigned.
  4030   // Get the hash value and check to see that it has been properly assigned.
  4031   // We depend on hash_mask being at most 32 bits and avoid the use of
  4031   // We depend on hash_mask being at most 32 bits and avoid the use of
  4032   // hash_mask_in_place because it could be larger than 32 bits in a 64-bit
  4032   // hash_mask_in_place because it could be larger than 32 bits in a 64-bit
  4033   // vm: see markOop.hpp.
  4033   // vm: see markWord.hpp.
  4034   Node *hash_mask      = _gvn.intcon(markWord::hash_mask);
  4034   Node *hash_mask      = _gvn.intcon(markWord::hash_mask);
  4035   Node *hash_shift     = _gvn.intcon(markWord::hash_shift);
  4035   Node *hash_shift     = _gvn.intcon(markWord::hash_shift);
  4036   Node *hshifted_header= _gvn.transform(new URShiftXNode(header, hash_shift));
  4036   Node *hshifted_header= _gvn.transform(new URShiftXNode(header, hash_shift));
  4037   // This hack lets the hash bits live anywhere in the mark object now, as long
  4037   // This hack lets the hash bits live anywhere in the mark object now, as long
  4038   // as the shift drops the relevant bits into the low 32 bits.  Note that
  4038   // as the shift drops the relevant bits into the low 32 bits.  Note that