Stop treating -static as overriding -fPIC: they are distinct.
authorJames Y Knight <jyknight@google.com>
Fri, 21 Aug 2015 04:14:55 +0000 (04:14 +0000)
committerJames Y Knight <jyknight@google.com>
Fri, 21 Aug 2015 04:14:55 +0000 (04:14 +0000)
commitc4015d3291e3d58741287b72026c15ce48eaf93c
treeb55bc643d8c5a9ce9ea70edf21a6a934a79c57f0
parent6995de9f1d54006534430d506ba99fd8ccbf5391
Stop treating -static as overriding -fPIC: they are distinct.

For some reason, clang had been treating a command like:
 clang -static -fPIC foo.c
as if it should be compiled without the PIC relocation model.

This was incorrect: -static should be affecting only the linking
model, and -fPIC only the compilation.

This new behavior also matches GCC.

This is a follow-up from a review comment on r245447.

Differential Revision: http://reviews.llvm.org/D12208

llvm-svn: 245667
clang/lib/Driver/Tools.cpp
clang/test/Driver/pic.c