[all-commits] [llvm/llvm-project] 51a276: [X86] Teach combineTruncatedArithmetic to push tru...
topperc via All-commits
all-commits at lists.llvm.org
Mon May 25 12:19:37 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 51a276c759c90c844bbabf5066195aaf42fb0c6e
https://github.com/llvm/llvm-project/commit/51a276c759c90c844bbabf5066195aaf42fb0c6e
Author: Craig Topper <craig.topper at gmail.com>
Date: 2020-05-25 (Mon, 25 May 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/psubus.ll
Log Message:
-----------
[X86] Teach combineTruncatedArithmetic to push truncate through subtracts where only one of the inputs is free to truncate.
Fix combineSubToSubus to handle the new DAG to avoid a regression.
There are still regressions in test14/test15/test16. Where it
looks like were trying to set up cases we could match to
umin+trunc+subus but the handling was never finished. The
regression here isn't unique to sub. Its a lost opportunity for
taking an AND with two truncated inputs and producing a larger
AND with a single truncate. The same thing could happen with
any other node we handle in combineTruncatedArithmetic since we
are moving the truncate up the DAG.
Differential Revision: https://reviews.llvm.org/D80483
More information about the All-commits
mailing list