Mercurial > hg > graal-compiler
comparison src/share/vm/classfile/verificationType.hpp @ 17888:c4bc6b5c6f25
8038076: constraint on multianewarray instruction is not checked since class version 50.
Summary: No VerifiyError generated if multianewarray bytecode's array type descriptor was 1 dimension smaller than dimensions specified.
Reviewed-by: hseigel, ctornqvi, coleenp, kamg
author | lfoltan |
---|---|
date | Mon, 14 Apr 2014 10:13:03 -0400 |
parents | 4ee06e614636 |
children | 54bc75c144b0 |
comparison
equal
deleted
inserted
replaced
17887:cd3c534f8f4a | 17888:c4bc6b5c6f25 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
297 VerificationType get_component(ClassVerifier* context, TRAPS) const; | 297 VerificationType get_component(ClassVerifier* context, TRAPS) const; |
298 | 298 |
299 int dimensions() const { | 299 int dimensions() const { |
300 assert(is_array(), "Must be an array"); | 300 assert(is_array(), "Must be an array"); |
301 int index = 0; | 301 int index = 0; |
302 while (name()->byte_at(index++) == '['); | 302 while (name()->byte_at(index) == '[') index++; |
303 return index; | 303 return index; |
304 } | 304 } |
305 | 305 |
306 void print_on(outputStream* st) const; | 306 void print_on(outputStream* st) const; |
307 | 307 |