[all-commits] [llvm/llvm-project] 7f1cf7: [X86] Fix MSVC "truncation from 'int' to 'bool'" w...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Mon Jan 13 03:09:00 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 7f1cf7d5f658b15abb8bd6840fc01e6d44487a23
      https://github.com/llvm/llvm-project/commit/7f1cf7d5f658b15abb8bd6840fc01e6d44487a23
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-01-13 (Mon, 13 Jan 2020)

  Changed paths:
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp

  Log Message:
  -----------
  [X86] Fix MSVC "truncation from 'int' to 'bool'" warning. NFCI.


  Commit: 8f49204f26ea8856b870d4c2344b98f4b706bea0
      https://github.com/llvm/llvm-project/commit/8f49204f26ea8856b870d4c2344b98f4b706bea0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-01-13 (Mon, 13 Jan 2020)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/AArch64/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/shl.ll
    M llvm/test/CodeGen/AMDGPU/shl.v2i16.ll
    M llvm/test/CodeGen/ARM/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/ARM/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/BPF/shifts.ll
    M llvm/test/CodeGen/Mips/llvm-ir/lshr.ll
    M llvm/test/CodeGen/X86/avx2-shift.ll
    M llvm/test/CodeGen/X86/avx2-vector-shifts.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/vector-fshl-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
    M llvm/test/CodeGen/X86/vector-rotate-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-sub128.ll

  Log Message:
  -----------
  [SelectionDAG] ComputeKnownBits - minimum leading/trailing zero bits in LSHR/SHL (PR44526)

As detailed in https://blog.regehr.org/archives/1709 we don't make use of the known leading/trailing zeros for shifted values in cases where we don't know the shift amount value.

This patch adds support to SelectionDAG::ComputeKnownBits to use KnownBits::countMinTrailingZeros and countMinLeadingZeros to set the minimum guaranteed leading/trailing known zero bits.

Differential Revision: https://reviews.llvm.org/D72573


Compare: https://github.com/llvm/llvm-project/compare/bf7225888a99...8f49204f26ea


More information about the All-commits mailing list