Thread (6 messages) flat view 6 messages, 4 authors, 2018-10-15

Re: [PATCH] powerpc: Fix stackprotector detection for non-glibc toolchains

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2018-10-13 11:57:05

Christophe LEROY [off-list ref] writes:
Le 13/10/2018 à 00:58, Michael Ellerman a écrit :
quoted
If GCC is not built with glibc support then we must explicitly tell it
which register to use for TLS mode stack protector, otherwise it will
error out and the cc-option check will fail.
Oh ? I didn't encounter such a problem with the nolibc GCC from 
https://mirrors.edge.kernel.org/pub/tools/crosstool/
Yes, you're right.

  $ /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc -o empty.o -Wall -c empty.c -mstack-protector-guard=tls 
  $ echo $?
  0

But with mine:
  $ /home/kerkins/toolchains/ppc/gcc-8-branch/powerpc-linux/bin/powerpc-linux-gcc -o empty.o -Wall -c empty.c -mstack-protector-guard=tls 
  cc1: error: ‘-mstack-protector-guard=tls’ needs a valid base register


So it's only my cross compilers that don't work.

The kernel.org ones are:
  Configured with: /home/arnd/git/gcc/configure --target=powerpc64-linux
  --enable-targets=all
  --prefix=/home/arnd/cross/x86_64/gcc-8.1.0-nolibc/powerpc64-linux
  --enable-languages=c --without-headers --disable-bootstrap
  --disable-nls --disable-threads --disable-shared --disable-libmudflap
  --disable-libssp --disable-libgomp --disable-decimal-float
  --disable-libquadmath --disable-libatomic --disable-libcc1
  --disable-libmpx --enable-checking=release

Whereas mine is:
  Configured with: ../../src/gcc/configure
  --prefix=/home/kerkins/workspace/gcc-build/gcc/gcc-8-branch/target/ppc/build/install/powerpc-linux
  --disable-multilib --disable-bootstrap --enable-languages=c
  --with-pkgversion='Custom 2c79ff811dfcee1c' --target=powerpc-linux
  --enable-targets=all


So I wonder if something in there is making the difference?

I guess I'll just rewrite the change log to say "some toolchains".

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help