[PATCH] D100011: [lld-macho] Make time-trace* options more permissive.
Vy Nguyen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 6 20:46:08 PDT 2021
oontvoo created this revision.
Herald added a reviewer: int3.
Herald added a project: lld-macho.
Herald added a reviewer: lld-macho.
oontvoo requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
If either `time-trace-granularity` or `time-trace-file` is specified, then don't make users specify `-time-trace`.
It seems silly that I have to type all three options, eg, `-time-trace -time-trace-file=- -time-trace-granularity=...`.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D100011
Files:
lld/MachO/Driver.cpp
lld/test/MachO/time-trace.s
Index: lld/test/MachO/time-trace.s
===================================================================
--- lld/test/MachO/time-trace.s
+++ lld/test/MachO/time-trace.s
@@ -1,27 +1,27 @@
# REQUIRES: x86
# RUN: llvm-mc -filetype=obj -triple=x86_64-apple-darwin %s -o %t.o
-# Test implicit trace file name
+## Test implicit trace file name
# RUN: %lld --time-trace --time-trace-granularity=0 -o %t1.macho %t.o
# RUN: cat %t1.macho.time-trace \
# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \
# RUN: | FileCheck %s
-# Test specified trace file name
+## Test specified trace file name
# RUN: %lld --time-trace --time-trace-file=%t2.json --time-trace-granularity=0 -o %t2.macho %t.o
# RUN: cat %t2.json \
# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \
# RUN: | FileCheck %s
-# Test trace requested to stdout
-# RUN: %lld --time-trace --time-trace-file=- --time-trace-granularity=0 -o %t3.macho %t.o \
+## Test trace requested to stdout, also test that `--time-trace` is not needed if the other two are used.
+# RUN: %lld --time-trace-file=- --time-trace-granularity=0 -o %t3.macho %t.o \
# RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \
# RUN: | FileCheck %s
# CHECK: "beginningOfTime": {{[0-9]{16},}}
# CHECK-NEXT: "traceEvents": [
-# Check one event has correct fields
+## Check one event has correct fields
# CHECK: "dur":
# CHECK-NEXT: "name":
# CHECK-NEXT: "ph":
@@ -29,10 +29,10 @@
# CHECK-NEXT: "tid":
# CHECK-NEXT: "ts":
-# Check there is an ExecuteLinker event
+## Check there is an ExecuteLinker event
# CHECK: "name": "ExecuteLinker"
-# Check process_name entry field
+## Check process_name entry field
# CHECK: "name": "ld64.lld{{(.exe)?}}"
# CHECK: "name": "process_name"
# CHECK: "name": "thread_name"
Index: lld/MachO/Driver.cpp
===================================================================
--- lld/MachO/Driver.cpp
+++ lld/MachO/Driver.cpp
@@ -1033,7 +1033,7 @@
config->progName = argsArr[0];
- config->timeTraceEnabled = args.hasArg(OPT_time_trace);
+ config->timeTraceEnabled = args.hasArg(OPT_time_trace) || args.hasArg(OPT_time_trace_granularity_eq) || args.hasArg(OPT_time_trace_file_eq);
config->timeTraceGranularity =
args::getInteger(args, OPT_time_trace_granularity_eq, 500);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D100011.335711.patch
Type: text/x-patch
Size: 2496 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210407/d222c9a3/attachment-0001.bin>
More information about the llvm-commits
mailing list