[all-commits] [llvm/llvm-project] ede829: [SystemZ][FPEnv] Enable strict vector FP extends/t...

Ulrich Weigand via All-commits all-commits at lists.llvm.org
Fri Dec 20 06:37:14 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ede8293d7d9d4623be5a911cc076c1dfd7810b8c
      https://github.com/llvm/llvm-project/commit/ede8293d7d9d4623be5a911cc076c1dfd7810b8c
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    M llvm/lib/Target/SystemZ/SystemZOperators.td
    A llvm/test/CodeGen/SystemZ/vec-strict-conv-02.ll
    M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll

  Log Message:
  -----------
  [SystemZ][FPEnv] Enable strict vector FP extends/truncations

The back-end currently has special DAGCombine code to detect
cases where two floating-point extend or truncate operations
can be combined into a single vector operation.

This patch extends that support to also handle strict FP operations.

Note that currently only the case where both operations have the
same input chain are supported.  This already suffices to cover
the common case where the operations result from scalarizing a
non-legal vector type.  More general cases can be supported in
the future.




More information about the All-commits mailing list