Remove the explicit i686 target that is completely duplicate to
the i386 target, with the latter being used more commonly.
- The runtime built for i686 will be identical to the one built for
i386.
- Supporting both -i386 and -i686 suffixes causes unnecessary confusion
on the clang end which has to expect either of them.
- The checks are based on wrong assumption that i686 is defined for
all newer x86 CPUs. In fact, it is only declared when -march=i686 is
explicitly used. It is not available when a more specific (or newer)
-march is used.
Curious enough, if CFLAGS contain -march=i686, the runtime will be built
both for i386 and i686. For any other value, only i386 variant will be
built.
There are lots of copies of this script in various project that now all need to be updated (searching the web for asan_device_setup shows some).
For me personally, this means updating Chromium (also the build system needs an update) to handle different names before and after this revision.
Do you have any suggestions for how we should handle this rename? Is there some backwards-compatibility fix we could do?
As you noticed this broke some LLVM buildbots. It also broke Chromium buildbots, and I suppose other projects which use asan. I'm wondering if the fallout is worth the benefits here.