[llvm] [clang] [clang-tools-extra] [ISel] Add pattern matching for depositing subreg value (PR #75978)
Shengchen Kan via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 19 17:29:28 PST 2023
================
@@ -1515,6 +1515,15 @@ def : Pat<(X86add_flag_nocf GR32:$src1, 128),
def : Pat<(X86add_flag_nocf GR64:$src1, 128),
(SUB64ri32 GR64:$src1, -128)>;
+// Depositing value to 8/16 bit subreg:
+def : Pat<(or (and GR64:$dst, -256),
+ (i64 (zextloadi8 addr:$src))),
+ (INSERT_SUBREG (i64 (COPY $dst)), (MOV8rm i8mem:$src), sub_8bit)>;
----------------
KanRobert wrote:
align with `(or`
https://github.com/llvm/llvm-project/pull/75978
More information about the cfe-commits
mailing list