On Fri, May 20, 2016 at 8:04 AM, H.J. Lu <hjl.to...@gmail.com> wrote: > On Mon, May 9, 2016 at 5:52 AM, H.J. Lu <hjl.to...@gmail.com> wrote: >> On Mon, May 2, 2016 at 6:46 AM, H.J. Lu <hjl.to...@gmail.com> wrote: >>> On Mon, Apr 25, 2016 at 1:36 PM, H.J. Lu <hongjiu...@intel.com> wrote: >>>> If x86 libgomp isn't compiled with -march=i486 or better, append >>>> -march=i486 XCFLAGS for x86 libgomp build. >>>> >>>> Tested on i686 with and without --with-arch=i386. Tested on >>>> x86-64 with and without --with-arch_32=i386. OK for trunk? >>>> >>>> >>>> H.J. >>>> --- >>>> PR target/70454 >>>> * configure.tgt (XCFLAGS): Append -march=i486 to compile x86 >>>> libgomp if needed. >>>> --- >>>> libgomp/configure.tgt | 36 ++++++++++++++++-------------------- >>>> 1 file changed, 16 insertions(+), 20 deletions(-) >>>> >>>> diff --git a/libgomp/configure.tgt b/libgomp/configure.tgt >>>> index 77e73f0..c876e80 100644 >>>> --- a/libgomp/configure.tgt >>>> +++ b/libgomp/configure.tgt >>>> @@ -67,28 +67,24 @@ if test x$enable_linux_futex = xyes; then >>>> ;; >>>> >>>> # Note that bare i386 is not included here. We need cmpxchg. >>>> - i[456]86-*-linux*) >>>> + i[456]86-*-linux* | x86_64-*-linux*) >>>> config_path="linux/x86 linux posix" >>>> - case " ${CC} ${CFLAGS} " in >>>> - *" -m64 "*|*" -mx32 "*) >>>> - ;; >>>> - *) >>>> - if test -z "$with_arch"; then >>>> - XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" >>>> + # Need i486 or better. >>>> + cat > conftestx.c <<EOF >>>> +#if defined __x86_64__ || defined __i486__ || defined __pentium__ \ >>>> + || defined __pentiumpro__ || defined __pentium4__ \ >>>> + || defined __geode__ || defined __SSE__ >>>> +# error Need i486 or better >>>> +#endif >>>> +EOF >>>> + if ${CC} ${CFLAGS} -c -o conftestx.o conftestx.c > /dev/null 2>&1; >>>> then >>>> + if test "${target_cpu}" = x86_64; then >>>> + XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" >>>> + else >>>> + XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" >>>> fi >>>> - esac >>>> - ;; >>>> - >>>> - # Similar jiggery-pokery for x86_64 multilibs, except here we >>>> - # can't rely on the --with-arch configure option, since that >>>> - # applies to the 64-bit side. >>>> - x86_64-*-linux*) >>>> - config_path="linux/x86 linux posix" >>>> - case " ${CC} ${CFLAGS} " in >>>> - *" -m32 "*) >>>> - XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" >>>> - ;; >>>> - esac >>>> + fi >>>> + rm -f conftestx.c conftestx.o >>>> ;; >>>> >>>> # Note that sparcv7 and sparcv8 is not included here. We need cas. >>>> -- >>>> 2.5.5 >>>> >>> >>> PING. >>> >> >> PING. >> > > PING. >
PING. -- H.J.