From: Alan Modra Date: Tue, 25 Aug 2020 04:42:49 +0000 (+0930) Subject: PR26426, ASAN: neon_quad tc-arm.c:15175 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=250dd99fc92bac670691b66363dd71dccb22b10d;p=binutils-gdb.git PR26426, ASAN: neon_quad tc-arm.c:15175 PR 26426 * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on NS_NULL shape. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index ce58416c4a3..96e955140bb 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2020-08-25 Alan Modra + + PR 26426 + * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on + NS_NULL shape. + 2020-08-25 Alan Modra PR 26410 diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 1cc0cea25e7..830cbda6182 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -19555,6 +19555,9 @@ do_neon_mvn (void) else rs = neon_select_shape (NS_DD, NS_QQ, NS_NULL); + if (rs == NS_NULL) + return; + NEON_ENCODE (INTEGER, inst); inst.instruction |= LOW4 (inst.operands[0].reg) << 12; inst.instruction |= HI1 (inst.operands[0].reg) << 22; @@ -20634,6 +20637,8 @@ static void do_neon_swp (void) { enum neon_shape rs = neon_select_shape (NS_DD, NS_QQ, NS_NULL); + if (rs == NS_NULL) + return; neon_two_same (neon_quad (rs), 1, -1); }