45 lines · plain
1# REQUIRES: x862 3# RUN: llvm-mc -triple=x86_64-windows-msvc -filetype=obj -o %t.obj %s4 5# Test implicit trace file name6# RUN: lld-link %t.obj /entry:main /out:%t1.exe --time-trace --time-trace-granularity=07# RUN: cat %t1.exe.time-trace \8# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \9# RUN: | FileCheck %s10 11# Test specified trace file name12# RUN: lld-link %t.obj /entry:main /out:%t2.exe --time-trace=%t2.json --time-trace-granularity=013# RUN: cat %t2.json \14# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \15# RUN: | FileCheck %s16 17# Test trace requested to stdout18# RUN: env LLD_IN_TEST=1 lld-link %t.obj /entry:main /out:%t3.exe --time-trace=- --time-trace-granularity=0 \19# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \20# RUN: | FileCheck %s21 22# CHECK: "beginningOfTime": {{[0-9]{16},}}23# CHECK-NEXT: "traceEvents": [24 25# Check one event has correct fields26# CHECK: "dur":27# CHECK-NEXT: "name":28# CHECK-NEXT: "ph":29# CHECK-NEXT: "pid":30# CHECK-NEXT: "tid":31# CHECK-NEXT: "ts":32 33# Check there are events34# CHECK: "name": "Read input files"35 36# Check process_name entry field37# CHECK: "name": "lld-link{{(.exe)?}}"38# CHECK: "name": "process_name"39# CHECK: "name": "thread_name"40 41.text42.global main43main:44 ret45