Browse code

Revert "gcc : Fix CVE-2017-11671."

This reverts commit 020e6aab63d36ce0e6448fe1b29b6d2107aa12ee.

Change-Id: Ic4f8c79d7572c2426b83b477db61e07ed9bc99fe
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/4172
Reviewed-by: Anish Swaminathan <anishs@vmware.com>
Tested-by: Anish Swaminathan <anishs@vmware.com>

Anish Swaminathan authored on 2017/11/01 13:42:44
Showing 2 changed files
1 1
deleted file mode 100644
... ...
@@ -1,69 +0,0 @@
1
-Index: config/i386/i386.c
2
-===================================================================
3
-+++ b/gcc/config/i386/i386.c	(working copy)
4
-@@ -37572,9 +37572,6 @@ ix86_expand_builtin (tree exp, rtx target, rtx sub
5
-       mode0 = DImode;
6
- 
7
- rdrand_step:
8
--      op0 = gen_reg_rtx (mode0);
9
--      emit_insn (GEN_FCN (icode) (op0));
10
--
11
-       arg0 = CALL_EXPR_ARG (exp, 0);
12
-       op1 = expand_normal (arg0);
13
-       if (!address_operand (op1, VOIDmode))
14
-@@ -37582,6 +37579,10 @@ rdrand_step:
15
- 	  op1 = convert_memory_address (Pmode, op1);
16
- 	  op1 = copy_addr_to_reg (op1);
17
- 	}
18
-+
19
-+      op0 = gen_reg_rtx (mode0);
20
-+      emit_insn (GEN_FCN (icode) (op0));
21
-+
22
-       emit_move_insn (gen_rtx_MEM (mode0, op1), op0);
23
- 
24
-       op1 = gen_reg_rtx (SImode);
25
-@@ -37590,8 +37591,20 @@ rdrand_step:
26
-       /* Emit SImode conditional move.  */
27
-       if (mode0 == HImode)
28
- 	{
29
--	  op2 = gen_reg_rtx (SImode);
30
--	  emit_insn (gen_zero_extendhisi2 (op2, op0));
31
-+	  if (TARGET_ZERO_EXTEND_WITH_AND
32
-+	      && optimize_function_for_speed_p (cfun))
33
-+	    {
34
-+	      op2 = force_reg (SImode, const0_rtx);
35
-+
36
-+	      emit_insn (gen_movstricthi
37
-+			 (gen_lowpart (HImode, op2), op0));
38
-+	    }
39
-+	  else
40
-+	    {
41
-+	      op2 = gen_reg_rtx (SImode);
42
-+
43
-+	      emit_insn (gen_zero_extendhisi2 (op2, op0));
44
-+	    }
45
- 	}
46
-       else if (mode0 == SImode)
47
- 	op2 = op0;
48
-@@ -37623,9 +37636,6 @@ rdrand_step:
49
-       mode0 = DImode;
50
- 
51
- rdseed_step:
52
--      op0 = gen_reg_rtx (mode0);
53
--      emit_insn (GEN_FCN (icode) (op0));
54
--
55
-       arg0 = CALL_EXPR_ARG (exp, 0);
56
-       op1 = expand_normal (arg0);
57
-       if (!address_operand (op1, VOIDmode))
58
-@@ -37633,6 +37643,10 @@ rdseed_step:
59
- 	  op1 = convert_memory_address (Pmode, op1);
60
- 	  op1 = copy_addr_to_reg (op1);
61
- 	}
62
-+
63
-+      op0 = gen_reg_rtx (mode0);
64
-+      emit_insn (GEN_FCN (icode) (op0));
65
-+
66
-       emit_move_insn (gen_rtx_MEM (mode0, op1), op0);
67
- 
68
-       op2 = gen_reg_rtx (QImode);
... ...
@@ -1,29 +1,27 @@
1 1
 %define _use_internal_dependency_generator 0
