diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-01-10 17:25:52 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-01-10 17:25:52 +0000 |
commit | bd5295b282c09d4aa5ee49b869cb39cd1dc8f02b (patch) | |
tree | c76351a57949d22a02b15abcd701fd49ef1b9376 /gas/config | |
parent | 38788b66ed252babb4235e5eb0f483a2da9af280 (diff) | |
download | gdb-bd5295b282c09d4aa5ee49b869cb39cd1dc8f02b.zip gdb-bd5295b282c09d4aa5ee49b869cb39cd1dc8f02b.tar.gz gdb-bd5295b282c09d4aa5ee49b869cb39cd1dc8f02b.tar.bz2 |
gas/
2009-01-10 H.J. Lu <hongjiu.lu@intel.com>
* gas/config/tc-i386.c (cpu_arch): Add corei7, .clflush and
.syscall.
(i386_align_code): Handle PROCESSOR_COREI7.
(md_show_usage): Add corei7, clflush and syscall.
(i386_target_format): Replace cpup4 with cpuclflush.
* gas/config/tc-i386.h (processor_type): Add PROCESSOR_COREI7.
* doc/c-i386.texi: Document corei7, clflush and syscall.
gas/testsuite/
2009-01-10 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/arch-10.s: Add clflush and syscall.
* gas/i386/x86-64-arch-2.s: Likewise.
* gas/i386/arch-10.d: Updated.
* gas/i386/arch-10-1.l: Likewise.
* gas/i386/arch-10-2.l: Likewise.
* gas/i386/arch-10-3.l: Likewise.
* gas/i386/arch-10-4.l: Likewise.
* gas/i386/x86-64-arch-2.d: Likewise.
opcodes/
2009-01-10 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (cpu_flag_init): Replace CpuP4 and CpuK6 with
CpuClflush and CpuSYSCALL, respectively. Remove CpuK8. Add
CPU_COREI7_FLAGS, CPU_CLFLUSH_FLAGS and CPU_SYSCALL_FLAGS.
(cpu_flags): Remove CpuP4, CpuK6 and CpuK8. Add CpuClflush
and CpuSYSCALL.
(lineno): Removed.
(set_bitfield): Take an argument, lineno. Don't report lineno
on error if it is -1.
(process_i386_cpu_flag): Take an argument, lineno.
(process_i386_opcode_modifier): Likewise.
(process_i386_operand_type): Likewise.
(output_i386_opcode): Likewise.
(opcode_hash_entry): Add lineno.
(process_i386_opcodes): Updated.
(process_i386_registers): Likewise.
(process_i386_initializers): Likewise.
* i386-opc.h (CpuP4): Removed.
(CpuK6): Likewise.
(CpuK8): Likewise.
(CpuClflush): New.
(CpuSYSCALL): Likewise.
(CpuMMX): Updated.
(i386_cpu_flags): Remove cpup4, cpuk6 and cpuk8. Add
cpuclflush and cpusyscall.
* i386-opc.tbl: Update movnti, clflush, lfence, mfence, pause,
syscall and sysret.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-i386.c | 24 | ||||
-rw-r--r-- | gas/config/tc-i386.h | 1 |
2 files changed, 17 insertions, 8 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 7222969..f731abb 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -600,6 +600,8 @@ static const arch_entry cpu_arch[] = CPU_CORE2_FLAGS }, { "core2", PROCESSOR_CORE2, CPU_CORE2_FLAGS }, + { "corei7", PROCESSOR_COREI7, + CPU_COREI7_FLAGS }, { "k6", PROCESSOR_K6, CPU_K6_FLAGS }, { "k6_2", PROCESSOR_K6, @@ -650,6 +652,10 @@ static const arch_entry cpu_arch[] = CPU_MOVBE_FLAGS }, { ".ept", PROCESSOR_UNKNOWN, CPU_EPT_FLAGS }, + { ".clflush", PROCESSOR_UNKNOWN, + CPU_CLFLUSH_FLAGS }, + { ".syscall", PROCESSOR_UNKNOWN, + CPU_SYSCALL_FLAGS }, { ".rdtscp", PROCESSOR_UNKNOWN, CPU_RDTSCP_FLAGS }, { ".3dnow", PROCESSOR_UNKNOWN, @@ -950,8 +956,8 @@ i386_align_code (fragS *fragP, int count) 1. For PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM and PROCESSOR_GENERIC32, f32_patt will be used. 2. For PROCESSOR_PENTIUMPRO, PROCESSOR_PENTIUM4, PROCESSOR_NOCONA, - PROCESSOR_CORE, PROCESSOR_CORE2, and PROCESSOR_GENERIC64, - alt_long_patt will be used. + PROCESSOR_CORE, PROCESSOR_CORE2, PROCESSOR_COREI7, and + PROCESSOR_GENERIC64, alt_long_patt will be used. 3. For PROCESSOR_ATHLON, PROCESSOR_K6, PROCESSOR_K8 and PROCESSOR_AMDFAM10, alt_short_patt will be used. @@ -997,6 +1003,7 @@ i386_align_code (fragS *fragP, int count) case PROCESSOR_NOCONA: case PROCESSOR_CORE: case PROCESSOR_CORE2: + case PROCESSOR_COREI7: case PROCESSOR_GENERIC64: patt = alt_long_patt; break; @@ -1044,6 +1051,7 @@ i386_align_code (fragS *fragP, int count) case PROCESSOR_NOCONA: case PROCESSOR_CORE: case PROCESSOR_CORE2: + case PROCESSOR_COREI7: if (fragP->tc_frag_data.isa_flags.bitfield.cpui686) patt = alt_long_patt; else @@ -8232,18 +8240,18 @@ md_show_usage (stream) generate code for CPU and EXTENSION, CPU is one of:\n\ i8086, i186, i286, i386, i486, pentium, pentiumpro,\n\ pentiumii, pentiumiii, pentium4, prescott, nocona,\n\ - core, core2, k6, k6_2, athlon, k8, amdfam10,\n\ + core, core2, corei7, k6, k6_2, athlon, k8, amdfam10,\n\ generic32, generic64\n\ EXTENSION is combination of:\n\ mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n\ avx, vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n\ - rdtscp, 3dnow, 3dnowa, sse4a, sse5, svme, abm,\n\ - padlock\n")); + clflush, syscall, rdtscp, 3dnow, 3dnowa, sse4a,\n\ + sse5, svme, abm, padlock\n")); fprintf (stream, _("\ -mtune=CPU optimize for CPU, CPU is one of:\n\ i8086, i186, i286, i386, i486, pentium, pentiumpro,\n\ pentiumii, pentiumiii, pentium4, prescott, nocona,\n\ - core, core2, k6, k6_2, athlon, k8, amdfam10,\n\ + core, core2, corei7, k6, k6_2, athlon, k8, amdfam10,\n\ generic32, generic64\n")); fprintf (stream, _("\ -msse2avx encode SSE instructions with VEX prefix\n")); @@ -8281,7 +8289,7 @@ i386_target_format (void) cpu_arch_isa_flags.bitfield.cpui486 = 1; cpu_arch_isa_flags.bitfield.cpui586 = 1; cpu_arch_isa_flags.bitfield.cpui686 = 1; - cpu_arch_isa_flags.bitfield.cpup4 = 1; + cpu_arch_isa_flags.bitfield.cpuclflush = 1; cpu_arch_isa_flags.bitfield.cpummx= 1; cpu_arch_isa_flags.bitfield.cpusse = 1; cpu_arch_isa_flags.bitfield.cpusse2 = 1; @@ -8294,7 +8302,7 @@ i386_target_format (void) cpu_arch_tune_flags.bitfield.cpui486 = 1; cpu_arch_tune_flags.bitfield.cpui586 = 1; cpu_arch_tune_flags.bitfield.cpui686 = 1; - cpu_arch_tune_flags.bitfield.cpup4 = 1; + cpu_arch_tune_flags.bitfield.cpuclflush = 1; cpu_arch_tune_flags.bitfield.cpummx= 1; cpu_arch_tune_flags.bitfield.cpusse = 1; cpu_arch_tune_flags.bitfield.cpusse2 = 1; diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h index f7f829c..1670041a 100644 --- a/gas/config/tc-i386.h +++ b/gas/config/tc-i386.h @@ -198,6 +198,7 @@ enum processor_type PROCESSOR_NOCONA, PROCESSOR_CORE, PROCESSOR_CORE2, + PROCESSOR_COREI7, PROCESSOR_K6, PROCESSOR_ATHLON, PROCESSOR_K8, |