[all-commits] [llvm/llvm-project] 0ee1db: [X86] Try to avoid casts around logical vector ops...

Florian Hahn via All-commits all-commits at lists.llvm.org
Sun Jan 19 17:41:13 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 0ee1db2d1d7aab9e2736c664ebd27fa23919964e
      https://github.com/llvm/llvm-project/commit/0ee1db2d1d7aab9e2736c664ebd27fa23919964e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2020-01-19 (Sun, 19 Jan 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/v8i1-masks.ll

  Log Message:
  -----------
  [X86] Try to avoid casts around logical vector ops recursively.

Currently PromoteMaskArithemtic only looks at a single operation to
skip casts. This means we miss cases where we combine multiple masks.

This patch updates PromoteMaskArithemtic to try to recursively promote
AND/XOR/AND nodes that terminate in truncates of the right size or
constant vectors.

Reviewers: craig.topper, RKSimon, spatel

Reviewed By: RKSimon

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




More information about the All-commits mailing list