binutils/0023-x86-Put-back-3-aborts-in-OP_E_memory.patch
dingguangya ccc9d8c777 Enable Intel AVX512_FP16 instructions
(cherry picked from commit dc957bc9fadac974c5930b19a52129ff17dd2fae)
2022-09-05 11:14:32 +08:00

60 lines
1.5 KiB
Diff

From ca22cf5ed52c1b4c40dbadf893f558ef09d0c66b Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
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.
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.33.0