[llvm] a4c7c66 - [GlobalISel] Document minimum legality requirements for G_IMPLICIT_DEF. (#117609)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 9 22:10:17 PST 2024
Author: Amara Emerson
Date: 2024-12-09T22:10:13-08:00
New Revision: a4c7c66098c512a4f616b2072814172114e5a422
URL: https://github.com/llvm/llvm-project/commit/a4c7c66098c512a4f616b2072814172114e5a422
DIFF: https://github.com/llvm/llvm-project/commit/a4c7c66098c512a4f616b2072814172114e5a422.diff
LOG: [GlobalISel] Document minimum legality requirements for G_IMPLICIT_DEF. (#117609)
The reason for this change is to clarify an existing technical
restriction of LLVM: there needs to be a way to implicitly define a type
if there is any way to legally define that type by another means.
Added:
Modified:
llvm/docs/GlobalISel/Legalizer.rst
Removed:
################################################################################
diff --git a/llvm/docs/GlobalISel/Legalizer.rst b/llvm/docs/GlobalISel/Legalizer.rst
index 1ff7b304b3a013..0e256ac7781cc3 100644
--- a/llvm/docs/GlobalISel/Legalizer.rst
+++ b/llvm/docs/GlobalISel/Legalizer.rst
@@ -338,8 +338,8 @@ G_BUILD_VECTOR_TRUNC, G_CONCAT_VECTORS, G_UNMERGE_VALUES, G_PTRTOINT, and
G_INTTOPTR have already been noted above. In addition to those, the following
operations have requirements:
-* At least one G_IMPLICIT_DEF must be legal. This is usually trivial as it
- requires no code to be selected.
+* For every type that can be produced by any instruction, G_IMPLICIT_DEF must be
+ legal.
* G_PHI must be legal for all types in the producer and consumer typesets. This
is usually trivial as it requires no code to be selected.
* At least one G_FRAME_INDEX must be legal
More information about the llvm-commits
mailing list