[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)
commit01381b0e9588ce8ace03b78d5475f77fdbc1a067
tree643d12b39b57019851708e5979a1d0cd10964686
parentf03400827bd486554eebcb9e4049fb64111a8dc4
[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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240634 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/SystemZ/SystemZISelDAGToDAG.cpp