comparison src/share/vm/jvmci/jvmciRuntime.hpp @ 23751:b1b5c71c04b7

replace use of vm_abort with vm_exit
author Doug Simon <doug.simon@oracle.com>
date Thu, 08 Sep 2016 15:06:36 +0200
parents 1b939a613788
children
comparison
equal deleted inserted replaced
23750:b39b4a11c1d1 23751:b1b5c71c04b7
131 * no such variation exists. 131 * no such variation exists.
132 */ 132 */
133 static void fthrow_error(Thread* thread, const char* file, int line, const char* format, ...) ATTRIBUTE_PRINTF(4, 5); 133 static void fthrow_error(Thread* thread, const char* file, int line, const char* format, ...) ATTRIBUTE_PRINTF(4, 5);
134 134
135 /** 135 /**
136 * Aborts the VM due to an unexpected exception. 136 * Exits the VM due to an unexpected exception.
137 */ 137 */
138 static void abort_on_pending_exception(Handle exception, const char* message, bool dump_core = false); 138 static void exit_on_pending_exception(Handle exception, const char* message);
139 139
140 #define CHECK_ABORT THREAD); \ 140 #define CHECK_EXIT THREAD); \
141 if (HAS_PENDING_EXCEPTION) { \ 141 if (HAS_PENDING_EXCEPTION) { \
142 char buf[256]; \ 142 char buf[256]; \
143 jio_snprintf(buf, 256, "Uncaught exception at %s:%d", __FILE__, __LINE__); \ 143 jio_snprintf(buf, 256, "Uncaught exception at %s:%d", __FILE__, __LINE__); \
144 JVMCIRuntime::abort_on_pending_exception(PENDING_EXCEPTION, buf); \ 144 JVMCIRuntime::exit_on_pending_exception(PENDING_EXCEPTION, buf); \
145 return; \ 145 return; \
146 } \ 146 } \
147 (void)(0 147 (void)(0
148 148
149 #define CHECK_ABORT_(result) THREAD); \ 149 #define CHECK_EXIT_(result) THREAD); \
150 if (HAS_PENDING_EXCEPTION) { \ 150 if (HAS_PENDING_EXCEPTION) { \
151 char buf[256]; \ 151 char buf[256]; \
152 jio_snprintf(buf, 256, "Uncaught exception at %s:%d", __FILE__, __LINE__); \ 152 jio_snprintf(buf, 256, "Uncaught exception at %s:%d", __FILE__, __LINE__); \
153 JVMCIRuntime::abort_on_pending_exception(PENDING_EXCEPTION, buf); \ 153 JVMCIRuntime::exit_on_pending_exception(PENDING_EXCEPTION, buf); \
154 return result; \ 154 return result; \
155 } \ 155 } \
156 (void)(0 156 (void)(0
157 157
158 /** 158 /**
162 162
163 /** 163 /**
164 * Same as SystemDictionary::resolve_or_fail but uses the JVMCI loader. 164 * Same as SystemDictionary::resolve_or_fail but uses the JVMCI loader.
165 */ 165 */
166 static Klass* resolve_or_fail(Symbol* name, TRAPS); 166 static Klass* resolve_or_fail(Symbol* name, TRAPS);
167
168 /**
169 * Loads a given JVMCI class and aborts the VM if it fails.
170 */
171 static Klass* load_required_class(Symbol* name);
172 167
173 static BasicType kindToBasicType(Handle kind, TRAPS); 168 static BasicType kindToBasicType(Handle kind, TRAPS);
174 169
175 // The following routines are all called from compiled JVMCI code 170 // The following routines are all called from compiled JVMCI code
176 171