mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-20 12:05:48 -04:00

Up until now, clang interface stubs has replaced the standard PP -> C -> BE -> ASM -> LNK pipeline. With this change, it will happen in conjunction with it. So what when you build your code you will get an a.out or lib.so as well as an interface stub file. Example: clang -shared -o libfoo.so -emit-interface-stubs ... will generate both a libfoo.so and a libfoo.ifso. The .so file will contain the code from the standard compilation pipeline and the .ifso file will contain the ELF stub library. Differential Revision: https://reviews.llvm.org/D70274
17 lines
643 B
C++
17 lines
643 B
C++
// REQUIRES: x86-registered-target
|
|
// RUN: %clang_cc1 -triple x86_64-windows-msvc -o - %s -emit-interface-stubs | FileCheck -check-prefix=CHECK-CC1 %s
|
|
// RUN: %clang -target x86_64-windows-msvc -o - %s -emit-interface-stubs -emit-merged-ifs -S | FileCheck -check-prefix=CHECK-IFS %s
|
|
// note: -S is added here to prevent clang from invoking link.exe
|
|
|
|
// CHECK-CC1: Symbols:
|
|
// CHECK-CC1-NEXT: ?helloWindowsMsvc@@YAHXZ
|
|
|
|
// CHECK-IFS: --- !experimental-ifs-v1
|
|
// CHECK-IFS: IfsVersion: 1.0
|
|
// CHECK-IFS: Triple:
|
|
// CHECK-IFS: Symbols:
|
|
// CHECK-IFS: ?helloWindowsMsvc@@YAHXZ: { Type: Func }
|
|
// CHECK-IFS: ...
|
|
|
|
int helloWindowsMsvc();
|