gas/
2008-02-11 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (cpu_arch): Add .xsave. (md_show_usage): Add .xsave. * doc/c-i386.texi: Add xsave to -march=. gas/testsuite/ 2008-02-11 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/arch-10.s: Add xgetbv. * 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-10.d: Likewise. opcodes/ 2008-02-11 H.J. Lu <hongjiu.lu@intel.com> * i386-gen.c (cpu_flag_init): Add CPU_XSAVE_FLAGS. * i386-init.h: Updated.
This commit is contained in:
parent
9d37b37d37
commit
f03fe4c110
@ -1,3 +1,10 @@
|
||||
2008-02-11 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* config/tc-i386.c (cpu_arch): Add .xsave.
|
||||
(md_show_usage): Add .xsave.
|
||||
|
||||
* doc/c-i386.texi: Add xsave to -march=.
|
||||
|
||||
2008-02-07 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* read.c (s_weakref): Don't pass unadorned NULL to concat.
|
||||
|
@ -623,6 +623,8 @@ static const arch_entry cpu_arch[] =
|
||||
CPU_VMX_FLAGS },
|
||||
{ ".smx", PROCESSOR_UNKNOWN,
|
||||
CPU_SMX_FLAGS },
|
||||
{ ".xsave", PROCESSOR_UNKNOWN,
|
||||
CPU_XSAVE_FLAGS },
|
||||
{ ".3dnow", PROCESSOR_UNKNOWN,
|
||||
CPU_3DNOW_FLAGS },
|
||||
{ ".3dnowa", PROCESSOR_UNKNOWN,
|
||||
@ -7408,8 +7410,8 @@ md_show_usage (stream)
|
||||
generic32, generic64\n\
|
||||
EXTENSION is combination of:\n\
|
||||
mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n\
|
||||
vmx, smx, 3dnow, 3dnowa, sse4a, sse5, svme, abm,\n\
|
||||
padlock\n"));
|
||||
vmx, smx, xsave, 3dnow, 3dnowa, sse4a, sse5, svme,\n\
|
||||
abm, padlock\n"));
|
||||
fprintf (stream, _("\
|
||||
-mtune=CPU optimize for CPU, CPU is one of:\n\
|
||||
i8086, i186, i286, i386, i486, pentium, pentiumpro,\n\
|
||||
|
@ -122,6 +122,7 @@ accept various extension mnemonics. For example,
|
||||
@code{sse4},
|
||||
@code{vmx},
|
||||
@code{smx},
|
||||
@code{xsave},
|
||||
@code{3dnow},
|
||||
@code{3dnowa},
|
||||
@code{sse4a},
|
||||
|
@ -1,3 +1,14 @@
|
||||
2008-02-11 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* gas/i386/arch-10.s: Add xgetbv.
|
||||
|
||||
* 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-10.d: Likewise.
|
||||
|
||||
2002-02-11 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* gas/i386/i386.exp: Run xsave, xsave-intel, x86-64-xsave
|
||||
|
@ -16,6 +16,7 @@
|
||||
.*:32: Error: .*
|
||||
.*:34: Error: .*
|
||||
.*:36: Error: .*
|
||||
.*:38: Error: .*
|
||||
GAS LISTING .*
|
||||
|
||||
|
||||
@ -42,17 +43,19 @@ GAS LISTING .*
|
||||
[ ]*20[ ]+vmxoff
|
||||
[ ]*21[ ]+\# SMX
|
||||
[ ]*22[ ]+getsec
|
||||
[ ]*23[ ]+\# 3DNow
|
||||
[ ]*24[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*25[ ]+\# 3DNow Extensions
|
||||
[ ]*26[ ]+pswapd %mm4,%mm3
|
||||
[ ]*27[ ]+\# SSE4a
|
||||
[ ]*28[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*29[ ]+\# SVME
|
||||
[ ]*30[ ]+vmload
|
||||
[ ]*31[ ]+\# ABM
|
||||
[ ]*32[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*33[ ]+\# SSE5
|
||||
[ ]*34[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*35[ ]+\# PadLock
|
||||
[ ]*36[ ]+xstorerng
|
||||
[ ]*23[ ]+\# Xsave
|
||||
[ ]*24[ ]+xgetbv
|
||||
[ ]*25[ ]+\# 3DNow
|
||||
[ ]*26[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*27[ ]+\# 3DNow Extensions
|
||||
[ ]*28[ ]+pswapd %mm4,%mm3
|
||||
[ ]*29[ ]+\# SSE4a
|
||||
[ ]*30[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*31[ ]+\# SVME
|
||||
[ ]*32[ ]+vmload
|
||||
[ ]*33[ ]+\# ABM
|
||||
[ ]*34[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*35[ ]+\# SSE5
|
||||
[ ]*36[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*37[ ]+\# PadLock
|
||||
[ ]*38[ ]+xstorerng
|
||||
|
@ -15,6 +15,7 @@
|
||||
.*:32: Error: .*
|
||||
.*:34: Error: .*
|
||||
.*:36: Error: .*
|
||||
.*:38: Error: .*
|
||||
GAS LISTING .*
|
||||
|
||||
|
||||
@ -41,17 +42,19 @@ GAS LISTING .*
|
||||
[ ]*20[ ]+vmxoff
|
||||
[ ]*21[ ]+\# SMX
|
||||
[ ]*22[ ]+getsec
|
||||
[ ]*23[ ]+\# 3DNow
|
||||
[ ]*24[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*25[ ]+\# 3DNow Extensions
|
||||
[ ]*26[ ]+pswapd %mm4,%mm3
|
||||
[ ]*27[ ]+\# SSE4a
|
||||
[ ]*28[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*29[ ]+\# SVME
|
||||
[ ]*30[ ]+vmload
|
||||
[ ]*31[ ]+\# ABM
|
||||
[ ]*32[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*33[ ]+\# SSE5
|
||||
[ ]*34[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*35[ ]+\# PadLock
|
||||
[ ]*36[ ]+xstorerng
|
||||
[ ]*23[ ]+\# Xsave
|
||||
[ ]*24[ ]+xgetbv
|
||||
[ ]*25[ ]+\# 3DNow
|
||||
[ ]*26[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*27[ ]+\# 3DNow Extensions
|
||||
[ ]*28[ ]+pswapd %mm4,%mm3
|
||||
[ ]*29[ ]+\# SSE4a
|
||||
[ ]*30[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*31[ ]+\# SVME
|
||||
[ ]*32[ ]+vmload
|
||||
[ ]*33[ ]+\# ABM
|
||||
[ ]*34[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*35[ ]+\# SSE5
|
||||
[ ]*36[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*37[ ]+\# PadLock
|
||||
[ ]*38[ ]+xstorerng
|
||||
|
@ -8,6 +8,7 @@
|
||||
.*:32: Error: .*
|
||||
.*:34: Error: .*
|
||||
.*:36: Error: .*
|
||||
.*:38: Error: .*
|
||||
GAS LISTING .*
|
||||
|
||||
|
||||
@ -37,17 +38,19 @@ GAS LISTING .*
|
||||
[ ]*20[ ]+vmxoff
|
||||
[ ]*21[ ]+\# SMX
|
||||
[ ]*22[ ]+getsec
|
||||
[ ]*23[ ]+\# 3DNow
|
||||
[ ]*24[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*25[ ]+\# 3DNow Extensions
|
||||
[ ]*26[ ]+pswapd %mm4,%mm3
|
||||
[ ]*27[ ]+\# SSE4a
|
||||
[ ]*28[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*29[ ]+\# SVME
|
||||
[ ]*30[ ]+vmload
|
||||
[ ]*31[ ]+\# ABM
|
||||
[ ]*32[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*33[ ]+\# SSE5
|
||||
[ ]*34[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*35[ ]+\# PadLock
|
||||
[ ]*36[ ]+xstorerng
|
||||
[ ]*23[ ]+\# Xsave
|
||||
[ ]*24[ ]+xgetbv
|
||||
[ ]*25[ ]+\# 3DNow
|
||||
[ ]*26[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*27[ ]+\# 3DNow Extensions
|
||||
[ ]*28[ ]+pswapd %mm4,%mm3
|
||||
[ ]*29[ ]+\# SSE4a
|
||||
[ ]*30[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*31[ ]+\# SVME
|
||||
[ ]*32[ ]+vmload
|
||||
[ ]*33[ ]+\# ABM
|
||||
[ ]*34[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*35[ ]+\# SSE5
|
||||
[ ]*36[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*37[ ]+\# PadLock
|
||||
[ ]*38[ ]+xstorerng
|
||||
|
@ -6,6 +6,7 @@
|
||||
.*:32: Error: .*
|
||||
.*:34: Error: .*
|
||||
.*:36: Error: .*
|
||||
.*:38: Error: .*
|
||||
GAS LISTING .*
|
||||
|
||||
|
||||
@ -35,17 +36,19 @@ GAS LISTING .*
|
||||
[ ]*20[ ]+\?\?\?\? 0F01C4 vmxoff
|
||||
[ ]*21[ ]+\# SMX
|
||||
[ ]*22[ ]+\?\?\?\? 0F37 getsec
|
||||
[ ]*23[ ]+\# 3DNow
|
||||
[ ]*24[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*25[ ]+\# 3DNow Extensions
|
||||
[ ]*26[ ]+pswapd %mm4,%mm3
|
||||
[ ]*27[ ]+\# SSE4a
|
||||
[ ]*28[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*29[ ]+\# SVME
|
||||
[ ]*30[ ]+vmload
|
||||
[ ]*31[ ]+\# ABM
|
||||
[ ]*32[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*33[ ]+\# SSE5
|
||||
[ ]*34[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*35[ ]+\# PadLock
|
||||
[ ]*36[ ]+xstorerng
|
||||
[ ]*23[ ]+\# Xsave
|
||||
[ ]*24[ ]+xgetbv
|
||||
[ ]*25[ ]+\# 3DNow
|
||||
[ ]*26[ ]+pmulhrw %mm4,%mm3
|
||||
[ ]*27[ ]+\# 3DNow Extensions
|
||||
[ ]*28[ ]+pswapd %mm4,%mm3
|
||||
[ ]*29[ ]+\# SSE4a
|
||||
[ ]*30[ ]+insertq %xmm2,%xmm1
|
||||
[ ]*31[ ]+\# SVME
|
||||
[ ]*32[ ]+vmload
|
||||
[ ]*33[ ]+\# ABM
|
||||
[ ]*34[ ]+lzcnt %ecx,%ebx
|
||||
[ ]*35[ ]+\# SSE5
|
||||
[ ]*36[ ]+frczss %xmm2, %xmm1
|
||||
[ ]*37[ ]+\# PadLock
|
||||
[ ]*38[ ]+xstorerng
|
||||
|
@ -1,4 +1,4 @@
|
||||
#as: -march=i686+sse4+vmx+smx+sse5+3dnowa+svme+padlock
|
||||
#as: -march=i686+sse4+vmx+smx+xsave+sse5+3dnowa+svme+padlock
|
||||
#objdump: -dw
|
||||
#name: i386 arch 10
|
||||
|
||||
@ -17,6 +17,7 @@ Disassembly of section .text:
|
||||
[ ]*[a-f0-9]+: f2 0f 38 f1 d9 crc32l %ecx,%ebx
|
||||
[ ]*[a-f0-9]+: 0f 01 c4 vmxoff
|
||||
[ ]*[a-f0-9]+: 0f 37 getsec
|
||||
[ ]*[a-f0-9]+: 0f 01 d0 xgetbv
|
||||
[ ]*[a-f0-9]+: 0f 0f dc b7 pmulhrw %mm4,%mm3
|
||||
[ ]*[a-f0-9]+: 0f 0f dc bb pswapd %mm4,%mm3
|
||||
[ ]*[a-f0-9]+: f2 0f 79 ca insertq %xmm2,%xmm1
|
||||
|
@ -20,6 +20,8 @@ crc32 %ecx,%ebx
|
||||
vmxoff
|
||||
# SMX
|
||||
getsec
|
||||
# Xsave
|
||||
xgetbv
|
||||
# 3DNow
|
||||
pmulhrw %mm4,%mm3
|
||||
# 3DNow Extensions
|
||||
|
@ -1,5 +1,5 @@
|
||||
#source: arch-10.s
|
||||
#as: -march=generic64+sse4+vmx+smx+sse5+3dnowa+svme+padlock
|
||||
#as: -march=generic64+sse4+vmx+smx+xsave+sse5+3dnowa+svme+padlock
|
||||
#objdump: -dw
|
||||
#name: x86-64 arch 10
|
||||
|
||||
@ -18,6 +18,7 @@ Disassembly of section .text:
|
||||
[ ]*[a-f0-9]+: f2 0f 38 f1 d9 crc32l %ecx,%ebx
|
||||
[ ]*[a-f0-9]+: 0f 01 c4 vmxoff
|
||||
[ ]*[a-f0-9]+: 0f 37 getsec
|
||||
[ ]*[a-f0-9]+: 0f 01 d0 xgetbv
|
||||
[ ]*[a-f0-9]+: 0f 0f dc b7 pmulhrw %mm4,%mm3
|
||||
[ ]*[a-f0-9]+: 0f 0f dc bb pswapd %mm4,%mm3
|
||||
[ ]*[a-f0-9]+: f2 0f 79 ca insertq %xmm2,%xmm1
|
||||
|
@ -1,3 +1,8 @@
|
||||
2008-02-11 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* i386-gen.c (cpu_flag_init): Add CPU_XSAVE_FLAGS.
|
||||
* i386-init.h: Updated.
|
||||
|
||||
2008-02-11 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* i386-gen.c (cpu_flags): Add CpuXsave.
|
||||
|
@ -100,6 +100,8 @@ static initializer cpu_flag_init [] =
|
||||
"CpuVMX" },
|
||||
{ "CPU_SMX_FLAGS",
|
||||
"CpuSMX" },
|
||||
{ "CPU_XSAVE_FLAGS",
|
||||
"CpuXsave" },
|
||||
{ "CPU_3DNOW_FLAGS",
|
||||
"CpuMMX|Cpu3dnow" },
|
||||
{ "CPU_3DNOWA_FLAGS",
|
||||
|
@ -138,6 +138,10 @@
|
||||
{ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
|
||||
|
||||
#define CPU_XSAVE_FLAGS \
|
||||
{ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
0, 0, 0, 0, 0, 1, 0, 0, 0, 0 } }
|
||||
|
||||
#define CPU_3DNOW_FLAGS \
|
||||
{ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
|
||||
|
Loading…
Reference in New Issue
Block a user