[PATCH resend] 8157758: Use (~0u) instead of (-1) when left-shifting
Alex Henrie
alexhenrie24 at gmail.com
Thu Jun 2 19:44:23 UTC 2016
# HG changeset patch
# User ahenrie
# Date 1464130244 21600
# Tue May 24 16:50:44 2016 -0600
# Node ID a6853f1a7065fbdef50bc71948f7712f81527734
# Parent 3844f305a6f7b9bcb39c1274ed41aaf5614d0968
8157758: Use (~0u) instead of (-1) when left-shifting
diff --git a/src/share/vm/code/dependencies.hpp b/src/share/vm/code/dependencies.hpp
--- a/src/share/vm/code/dependencies.hpp
+++ b/src/share/vm/code/dependencies.hpp
@@ -163,17 +163,17 @@ class Dependencies: public ResourceObj {
call_site_target_value,
TYPE_LIMIT
};
enum {
LG2_TYPE_LIMIT = 4, // assert(TYPE_LIMIT <= (1<<LG2_TYPE_LIMIT))
// handy categorizations of dependency types:
- all_types = ((1 << TYPE_LIMIT) - 1) & ((-1) << FIRST_TYPE),
+ all_types = ((1 << TYPE_LIMIT) - 1) & ((~0u) << FIRST_TYPE),
non_klass_types = (1 << call_site_target_value),
klass_types = all_types & ~non_klass_types,
non_ctxk_types = (1 << evol_method) | (1 << call_site_target_value),
implicit_ctxk_types = 0,
explicit_ctxk_types = all_types & ~(non_ctxk_types | implicit_ctxk_types),
diff --git a/src/share/vm/oops/cpCache.hpp b/src/share/vm/oops/cpCache.hpp
--- a/src/share/vm/oops/cpCache.hpp
+++ b/src/share/vm/oops/cpCache.hpp
@@ -188,17 +188,17 @@ class ConstantPoolCacheEntry VALUE_OBJ_C
is_final_shift = 22, // (f) is the field or method final?
is_volatile_shift = 21, // (v) is the field volatile?
is_vfinal_shift = 20, // (vf) did the call resolve to a final method?
// low order bits give field index (for FieldInfo) or method parameter size:
field_index_bits = 16,
field_index_mask = right_n_bits(field_index_bits),
parameter_size_bits = 8, // subset of field_index_mask, range is 0..255
parameter_size_mask = right_n_bits(parameter_size_bits),
- option_bits_mask = ~(((-1) << tos_state_shift) | (field_index_mask | parameter_size_mask))
+ option_bits_mask = ~(((~0u) << tos_state_shift) | (field_index_mask | parameter_size_mask))
};
// specific bit definitions for the indices field:
enum {
cp_index_bits = 2*BitsPerByte,
cp_index_mask = right_n_bits(cp_index_bits),
bytecode_1_shift = cp_index_bits,
bytecode_1_mask = right_n_bits(BitsPerByte), // == (u1)0xFF
More information about the hotspot-dev
mailing list