8254790: SIGSEGV in string_indexof_char and stringL_indexof_char intrinsics

Reviewed-by: kvn, thartmann
This commit is contained in:
Sandhya Viswanathan 2020-10-21 16:24:30 +00:00
parent f813a28b95
commit 365f19c8e1
2 changed files with 3 additions and 3 deletions
src/hotspot

@ -2717,7 +2717,7 @@ void C2_MacroAssembler::string_indexof_char(Register str1, Register cnt1, Regist
pmovmskb(tmp, vec3);
}
bsfl(ch, tmp);
addl(result, ch);
addptr(result, ch);
bind(FOUND_SEQ_CHAR);
subptr(result, str1);
@ -2811,7 +2811,7 @@ void C2_MacroAssembler::stringL_indexof_char(Register str1, Register cnt1, Regis
pmovmskb(tmp, vec3);
}
bsfl(ch, tmp);
addl(result, ch);
addptr(result, ch);
bind(FOUND_SEQ_CHAR);
subptr(result, str1);

@ -495,7 +495,7 @@ bool C2Compiler::is_intrinsic_supported(const methodHandle& method, bool is_virt
case vmIntrinsics::_indexOfIU:
case vmIntrinsics::_indexOfIUL:
case vmIntrinsics::_indexOfU_char:
// case vmIntrinsics::_indexOfL_char: // Disable it until found issues are fixed
case vmIntrinsics::_indexOfL_char:
case vmIntrinsics::_toBytesStringU:
case vmIntrinsics::_getCharsStringU:
case vmIntrinsics::_getCharStringU: