[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