Auto merge of #119418 - aaupov:master, r=Kobzol
[BOLT] Use CDSort and CDSplit CDSort and CDSplit are the most recent versions of function ordering and function splitting algorithms with some improvements over the previous baseline (ext-tsp and two-way splitting).
This commit is contained in:
commit
9023f908cf
1 changed files with 3 additions and 1 deletions
|
@ -62,9 +62,11 @@ pub fn bolt_optimize(path: &Utf8Path, profile: &BoltProfile) -> anyhow::Result<(
|
||||||
// Reorder basic blocks within functions
|
// Reorder basic blocks within functions
|
||||||
.arg("-reorder-blocks=ext-tsp")
|
.arg("-reorder-blocks=ext-tsp")
|
||||||
// Reorder functions within the binary
|
// Reorder functions within the binary
|
||||||
.arg("-reorder-functions=hfsort+")
|
.arg("-reorder-functions=cdsort")
|
||||||
// Split function code into hot and code regions
|
// Split function code into hot and code regions
|
||||||
.arg("-split-functions")
|
.arg("-split-functions")
|
||||||
|
// Split using best available strategy (three-way splitting, Cache-Directed Sort)
|
||||||
|
.arg("-split-strategy=cdsplit")
|
||||||
// Split as many basic blocks as possible
|
// Split as many basic blocks as possible
|
||||||
.arg("-split-all-cold")
|
.arg("-split-all-cold")
|
||||||
// Move jump tables to a separate section
|
// Move jump tables to a separate section
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue