diff -r 14a195eaf2c5 -r 291ee208fb72 hotspot/src/share/vm/runtime/reflection.cpp --- a/hotspot/src/share/vm/runtime/reflection.cpp Mon Apr 18 15:39:46 2016 -0700 +++ b/hotspot/src/share/vm/runtime/reflection.cpp Tue Oct 13 18:13:34 2015 -0400 @@ -1025,7 +1025,7 @@ static void narrow(jvalue* value, BasicType narrow_type, TRAPS) { switch (narrow_type) { case T_BOOLEAN: - value->z = (jboolean)value->i; + value->z = (jboolean) (value->i & 1); return; case T_BYTE: value->b = (jbyte)value->i;