[SystemZ] Only attempt RxSBG optimization for integer types
authorUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 25 Jun 2015 11:52:36 +0000 (11:52 +0000)
committerUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 25 Jun 2015 11:52:36 +0000 (11:52 +0000)
commit77884bcb5d8b9e4ada1399e4603d03d03a160727
tree3baeacf458298225d3276702188686bdf75b1ecd
parentb89a69dac67d81b36a5444eb0df63b1be691eeb0
[SystemZ] Only attempt RxSBG optimization for integer types

As pointed out by Justin Bogner (see r240520), SystemZDAGToDAGISel::Select
currently attempts to convert boolean operations into RxSBG even on some
non-integer types (in particular, vector types).  This would not work in
any case, and it happened to trigger undefined behaviour in allOnes.

This patch verifies that we have a (<= 64-bit) integer type before
attempting to perform this optimization.

llvm-svn: 240634
llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp