Since LI/LIS sign extend the constant passed into the instruction we should
authorEric Christopher <echristo@gmail.com>
Fri, 29 Jan 2016 07:20:01 +0000 (07:20 +0000)
committerEric Christopher <echristo@gmail.com>
Fri, 29 Jan 2016 07:20:01 +0000 (07:20 +0000)
commit5a2429e239483daada19b09581dc095bfff8dec3
tree50a6acaa275b9fad09cdc048666b6cdbf90bf86a
parent80ba58a15c28614c472b5ab561b5cf77af3173b2
Since LI/LIS sign extend the constant passed into the instruction we should
check that the sign extended constant fits into 16-bits if we want a
zero extended value, otherwise go ahead and put it together piecemeal.

Fixes PR26356.

llvm-svn: 259177
llvm/lib/Target/PowerPC/PPCFastISel.cpp
llvm/test/CodeGen/PowerPC/fast-isel-ret.ll