aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2023-10-23 10:33:02 +0200
committerJan Beulich <jbeulich@suse.com>2023-10-23 10:33:02 +0200
commitc8be4b6f1d4a3ea74afb1df526477d6fbcb5d8c2 (patch)
treed3bc3d05cbc95d74ebc1b1c5e123ab1b99215960 /gas
parentcd75cd859e58ff7161871849c59f01e9df3cdbc3 (diff)
downloadgdb-c8be4b6f1d4a3ea74afb1df526477d6fbcb5d8c2.zip
gdb-c8be4b6f1d4a3ea74afb1df526477d6fbcb5d8c2.tar.gz
gdb-c8be4b6f1d4a3ea74afb1df526477d6fbcb5d8c2.tar.bz2
x86: i686 != PentiumPro
The two are distinct in opcodes/, distinguished precisely by CpuNOP that's relevant in i386_generate_nops(), yet the function has the PPro case label in the other group. Simply removing it revealed that cpu_arch[] had a wrong entry for i686. While there also add PROCESSOR_IAMCU to the respective comment.
Diffstat (limited to 'gas')
-rw-r--r--gas/config/tc-i386.c8
-rw-r--r--gas/config/tc-i386.h1
2 files changed, 6 insertions, 3 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index d936252..c59dee4 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -987,8 +987,8 @@ static const arch_entry cpu_arch[] =
ARCH (i386, I386, 386, false),
ARCH (i486, I486, 486, false),
ARCH (i586, PENTIUM, 586, false),
- ARCH (i686, PENTIUMPRO, 686, false),
ARCH (pentium, PENTIUM, 586, false),
+ ARCH (i686, I686, 686, false),
ARCH (pentiumpro, PENTIUMPRO, PENTIUMPRO, false),
ARCH (pentiumii, PENTIUMPRO, P2, false),
ARCH (pentiumiii, PENTIUMPRO, P3, false),
@@ -1440,7 +1440,7 @@ i386_generate_nops (fragS *fragP, char *where, offsetT count, int limit)
/* We need to decide which NOP sequence to use for 32bit and
64bit. When -mtune= is used:
- 1. For PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM and
+ 1. For PROCESSOR_I?86, PROCESSOR_PENTIUM, PROCESSOR_IAMCU, and
PROCESSOR_GENERIC32, f32_patt will be used.
2. For the rest, alt_patt will be used.
@@ -1473,6 +1473,8 @@ i386_generate_nops (fragS *fragP, char *where, offsetT count, int limit)
if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
patt = alt_patt;
break;
+
+ case PROCESSOR_PENTIUMPRO:
case PROCESSOR_PENTIUM4:
case PROCESSOR_NOCONA:
case PROCESSOR_CORE:
@@ -1493,7 +1495,7 @@ i386_generate_nops (fragS *fragP, char *where, offsetT count, int limit)
case PROCESSOR_I386:
case PROCESSOR_I486:
case PROCESSOR_PENTIUM:
- case PROCESSOR_PENTIUMPRO:
+ case PROCESSOR_I686:
case PROCESSOR_IAMCU:
case PROCESSOR_GENERIC32:
break;
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h
index 696e519..a697c48 100644
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -242,6 +242,7 @@ enum processor_type
PROCESSOR_I386,
PROCESSOR_I486,
PROCESSOR_PENTIUM,
+ PROCESSOR_I686,
PROCESSOR_PENTIUMPRO,
PROCESSOR_PENTIUM4,
PROCESSOR_NOCONA,