comparison src/share/vm/oops/typeArrayOop.hpp @ 5699:9d15b81d5d1b

8016839: JSR292: AME instead of IAE when calling a method Summary: Catch missing-because-illegal case for itable entries and use an exception-throwing method instead of null. Reviewed-by: acorn, jrose, coleenp
author drchase
date Tue, 26 Nov 2013 18:16:04 -0500
parents da91efe96a93
children
comparison
equal deleted inserted replaced
6:a73a826074d7 7:bed7d4e3d5ba
71 jlong* long_base() const { return (jlong*) base(T_LONG); } 71 jlong* long_base() const { return (jlong*) base(T_LONG); }
72 jshort* short_base() const { return (jshort*) base(T_SHORT); } 72 jshort* short_base() const { return (jshort*) base(T_SHORT); }
73 jfloat* float_base() const { return (jfloat*) base(T_FLOAT); } 73 jfloat* float_base() const { return (jfloat*) base(T_FLOAT); }
74 jdouble* double_base() const { return (jdouble*) base(T_DOUBLE); } 74 jdouble* double_base() const { return (jdouble*) base(T_DOUBLE); }
75 75
76 friend class typeArrayKlass; 76 friend class TypeArrayKlass;
77 77
78 public: 78 public:
79 jbyte* byte_at_addr(int which) const { 79 jbyte* byte_at_addr(int which) const {
80 assert(is_within_bounds(which), "index out of bounds"); 80 assert(is_within_bounds(which), "index out of bounds");
81 return &byte_base()[which]; 81 return &byte_base()[which];
188 return align_object_size((intptr_t)size_in_words); 188 return align_object_size((intptr_t)size_in_words);
189 } 189 }
190 190
191 public: 191 public:
192 int object_size() { 192 int object_size() {
193 typeArrayKlass* tk = typeArrayKlass::cast(klass()); 193 TypeArrayKlass* tk = TypeArrayKlass::cast(klass());
194 return object_size(tk->layout_helper(), length()); 194 return object_size(tk->layout_helper(), length());
195 } 195 }
196 }; 196 };
197 197
198 #endif // SHARE_VM_OOPS_TYPEARRAYOOP_HPP 198 #endif // SHARE_VM_OOPS_TYPEARRAYOOP_HPP