llvm-project/clang/test/InterfaceStubs
Puyan Lotfi d694594d76 [clang][IFS] Allow 2 output files when using -o and -c with clang IFS stubs.
This patch allows for -o to be used with -c when compiling with clang
interface stubs enabled. This is because the second file will be an
intermediate ifs stubs file that is the text stub analog of the .o file.
Both get produces in this case, so two files.

Why are we doing this? Because we want to support the case where
interface stubs are used bu first invoking clang like so:

clang -c <other flags> -emit-interface-stubs foo.c -o foo.o
...
clang -emit-interface-stubs <.o files> -o libfoo.so

This should generate N .ifs files, and one .ifso file. Prior to this
patch, using -o with the -c invocation was not possible. Currently the
clang driver supports generating a a.out/.so file at the same time as a
merged ifs file / ifso file, but this is done by checking that the final
job is the IfsMerge job. When -c is used, the final job is a Compile job
so what this patch does is check to figure out of the job type is
TY_IFS_CPP.

Differential Revision: https://reviews.llvm.org/D70763
2019-12-09 14:47:17 -05:00
..
XlinkerInputArgs.cpp [clang][IFS] Ignoring -Xlinker/-Xclang arguments in InterfaceStubs pass for now. 2019-12-04 20:03:57 -05:00
bad-format.cpp [clang][ifs] Clang Interface Stubs ToolChain plumbing. 2019-10-08 15:23:14 +00:00
class-template-partial-specialization.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
class-template-specialization.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
conflict-type.ifs [clang][ifs] Clang Interface Stubs ToolChain plumbing. 2019-10-08 15:23:14 +00:00
constructor-using-shadow.cpp [clang][IFS] Adding support for new clang interface stubs decl types. 2019-12-04 19:10:47 -05:00
cxx-conversion.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
cxxdeduction-guide.cpp [clang][IFS] Adding support for new clang interface stubs decl types. 2019-12-04 19:10:47 -05:00
driver-test.c [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3) 2019-11-20 16:22:50 -05:00
driver-test2.c [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3) 2019-11-20 16:22:50 -05:00
driver-test3.c [clang][IFS] Allow 2 output files when using -o and -c with clang IFS stubs. 2019-12-09 14:47:17 -05:00
externstatic.c [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
func.ifs [clang][ifs] Clang Interface Stubs ToolChain plumbing. 2019-10-08 15:23:14 +00:00
function-template-specialization.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
hidden-class-inheritance.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
indirect-field-decl.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
inline.c [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
inline.h [NFC] Fix for InterfaceStubs tests (adding REQUIRES: x86-registered-target). 2019-06-20 18:28:21 +00:00
merge-conflict-test.c [clang][IFS] Updating tests to pass on -fvisibility=hidden builds (NFCi). 2019-10-12 02:46:57 +00:00
namespace-alias.cpp [clang][IFS] Adding support for new clang interface stubs decl types. 2019-12-04 19:10:47 -05:00
namespace.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
non-type-template-parm-decl.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
noninstancetypes.c [clang][IFS] Fixing assert in clang interface stubs for enums, records, typedefs 2019-10-11 17:24:11 +00:00
object-double.c [clang][ifs] Clang Interface Stubs ToolChain plumbing. 2019-10-08 15:23:14 +00:00
object-float.c [clang][IFS] Updating tests to pass on -fvisibility=hidden builds (NFCi). 2019-10-12 02:46:57 +00:00
object.c [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
object.ifs [clang][ifs] Clang Interface Stubs ToolChain plumbing. 2019-10-08 15:23:14 +00:00
ppc.cpp [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3) 2019-11-20 16:22:50 -05:00
template-constexpr.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
template-namespace-function.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
template-template-parm-decl.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
trycatch.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
unresolved-using-typename.cpp [clang][IFS] Adding support for new clang interface stubs decl types. 2019-12-04 19:10:47 -05:00
usings.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
var-template-specialization-decl.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
virtual.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
visibility.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
weak.cpp [clang][IFS][test][NFC] Tightening up clang-ifs tests to use -cc1 more often. 2019-11-14 02:25:22 -05:00
windows.cpp [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3) 2019-11-20 16:22:50 -05:00