[pushed] i386: Fix unprotected REGNO in aeswidekl_operation
Checks
Commit Message
I hit an ICE in aeswidekl_operation while testing the late-combine
pass on x86. The predicate tested REGNO without first testing REG_P.
Tested on x86_64-linux-gnu & pushed as obvious.
Richard
gcc/
* config/i386/predicates.md (aeswidekl_operation): Protect
REGNO check with REG_P.
---
gcc/config/i386/predicates.md | 1 +
1 file changed, 1 insertion(+)
@@ -2260,6 +2260,7 @@ (define_predicate "aeswidekl_operation"
|| GET_CODE (SET_SRC (elt)) != UNSPEC_VOLATILE
|| GET_MODE (SET_SRC (elt)) != V2DImode
|| XVECLEN (SET_SRC (elt), 0) != 1
+ || !REG_P (XVECEXP (SET_SRC (elt), 0, 0))
|| REGNO (XVECEXP (SET_SRC (elt), 0, 0)) != GET_SSE_REGNO (i))
return false;
}