[all-commits] [llvm/llvm-project] 11850a: [WebAssembly] Expand setcc of v2i64

Thomas Lively via All-commits all-commits at lists.llvm.org
Thu Oct 31 14:22:34 PDT 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 11850a6305c5778b180243eb06aefe86762dd4ce
      https://github.com/llvm/llvm-project/commit/11850a6305c5778b180243eb06aefe86762dd4ce
  Author: Thomas Lively <tlively at google.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/test/CodeGen/WebAssembly/simd-comparisons.ll

  Log Message:
  -----------
  [WebAssembly] Expand setcc of v2i64

Summary:
The SIMD spec does not include i64x2 comparisons, so they need to be
expanded. Using setOperationAction to expand them also causes f64x2
comparisons to be expanded, so setCondCodeAction needs to be used
instead. But since there are no legal condition codes, the legalizer
does not know how to expand the comparisons. We therefore manually
unroll the operation, taking care to fill each lane with -1 or 0
rather than 1 or 0 for consistency with the other vector comparisons.

Reviewers: aheejin

Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

Tags: #llvm

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




More information about the All-commits mailing list