[ELF] Restore the --call-graph-profile-sort=hfsort default before #68638

The high time complexity of cache-directed sort is a real issue and is not
appropriate as the default, at least for now
(https://github.com/llvm/llvm-project/pull/68638#issuecomment-1760918891).
This commit is contained in:
Fangrui Song 2023-10-12 22:58:42 -07:00
parent 398e48a75b
commit 60b3e05967
3 changed files with 6 additions and 6 deletions

View File

@ -1095,7 +1095,7 @@ static void ltoValidateAllVtablesHaveTypeInfos(opt::InputArgList &args) {
}
static CGProfileSortKind getCGProfileSortKind(opt::InputArgList &args) {
StringRef s = args.getLastArgValue(OPT_call_graph_profile_sort, "cdsort");
StringRef s = args.getLastArgValue(OPT_call_graph_profile_sort, "hfsort");
if (s == "hfsort")
return CGProfileSortKind::Hfsort;
if (s == "cdsort")

View File

@ -128,9 +128,9 @@ may be:
.It Cm none
Ignore call graph profile.
.It Cm hfsort
Use hfsort.
Use hfsort (default).
.It Cm cdsort
Use cdsort (default).
Use cdsort.
.El
.Pp
.It Fl -color-diagnostics Ns = Ns Ar value

View File

@ -26,12 +26,12 @@
# RUN: echo "TooManyPreds10 TooManyPreds 11" >> %t.call_graph
# RUN: ld.lld -e A %t --call-graph-ordering-file %t.call_graph --call-graph-profile-sort=hfsort -o %t2
# RUN: llvm-readobj --symbols %t2 | FileCheck %s
## --call-graph-profile-sort=hfsort is the default.
# RUN: ld.lld -e A %t --call-graph-ordering-file %t.call_graph -o %t2b
# RUN: cmp %t2 %t2b
# RUN: ld.lld -e A %t --call-graph-ordering-file %t.call_graph --call-graph-profile-sort=cdsort -o %t2
# RUN: llvm-readobj --symbols %t2 | FileCheck %s --check-prefix=CDSORT
## --call-graph-profile-sort=cdsort is the default.
# RUN: ld.lld -e A %t --call-graph-ordering-file %t.call_graph -o %t2b
# RUN: cmp %t2 %t2b
# RUN: not ld.lld -e A %t --call-graph-ordering-file %t.call_graph --call-graph-profile-sort=sort \
# RUN: -o /dev/null 2>&1 | FileCheck %s --check-prefix=UNKNOWN