equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2003, 2010, 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. |
150 |
150 |
151 #endif |
151 #endif |
152 |
152 |
153 int32_t StackMapReader::chop( |
153 int32_t StackMapReader::chop( |
154 VerificationType* locals, int32_t length, int32_t chops) { |
154 VerificationType* locals, int32_t length, int32_t chops) { |
|
155 if (locals == NULL) return -1; |
155 int32_t pos = length - 1; |
156 int32_t pos = length - 1; |
156 for (int32_t i=0; i<chops; i++) { |
157 for (int32_t i=0; i<chops; i++) { |
157 if (locals[pos].is_category2_2nd()) { |
158 if (locals[pos].is_category2_2nd()) { |
158 pos -= 2; |
159 pos -= 2; |
159 } else { |
160 } else { |