comparison src/share/vm/utilities/array.hpp @ 14422:2b8e28fdf503

Merge
author kvn
date Tue, 05 Nov 2013 17:38:04 -0800
parents de059a14e159
children 26c3b944dc35
comparison
equal deleted inserted replaced
14421:3068270ba476 14422:2b8e28fdf503
315 private: 315 private:
316 // Turn off copy constructor and assignment operator. 316 // Turn off copy constructor and assignment operator.
317 Array(const Array<T>&); 317 Array(const Array<T>&);
318 void operator=(const Array<T>&); 318 void operator=(const Array<T>&);
319 319
320 void* operator new(size_t size, ClassLoaderData* loader_data, int length, bool read_only, TRAPS) { 320 void* operator new(size_t size, ClassLoaderData* loader_data, int length, bool read_only, TRAPS) throw() {
321 size_t word_size = Array::size(length); 321 size_t word_size = Array::size(length);
322 return (void*) Metaspace::allocate(loader_data, word_size, read_only, 322 return (void*) Metaspace::allocate(loader_data, word_size, read_only,
323 MetaspaceObj::array_type(sizeof(T)), CHECK_NULL); 323 MetaspaceObj::array_type(sizeof(T)), CHECK_NULL);
324 } 324 }
325 325
351 } 351 }
352 352
353 // sort the array. 353 // sort the array.
354 bool contains(const T& x) const { return index_of(x) >= 0; } 354 bool contains(const T& x) const { return index_of(x) >= 0; }
355 355
356 T at(int i) const { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); return _data[i]; } 356 T at(int i) const { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); return _data[i]; }
357 void at_put(const int i, const T& x) { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); _data[i] = x; } 357 void at_put(const int i, const T& x) { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); _data[i] = x; }
358 T* adr_at(const int i) { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); return &_data[i]; } 358 T* adr_at(const int i) { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); return &_data[i]; }
359 int find(const T& x) { return index_of(x); } 359 int find(const T& x) { return index_of(x); }
360 360
361 T at_acquire(const int which) { return OrderAccess::load_acquire(adr_at(which)); } 361 T at_acquire(const int which) { return OrderAccess::load_acquire(adr_at(which)); }
362 void release_at_put(int which, T contents) { OrderAccess::release_store(adr_at(which), contents); } 362 void release_at_put(int which, T contents) { OrderAccess::release_store(adr_at(which), contents); }
363 363