[PATCH] D146121: [DAG] Move lshr narrowing from visitANDLike to SimplifyDemandedBits (WIP)
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 15 03:13:47 PDT 2023
RKSimon added inline comments.
================
Comment at: llvm/test/CodeGen/X86/bswap.ll:171
+; CHECK64-NEXT: shrl $8, %ecx
; CHECK64-NEXT: shlq $8, %rax
; CHECK64-NEXT: orq %rcx, %rax
----------------
Looks like an equivalent patch for shl narrowing would be useful
================
Comment at: llvm/test/CodeGen/X86/bswap.ll:232
+; CHECK64-NEXT: shlq $8, %rax
+; CHECK64-NEXT: orq %rcx, %rax
; CHECK64-NEXT: retq
----------------
Not sure if shl narrowing would solve this or we need better zext/trunc handling in the bswap matcher
================
Comment at: llvm/test/CodeGen/X86/h-register-addressing-64.ll:67
+; CHECK-NEXT: andl $2040, %esi # imm = 0x7F8
+; CHECK-NEXT: movzbl (%rdi,%rsi), %eax
; CHECK-NEXT: retq
----------------
Regression (WIP)
================
Comment at: llvm/test/CodeGen/X86/h-register-addressing-64.ll:81
+; CHECK-NEXT: andl $1020, %esi # imm = 0x3FC
+; CHECK-NEXT: movzbl (%rdi,%rsi), %eax
; CHECK-NEXT: retq
----------------
Regression (WIP)
================
Comment at: llvm/test/CodeGen/X86/h-register-addressing-64.ll:95
+; CHECK-NEXT: andl $510, %esi # imm = 0x1FE
+; CHECK-NEXT: movzbl (%rdi,%rsi), %eax
; CHECK-NEXT: retq
----------------
Regression (WIP)
================
Comment at: llvm/test/CodeGen/X86/illegal-bitfield-loadstore.ll:119
+; X64-NEXT: movzbl 6(%rdi), %ecx
+; X64-NEXT: movb %cl, 6(%rdi)
; X64-NEXT: movw %ax, 4(%rdi)
----------------
Regression (WIP) - dead store folds might fail on load-ext / store-trunc mixtures?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D146121/new/
https://reviews.llvm.org/D146121
More information about the llvm-commits
mailing list