diff --git a/.cvsignore b/.cvsignore index 01439fd..dbf9cdc 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -binutils-2.18.50.0.6.tar.bz2 +binutils-2.18.50.0.8.tar.bz2 diff --git a/binutils-2.18.50.0.6-pclmul.patch b/binutils-2.18.50.0.6-pclmul.patch deleted file mode 100644 index 8bec096..0000000 --- a/binutils-2.18.50.0.6-pclmul.patch +++ /dev/null @@ -1,636 +0,0 @@ -2008-04-07 H.J. Lu - -gas/ - * config/tc-i386.c (parse_real_register): Return AVX register - only if AVX is enabled. -gas/testsuite/ - * gas/i386/att-regs.s: Add AVX register test. - * gas/i386/intel-regs.s: Likewise. - - * gas/i386/att-regs.d: Updated. - * gas/i386/intel-regs.d: Likewise. -opcodes/ - * i386-dis.c (PREFIX_VEX_38XX): Add a tab. - (PREFIX_VEX_3AXX): Likewis. - - * i386-opc.tbl: Remove 4 extra blank lines. - -2008-04-04 H.J. Lu - -gas/ - * NEWS: Mention XSAVE. Change CLMUL to PCLMUL. - - * config/tc-i386.c (cpu_arch): Add .pclmul. - (md_show_usage): Replace clmul with pclmul. - * doc/c-i386.texi: Likewise. -gas/testsuite/ - * gas/i386/arch-10-1.l: Replace CLMUL with PCLMUL. - * gas/i386/arch-10-2.l: Likewise. - * gas/i386/arch-10-3.l: Likewise. - * gas/i386/arch-10-4.l: Likewise. - * gas/i386/arch-10.s: Likewise. - * gas/i386/clmul-intel.d: Likewise. - * gas/i386/clmul.d: Likewise. - * gas/i386/clmul.s: Likewise. - * gas/i386/x86-64-arch-2.s: Likewise. - * gas/i386/x86-64-clmul-intel.d: Likewise. - * gas/i386/x86-64-clmul.d: Likewise. - * gas/i386/x86-64-clmul.s: Likewise. - - * gas/i386/arch-10.d: Replace clmul with pclmul. - * gas/i386/x86-64-arch-2.d: Likewise. -opcodes/ - * i386-gen.c (cpu_flag_init): Replace CPU_CLMUL_FLAGS/CpuCLMUL - with CPU_PCLMUL_FLAGS/CpuPCLMUL. - (cpu_flags): Replace CpuCLMUL with CpuPCLMUL. - * i386-opc.tbl: Likewise. - - * i386-opc.h (CpuCLMUL): Renamed to ... - (CpuPCLMUL): This. - (CpuFMA): Updated. - (i386_cpu_flags): Replace cpuclmul with cpupclmul. - - * i386-init.h: Regenerated. - ---- gas/NEWS 3 Apr 2008 14:03:17 -0000 1.92 -+++ gas/NEWS 4 Apr 2008 16:34:23 -0000 1.93 -@@ -2,7 +2,7 @@ - * New command line option -msse2avx for x86 target to encode SSE - instructions with VEX prefix. - --* Add Intel AES, CLMUL, AVX/FMA support for x86 target. -+* Add Intel XSAVE, AES, PCLMUL, AVX/FMA support for x86 target. - - * New command line options, -march=CPU[,+EXTENSION...], -mtune=CPU, - -mmnemonic=[att|intel], -msyntax=[att|intel], -mindex-reg, ---- gas/config/tc-i386.c 3 Apr 2008 14:03:18 -0000 1.335 -+++ gas/config/tc-i386.c 7 Apr 2008 13:07:15 -0000 1.337 -@@ -647,8 +647,10 @@ static const arch_entry cpu_arch[] = - CPU_XSAVE_FLAGS }, - { ".aes", PROCESSOR_UNKNOWN, - CPU_AES_FLAGS }, -+ { ".pclmul", PROCESSOR_UNKNOWN, -+ CPU_PCLMUL_FLAGS }, - { ".clmul", PROCESSOR_UNKNOWN, -- CPU_CLMUL_FLAGS }, -+ CPU_PCLMUL_FLAGS }, - { ".fma", PROCESSOR_UNKNOWN, - CPU_FMA_FLAGS }, - { ".3dnow", PROCESSOR_UNKNOWN, -@@ -7683,6 +7685,9 @@ parse_real_register (char *reg_string, c - if (r->reg_type.bitfield.regxmm && !cpu_arch_flags.bitfield.cpusse) - return (const reg_entry *) NULL; - -+ if (r->reg_type.bitfield.regymm && !cpu_arch_flags.bitfield.cpuavx) -+ return (const reg_entry *) NULL; -+ - /* Don't allow fake index register unless allow_index_reg isn't 0. */ - if (!allow_index_reg - && (r->reg_num == RegEiz || r->reg_num == RegRiz)) -@@ -8045,7 +8050,7 @@ md_show_usage (stream) - generic32, generic64\n\ - EXTENSION is combination of:\n\ - mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n\ -- avx, vmx, smx, xsave, aes, clmul, fma, 3dnow,\n\ -+ avx, vmx, smx, xsave, aes, pclmul, fma, 3dnow,\n\ - 3dnowa, sse4a, sse5, svme, abm, padlock\n")); - fprintf (stream, _("\ - -mtune=CPU optimize for CPU, CPU is one of:\n\ ---- gas/doc/c-i386.texi 3 Apr 2008 14:03:18 -0000 1.25 -+++ gas/doc/c-i386.texi 4 Apr 2008 16:34:23 -0000 1.26 -@@ -125,7 +125,7 @@ accept various extension mnemonics. For - @code{smx}, - @code{xsave}, - @code{aes}, --@code{clmul}, -+@code{pclmul}, - @code{fma}, - @code{3dnow}, - @code{3dnowa}, -@@ -832,7 +832,7 @@ supported on the CPU specified. The cho - @item @samp{.mmx} @tab @samp{.sse} @tab @samp{.sse2} @tab @samp{.sse3} - @item @samp{.ssse3} @tab @samp{.sse4.1} @tab @samp{.sse4.2} @tab @samp{.sse4} - @item @samp{.avx} @tab @samp{.vmx} @tab @samp{.smx} @tab @samp{.xsave} --@item @samp{.aes} @tab @samp{.clmul} @tab @samp{.fma} -+@item @samp{.aes} @tab @samp{.pclmul} @tab @samp{.fma} - @item @samp{.3dnow} @tab @samp{.3dnowa} @tab @samp{.sse4a} @tab @samp{.sse5} - @item @samp{.svme} @tab @samp{.abm} - @item @samp{.padlock} ---- gas/testsuite/gas/i386/arch-10-1.l 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10-1.l 4 Apr 2008 16:34:23 -0000 1.4 -@@ -53,7 +53,7 @@ GAS LISTING .* - [ ]*26[ ]+xgetbv - [ ]*27[ ]+\# AES - [ ]*28[ ]+aesenc \(%ecx\),%xmm0 --[ ]*29[ ]+\# CLMUL -+[ ]*29[ ]+\# PCLMUL - [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 - [ ]*31[ ]+\# FMA - [ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/arch-10-2.l 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10-2.l 4 Apr 2008 16:34:23 -0000 1.4 -@@ -52,7 +52,7 @@ GAS LISTING .* - [ ]*26[ ]+xgetbv - [ ]*27[ ]+\# AES - [ ]*28[ ]+aesenc \(%ecx\),%xmm0 --[ ]*29[ ]+\# CLMUL -+[ ]*29[ ]+\# PCLMUL - [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 - [ ]*31[ ]+\# FMA - [ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/arch-10-3.l 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10-3.l 4 Apr 2008 16:34:23 -0000 1.4 -@@ -48,7 +48,7 @@ GAS LISTING .* - [ ]*26[ ]+xgetbv - [ ]*27[ ]+\# AES - [ ]*28[ ]+aesenc \(%ecx\),%xmm0 --[ ]*29[ ]+\# CLMUL -+[ ]*29[ ]+\# PCLMUL - [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 - [ ]*31[ ]+\# FMA - [ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/arch-10-4.l 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10-4.l 4 Apr 2008 16:34:23 -0000 1.4 -@@ -46,7 +46,7 @@ GAS LISTING .* - [ ]*26[ ]+xgetbv - [ ]*27[ ]+\# AES - [ ]*28[ ]+aesenc \(%ecx\),%xmm0 --[ ]*29[ ]+\# CLMUL -+[ ]*29[ ]+\# PCLMUL - [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 - [ ]*31[ ]+\# FMA - [ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/arch-10.d 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10.d 4 Apr 2008 16:34:23 -0000 1.4 -@@ -1,4 +1,4 @@ --#as: -march=i686+avx+vmx+smx+xsave+aes+clmul+fma+sse5+3dnowa+svme+padlock -+#as: -march=i686+avx+vmx+smx+xsave+aes+pclmul+fma+sse5+3dnowa+svme+padlock - #objdump: -dw - #name: i386 arch 10 - ---- gas/testsuite/gas/i386/arch-10.s 3 Apr 2008 14:03:18 -0000 1.3 -+++ gas/testsuite/gas/i386/arch-10.s 4 Apr 2008 16:34:23 -0000 1.4 -@@ -26,7 +26,7 @@ getsec - xgetbv - # AES - aesenc (%ecx),%xmm0 --# CLMUL -+# PCLMUL - pclmulqdq $8,%xmm1,%xmm0 - # FMA - vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/att-regs.d 18 Feb 2008 08:44:38 -0000 1.1 -+++ gas/testsuite/gas/i386/att-regs.d 7 Apr 2008 14:38:25 -0000 1.3 -@@ -31,9 +31,11 @@ Disassembly of section \.text: - .*:[ ]+0f 24 c0[ ]+mov[ ]+%tr0,%eax - .*[ ]+R_386_32[ ]+mm0 - .*[ ]+R_386_32[ ]+xmm0 -+.*[ ]+R_386_32[ ]+ymm0 - .*:[ ]+dd c0[ ]+ffree[ ]+%st(\(0\))? - .*:[ ]+0f ef c0[ ]+pxor[ ]+%mm0,%mm0 - .*:[ ]+0f 57 c0[ ]+xorps[ ]+%xmm0,%xmm0 -+.*:[ ]+c5 fc 57 c0[ ]+vxorps[ ]+%ymm0,%ymm0,%ymm0 - .*:[ ]+44[ ]+inc %esp - .*:[ ]+88 c0[ ]+mov[ ]+%al,%al - .*:[ ]+66 44[ ]+inc[ ]+%sp ---- gas/testsuite/gas/i386/att-regs.s 18 Feb 2008 08:44:38 -0000 1.1 -+++ gas/testsuite/gas/i386/att-regs.s 7 Apr 2008 14:38:25 -0000 1.3 -@@ -32,6 +32,7 @@ - mov tr0, eax - mov mm0, eax - mov xmm0, eax -+ mov ymm0, eax - - #todo .arch i387 - ffree st -@@ -42,6 +43,9 @@ - .arch .sse - xorps xmm0, xmm0 - -+ .arch .avx -+ vxorps ymm0, ymm0, ymm0 -+ - .arch generic64 - .code64 - mov r8b, axl ---- gas/testsuite/gas/i386/clmul-intel.d 3 Apr 2008 14:03:18 -0000 1.1 -+++ gas/testsuite/gas/i386/clmul-intel.d 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,6 +1,6 @@ - #source: clmul.s - #objdump: -dw -Mintel --#name: i386 CLMUL (Intel mode) -+#name: i386 PCLMUL (Intel mode) - - .*: +file format .* - ---- gas/testsuite/gas/i386/clmul.d 3 Apr 2008 14:03:18 -0000 1.1 -+++ gas/testsuite/gas/i386/clmul.d 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,5 +1,5 @@ - #objdump: -dw --#name: i386 CLMUL -+#name: i386 PCLMUL - - .*: +file format .* - ---- gas/testsuite/gas/i386/clmul.s 3 Apr 2008 14:03:18 -0000 1.1 -+++ gas/testsuite/gas/i386/clmul.s 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,4 +1,4 @@ --# Check CLMUL new instructions. -+# Check PCLMUL new instructions. - - .text - foo: ---- gas/testsuite/gas/i386/intel-regs.d 18 Feb 2008 08:44:38 -0000 1.1 -+++ gas/testsuite/gas/i386/intel-regs.d 7 Apr 2008 14:38:25 -0000 1.3 -@@ -31,9 +31,11 @@ Disassembly of section \.text: - .*:[ ]+0f 24 c0[ ]+mov[ ]+%tr0,%eax - .*[ ]+R_386_32[ ]+mm0 - .*[ ]+R_386_32[ ]+xmm0 -+.*[ ]+R_386_32[ ]+ymm0 - .*:[ ]+dd c0[ ]+ffree[ ]+%st(\(0\))? - .*:[ ]+0f ef c0[ ]+pxor[ ]+%mm0,%mm0 - .*:[ ]+0f 57 c0[ ]+xorps[ ]+%xmm0,%xmm0 -+.*:[ ]+c5 fc 57 c0[ ]+vxorps[ ]+%ymm0,%ymm0,%ymm0 - .*:[ ]+44[ ]+inc %esp - .*:[ ]+88 c0[ ]+mov[ ]+%al,%al - .*:[ ]+66 44[ ]+inc[ ]+%sp ---- gas/testsuite/gas/i386/intel-regs.s 18 Feb 2008 08:44:38 -0000 1.1 -+++ gas/testsuite/gas/i386/intel-regs.s 7 Apr 2008 14:38:25 -0000 1.3 -@@ -32,6 +32,7 @@ - mov eax, tr0 - mov eax, mm0 - mov eax, xmm0 -+ mov eax, ymm0 - - #todo .arch i387 - ffree st -@@ -42,6 +43,9 @@ - .arch .sse - xorps xmm0, xmm0 - -+ .arch .avx -+ vxorps ymm0, ymm0, ymm0 -+ - .arch generic64 - .code64 - mov axl, r8b ---- gas/testsuite/gas/i386/x86-64-arch-2.d 3 Apr 2008 14:03:18 -0000 1.2 -+++ gas/testsuite/gas/i386/x86-64-arch-2.d 4 Apr 2008 16:34:23 -0000 1.3 -@@ -1,4 +1,4 @@ --#as: -march=generic64+avx+vmx+smx+xsave+aes+clmul+fma+sse5+3dnowa+svme+padlock -+#as: -march=generic64+avx+vmx+smx+xsave+aes+pclmul+fma+sse5+3dnowa+svme+padlock - #objdump: -dw - #name: x86-64 arch 2 - ---- gas/testsuite/gas/i386/x86-64-arch-2.s 3 Apr 2008 14:03:18 -0000 1.2 -+++ gas/testsuite/gas/i386/x86-64-arch-2.s 4 Apr 2008 16:34:23 -0000 1.3 -@@ -26,7 +26,7 @@ getsec - xgetbv - # AES - aesenc (%rcx),%xmm0 --# CLMUL -+# PCLMUL - pclmulqdq $8,%xmm1,%xmm0 - # FMA - vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 ---- gas/testsuite/gas/i386/x86-64-clmul-intel.d 3 Apr 2008 14:03:19 -0000 1.1 -+++ gas/testsuite/gas/i386/x86-64-clmul-intel.d 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,7 +1,7 @@ - #source: x86-64-clmul.s - #as: -J - #objdump: -dw -Mintel --#name: x86-64 CLMUL (Intel mode) -+#name: x86-64 PCLMUL (Intel mode) - - .*: +file format .* - ---- gas/testsuite/gas/i386/x86-64-clmul.d 3 Apr 2008 14:03:19 -0000 1.1 -+++ gas/testsuite/gas/i386/x86-64-clmul.d 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,6 +1,6 @@ - #as: -J - #objdump: -dw --#name: x86-64 CLMUL -+#name: x86-64 PCLMUL - - .*: +file format .* - ---- gas/testsuite/gas/i386/x86-64-clmul.s 3 Apr 2008 14:03:19 -0000 1.1 -+++ gas/testsuite/gas/i386/x86-64-clmul.s 4 Apr 2008 16:34:23 -0000 1.2 -@@ -1,4 +1,4 @@ --# Check 64bit CLMUL new instructions. -+# Check 64bit PCLMUL new instructions. - - .text - foo: ---- opcodes/i386-dis.c 3 Apr 2008 14:03:20 -0000 1.176 -+++ opcodes/i386-dis.c 7 Apr 2008 21:29:50 -0000 1.177 -@@ -875,112 +875,112 @@ fetch_data (struct disassemble_info *inf - #define PREFIX_VEX_FC (PREFIX_VEX_FB + 1) - #define PREFIX_VEX_FD (PREFIX_VEX_FC + 1) - #define PREFIX_VEX_FE (PREFIX_VEX_FD + 1) --#define PREFIX_VEX_3800 (PREFIX_VEX_FE + 1) --#define PREFIX_VEX_3801 (PREFIX_VEX_3800 + 1) --#define PREFIX_VEX_3802 (PREFIX_VEX_3801 + 1) --#define PREFIX_VEX_3803 (PREFIX_VEX_3802 + 1) --#define PREFIX_VEX_3804 (PREFIX_VEX_3803 + 1) --#define PREFIX_VEX_3805 (PREFIX_VEX_3804 + 1) --#define PREFIX_VEX_3806 (PREFIX_VEX_3805 + 1) --#define PREFIX_VEX_3807 (PREFIX_VEX_3806 + 1) --#define PREFIX_VEX_3808 (PREFIX_VEX_3807 + 1) --#define PREFIX_VEX_3809 (PREFIX_VEX_3808 + 1) --#define PREFIX_VEX_380A (PREFIX_VEX_3809 + 1) --#define PREFIX_VEX_380B (PREFIX_VEX_380A + 1) --#define PREFIX_VEX_380C (PREFIX_VEX_380B + 1) --#define PREFIX_VEX_380D (PREFIX_VEX_380C + 1) --#define PREFIX_VEX_380E (PREFIX_VEX_380D + 1) --#define PREFIX_VEX_380F (PREFIX_VEX_380E + 1) --#define PREFIX_VEX_3817 (PREFIX_VEX_380F + 1) --#define PREFIX_VEX_3818 (PREFIX_VEX_3817 + 1) --#define PREFIX_VEX_3819 (PREFIX_VEX_3818 + 1) --#define PREFIX_VEX_381A (PREFIX_VEX_3819 + 1) --#define PREFIX_VEX_381C (PREFIX_VEX_381A + 1) --#define PREFIX_VEX_381D (PREFIX_VEX_381C + 1) --#define PREFIX_VEX_381E (PREFIX_VEX_381D + 1) --#define PREFIX_VEX_3820 (PREFIX_VEX_381E + 1) --#define PREFIX_VEX_3821 (PREFIX_VEX_3820 + 1) --#define PREFIX_VEX_3822 (PREFIX_VEX_3821 + 1) --#define PREFIX_VEX_3823 (PREFIX_VEX_3822 + 1) --#define PREFIX_VEX_3824 (PREFIX_VEX_3823 + 1) --#define PREFIX_VEX_3825 (PREFIX_VEX_3824 + 1) --#define PREFIX_VEX_3828 (PREFIX_VEX_3825 + 1) --#define PREFIX_VEX_3829 (PREFIX_VEX_3828 + 1) --#define PREFIX_VEX_382A (PREFIX_VEX_3829 + 1) --#define PREFIX_VEX_382B (PREFIX_VEX_382A + 1) --#define PREFIX_VEX_382C (PREFIX_VEX_382B + 1) --#define PREFIX_VEX_382D (PREFIX_VEX_382C + 1) --#define PREFIX_VEX_382E (PREFIX_VEX_382D + 1) --#define PREFIX_VEX_382F (PREFIX_VEX_382E + 1) --#define PREFIX_VEX_3830 (PREFIX_VEX_382F + 1) --#define PREFIX_VEX_3831 (PREFIX_VEX_3830 + 1) --#define PREFIX_VEX_3832 (PREFIX_VEX_3831 + 1) --#define PREFIX_VEX_3833 (PREFIX_VEX_3832 + 1) --#define PREFIX_VEX_3834 (PREFIX_VEX_3833 + 1) --#define PREFIX_VEX_3835 (PREFIX_VEX_3834 + 1) --#define PREFIX_VEX_3837 (PREFIX_VEX_3835 + 1) --#define PREFIX_VEX_3838 (PREFIX_VEX_3837 + 1) --#define PREFIX_VEX_3839 (PREFIX_VEX_3838 + 1) --#define PREFIX_VEX_383A (PREFIX_VEX_3839 + 1) --#define PREFIX_VEX_383B (PREFIX_VEX_383A + 1) --#define PREFIX_VEX_383C (PREFIX_VEX_383B + 1) --#define PREFIX_VEX_383D (PREFIX_VEX_383C + 1) --#define PREFIX_VEX_383E (PREFIX_VEX_383D + 1) --#define PREFIX_VEX_383F (PREFIX_VEX_383E + 1) --#define PREFIX_VEX_3840 (PREFIX_VEX_383F + 1) --#define PREFIX_VEX_3841 (PREFIX_VEX_3840 + 1) --#define PREFIX_VEX_3A04 (PREFIX_VEX_3841 + 1) --#define PREFIX_VEX_3A05 (PREFIX_VEX_3A04 + 1) --#define PREFIX_VEX_3A06 (PREFIX_VEX_3A05 + 1) --#define PREFIX_VEX_3A08 (PREFIX_VEX_3A06 + 1) --#define PREFIX_VEX_3A09 (PREFIX_VEX_3A08 + 1) --#define PREFIX_VEX_3A0A (PREFIX_VEX_3A09 + 1) --#define PREFIX_VEX_3A0B (PREFIX_VEX_3A0A + 1) --#define PREFIX_VEX_3A0C (PREFIX_VEX_3A0B + 1) --#define PREFIX_VEX_3A0D (PREFIX_VEX_3A0C + 1) --#define PREFIX_VEX_3A0E (PREFIX_VEX_3A0D + 1) --#define PREFIX_VEX_3A0F (PREFIX_VEX_3A0E + 1) --#define PREFIX_VEX_3A14 (PREFIX_VEX_3A0F + 1) --#define PREFIX_VEX_3A15 (PREFIX_VEX_3A14 + 1) --#define PREFIX_VEX_3A16 (PREFIX_VEX_3A15 + 1) --#define PREFIX_VEX_3A17 (PREFIX_VEX_3A16 + 1) --#define PREFIX_VEX_3A18 (PREFIX_VEX_3A17 + 1) --#define PREFIX_VEX_3A19 (PREFIX_VEX_3A18 + 1) --#define PREFIX_VEX_3A20 (PREFIX_VEX_3A19 + 1) --#define PREFIX_VEX_3A21 (PREFIX_VEX_3A20 + 1) --#define PREFIX_VEX_3A22 (PREFIX_VEX_3A21 + 1) --#define PREFIX_VEX_3A40 (PREFIX_VEX_3A22 + 1) --#define PREFIX_VEX_3A41 (PREFIX_VEX_3A40 + 1) --#define PREFIX_VEX_3A42 (PREFIX_VEX_3A41 + 1) --#define PREFIX_VEX_3A48 (PREFIX_VEX_3A42 + 1) --#define PREFIX_VEX_3A49 (PREFIX_VEX_3A48 + 1) --#define PREFIX_VEX_3A4A (PREFIX_VEX_3A49 + 1) --#define PREFIX_VEX_3A4B (PREFIX_VEX_3A4A + 1) --#define PREFIX_VEX_3A4C (PREFIX_VEX_3A4B + 1) --#define PREFIX_VEX_3A5C (PREFIX_VEX_3A4C + 1) --#define PREFIX_VEX_3A5D (PREFIX_VEX_3A5C + 1) --#define PREFIX_VEX_3A5E (PREFIX_VEX_3A5D + 1) --#define PREFIX_VEX_3A5F (PREFIX_VEX_3A5E + 1) --#define PREFIX_VEX_3A60 (PREFIX_VEX_3A5F + 1) --#define PREFIX_VEX_3A61 (PREFIX_VEX_3A60 + 1) --#define PREFIX_VEX_3A62 (PREFIX_VEX_3A61 + 1) --#define PREFIX_VEX_3A63 (PREFIX_VEX_3A62 + 1) --#define PREFIX_VEX_3A68 (PREFIX_VEX_3A63 + 1) --#define PREFIX_VEX_3A69 (PREFIX_VEX_3A68 + 1) --#define PREFIX_VEX_3A6A (PREFIX_VEX_3A69 + 1) --#define PREFIX_VEX_3A6B (PREFIX_VEX_3A6A + 1) --#define PREFIX_VEX_3A6C (PREFIX_VEX_3A6B + 1) --#define PREFIX_VEX_3A6D (PREFIX_VEX_3A6C + 1) --#define PREFIX_VEX_3A6E (PREFIX_VEX_3A6D + 1) --#define PREFIX_VEX_3A6F (PREFIX_VEX_3A6E + 1) --#define PREFIX_VEX_3A78 (PREFIX_VEX_3A6F + 1) --#define PREFIX_VEX_3A79 (PREFIX_VEX_3A78 + 1) --#define PREFIX_VEX_3A7A (PREFIX_VEX_3A79 + 1) --#define PREFIX_VEX_3A7B (PREFIX_VEX_3A7A + 1) --#define PREFIX_VEX_3A7C (PREFIX_VEX_3A7B + 1) --#define PREFIX_VEX_3A7D (PREFIX_VEX_3A7C + 1) --#define PREFIX_VEX_3A7E (PREFIX_VEX_3A7D + 1) --#define PREFIX_VEX_3A7F (PREFIX_VEX_3A7E + 1) -+#define PREFIX_VEX_3800 (PREFIX_VEX_FE + 1) -+#define PREFIX_VEX_3801 (PREFIX_VEX_3800 + 1) -+#define PREFIX_VEX_3802 (PREFIX_VEX_3801 + 1) -+#define PREFIX_VEX_3803 (PREFIX_VEX_3802 + 1) -+#define PREFIX_VEX_3804 (PREFIX_VEX_3803 + 1) -+#define PREFIX_VEX_3805 (PREFIX_VEX_3804 + 1) -+#define PREFIX_VEX_3806 (PREFIX_VEX_3805 + 1) -+#define PREFIX_VEX_3807 (PREFIX_VEX_3806 + 1) -+#define PREFIX_VEX_3808 (PREFIX_VEX_3807 + 1) -+#define PREFIX_VEX_3809 (PREFIX_VEX_3808 + 1) -+#define PREFIX_VEX_380A (PREFIX_VEX_3809 + 1) -+#define PREFIX_VEX_380B (PREFIX_VEX_380A + 1) -+#define PREFIX_VEX_380C (PREFIX_VEX_380B + 1) -+#define PREFIX_VEX_380D (PREFIX_VEX_380C + 1) -+#define PREFIX_VEX_380E (PREFIX_VEX_380D + 1) -+#define PREFIX_VEX_380F (PREFIX_VEX_380E + 1) -+#define PREFIX_VEX_3817 (PREFIX_VEX_380F + 1) -+#define PREFIX_VEX_3818 (PREFIX_VEX_3817 + 1) -+#define PREFIX_VEX_3819 (PREFIX_VEX_3818 + 1) -+#define PREFIX_VEX_381A (PREFIX_VEX_3819 + 1) -+#define PREFIX_VEX_381C (PREFIX_VEX_381A + 1) -+#define PREFIX_VEX_381D (PREFIX_VEX_381C + 1) -+#define PREFIX_VEX_381E (PREFIX_VEX_381D + 1) -+#define PREFIX_VEX_3820 (PREFIX_VEX_381E + 1) -+#define PREFIX_VEX_3821 (PREFIX_VEX_3820 + 1) -+#define PREFIX_VEX_3822 (PREFIX_VEX_3821 + 1) -+#define PREFIX_VEX_3823 (PREFIX_VEX_3822 + 1) -+#define PREFIX_VEX_3824 (PREFIX_VEX_3823 + 1) -+#define PREFIX_VEX_3825 (PREFIX_VEX_3824 + 1) -+#define PREFIX_VEX_3828 (PREFIX_VEX_3825 + 1) -+#define PREFIX_VEX_3829 (PREFIX_VEX_3828 + 1) -+#define PREFIX_VEX_382A (PREFIX_VEX_3829 + 1) -+#define PREFIX_VEX_382B (PREFIX_VEX_382A + 1) -+#define PREFIX_VEX_382C (PREFIX_VEX_382B + 1) -+#define PREFIX_VEX_382D (PREFIX_VEX_382C + 1) -+#define PREFIX_VEX_382E (PREFIX_VEX_382D + 1) -+#define PREFIX_VEX_382F (PREFIX_VEX_382E + 1) -+#define PREFIX_VEX_3830 (PREFIX_VEX_382F + 1) -+#define PREFIX_VEX_3831 (PREFIX_VEX_3830 + 1) -+#define PREFIX_VEX_3832 (PREFIX_VEX_3831 + 1) -+#define PREFIX_VEX_3833 (PREFIX_VEX_3832 + 1) -+#define PREFIX_VEX_3834 (PREFIX_VEX_3833 + 1) -+#define PREFIX_VEX_3835 (PREFIX_VEX_3834 + 1) -+#define PREFIX_VEX_3837 (PREFIX_VEX_3835 + 1) -+#define PREFIX_VEX_3838 (PREFIX_VEX_3837 + 1) -+#define PREFIX_VEX_3839 (PREFIX_VEX_3838 + 1) -+#define PREFIX_VEX_383A (PREFIX_VEX_3839 + 1) -+#define PREFIX_VEX_383B (PREFIX_VEX_383A + 1) -+#define PREFIX_VEX_383C (PREFIX_VEX_383B + 1) -+#define PREFIX_VEX_383D (PREFIX_VEX_383C + 1) -+#define PREFIX_VEX_383E (PREFIX_VEX_383D + 1) -+#define PREFIX_VEX_383F (PREFIX_VEX_383E + 1) -+#define PREFIX_VEX_3840 (PREFIX_VEX_383F + 1) -+#define PREFIX_VEX_3841 (PREFIX_VEX_3840 + 1) -+#define PREFIX_VEX_3A04 (PREFIX_VEX_3841 + 1) -+#define PREFIX_VEX_3A05 (PREFIX_VEX_3A04 + 1) -+#define PREFIX_VEX_3A06 (PREFIX_VEX_3A05 + 1) -+#define PREFIX_VEX_3A08 (PREFIX_VEX_3A06 + 1) -+#define PREFIX_VEX_3A09 (PREFIX_VEX_3A08 + 1) -+#define PREFIX_VEX_3A0A (PREFIX_VEX_3A09 + 1) -+#define PREFIX_VEX_3A0B (PREFIX_VEX_3A0A + 1) -+#define PREFIX_VEX_3A0C (PREFIX_VEX_3A0B + 1) -+#define PREFIX_VEX_3A0D (PREFIX_VEX_3A0C + 1) -+#define PREFIX_VEX_3A0E (PREFIX_VEX_3A0D + 1) -+#define PREFIX_VEX_3A0F (PREFIX_VEX_3A0E + 1) -+#define PREFIX_VEX_3A14 (PREFIX_VEX_3A0F + 1) -+#define PREFIX_VEX_3A15 (PREFIX_VEX_3A14 + 1) -+#define PREFIX_VEX_3A16 (PREFIX_VEX_3A15 + 1) -+#define PREFIX_VEX_3A17 (PREFIX_VEX_3A16 + 1) -+#define PREFIX_VEX_3A18 (PREFIX_VEX_3A17 + 1) -+#define PREFIX_VEX_3A19 (PREFIX_VEX_3A18 + 1) -+#define PREFIX_VEX_3A20 (PREFIX_VEX_3A19 + 1) -+#define PREFIX_VEX_3A21 (PREFIX_VEX_3A20 + 1) -+#define PREFIX_VEX_3A22 (PREFIX_VEX_3A21 + 1) -+#define PREFIX_VEX_3A40 (PREFIX_VEX_3A22 + 1) -+#define PREFIX_VEX_3A41 (PREFIX_VEX_3A40 + 1) -+#define PREFIX_VEX_3A42 (PREFIX_VEX_3A41 + 1) -+#define PREFIX_VEX_3A48 (PREFIX_VEX_3A42 + 1) -+#define PREFIX_VEX_3A49 (PREFIX_VEX_3A48 + 1) -+#define PREFIX_VEX_3A4A (PREFIX_VEX_3A49 + 1) -+#define PREFIX_VEX_3A4B (PREFIX_VEX_3A4A + 1) -+#define PREFIX_VEX_3A4C (PREFIX_VEX_3A4B + 1) -+#define PREFIX_VEX_3A5C (PREFIX_VEX_3A4C + 1) -+#define PREFIX_VEX_3A5D (PREFIX_VEX_3A5C + 1) -+#define PREFIX_VEX_3A5E (PREFIX_VEX_3A5D + 1) -+#define PREFIX_VEX_3A5F (PREFIX_VEX_3A5E + 1) -+#define PREFIX_VEX_3A60 (PREFIX_VEX_3A5F + 1) -+#define PREFIX_VEX_3A61 (PREFIX_VEX_3A60 + 1) -+#define PREFIX_VEX_3A62 (PREFIX_VEX_3A61 + 1) -+#define PREFIX_VEX_3A63 (PREFIX_VEX_3A62 + 1) -+#define PREFIX_VEX_3A68 (PREFIX_VEX_3A63 + 1) -+#define PREFIX_VEX_3A69 (PREFIX_VEX_3A68 + 1) -+#define PREFIX_VEX_3A6A (PREFIX_VEX_3A69 + 1) -+#define PREFIX_VEX_3A6B (PREFIX_VEX_3A6A + 1) -+#define PREFIX_VEX_3A6C (PREFIX_VEX_3A6B + 1) -+#define PREFIX_VEX_3A6D (PREFIX_VEX_3A6C + 1) -+#define PREFIX_VEX_3A6E (PREFIX_VEX_3A6D + 1) -+#define PREFIX_VEX_3A6F (PREFIX_VEX_3A6E + 1) -+#define PREFIX_VEX_3A78 (PREFIX_VEX_3A6F + 1) -+#define PREFIX_VEX_3A79 (PREFIX_VEX_3A78 + 1) -+#define PREFIX_VEX_3A7A (PREFIX_VEX_3A79 + 1) -+#define PREFIX_VEX_3A7B (PREFIX_VEX_3A7A + 1) -+#define PREFIX_VEX_3A7C (PREFIX_VEX_3A7B + 1) -+#define PREFIX_VEX_3A7D (PREFIX_VEX_3A7C + 1) -+#define PREFIX_VEX_3A7E (PREFIX_VEX_3A7D + 1) -+#define PREFIX_VEX_3A7F (PREFIX_VEX_3A7E + 1) - - #define X86_64_06 0 - #define X86_64_07 (X86_64_06 + 1) ---- opcodes/i386-gen.c 3 Apr 2008 14:03:21 -0000 1.36 -+++ opcodes/i386-gen.c 4 Apr 2008 16:34:22 -0000 1.37 -@@ -104,8 +104,8 @@ static initializer cpu_flag_init [] = - "CpuXsave" }, - { "CPU_AES_FLAGS", - "CpuMMX|CpuSSE|CpuSSE2|CpuSSE3|CpuSSSE3|CpuSSE4_1|CpuSSE4_2|CpuAES" }, -- { "CPU_CLMUL_FLAGS", -- "CpuMMX|CpuSSE|CpuSSE2|CpuSSE3|CpuSSSE3|CpuSSE4_1|CpuSSE4_2|CpuCLMUL" }, -+ { "CPU_PCLMUL_FLAGS", -+ "CpuMMX|CpuSSE|CpuSSE2|CpuSSE3|CpuSSSE3|CpuSSE4_1|CpuSSE4_2|CpuPCLMUL" }, - { "CPU_FMA_FLAGS", - "CpuMMX|CpuSSE|CpuSSE2|CpuSSE3|CpuSSSE3|CpuSSE4_1|CpuSSE4_2|CpuAVX|CpuFMA" }, - { "CPU_3DNOW_FLAGS", -@@ -263,7 +263,7 @@ static bitfield cpu_flags[] = - BITFIELD (CpuABM), - BITFIELD (CpuXsave), - BITFIELD (CpuAES), -- BITFIELD (CpuCLMUL), -+ BITFIELD (CpuPCLMUL), - BITFIELD (CpuFMA), - BITFIELD (CpuLM), - BITFIELD (Cpu64), ---- opcodes/i386-init.h 3 Apr 2008 14:03:21 -0000 1.16 -+++ opcodes/i386-init.h 4 Apr 2008 16:34:22 -0000 1.17 -@@ -146,7 +146,7 @@ - { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, \ - 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 } } - --#define CPU_CLMUL_FLAGS \ -+#define CPU_PCLMUL_FLAGS \ - { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, \ - 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 } } - ---- opcodes/i386-opc.h 3 Apr 2008 14:03:21 -0000 1.40 -+++ opcodes/i386-opc.h 4 Apr 2008 16:34:22 -0000 1.41 -@@ -86,10 +86,10 @@ - #define CpuXsave (CpuAVX + 1) - /* AES support required */ - #define CpuAES (CpuXsave + 1) --/* CLMUL support required */ --#define CpuCLMUL (CpuAES + 1) -+/* PCLMUL support required */ -+#define CpuPCLMUL (CpuAES + 1) - /* FMA support required */ --#define CpuFMA (CpuCLMUL + 1) -+#define CpuFMA (CpuPCLMUL + 1) - /* 64bit support available, used by -march= in assembler. */ - #define CpuLM (CpuFMA + 1) - /* 64bit support required */ -@@ -142,7 +142,7 @@ typedef union i386_cpu_flags - unsigned int cpuavx:1; - unsigned int cpuxsave:1; - unsigned int cpuaes:1; -- unsigned int cpuclmul:1; -+ unsigned int cpupclmul:1; - unsigned int cpufma:1; - unsigned int cpulm:1; - unsigned int cpu64:1; ---- opcodes/i386-opc.tbl 3 Apr 2008 14:03:21 -0000 1.36 -+++ opcodes/i386-opc.tbl 7 Apr 2008 17:35:12 -0000 1.38 -@@ -1722,13 +1722,13 @@ aesenclast, 2, 0x660f38dd, None, 3, CpuA - aesimc, 2, 0x660f38db, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } - aeskeygenassist, 3, 0x660f3adf, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } - --// CLMUL -+// PCLMUL - --pclmulqdq, 3, 0x660f3a44, None, 3, CpuCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } --pclmullqlqdq, 2, 0x660f3a44, 0x0, 3, CpuCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } --pclmulhqlqdq, 2, 0x660f3a44, 0x1, 3, CpuCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } --pclmullqhqdq, 2, 0x660f3a44, 0x10, 3, CpuCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } --pclmulhqhqdq, 2, 0x660f3a44, 0x11, 3, CpuCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } -+pclmulqdq, 3, 0x660f3a44, None, 3, CpuPCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } -+pclmullqlqdq, 2, 0x660f3a44, 0x0, 3, CpuPCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } -+pclmulhqlqdq, 2, 0x660f3a44, 0x1, 3, CpuPCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } -+pclmullqhqdq, 2, 0x660f3a44, 0x10, 3, CpuPCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } -+pclmulhqhqdq, 2, 0x660f3a44, 0x11, 3, CpuPCLMUL, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } - - // AVX instructions. - -@@ -2338,10 +2338,6 @@ vxorps, 3, 0x57, None, 1, CpuAVX, Modrm| - vzeroall, 0, 0x77, None, 1, CpuAVX, Vex|Vex0F|Vex256|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 } - vzeroupper, 0, 0x77, None, 1, CpuAVX, Vex|Vex0F|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 } - -- -- -- -- - // FMA instructions - - vfmaddpd, 4, 0x6669, None, 1, CpuFMA, Modrm|Vex|Vex0F3A|VexNDS|VexW1|Vex3Sources|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|VexImmExt, {Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM, RegXMM } diff --git a/binutils-2.18.50.0.6-place-orphan.patch b/binutils-2.18.50.0.6-place-orphan.patch deleted file mode 100644 index ae7c001..0000000 --- a/binutils-2.18.50.0.6-place-orphan.patch +++ /dev/null @@ -1,16 +0,0 @@ -2003-08-05 Jakub Jelinek - - * emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd. - ---- ld/emulparams/elf64ppc.sh.jj 2003-07-28 10:24:45.000000000 -0400 -+++ ld/emulparams/elf64ppc.sh 2003-08-05 08:35:58.000000000 -0400 -@@ -28,7 +28,8 @@ else - .toc 0 : { *(.toc) }" - fi - OTHER_GOT_RELOC_SECTIONS=" -- .rela.toc ${RELOCATING-0} : { *(.rela.toc) }" -+ .rela.toc ${RELOCATING-0} : { *(.rela.toc) } -+ .rela.opd ${RELOCATING-0} : { *(.rela.opd) }" - OTHER_READWRITE_SECTIONS=" - .toc1 ${RELOCATING-0}${RELOCATING+ALIGN(8)} : { *(.toc1) } - .opd ${RELOCATING-0}${RELOCATING+ALIGN(8)} : { KEEP (*(.opd)) }" diff --git a/binutils-2.18.50.0.6-symbolic-envvar-revert.patch b/binutils-2.18.50.0.6-symbolic-envvar-revert.patch deleted file mode 100644 index 9ed4170..0000000 --- a/binutils-2.18.50.0.6-symbolic-envvar-revert.patch +++ /dev/null @@ -1,50 +0,0 @@ ---- ld/NEWS.jj 2007-05-11 11:24:08.000000000 -0400 -+++ ld/NEWS 2007-06-12 05:04:49.000000000 -0400 -@@ -1,7 +1,4 @@ - -*- text -*- --* ELF: Support environment variables, LD_SYMBOLIC for -Bsymbolic and -- LD_SYMBOLIC_FUNCTIONS for -Bsymbolic-functions. -- - Changes in 2.18: - - * Linker sources now released under version 3 of the GNU General Public ---- ld/ld.texinfo.jj 2007-05-11 11:24:08.000000000 -0400 -+++ ld/ld.texinfo 2007-06-12 05:04:33.000000000 -0400 -@@ -1142,21 +1142,14 @@ When creating a shared library, bind ref - definition within the shared library, if any. Normally, it is possible - for a program linked against a shared library to override the definition - within the shared library. This option is only meaningful on ELF --platforms which support shared libraries. If @option{-Bsymbolic} is not --used when linking a shared library, the linker will also turn on this --option if the environment variable @code{LD_SYMBOLIC} is set. -+platforms which support shared libraries. - - @kindex -Bsymbolic-functions - @item -Bsymbolic-functions - When creating a shared library, bind references to global function - symbols to the definition within the shared library, if any. - This option is only meaningful on ELF platforms which support shared --libraries. If @option{-Bsymbolic-functions} is not used when linking a --shared library, the linker will also turn on this option if the --environment variable @code{LD_SYMBOLIC_FUNCTIONS} is set. When --both environment variables @code{LD_SYMBOLIC} and --@code{LD_SYMBOLIC_FUNCTIONS} are set, @code{LD_SYMBOLIC} will take --precedent. -+libraries. - - @kindex --dynamic-list=@var{dynamic-list-file} - @item --dynamic-list=@var{dynamic-list-file} ---- ld/ldmain.c.jj 2007-05-11 11:24:08.000000000 -0400 -+++ ld/ldmain.c 2007-06-12 05:05:48.000000000 -0400 -@@ -254,11 +254,6 @@ main (int argc, char **argv) - command_line.warn_search_mismatch = TRUE; - command_line.check_section_addresses = TRUE; - -- if (getenv ("LD_SYMBOLIC") != NULL) -- command_line.symbolic = symbolic; -- else if (getenv ("LD_SYMBOLIC_FUNCTIONS") != NULL) -- command_line.symbolic = symbolic_functions; -- - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the - output of the linker, unless COLLECT_NO_DEMANGLE is set in the diff --git a/binutils-2.18.50.0.8-place-orphan.patch b/binutils-2.18.50.0.8-place-orphan.patch new file mode 100644 index 0000000..7d9552b --- /dev/null +++ b/binutils-2.18.50.0.8-place-orphan.patch @@ -0,0 +1,16 @@ +2003-08-05 Jakub Jelinek + + * emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd. + +--- ld/emulparams/elf64ppc.sh 2007-03-16 16:48:30.000000000 +0100 ++++ ld/emulparams/elf64ppc.sh 2008-07-25 20:11:20.000000000 +0200 +@@ -28,7 +28,8 @@ else + .toc 0 : { *(.toc) }" + fi + OTHER_GOT_RELOC_SECTIONS=" +- .rela.toc ${RELOCATING-0} : { *(.rela.toc) }" ++ .rela.toc ${RELOCATING-0} : { *(.rela.toc) } ++ .rela.opd ${RELOCATING-0} : { *(.rela.opd) }" + OTHER_READWRITE_SECTIONS=" + .toc1 ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.toc1) } + .opd ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { KEEP (*(.opd)) } diff --git a/binutils-2.18.50.0.8-spu_ovl-dependency.patch b/binutils-2.18.50.0.8-spu_ovl-dependency.patch new file mode 100644 index 0000000..f3f263a --- /dev/null +++ b/binutils-2.18.50.0.8-spu_ovl-dependency.patch @@ -0,0 +1,46 @@ +2008-07-30 Jan Kratochvil + + * Makefile.def: ld's spu_ovl.o depends on gas and binutils. + * Makefile.in: Regenerate. + +--- Makefile.def 30 Jul 2008 15:03:54 -0000 1.92 ++++ Makefile.def 30 Jul 2008 21:18:12 -0000 +@@ -378,6 +378,9 @@ dependencies = { module=all-ld; on=all-b + dependencies = { module=all-ld; on=all-build-byacc; }; + dependencies = { module=all-ld; on=all-build-flex; }; + dependencies = { module=all-ld; on=all-intl; }; ++// spu_ovl.o depends on both gas and binutils/bin2c ++dependencies = { module=all-ld; on=all-gas; }; ++dependencies = { module=all-ld; on=all-binutils; }; + dependencies = { module=configure-gold; on=configure-intl; }; + dependencies = { module=all-gold; on=all-libiberty; }; + dependencies = { module=all-gold; on=all-intl; }; +--- Makefile.in 30 Jul 2008 15:03:54 -0000 1.285 ++++ Makefile.in 30 Jul 2008 21:18:34 -0000 +@@ -53308,6 +53308,26 @@ all-stageb3g2-ld: maybe-all-stageb3g2-in + all-stage4-ld: maybe-all-stage4-intl + all-stageprofile-ld: maybe-all-stageprofile-intl + all-stagefeedback-ld: maybe-all-stagefeedback-intl ++all-ld: maybe-all-gas ++ ++all-stage1-ld: maybe-all-stage1-gas ++all-stage2-ld: maybe-all-stage2-gas ++all-stageb2g0-ld: maybe-all-stageb2g0-gas ++all-stage3-ld: maybe-all-stage3-gas ++all-stageb3g2-ld: maybe-all-stageb3g2-gas ++all-stage4-ld: maybe-all-stage4-gas ++all-stageprofile-ld: maybe-all-stageprofile-gas ++all-stagefeedback-ld: maybe-all-stagefeedback-gas ++all-ld: maybe-all-binutils ++ ++all-stage1-ld: maybe-all-stage1-binutils ++all-stage2-ld: maybe-all-stage2-binutils ++all-stageb2g0-ld: maybe-all-stageb2g0-binutils ++all-stage3-ld: maybe-all-stage3-binutils ++all-stageb3g2-ld: maybe-all-stageb3g2-binutils ++all-stage4-ld: maybe-all-stage4-binutils ++all-stageprofile-ld: maybe-all-stageprofile-binutils ++all-stagefeedback-ld: maybe-all-stagefeedback-binutils + configure-gold: maybe-configure-intl + + configure-stage1-gold: maybe-configure-stage1-intl diff --git a/binutils-2.18.50.0.8-spu_ovl-fatal.patch b/binutils-2.18.50.0.8-spu_ovl-fatal.patch new file mode 100644 index 0000000..22c894d --- /dev/null +++ b/binutils-2.18.50.0.8-spu_ovl-fatal.patch @@ -0,0 +1,20 @@ +2008-07-30 Jan Kratochvil + + * emultempl/spuelf.em: Abort on the missing required `spu_ovl.o'. + +--- ld/emultempl/spuelf.em 19 Jun 2008 16:14:53 -0000 1.24 ++++ ld/emultempl/spuelf.em 30 Jul 2008 18:28:25 -0000 +@@ -57,7 +57,12 @@ char **my_argv; + static const char ovl_mgr[] = { + EOF + +-../binutils/bin2c < ${srcdir}/emultempl/spu_ovl.o >> e${EMULATION_NAME}.c ++if ! ../binutils/bin2c < ${srcdir}/emultempl/spu_ovl.o >> e${EMULATION_NAME}.c ++then ++ echo >&2 "Missing ${srcdir}/emultempl/spu_ovl.o" ++ echo >&2 "You must build gas/as-new with --target=spu to build spu_ovl.o" ++ exit 1 ++fi + + fragment < %{_builddir}/%{?buildsubdir}/debugfiles.list +%define debug_package %{nil} +%endif Buildroot: %{_tmppath}/binutils-root -BuildRequires: texinfo >= 4.0, dejagnu, gettext, flex, bison +BuildRequires: texinfo >= 4.0, dejagnu, gettext, flex, bison, automake, autoconf Conflicts: gcc-c++ < 4.0.0 Prereq: /sbin/install-info %ifarch ia64 @@ -54,7 +76,7 @@ have a stable ABI. Developers starting new projects are strongly encouraged to consider using libelf instead of BFD. %prep -%setup -q +%setup -q -n binutils-%{version} %patch1 -p0 -b .ltconfig-multilib~ %patch2 -p0 -b .ppc64-pie~ %patch3 -p0 -b .place-orphan~ @@ -66,9 +88,12 @@ to consider using libelf instead of BFD. %patch5 -p0 -b .build-fixes~ %patch6 -p0 -b .symbolic-envvar-revert~ %patch7 -p0 -b .version~ -%patch8 -p0 -b .pclmul~ +%patch8 -p0 -b .spu_ovl-fatal~ +%patch9 -p0 -b .spu_ovl-dependency~ -# On ppc64 we might use 64K pages +# We cannot run autotools as there is an exact requirement of autoconf-2.59. + +# On ppc64 we might use 64KiB pages sed -i -e '/#define.*ELF_COMMONPAGESIZE/s/0x1000$/0x10000/' bfd/elf*ppc.c # LTP sucks perl -pi -e 's/i\[3-7\]86/i[34567]86/g' */conf* @@ -79,39 +104,99 @@ if gcc %{optflags} -v --help 2>&1 | grep -q -- -Bsymbolic-functions; then sed -i -e 's/^libbfd_la_LDFLAGS = /&-Wl,-Bsymbolic-functions /' bfd/Makefile.{am,in} sed -i -e 's/^libopcodes_la_LDFLAGS = /&-Wl,-Bsymbolic-functions /' opcodes/Makefile.{am,in} fi +# $PACKAGE is used for the gettext catalog name. +sed -i -e 's/^ PACKAGE=/ PACKAGE=%{?cross}/' */configure +# Undo the name change to run the testsuite. +for tool in binutils gas ld +do + sed -i -e "2aDEJATOOL = $tool" $tool/Makefile.am + sed -i -e "s/^DEJATOOL = .*/DEJATOOL = $tool/" $tool/Makefile.in +done touch */configure %build -mkdir build-%{_target_platform} -cd build-%{_target_platform} +echo target is %{binutils_target} +export CFLAGS="$RPM_OPT_FLAGS" CARGS= -%ifarch sparc ppc s390 -CARGS=--enable-64-bit-bfd + +case %{binutils_target} in sparc*|ppc*|s390*) + CARGS="$CARGS --enable-64-bit-bfd" + ;; +esac + +case %{binutils_target} in ia64*) + CARGS="--enable-targets=i386-linux" + ;; +esac + +case %{binutils_target} in ppc*|ppc64*) + CARGS="--enable-targets=spu" + # This file is present in CVS but missing in H. J. Lu's snapshots. + # To include it for --enable-targets=spu we need to build gas by --target=spu. + ! test -f ld/emultempl/spu_ovl.o + mkdir build-spu + cd build-spu + CFLAGS="${CFLAGS:-%optflags} -O0 -s" ../configure \ + --target=spu --disable-shared --enable-static --disable-werror \ + --with-bugurl=http://bugzilla.redhat.com/bugzilla/ + make %{_smp_mflags} all + cd .. + test -f ld/emultempl/spu_ovl.o + rm -rf build-spu + ;; +esac + +mkdir build-%{binutils_target} +cd build-%{binutils_target} + +%if 0%{?_with_debug:1} +# --enable-werror could conflict with `-Wall -O0' but this is no longer true +# for recent GCCs. +CFLAGS="$CFLAGS -O0 -ggdb2" %endif -%ifarch ia64 -CARGS=--enable-targets=i386-linux + +# We could optimize the cross builds size by --enable-shared but the produced +# binaries may be less convenient in the embedded environment. +CC="gcc -L`pwd`/bfd/.libs/" ../configure \ +%if %{isnative} + %{binutils_target} \ + --enable-shared \ +%else + --target %{binutils_target} --enable-targets=%{_host} \ + --disable-shared \ + --with-sysroot=%{_prefix}/%{binutils_target}/sys-root \ %endif -CC="gcc -L`pwd`/bfd/.libs/" CFLAGS="${CFLAGS:-%optflags}" ../configure \ - %{_target_platform} --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} \ + $CARGS \ + --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} \ --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} \ --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} \ --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} \ --sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} \ - --infodir=%{_infodir} --enable-shared $CARGS --disable-werror \ + --infodir=%{_infodir} --disable-werror \ --with-bugurl=http://bugzilla.redhat.com/bugzilla/ make %{_smp_mflags} tooldir=%{_prefix} all +# Fix: Found '%{buildroot}' in installed files; aborting +if [ -f ld/eelf32_spu.c ] +then + sed -i -e 's#%{buildroot}##g' ld/eelf32_spu.c +fi make %{_smp_mflags} tooldir=%{_prefix} info +%if 0%{?_without_testsuite:1} +echo ====================TESTSUITE DISABLED========================= +%else make -k check < /dev/null > check.log 2>&1 || : echo ====================TESTING========================= cat check.log echo ====================TESTING END===================== cd .. +%endif %install rm -rf %{buildroot} mkdir -p %{buildroot}%{_prefix} -cd build-%{_target_platform} +cd build-%{binutils_target} %makeinstall +%if %{isnative} make prefix=%{buildroot}%{_prefix} infodir=%{buildroot}%{_infodir} install-info gzip -q9f %{buildroot}%{_infodir}/*.info* @@ -141,10 +226,6 @@ rm -f %{buildroot}%{_prefix}/%{_lib}/lib{bfd,opcodes}.so # Remove libtool files, which reference the .so libs rm -f %{buildroot}%{_prefix}/%{_lib}/lib{bfd,opcodes}.la -# This one comes from gcc -rm -f %{buildroot}%{_infodir}/dir -rm -rf %{buildroot}%{_prefix}/%{_target_platform} - %ifarch %{ix86} x86_64 ppc ppc64 s390 s390x sparc sparc64 sed -i -e '/^#include "ansidecl.h"/{p;s~^.*$~#include ~;}' \ %ifarch %{ix86} x86_64 @@ -162,22 +243,36 @@ sed -i -e '/^#include "ansidecl.h"/{p;s~^.*$~#include ~;}' \ %endif touch -r ../bfd/bfd-in2.h %{buildroot}%{_prefix}/include/bfd.h +%else # !%{isnative} +# For cross-binutils we drop the documentation. +rm -rf %{buildroot}%{_infodir} +# We keep these as one can have native + cross binutils of different versions. +#rm -rf %{buildroot}%{_prefix}/share/locale +#rm -rf %{buildroot}%{_mandir} +rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a +%endif # !%{isnative} + +# This one comes from gcc +rm -f %{buildroot}%{_infodir}/dir +rm -rf %{buildroot}%{_prefix}/%{binutils_target} + cd .. -%find_lang binutils -%find_lang opcodes -%find_lang bfd -%find_lang gas -%find_lang ld -%find_lang gprof -cat opcodes.lang >> binutils.lang -cat bfd.lang >> binutils.lang -cat gas.lang >> binutils.lang -cat ld.lang >> binutils.lang -cat gprof.lang >> binutils.lang +%find_lang %{?cross}binutils +%find_lang %{?cross}opcodes +%find_lang %{?cross}bfd +%find_lang %{?cross}gas +%find_lang %{?cross}ld +%find_lang %{?cross}gprof +cat %{?cross}opcodes.lang >> %{?cross}binutils.lang +cat %{?cross}bfd.lang >> %{?cross}binutils.lang +cat %{?cross}gas.lang >> %{?cross}binutils.lang +cat %{?cross}ld.lang >> %{?cross}binutils.lang +cat %{?cross}gprof.lang >> %{?cross}binutils.lang %clean rm -rf %{buildroot} +%if %{isnative} %post /sbin/ldconfig /sbin/install-info --info-dir=%{_infodir} %{_infodir}/as.info.gz @@ -208,12 +303,14 @@ exit 0 if [ $1 = 0 ] ;then /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/bfd.info.gz || : fi +%endif # %{isnative} -%files -f binutils.lang +%files -f %{?cross}binutils.lang %defattr(-,root,root) %doc README %{_prefix}/bin/* %{_mandir}/man1/* +%if %{isnative} %{_prefix}/%{_lib}/lib*.so %{_infodir}/[^b]*info* %{_infodir}/binutils*info* @@ -223,8 +320,19 @@ fi %{_prefix}/include/* %{_prefix}/%{_lib}/lib*.a %{_infodir}/bfd*info* +%endif # %{isnative} %changelog +* Thu Jul 31 2008 Jan Kratochvil 2.18.50.0.8-1 +- Update to 2.18.50.0.8. + - Drop the .clmul -> .pclmul renaming backport. +- Add %%{binutils_target} macro to support building cross-binutils. + (David Woodhouse) +- Support `--without testsuite' to suppress the testsuite run. +- Support `--with debug' to build without optimizations. +- Refresh the patchset with fuzz 0 (for new rpmbuild). +- Enable the spu target on ppc/ppc64 (BZ 455242). + * Wed Jul 16 2008 Jan Kratochvil 2.18.50.0.6-4 - include the `dist' tag in the Release number - libbfd.a symbols visibility is now hidden (for #447426, suggested by Jakub) diff --git a/sources b/sources index 6d2d59d..6b9c9b2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9e474d739355c15ba6ecf5fd9fae8608 binutils-2.18.50.0.6.tar.bz2 +a49df3481468f281f42afbf915e10db2 binutils-2.18.50.0.8.tar.bz2