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

View File

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

View File

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