DAGCombine: fold (or (and X, M), (and X, N)) -> (and X, (or M, N))
authorTim Northover <tnorthover@apple.com>
Wed, 21 Jan 2015 23:17:19 +0000 (23:17 +0000)
committerTim Northover <tnorthover@apple.com>
Wed, 21 Jan 2015 23:17:19 +0000 (23:17 +0000)
commit3007ba0ab357e18d998654898c0d2e2d95207624
treede0a594d54d1b3fb9777823685416008b2e4668f
parent7a08488ca67c591af8318dae63872481d29080fd
DAGCombine: fold (or (and X, M), (and X, N)) -> (and X, (or M, N))

It can help with argument juggling on some targets, and is generally a good
idea.

llvm-svn: 226740
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/AArch64/or-combine.ll [new file with mode: 0644]
llvm/test/CodeGen/R600/extload.ll
llvm/test/CodeGen/X86/vselect.ll