[all-commits] [llvm/llvm-project] 3a5023: [GlobalISel] Replace `GIM_CheckFeatures` with `GIM...
Pierre van Houtryve via All-commits
all-commits at lists.llvm.org
Thu May 28 01:52:58 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 3a50239454f81b6f6647021737bbf7797a06e00c
https://github.com/llvm/llvm-project/commit/3a50239454f81b6f6647021737bbf7797a06e00c
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2026-05-28 (Thu, 28 May 2026)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/TableGen/GlobalISelEmitter/HwModes.td
M llvm/test/TableGen/RegClassByHwMode.td
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
Log Message:
-----------
[GlobalISel] Replace `GIM_CheckFeatures` with `GIM_Try_CheckFeatures` (#198461)
This has two benefits. First, it slightly reduces the size of the match
table.
Secondly, if the target feature is not present, we can directly go to
the fail
case, instead of having to do another loop of the interpreter, speeding
up
rejection of rules that do not have the required target feature.
We could do the same with CheckSimplePredicate but it's less used (only
in the combiners I think)
so it is less of a priority.
```
FILE OLD NEW DIFF% SAME?
---- ------- ------- ----- -----
AArch64GenGlobalISel.inc 192681 185938 -3,5% no
AArch64GenPostLegalizeGICombiner.inc 4457 4457 0,0% yes
AArch64GenPreLegalizeGICombiner.inc 9010 9009 -0,0% no
AMDGPUGenGlobalISel.inc 596402 568486 -4,7% no
AMDGPUGenPostLegalizeGICombiner.inc 9240 9238 -0,0% no
AMDGPUGenPreLegalizeGICombiner.inc 8987 8987 0,0% yes
AMDGPUGenRegBankGICombiner.inc 1981 1980 -0,1% no
```
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list