1 /* |
1 /* |
2 * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2008, 2011, 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. |
135 return arg_type; |
135 return arg_type; |
136 } |
136 } |
137 |
137 |
138 |
138 |
139 void MethodHandleChain::lose(const char* msg, TRAPS) { |
139 void MethodHandleChain::lose(const char* msg, TRAPS) { |
140 assert(false, "lose"); |
|
141 _lose_message = msg; |
140 _lose_message = msg; |
142 if (!THREAD->is_Java_thread() || ((JavaThread*)THREAD)->thread_state() != _thread_in_vm) { |
141 if (!THREAD->is_Java_thread() || ((JavaThread*)THREAD)->thread_state() != _thread_in_vm) { |
143 // throw a preallocated exception |
142 // throw a preallocated exception |
144 THROW_OOP(Universe::virtual_machine_error_instance()); |
143 THROW_OOP(Universe::virtual_machine_error_instance()); |
145 } |
144 } |