2
-Summary:        Contains the GNU compiler collection
3
-Name:           gcc
4
-Version:        5.3.0
5
-Release:        5%{?dist}
6
-License:        GPLv2+
7
-URL:            http://gcc.gnu.org
8
-Group:          Development/Tools
9
-Vendor:         VMware, Inc.
10
-Distribution:   Photon
11
-Source0:        http://ftp.gnu.org/gnu/gcc/%{name}-%{version}/%{name}-%{version}.tar.bz2
12
-%define sha1    gcc=0612270b103941da08376df4d0ef4e5662a2e9eb
13
-#https://gcc.gnu.org/ml/gcc-patches/2017-03/msg01349.html
14
-Patch0:         gcc-CVE-2017-11671.patch
15
-Requires:       libstdc++-devel = %{version}-%{release}
16
-Requires:       libgcc-devel = %{version}-%{release}
17
-Requires:       libgomp-devel = %{version}-%{release}
18
-Requires:       libgcc-atomic = %{version}-%{release}
19
-Requires:       gmp
2
+Summary:	Contains the GNU compiler collection
3
+Name:		gcc
4
+Version:	5.3.0
5
+Release:	4%{?dist}
6
+License:	GPLv2+
7
+URL:		http://gcc.gnu.org
8
+Group:		Development/Tools
9
+Vendor:		VMware, Inc.
10
+Distribution:	Photon
11
+Source0:	http://ftp.gnu.org/gnu/gcc/%{name}-%{version}/%{name}-%{version}.tar.bz2
12
+%define sha1 gcc=0612270b103941da08376df4d0ef4e5662a2e9eb
13
+Requires:	libstdc++-devel = %{version}-%{release}
14
+Requires:	libgcc-devel = %{version}-%{release}
15
+Requires:	libgomp-devel = %{version}-%{release}
16
+Requires:	libgcc-atomic = %{version}-%{release}
17
+Requires:	gmp
20 18
 %description
21 19
 The GCC package contains the GNU compiler collection,
22 20
 which includes the C and C++ compilers.
23 21
 
24
-%package -n     libgcc
25
-Summary:        GNU C Library
26
-Group:          System Environment/Libraries
22
+%package -n	libgcc
23
+Summary:	GNU C Library
24
+Group:         	System Environment/Libraries
27 25
 %description -n libgcc
28 26
 The libgcc package contains GCC shared libraries for gcc .
29 27
 
... ...
@@ -34,36 +32,36 @@ Requires:       libgcc = %{version}-%{release}
34 34
 %description -n libgcc-atomic
35 35
 The libgcc package contains GCC shared libraries for atomic counter updates.
36 36
 
37
-%package -n     libgcc-devel
38
-Summary:        GNU C Library
39
-Group:          Development/Libraries
37
+%package -n	libgcc-devel
38
+Summary:	GNU C Library
39
+Group:         	Development/Libraries
40 40
 Requires:       libgcc = %{version}-%{release}
41 41
 %description -n libgcc-devel
42 42
 The libgcc package contains GCC shared libraries for gcc .
43 43
 This package contains development headers and static library for libgcc.
44 44
 
45
-%package -n libstdc++
46
-Summary:        GNU C Library
47
-Group:          System Environment/Libraries
48
-Requires:   libgcc = %{version}-%{release}
45
+%package -n	libstdc++
46
+Summary:       	GNU C Library
47
+Group:         	System Environment/Libraries
48
+Requires:	libgcc = %{version}-%{release}
49 49
 %description -n libstdc++
50 50
 This package contains the GCC Standard C++ Library v3, an ongoing project to implement the ISO/IEC 14882:1998 Standard C++ library.
51 51
 
52
-%package -n libstdc++-devel
53
-Summary:        GNU C Library
54
-Group:          Development/Libraries
52
+%package -n	libstdc++-devel
53
+Summary:       	GNU C Library
54
+Group:         	Development/Libraries
55 55
 Requires:       libstdc++ = %{version}-%{release}
56 56
 %description -n libstdc++-devel
57 57
 This is the GNU implementation of the standard C++ libraries.
58 58
 This package includes the headers files and libraries needed for C++ development.
59 59
 
60
-%package -n libgomp
61
-Summary:        GNU C Library
62
-Group:          System Environment/Libraries
60
+%package -n	libgomp
61
+Summary:       	GNU C Library
62
+Group:         	System Environment/Libraries
63 63
 %description -n libgomp
64 64
 An implementation of OpenMP for the C, C++, and Fortran 95 compilers in the GNU Compiler Collection.
65 65
 
66
-%package -n libgomp-devel
66
+%package -n	libgomp-devel
67 67
 Summary:        Development headers and static library for libgomp
68 68
 Group:          Development/Libraries
69 69
 Requires:       libgomp = %{version}-%{release}
... ...
@@ -73,7 +71,6 @@ This package contains development headers and static library for libgomp
73 73
 
74 74
 %prep
75 75
 %setup -q
76
-%patch0 -p1
77 76
 sed -i '/*cpp:/s/^/# /' `dirname $(gcc --print-libgcc-file-name)`/../specs
78 77
 sed -i '/Ofast:-D_FORTIFY_SOURCE=2/s/^/# /' `dirname $(gcc --print-libgcc-file-name)`/../specs
79 78
 
... ...
@@ -82,16 +79,16 @@ install -vdm 755 ../gcc-build
82 82
 cd ../gcc-build
83 83
 SED=sed \
84 84
 ../%{name}-%{version}/configure \
85
-    --prefix=%{_prefix} \
86
-    --enable-shared \
87
-    --enable-threads=posix \
88
-    --enable-__cxa_atexit \
89
-    --enable-clocale=gnu \
90
-    --enable-languages=c,c++ \
91
-    --disable-multilib \
92
-    --disable-bootstrap \
93
-    --with-system-zlib
94
-#   --disable-silent-rules
85
+	--prefix=%{_prefix} \
86
+	--enable-shared \
87
+	--enable-threads=posix \
88
+	--enable-__cxa_atexit \
89
+	--enable-clocale=gnu \
90
+	--enable-languages=c,c++ \
91
+	--disable-multilib \
92
+	--disable-bootstrap \
93
+	--with-system-zlib
94
+#	--disable-silent-rules
95 95
 #sed -i '/-D_FORTIFY_SOURCE=2 for preprocessor/,+2d' `dirname $(gcc --print-libgcc-file-name)`/../specs
96 96
 make
97 97
 %install
... ...
@@ -102,9 +99,9 @@ ln -sv %{_bindir}/cpp %{buildroot}/%{_lib}
102 102
 ln -sv gcc %{buildroot}%{_bindir}/cc
103 103
 install -vdm 755 %{buildroot}%{_datarootdir}/gdb/auto-load%{_lib}
104 104
 %ifarch x86_64
105
-    mv -v %{buildroot}%{_lib64dir}/*gdb.py %{buildroot}%{_datarootdir}/gdb/auto-load%{_lib}
105
+	mv -v %{buildroot}%{_lib64dir}/*gdb.py %{buildroot}%{_datarootdir}/gdb/auto-load%{_lib}
106 106
 %else
107
-    mv -v %{buildroot}%{_libdir}/*gdb.py %{buildroot}%{_datarootdir}/gdb/auto-load%{_lib}
107
+	mv -v %{buildroot}%{_libdir}/*gdb.py %{buildroot}%{_datarootdir}/gdb/auto-load%{_lib}
108 108
 %endif
109 109
 rm -rf %{buildroot}%{_infodir}
110 110
 popd
... ...
@@ -114,22 +111,22 @@ popd
114 114
 cd ../gcc-build
115 115
 ulimit -s 32768
116 116
 make -k check |& tee %{_specdir}/%{name}-check-log || %{nocheck}
117
-%post   -p /sbin/ldconfig
118
-%postun -p /sbin/ldconfig
117
+%post	-p /sbin/ldconfig
118
+%postun	-p /sbin/ldconfig
119 119
 
120 120
 %files -f %{name}.lang
121 121
 %defattr(-,root,root)
122 122
 %{_lib}/cpp
123
-#   Executables
123
+#	Executables
124 124
 %{_bindir}/*
125
-#   Libraries
125
+#	Libraries
126 126
 %ifarch x86_64
127 127
 %{_lib64dir}/*
128 128
 %endif
129 129
 %{_libdir}/gcc/*
130
-#   Library executables
130
+#	Library executables
131 131
 %{_libexecdir}/gcc/*
132
-#   Man pages
132
+#	Man pages
133 133
 %{_mandir}/man1/*.gz
134 134
 %{_mandir}/man7/*.gz
135 135
 %{_datadir}/gdb/*
... ...
@@ -214,8 +211,6 @@ make -k check |& tee %{_specdir}/%{name}-check-log || %{nocheck}
214 214
 %endif
215 215
 
216 216
 %changelog
217
-*   Thu Oct 19 2017 Xiaolin Li <xiaolinl@vmware.com> 5.3.0-5
218
--   Fix CVE-2017-11671.
219 217
 *   Thu Jun 29 2017 Divya Thaluru <dthaluru@vmware.com> 5.3.0-4
220 218
 -   Bump release to built with latest toolchain
221 219
 *   Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 5.3.0-3