16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef CPU_X86_VM_STUBROUTINES_X86_HPP
26 #define CPU_X86_VM_STUBROUTINES_X86_HPP
27
28 // This file holds the platform specific parts of the StubRoutines
29 // definition. See stubRoutines.hpp for a description on how to
30 // extend it.
31
32 static bool returns_to_call_stub(address return_pc) { return return_pc == _call_stub_return_address; }
33
34 enum platform_dependent_constants {
35 code_size1 = 20000 LP64_ONLY(+10000), // simply increase if too small (assembler will crash if too small)
36 code_size2 = 33800 LP64_ONLY(+1200) // simply increase if too small (assembler will crash if too small)
37 };
38
39 class x86 {
40 friend class StubGenerator;
41 friend class VMStructs;
42
43 #ifdef _LP64
44 private:
45 static address _get_previous_fp_entry;
46 static address _get_previous_sp_entry;
47 static address _shenandoah_wb;
48
49 static address _f2i_fixup;
50 static address _f2l_fixup;
51 static address _d2i_fixup;
52 static address _d2l_fixup;
53
54 static address _float_sign_mask;
55 static address _float_sign_flip;
56 static address _double_sign_mask;
|
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef CPU_X86_VM_STUBROUTINES_X86_HPP
26 #define CPU_X86_VM_STUBROUTINES_X86_HPP
27
28 // This file holds the platform specific parts of the StubRoutines
29 // definition. See stubRoutines.hpp for a description on how to
30 // extend it.
31
32 static bool returns_to_call_stub(address return_pc) { return return_pc == _call_stub_return_address; }
33
34 enum platform_dependent_constants {
35 code_size1 = 20000 LP64_ONLY(+10000), // simply increase if too small (assembler will crash if too small)
36 code_size2 = 33800 LP64_ONLY(+1200), // simply increase if too small (assembler will crash if too small)
37 code_size3 = 2000 // simply increase if too small (assembler will crash if too small)
38 };
39
40 class x86 {
41 friend class StubGenerator;
42 friend class VMStructs;
43
44 #ifdef _LP64
45 private:
46 static address _get_previous_fp_entry;
47 static address _get_previous_sp_entry;
48 static address _shenandoah_wb;
49
50 static address _f2i_fixup;
51 static address _f2l_fixup;
52 static address _d2i_fixup;
53 static address _d2l_fixup;
54
55 static address _float_sign_mask;
56 static address _float_sign_flip;
57 static address _double_sign_mask;
|