src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot-comp Cdiff src/cpu/sparc/vm/c1_Runtime1_sparc.cpp

src/cpu/sparc/vm/c1_Runtime1_sparc.cpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 1999, 2010, Oracle and/or its affiliates. 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,7 ---- /* ! * Copyright (c) 1999, 2011, Oracle and/or its affiliates. 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.
*** 55,65 **** --- 55,77 ---- set_last_Java_frame(SP, noreg); if (VerifyThread) mov(G2_thread, O0); // about to be smashed; pass early save_thread(L7_thread_cache); // do the call + #ifdef _LP64 + if (is_in_wdisp30_range(entry_point, CodeCache::low_bound()) && + is_in_wdisp30_range(entry_point, CodeCache::high_bound())) { call(entry_point, relocInfo::runtime_call_type); + } else { + relocate(relocInfo::runtime_call_type); + AddressLiteral dest(entry_point); + jumpl_to(dest, O7, O7); + } + #else + call(entry_point, relocInfo::runtime_call_type); + #endif + if (!VerifyThread) { delayed()->mov(G2_thread, O0); // pass thread as first argument } else { delayed()->nop(); // (thread already passed) }
src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File