diff options
author | itsimbal <itsimbal@138bc75d-0d04-0410-961f-82ee72b054a4> | 2018-02-16 10:19:14 +0000 |
---|---|---|
committer | itsimbal <itsimbal@138bc75d-0d04-0410-961f-82ee72b054a4> | 2018-02-16 10:19:14 +0000 |
commit | d4f2cbd867b3c746736865926f4d82d9ea16cf95 (patch) | |
tree | db467c1440a092e1a6b700aee37aa525d9778d29 /libgcc | |
parent | 088e6dfc54dbafb1fe39acbdf36e55748a47bd97 (diff) |
Additional fix for PR 84239.
PR target/84239
* libgcc/config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
Include cetintrin.h not x86intrin.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@257730 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc')
-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 692773d7d2d..012c866f1c9 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 416e061dd46..b7c3d98a9dc 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 |