diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-03-23 22:44:55 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-03-23 22:44:55 +0000 |
commit | 481f4146cd70489a67e2f5aaa06982816ba3e4ba (patch) | |
tree | 235871a8f3d3413ef5770c853225344b1e6bc35b /lldb/scripts/Python/interface | |
parent | 735e87ea758556b185c184933c4fe1024fe323a8 (diff) | |
download | bcm5719-llvm-481f4146cd70489a67e2f5aaa06982816ba3e4ba.tar.gz bcm5719-llvm-481f4146cd70489a67e2f5aaa06982816ba3e4ba.zip |
[SelectionDAG] Fixed issue with uitofp vector constant folding being treated as sitofp
While the uitofp scalar constant folding treats an integer as an unsigned value (from lang ref):
%X = sitofp i8 -1 to double ; yields double:-1.0
%Y = uitofp i8 -1 to double ; yields double:255.0
The vector constant folding was always using sitofp:
%X = sitofp <2 x i8> <i8 -1, i8 -1> to <2 x double> ; yields <double -1.0, double -1.0>
%Y = uitofp <2 x i8> <i8 -1, i8 -1> to <2 x double> ; yields <double -1.0, double -1.0>
This patch fixes this so that the correct opcode is used for sitofp and uitofp.
%X = sitofp <2 x i8> <i8 -1, i8 -1> to <2 x double> ; yields <double -1.0, double -1.0>
%Y = uitofp <2 x i8> <i8 -1, i8 -1> to <2 x double> ; yields <double 255.0, double 255.0>
Differential Revision: http://reviews.llvm.org/D8560
llvm-svn: 233033
Diffstat (limited to 'lldb/scripts/Python/interface')
0 files changed, 0 insertions, 0 deletions