< prev index next >
src/cpu/ppc/vm/sharedRuntime_ppc.cpp
Print this page
rev 12644 : 8175086: [BACKOUT] fix for JDK-8166188
Reviewed-by: kbarrett, jwilhelm, dcubed
*** 1,8 ****
/*
! * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
! * Copyright (c) 2012, 2017 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,8 ----
/*
! * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
! * Copyright (c) 2012, 2016 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 2475,2489 ****
// Clear "last Java frame" SP and PC.
// --------------------------------------------------------------------------
__ reset_last_Java_frame();
! // Unbox oop result, e.g. JNIHandles::resolve value.
// --------------------------------------------------------------------------
if (ret_type == T_OBJECT || ret_type == T_ARRAY) {
! __ resolve_jobject(R3_RET, r_temp_1, r_temp_2, /* needs_frame */ false); // kills R31
}
if (CheckJNICalls) {
// clear_pending_jni_exception_check
__ load_const_optimized(R0, 0L);
--- 2475,2494 ----
// Clear "last Java frame" SP and PC.
// --------------------------------------------------------------------------
__ reset_last_Java_frame();
! // Unpack oop result.
// --------------------------------------------------------------------------
if (ret_type == T_OBJECT || ret_type == T_ARRAY) {
! Label skip_unboxing;
! __ cmpdi(CCR0, R3_RET, 0);
! __ beq(CCR0, skip_unboxing);
! __ ld(R3_RET, 0, R3_RET);
! __ bind(skip_unboxing);
! __ verify_oop(R3_RET);
}
if (CheckJNICalls) {
// clear_pending_jni_exception_check
__ load_const_optimized(R0, 0L);
< prev index next >