Replace KILL_COMPILE_ON_FATAL_ with CHECK_AND_CLEAR_.
KILL_COMPILE_ON_FATAL_ checks for ThreadDeath, but compiler threads shouldn't receive it.
src/hotspot/share/ci/ciUtilities.inline.hpp:
69 // Redefine this later.
70 #define KILL_COMPILE_ON_FATAL_(result) \
71 THREAD); \
72 if (HAS_PENDING_EXCEPTION) { \
73 if (PENDING_EXCEPTION->klass() == \
74 SystemDictionary::ThreadDeath_klass()) { \
75 /* Kill the compilation. */ \
76 fatal("unhandled ci exception"); \
77 return (result); \
78 } \
79 CLEAR_PENDING_EXCEPTION; \
80 return (result); \
81 } \
82 (void)(0
KILL_COMPILE_ON_ANY is not unused and can be removed right away:
84 #define KILL_COMPILE_ON_ANY \
85 THREAD); \
86 if (HAS_PENDING_EXCEPTION) { \
87 fatal("unhandled ci exception"); \
88 CLEAR_PENDING_EXCEPTION; \
89 } \
90 (void)(0
KILL_COMPILE_ON_FATAL_ checks for ThreadDeath, but compiler threads shouldn't receive it.
src/hotspot/share/ci/ciUtilities.inline.hpp:
69 // Redefine this later.
70 #define KILL_COMPILE_ON_FATAL_(result) \
71 THREAD); \
72 if (HAS_PENDING_EXCEPTION) { \
73 if (PENDING_EXCEPTION->klass() == \
74 SystemDictionary::ThreadDeath_klass()) { \
75 /* Kill the compilation. */ \
76 fatal("unhandled ci exception"); \
77 return (result); \
78 } \
79 CLEAR_PENDING_EXCEPTION; \
80 return (result); \
81 } \
82 (void)(0
KILL_COMPILE_ON_ANY is not unused and can be removed right away:
84 #define KILL_COMPILE_ON_ANY \
85 THREAD); \
86 if (HAS_PENDING_EXCEPTION) { \
87 fatal("unhandled ci exception"); \
88 CLEAR_PENDING_EXCEPTION; \
89 } \
90 (void)(0