equal
deleted
inserted
replaced
139 if (klass->class_loader_data()->is_unloading()) { |
139 if (klass->class_loader_data()->is_unloading()) { |
140 // This needs to be marked so that it's no longer scanned |
140 // This needs to be marked so that it's no longer scanned |
141 // but can't be put on the free list yet. The |
141 // but can't be put on the free list yet. The |
142 // HandleCleaner will set this to NULL and |
142 // HandleCleaner will set this to NULL and |
143 // put it on the free list. |
143 // put it on the free list. |
144 jlong old_value = Atomic::cmpxchg((jlong) (ptr_tag), (jlong*)handle, (jlong) value); |
144 jlong old_value = Atomic::cmpxchg((jlong*)handle, (jlong) value, (jlong) (ptr_tag)); |
145 if (old_value == (jlong) value) { |
145 if (old_value == (jlong) value) { |
146 // Success |
146 // Success |
147 } else { |
147 } else { |
148 guarantee(old_value == 0, "only other possible value"); |
148 guarantee(old_value == 0, "only other possible value"); |
149 } |
149 } |