https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84148

--- Comment #9 from igor.v.tsimbalist at intel dot com ---
How can I check the fixes w/o old HW? I tried specifying --target=pentium to
configure but the build has failed with the message

*** Configuration i586-pc-none not supported
make[1]: *** [configure-gcc] Error 1
make[1]: Leaving directory `/export/users/itsimbal/gcc_ws/build.cet'
make: *** [all] Error 2

Igor


> -----Original Message-----
> From: hjl.tools at gmail dot com [mailto:gcc-bugzi...@gcc.gnu.org]
> Sent: Tuesday, February 13, 2018 2:12 PM
> To: Tsimbalist, Igor V <igor.v.tsimbal...@intel.com>
> Subject: [Bug target/84148] CET shouldn't be enabled in 32-bit run-time
> libraries by default
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84148
> 
> --- Comment #8 from H.J. Lu <hjl.tools at gmail dot com> ---
> (In reply to igor.v.tsimbalist from comment #7)
> > (In reply to H.J. Lu from comment #6)
> > > (In reply to igor.v.tsimbalist from comment #4)
> > > > Created attachment 43400 [details]
> > > > patch
> > >
> > > 2 questions:
> > >
> > > 1. Should 32-bit multilib target libraries compiled on 64-bit host
> > > enable CET?
> > > 2. Should 64-bit multilib target libraries compiled with 32-bit compiler
> > > enable CET?
> >
> > Is there a configuration variable holding an indication of bit-ness for
> > which the compilation of a library is done? I see there is some code in
> > configure.ac in libgcc evaluating the host_address (32 or 64 bits)
> >
> > # Check 32bit or 64bit.  In the case of MIPS, this really determines the
> > # word size rather than the address size.
> > cat > conftest.c <<EOF
> > #if defined(__x86_64__) || (!defined(__i386__) && defined(__LP64__)) \
> >     || defined(__mips64)
> > host_address=64
> > #else
> > host_address=32
> > #endif
> > EOF
> > eval `${CC-cc} -E conftest.c | grep host_address=`
> > rm -f conftest.c
> >
> > If I use the 'host_address' in cet.m4 I got the expected results for libgcc:
> > by default 64-bit library is CET enabled, 32-bit library is not.
> 
> That would be wrong for x32.  We need to enable CET for x86-64
> by default, regardless address size.  To enable CET, we only
> need to check if __SSE2__ is defined since all SSE2 processors
> support multi-byte NOPs.
> 
> --
> You are receiving this mail because:
> You are on the CC list for the bug.

Reply via email to