On 11/13/14 10:46, enh wrote:
This feels like a bad idea to me simply because a new compiler with an
old runtime will generate code that fails, right?
yes, but that's already true of PIE or gnu-style hash or...
That doesn't make it the right thing to do. I would argue that's a bug
that really needs to be fixed.
If you can't do a configure-time test, then the way to go is either a
compile-time option, or to use a different target. If there's some
minimum version of android that has this capability, then this isn't
terribly hard. You may not even need a config file for this since you
could define LIBC_BIONIC_USE_IFUNCS or something like that when
configured for a suitably new android version.
this won't make any difference to the developers, though. they get their
prebuilt compilers from us, and we'll just turn all the latest options
on. we don't ship a compilers for each Android version. we already have
6 architectures * {clang,gcc} * {current,previous}version to ship.
But that's no reason to have a compiler which produces bogus binaries.
I really think this patch is a bad idea.
jeff