Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/stubGenerator_x86_64.cpp @ 4743:dca455dea3a7
7116216: StackOverflow GC crash
Summary: GC crash for explicit stack overflow checks after a C2I transition.
Reviewed-by: coleenp, never
Contributed-by: yang02.wang@sap.com, bertrand.delsart@oracle.com
author | bdelsart |
---|---|
date | Tue, 20 Dec 2011 12:33:05 +0100 |
parents | 59bc0d4d9ea3 |
children | 22cee0ee8927 |
comparison
equal
deleted
inserted
replaced
4742:8fdf463085e1 | 4743:dca455dea3a7 |
---|---|
3070 // j_rarg0 and j_rarg1 respectively. | 3070 // j_rarg0 and j_rarg1 respectively. |
3071 StubRoutines::_throw_WrongMethodTypeException_entry = | 3071 StubRoutines::_throw_WrongMethodTypeException_entry = |
3072 generate_throw_exception("WrongMethodTypeException throw_exception", | 3072 generate_throw_exception("WrongMethodTypeException throw_exception", |
3073 CAST_FROM_FN_PTR(address, SharedRuntime::throw_WrongMethodTypeException), | 3073 CAST_FROM_FN_PTR(address, SharedRuntime::throw_WrongMethodTypeException), |
3074 rax, rcx); | 3074 rax, rcx); |
3075 | |
3076 // Build this early so it's available for the interpreter. | |
3077 StubRoutines::_throw_StackOverflowError_entry = | |
3078 generate_throw_exception("StackOverflowError throw_exception", | |
3079 CAST_FROM_FN_PTR(address, | |
3080 SharedRuntime:: | |
3081 throw_StackOverflowError)); | |
3075 } | 3082 } |
3076 | 3083 |
3077 void generate_all() { | 3084 void generate_all() { |
3078 // Generates all stubs and initializes the entry points | 3085 // Generates all stubs and initializes the entry points |
3079 | 3086 |
3096 generate_throw_exception("NullPointerException at call throw_exception", | 3103 generate_throw_exception("NullPointerException at call throw_exception", |
3097 CAST_FROM_FN_PTR(address, | 3104 CAST_FROM_FN_PTR(address, |
3098 SharedRuntime:: | 3105 SharedRuntime:: |
3099 throw_NullPointerException_at_call)); | 3106 throw_NullPointerException_at_call)); |
3100 | 3107 |
3101 StubRoutines::_throw_StackOverflowError_entry = | |
3102 generate_throw_exception("StackOverflowError throw_exception", | |
3103 CAST_FROM_FN_PTR(address, | |
3104 SharedRuntime:: | |
3105 throw_StackOverflowError)); | |
3106 | |
3107 // entry points that are platform specific | 3108 // entry points that are platform specific |
3108 StubRoutines::x86::_f2i_fixup = generate_f2i_fixup(); | 3109 StubRoutines::x86::_f2i_fixup = generate_f2i_fixup(); |
3109 StubRoutines::x86::_f2l_fixup = generate_f2l_fixup(); | 3110 StubRoutines::x86::_f2l_fixup = generate_f2l_fixup(); |
3110 StubRoutines::x86::_d2i_fixup = generate_d2i_fixup(); | 3111 StubRoutines::x86::_d2i_fixup = generate_d2i_fixup(); |
3111 StubRoutines::x86::_d2l_fixup = generate_d2l_fixup(); | 3112 StubRoutines::x86::_d2l_fixup = generate_d2l_fixup(); |