mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 19:14:38 +02:00
8165565: Shorten branches causes incorrect code for SKX
Don't replace restoreMask CountedLoopEnd with short branches. Reviewed-by: kvn
This commit is contained in:
parent
89f7f6f4b3
commit
6384a5d55d
1 changed files with 1 additions and 0 deletions
|
@ -1245,6 +1245,7 @@ bool InstructForm::check_branch_variant(ArchDesc &AD, InstructForm *short_branch
|
||||||
this != short_branch && // Don't match myself
|
this != short_branch && // Don't match myself
|
||||||
!is_short_branch() && // Don't match another short branch variant
|
!is_short_branch() && // Don't match another short branch variant
|
||||||
reduce_result() != NULL &&
|
reduce_result() != NULL &&
|
||||||
|
strstr(_ident, "restoreMask") == NULL && // Don't match side effects
|
||||||
strcmp(reduce_result(), short_branch->reduce_result()) == 0 &&
|
strcmp(reduce_result(), short_branch->reduce_result()) == 0 &&
|
||||||
_matrule->equivalent(AD.globalNames(), short_branch->_matrule)) {
|
_matrule->equivalent(AD.globalNames(), short_branch->_matrule)) {
|
||||||
// The instructions are equivalent.
|
// The instructions are equivalent.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue