diff options
author | Igor Tsimbalist <igor.v.tsimbalist@intel.com> | 2018-02-16 11:19:14 +0100 |
---|---|---|
committer | Igor Tsimbalist <itsimbal@gcc.gnu.org> | 2018-02-16 11:19:14 +0100 |
commit | 95df04335bea92a715501271ad7d854e854706b3 (patch) | |
tree | db467c1440a092e1a6b700aee37aa525d9778d29 | |
parent | d80956bb05e5f6e9a9a18cf571ccc71d1623af46 (diff) | |
download | gcc-95df04335bea92a715501271ad7d854e854706b3.zip gcc-95df04335bea92a715501271ad7d854e854706b3.tar.gz gcc-95df04335bea92a715501271ad7d854e854706b3.tar.bz2 |
Additional fix for PR 84239.
PR target/84239
* libgcc/config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
Include cetintrin.h not x86intrin.h.
From-SVN: r257730
-rw-r--r-- | libgcc/ChangeLog | 8 | ||||
-rw-r--r-- | libgcc/config/i386/shadow-stack-unwind.h | 9 |
2 files changed, 15 insertions, 2 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 692773d..012c866 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,7 +1,13 @@ +2018-02-16 Igor Tsimbalist <igor.v.tsimbalist@intel.com> + + PR target/84239 + * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra): + Include cetintrin.h not x86intrin.h. + 2018-02-08 Igor Tsimbalist <igor.v.tsimbalist@intel.com> PR target/84239 - * config/i386/shadow-stack-unwind.hi (_Unwind_Frames_Extra): + * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra): Use new _get_ssp and _inc_ssp intrinsics. 2018-02-02 Julia Koval <julia.koval@intel.com> diff --git a/libgcc/config/i386/shadow-stack-unwind.h b/libgcc/config/i386/shadow-stack-unwind.h index 416e061..b7c3d98 100644 --- a/libgcc/config/i386/shadow-stack-unwind.h +++ b/libgcc/config/i386/shadow-stack-unwind.h @@ -22,7 +22,14 @@ a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see <http://www.gnu.org/licenses/>. */ -#include <x86intrin.h> +/* NB: We need _get_ssp and _inc_ssp from <cetintrin.h>. But we can't + include <x86intrin.h> which ends up including <mm_malloc.h>, which + includes <stdlib.h> and <errno.h> unconditionally. But we can't + include any libc system headers unconditionally from libgcc. Avoid + including <mm_malloc.h> here by defining _IMMINTRIN_H_INCLUDED. */ +#define _IMMINTRIN_H_INCLUDED +#include <cetintrin.h> +#undef _IMMINTRIN_H_INCLUDED /* Unwind the shadow stack for EH. */ #undef _Unwind_Frames_Extra |