8191683: Compile problem on ARM after JDK-8043070
authoriveresov
Wed, 22 Nov 2017 01:12:23 -0800
changeset 48088 2cd1c2b03782
parent 48020 4789dbcf32cf
child 48089 22c9856fc2c2
8191683: Compile problem on ARM after JDK-8043070 Summary: Make nmethod::_state explicitly a signed char Reviewed-by: thartmann
src/hotspot/share/code/nmethod.hpp
src/hotspot/share/runtime/vmStructs.cpp
--- a/src/hotspot/share/code/nmethod.hpp	Tue Nov 21 21:33:53 2017 -0500
+++ b/src/hotspot/share/code/nmethod.hpp	Wed Nov 22 01:12:23 2017 -0800
@@ -124,7 +124,7 @@
   bool _unload_reported;
 
   // Protected by Patching_lock
-  volatile char _state;             // {not_installed, in_use, not_entrant, zombie, unloaded}
+  volatile signed char _state;               // {not_installed, in_use, not_entrant, zombie, unloaded}
 
 #ifdef ASSERT
   bool _oops_are_stale;  // indicates that it's no longer safe to access oops section
--- a/src/hotspot/share/runtime/vmStructs.cpp	Tue Nov 21 21:33:53 2017 -0500
+++ b/src/hotspot/share/runtime/vmStructs.cpp	Wed Nov 22 01:12:23 2017 -0800
@@ -830,7 +830,7 @@
   nonstatic_field(nmethod,                     _osr_link,                                     nmethod*)                              \
   nonstatic_field(nmethod,                     _scavenge_root_link,                           nmethod*)                              \
   nonstatic_field(nmethod,                     _scavenge_root_state,                          jbyte)                                 \
-  nonstatic_field(nmethod,                     _state,                                        volatile char)                         \
+  nonstatic_field(nmethod,                     _state,                                        volatile signed char)                         \
   nonstatic_field(nmethod,                     _exception_offset,                             int)                                   \
   nonstatic_field(nmethod,                     _orig_pc_offset,                               int)                                   \
   nonstatic_field(nmethod,                     _stub_offset,                                  int)                                   \
@@ -1350,8 +1350,8 @@
   declare_integer_type(int)                                               \
   declare_integer_type(long)                                              \
   declare_integer_type(char)                                              \
+  declare_integer_type(volatile signed char)                              \
   declare_unsigned_integer_type(unsigned char)                            \
-  declare_unsigned_integer_type(volatile char)                            \
   declare_unsigned_integer_type(u_char)                                   \
   declare_unsigned_integer_type(unsigned int)                             \
   declare_unsigned_integer_type(uint)                                     \