diff options
author | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2013-07-08 14:22:45 +0000 |
---|---|---|
committer | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2013-07-08 14:22:45 +0000 |
commit | 2db29ef4677b20b250cd75ab889281aed2f12705 (patch) | |
tree | 26725220604fcfc5217215a7935d051cbab08fbe /lldb/scripts/Python | |
parent | 7e3d9698fd425200f19410d4302eca5b4e821b9c (diff) | |
download | llvm-2db29ef4677b20b250cd75ab889281aed2f12705.zip llvm-2db29ef4677b20b250cd75ab889281aed2f12705.tar.gz llvm-2db29ef4677b20b250cd75ab889281aed2f12705.tar.bz2 |
[PowerPC] Fix PR16556 (handle undef ppcf128 in LowerFP_TO_INT).
PPCTargetLowering::LowerFP_TO_INT() expects its source operand to be
either an f32 or f64, but this is not checked. A long double
(ppcf128) operand will normally be custom-lowered to a conversion to
f64 in this context. However, this isn't the case for an UNDEF node.
This patch recognizes a ppcf128 as a legal source operand for
FP_TO_INT only if it's an undef, in which case it creates an undef of
the target type.
At some point we might want to do a wholesale custom lowering of
ISD::UNDEF when the type is ppcf128, but it's not really clear that's
a great idea, and probably more work than it's worth for a situation
that only arises in the case of a programming error. At this point I
think simple is best.
The test case comes from PR16556, and is a crash-test only.
llvm-svn: 185821
Diffstat (limited to 'lldb/scripts/Python')
0 files changed, 0 insertions, 0 deletions