[PATCH] D101944: [X86][Codegen] Shift amount mod: sh? i64 x, (32-y) --> sh? i64 x, -(y+32)

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 11 07:13:49 PDT 2021


spatel added a comment.

This would regress the case if the `32-x` has another use (add test)?

  define i64 @sub_cse(i64 %val, i64 %shamt, i64*%dst) nounwind {
    %negshamt = sub i64 32, %shamt
    store i64 %negshamt, i64* %dst
    %shifted = shl i64 %val, %negshamt
    ret i64 %shifted
  }


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D101944/new/

https://reviews.llvm.org/D101944



More information about the llvm-commits mailing list