comparison src/share/vm/opto/runtime.cpp @ 13188:6b2d8d20ecbd

deoptimization: add helper to minimize hsx diff #resolve GRAAL-531
author Bernhard Urban <bernhard.urban@jku.at>
date Thu, 28 Nov 2013 14:12:31 +0100
parents 096c224171c4
children d8041d695d19
comparison
equal deleted inserted replaced
13187:b199147f187e 13188:6b2d8d20ecbd
1 /* 1 /*
2 * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
3
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 5 *
5 * This code is free software; you can redistribute it and/or modify it 6 * 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 7 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 8 * published by the Free Software Foundation.
1183 frame stub_frame = thread->last_frame(); 1184 frame stub_frame = thread->last_frame();
1184 assert(stub_frame.is_runtime_frame() || exception_blob()->contains(stub_frame.pc()), "sanity check"); 1185 assert(stub_frame.is_runtime_frame() || exception_blob()->contains(stub_frame.pc()), "sanity check");
1185 frame caller_frame = stub_frame.sender(&reg_map); 1186 frame caller_frame = stub_frame.sender(&reg_map);
1186 1187
1187 // Deoptimize the caller frame. 1188 // Deoptimize the caller frame.
1188 Deoptimization::deoptimize_frame(thread, caller_frame.id(), Deoptimization::Reason_constraint); 1189 Deoptimization::deoptimize_frame(thread, caller_frame.id());
1189 } 1190 }
1190 1191
1191 1192
1192 bool OptoRuntime::is_deoptimized_caller_frame(JavaThread *thread) { 1193 bool OptoRuntime::is_deoptimized_caller_frame(JavaThread *thread) {
1193 // Called from within the owner thread, so no need for safepoint 1194 // Called from within the owner thread, so no need for safepoint