Mercurial > hg > graal-jvmci-8
diff src/share/vm/jvmci/jvmciRuntime.hpp @ 22722:0229a2ca608b
Make kindToBasicType trapping.
author | Roland Schatz <roland.schatz@oracle.com> |
---|---|
date | Thu, 05 Nov 2015 10:59:29 +0100 |
parents | 3039e5bb94cb |
children | 732763293625 |
line wrap: on
line diff
--- a/src/share/vm/jvmci/jvmciRuntime.hpp Tue Nov 03 16:55:51 2015 +0100 +++ b/src/share/vm/jvmci/jvmciRuntime.hpp Thu Nov 05 10:59:29 2015 +0100 @@ -29,6 +29,17 @@ #include "runtime/arguments.hpp" #include "runtime/deoptimization.hpp" +#define JVMCI_ERROR(...) \ + { Exceptions::fthrow(THREAD_AND_LOCATION, vmSymbols::jdk_vm_ci_common_JVMCIError(), __VA_ARGS__); return; } + +#define JVMCI_ERROR_(ret, ...) \ + { Exceptions::fthrow(THREAD_AND_LOCATION, vmSymbols::jdk_vm_ci_common_JVMCIError(), __VA_ARGS__); return ret; } + +#define JVMCI_ERROR_0(...) JVMCI_ERROR_(0, __VA_ARGS__) +#define JVMCI_ERROR_NULL(...) JVMCI_ERROR_(NULL, __VA_ARGS__) +#define JVMCI_ERROR_OK(...) JVMCI_ERROR_(JVMCIEnv::ok, __VA_ARGS__) +#define CHECK_OK CHECK_(JVMCIEnv::ok) + class ParseClosure : public StackObj { int _lineNo; char* _filename; @@ -196,7 +207,7 @@ */ static Klass* load_required_class(Symbol* name); - static BasicType kindToBasicType(jchar ch); + static BasicType kindToBasicType(jchar ch, TRAPS); // The following routines are all called from compiled JVMCI code