equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1998, 2018, 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. |
94 #define CHECK_VERIFY(verifier) \ |
94 #define CHECK_VERIFY(verifier) \ |
95 CHECK); if ((verifier)->has_error()) return; ((void)0 |
95 CHECK); if ((verifier)->has_error()) return; ((void)0 |
96 #define CHECK_VERIFY_(verifier, result) \ |
96 #define CHECK_VERIFY_(verifier, result) \ |
97 CHECK_(result)); if ((verifier)->has_error()) return (result); ((void)0 |
97 CHECK_(result)); if ((verifier)->has_error()) return (result); ((void)0 |
98 |
98 |
99 class TypeOrigin VALUE_OBJ_CLASS_SPEC { |
99 class TypeOrigin { |
100 private: |
100 private: |
101 typedef enum { |
101 typedef enum { |
102 CF_LOCALS, // Comes from the current frame locals |
102 CF_LOCALS, // Comes from the current frame locals |
103 CF_STACK, // Comes from the current frame expression stack |
103 CF_STACK, // Comes from the current frame expression stack |
104 SM_LOCALS, // Comes from stackmap locals |
104 SM_LOCALS, // Comes from stackmap locals |
144 #ifdef ASSERT |
144 #ifdef ASSERT |
145 void print_on(outputStream* str) const; |
145 void print_on(outputStream* str) const; |
146 #endif |
146 #endif |
147 }; |
147 }; |
148 |
148 |
149 class ErrorContext VALUE_OBJ_CLASS_SPEC { |
149 class ErrorContext { |
150 private: |
150 private: |
151 typedef enum { |
151 typedef enum { |
152 INVALID_BYTECODE, // There was a problem with the bytecode |
152 INVALID_BYTECODE, // There was a problem with the bytecode |
153 WRONG_TYPE, // Type value was not as expected |
153 WRONG_TYPE, // Type value was not as expected |
154 FLAGS_MISMATCH, // Frame flags are not assignable |
154 FLAGS_MISMATCH, // Frame flags are not assignable |