diff options
author | David Majnemer <david.majnemer@gmail.com> | 2014-08-27 05:16:04 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2014-08-27 05:16:04 +0000 |
commit | 54e97d5dc02867201f193f61be6edaaca8398d2c (patch) | |
tree | 2e50b3df1bce536a2e3dd271d8d0f855bf67228c /llvm/lib/IR/MDBuilder.cpp | |
parent | ce46adb4f860e4075ecd1b6ee9b26c432e580194 (diff) | |
download | bcm5719-llvm-54e97d5dc02867201f193f61be6edaaca8398d2c.tar.gz bcm5719-llvm-54e97d5dc02867201f193f61be6edaaca8398d2c.zip |
InstCombine: Optimize GEP's involving ptrtoint better
We supported transforming:
(gep i8* X, -(ptrtoint Y))
to:
(inttoptr (sub (ptrtoint X), (ptrtoint Y)))
However, this only fired if 'X' had type i8*. Generalize this to
support various types of different sizes. This results in much better
CodeGen, especially for pointers to packed structs.
llvm-svn: 216523
Diffstat (limited to 'llvm/lib/IR/MDBuilder.cpp')
0 files changed, 0 insertions, 0 deletions