Mercurial > hg > truffle
comparison src/share/vm/prims/methodHandleWalk.cpp @ 2117:70427f06ea47
7010913: JSR 292 ciMethodHandle does not handle MethodHandleCompiler exceptions properly
Reviewed-by: kvn, never
author | twisti |
---|---|
date | Mon, 10 Jan 2011 03:58:07 -0800 |
parents | f2da85a9b08e |
children | 3582bf76420e |
comparison
equal
deleted
inserted
replaced
2116:d810e9a3fc33 | 2117:70427f06ea47 |
---|---|
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 } |