From bab81f19415a1edd65b69d005d8f97a74516b015 Mon Sep 17 00:00:00 2001 From: RubenKelevra Date: Fri, 13 May 2022 23:05:53 +0200 Subject: [PATCH] enable evaluate register pressure in loops for decisions to move loop invariants This is enabled with -O3, but only for some targets. Seems to be off for x86_64. docs: Use IRA to evaluate register pressure in loops for decisions to move loop invariants. This option usually results in generation of faster and smaller code on machines with large register files (>= 32 registers), but it can slow the compiler down. --- utils.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils.go b/utils.go index 6243700..73ea9df 100644 --- a/utils.go +++ b/utils.go @@ -727,7 +727,7 @@ func setupMakepkg(march string) error { } makepkgStr = strings.ReplaceAll(makepkgStr, " color ", " !color ") // Add align-functions=32, see https://github.com/InBetweenNames/gentooLTO/issues/164 for more - makepkgStr = strings.ReplaceAll(makepkgStr, "-O2", "-O3 -falign-functions=32 -mpclmul -fdevirtualize-at-ltrans -fgcse-sm -fgcse-las -flive-range-shrinkage") + makepkgStr = strings.ReplaceAll(makepkgStr, "-O2", "-O3 -falign-functions=32 -mpclmul -fdevirtualize-at-ltrans -fgcse-sm -fgcse-las -flive-range-shrinkage -fira-loop-pressure") makepkgStr = strings.ReplaceAll(makepkgStr, "#MAKEFLAGS=\"-j2\"", "MAKEFLAGS=\"-j"+strconv.Itoa(conf.Build.Makej)+"\"") makepkgStr = reMarch.ReplaceAllString(makepkgStr, "${1}"+march) makepkgStr = strings.ReplaceAll(makepkgStr, "#PACKAGER=\"John Doe \"", "PACKAGER=\"ALHP "+march+" \"")