xref: /llvm-project/clang/test/Modules/ftime-trace.cppm (revision da00c60dae0040185dc45039c4397f6e746548e9)
1// Tests that we can use modules and ftime-trace together.
2// Address https://github.com/llvm/llvm-project/issues/60544
3//
4// RUN: rm -rf %t
5// RUN: mkdir -p %t
6// RUN: split-file %s %t
7//
8// RUN: %clang_cc1 -std=c++20 %t/a.cppm -emit-module-interface -o %t/a.pcm
9// RUN: %clang_cc1 -std=c++20 %t/a.pcm -ftime-trace=%t/a.json -o -
10// RUN: ls %t | grep "a.json"
11
12// Test again with reduced BMI.
13// RUN: rm -rf %t
14// RUN: mkdir -p %t
15// RUN: split-file %s %t
16//
17// RUN: %clang_cc1 -std=c++20 %t/a.cppm -emit-reduced-module-interface -o %t/a.pcm
18// RUN: %clang_cc1 -std=c++20 %t/a.pcm -ftime-trace=%t/a.json -o -
19// RUN: ls %t | grep "a.json"
20
21//--- a.cppm
22export module a;
23