summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/cxx0x-initializer-array.cpp
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2015-03-06 19:49:10 +0000
committerMatthias Braun <matze@braunis.de>2015-03-06 19:49:10 +0000
commit898d11e86468564d796ec87457ca060320ff46a1 (patch)
tree98af0ae084b162a06b8f8e105bc7b3cfc45655d1 /clang/test/CodeGenCXX/cxx0x-initializer-array.cpp
parent3ecb557739e0bc24c47a83726968be6a7af0af34 (diff)
downloadbcm5719-llvm-898d11e86468564d796ec87457ca060320ff46a1.tar.gz
bcm5719-llvm-898d11e86468564d796ec87457ca060320ff46a1.zip
DAGCombiner: Canonicalize select(and/or,x,y) depending on target.
This is based on the following equivalences: select(C0 & C1, X, Y) <=> select(C0, select(C1, X, Y), Y) select(C0 | C1, X, Y) <=> select(C0, X, select(C1, X, Y)) Many target cannot perform and/or on the CPU flags and therefore the right side should be choosen to avoid materializign the i1 flags in an integer register. If the target can perform this operation efficiently we normalize to the left form. Differential Revision: http://reviews.llvm.org/D7622 llvm-svn: 231507
Diffstat (limited to 'clang/test/CodeGenCXX/cxx0x-initializer-array.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud