diff options
author | Duncan Sands <baldrick@free.fr> | 2009-01-31 15:50:11 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2009-01-31 15:50:11 +0000 |
commit | 41826036b14c224f6ae76cc3b8a89c4109214c79 (patch) | |
tree | fb885d0b45ecd06d1de9b7d90e5b8fba64066f90 /llvm/lib/ExecutionEngine/JIT/JIT.cpp | |
parent | 76a63ed0992d99dbd85649eb9d8336c6844b570e (diff) | |
download | bcm5719-llvm-41826036b14c224f6ae76cc3b8a89c4109214c79.tar.gz bcm5719-llvm-41826036b14c224f6ae76cc3b8a89c4109214c79.zip |
Fix PR3401: when using large integers, the type
returned by getShiftAmountTy may be too small
to hold shift values (it is an i8 on x86-32).
Before and during type legalization, use a large
but legal type for shift amounts: getPointerTy;
afterwards use getShiftAmountTy, fixing up any
shift amounts with a big type during operation
legalization. Thanks to Dan for writing the
original patch (which I shamelessly pillaged).
llvm-svn: 63482
Diffstat (limited to 'llvm/lib/ExecutionEngine/JIT/JIT.cpp')
0 files changed, 0 insertions, 0 deletions