comparison src/share/vm/opto/output.cpp @ 20447:fc2c88ea11a9

8036588: VerifyFieldClosure fails instanceKlass:3133 Summary: Changed deopt live-pointer test to use returns-object instead of live-and-returns-object Reviewed-by: iveresov, kvn, jrose
author drchase
date Fri, 11 Jul 2014 19:51:36 -0400
parents 69ea58782b1a
children 7848fc12602b
comparison
equal deleted inserted replaced
20437:bddcb33dadf4 20447:fc2c88ea11a9
1 /* 1 /*
2 * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1998, 2014, 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.
854 is_method_handle_invoke = true; 854 is_method_handle_invoke = true;
855 } 855 }
856 } 856 }
857 857
858 // Check if a call returns an object. 858 // Check if a call returns an object.
859 if (mcall->return_value_is_used() && 859 if (mcall->returns_pointer()) {
860 mcall->tf()->range()->field_at(TypeFunc::Parms)->isa_ptr()) {
861 return_oop = true; 860 return_oop = true;
862 } 861 }
863 safepoint_pc_offset += mcall->ret_addr_offset(); 862 safepoint_pc_offset += mcall->ret_addr_offset();
864 debug_info()->add_safepoint(safepoint_pc_offset, mcall->_oop_map); 863 debug_info()->add_safepoint(safepoint_pc_offset, mcall->_oop_map);
865 } 864 }