Mercurial > hg > graal-jvmci-8
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 |