From ca22cf5ed52c1b4c40dbadf893f558ef09d0c66b Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 19 Aug 2021 07:39:10 -0700 Subject: [PATCH] x86: Put back 3 aborts in OP_E_memory Put back 3 aborts where invalid lengths should have been filtered out. gas/ PR binutils/28247 * testsuite/gas/i386/bad-bcast.s: Add a comment. opcodes/ PR binutils/28247 * * i386-dis.c (OP_E_memory): Put back 3 aborts. --- gas/testsuite/gas/i386/bad-bcast.s | 1 + opcodes/i386-dis.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/gas/testsuite/gas/i386/bad-bcast.s b/gas/testsuite/gas/i386/bad-bcast.s index e09c3aae5de..3e49b2238ed 100644 --- a/gas/testsuite/gas/i386/bad-bcast.s +++ b/gas/testsuite/gas/i386/bad-bcast.s @@ -1,2 +1,3 @@ .text +# Invalid 16-bit broadcast with EVEX.W == 1. .byte 0x62, 0xc3, 0x8c, 0x1d, 0x66, 0x90, 0x66, 0x90, 0x66, 0x90 diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index acb5a0faa88..aa292233d4d 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -11928,7 +11928,7 @@ OP_E_memory (int bytemode, int sizeflag) oappend ("{1to32}"); break; default: - oappend ("{bad}"); + abort (); } } } @@ -11948,7 +11948,7 @@ OP_E_memory (int bytemode, int sizeflag) oappend ("{1to8}"); break; default: - oappend ("{bad}"); + abort (); } } else if (bytemode == x_mode @@ -11966,7 +11966,7 @@ OP_E_memory (int bytemode, int sizeflag) oappend ("{1to16}"); break; default: - oappend ("{bad}"); + abort (); } } else -- 2.30.2