History log of /llvm-project/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp (Results 26 – 29 of 29)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 6578356a 26-Apr-2024 Jay Foad <jay.foad@amd.com>

[TableGen] Ignore inaccessible memory when checking pattern flags (#90061)

In the AMDGPU backend we have some cases where we'd like to mark an
intrinsic as IntrInaccessibleMemOnly to model dependen

[TableGen] Ignore inaccessible memory when checking pattern flags (#90061)

In the AMDGPU backend we have some cases where we'd like to mark an
intrinsic as IntrInaccessibleMemOnly to model dependencies, but the
corresponding MachineInstrs use uses/defs of a special physical register
to express the same thing. In this case TableGen would complain:

Pattern doesn't match mayLoad/mayStore = 0

but the error is not useful.

show more ...


# eae7554d 25-Apr-2024 jofrn <jofernau@amd.com>

[TableGen] ShouldIgnore Pattern bit to disable DAG pattern imports during GISel (#88382)

Added GISelShouldIgnore property to class Pattern in TargetSelectionDAG.td; it's similar to FastISelShouldIgn

[TableGen] ShouldIgnore Pattern bit to disable DAG pattern imports during GISel (#88382)

Added GISelShouldIgnore property to class Pattern in TargetSelectionDAG.td; it's similar to FastISelShouldIgnore. This bit can be put on a record to avoid its pattern import within GlobalISelEmitter. This allows one to avoid the record's GISel .td implementation, .inc generation, and any skipped pattern warnings from -warn-on-skipped-patterns.

show more ...


Revision tags: llvmorg-18.1.4
# cfadf3f6 05-Apr-2024 Shilei Tian <i@tianshilei.me>

[TableGen] Fix a potential crash when operand doesn't appear in the instruction pattern (#87663)

We have a check of whether an operand is in the instruction pattern, and
emit an
error if it is not

[TableGen] Fix a potential crash when operand doesn't appear in the instruction pattern (#87663)

We have a check of whether an operand is in the instruction pattern, and
emit an
error if it is not, but we simply continue execution, including directly
dereferencing a point-like object `InVal`, which will be just created
when
accessing the map. It contains a `nullptr` so dereferencing it causes
crash.
This is a very trivial fix.

show more ...


Revision tags: llvmorg-18.1.3
# fa3d789d 25-Mar-2024 Pierre van Houtryve <pierre.vanhoutryve@amd.com>

[RFC][TableGen] Restructure TableGen Source (#80847)

Refactor of the llvm-tblgen source into:
- a "Basic" library, which contains the bare minimum utilities to build
`llvm-min-tablegen`
- a "Comm

[RFC][TableGen] Restructure TableGen Source (#80847)

Refactor of the llvm-tblgen source into:
- a "Basic" library, which contains the bare minimum utilities to build
`llvm-min-tablegen`
- a "Common" library which contains all of the helpers for TableGen
backends. Such helpers can be shared by more than one backend, and even
unit tested (e.g. CodeExpander is, maybe we can add more over time)

Fixes #80647

show more ...


12