diff options
author | Nemanja Ivanovic <nemanja.i.ibm@gmail.com> | 2017-12-11 14:35:48 +0000 |
---|---|---|
committer | Nemanja Ivanovic <nemanja.i.ibm@gmail.com> | 2017-12-11 14:35:48 +0000 |
commit | 50d37a112974e32f19049fd07964c498bf9a29c3 (patch) | |
tree | edb740957310ac9cea651ab3478d339eb5370eda /clang/lib | |
parent | c58a80ff4786fb3592f9d66f10075f56d67360c4 (diff) | |
download | llvm-50d37a112974e32f19049fd07964c498bf9a29c3.zip llvm-50d37a112974e32f19049fd07964c498bf9a29c3.tar.gz llvm-50d37a112974e32f19049fd07964c498bf9a29c3.tar.bz2 |
[PowerPC] Sign-extend negative constant stores
Second part of https://reviews.llvm.org/D40348.
Revision r318436 has extended all constants feeding a store to 64 bits
to allow for CSE on the SDAG. However, negative constants were zero extended
which made the constant being loaded appear to be a positive value larger than
16 bits. This resulted in long sequences to materialize such constants
rather than simply a "load immediate". This patch just sign-extends those
updated constants so that they remain 16-bit signed immediates if they started
out that way.
llvm-svn: 320368
Diffstat (limited to 'clang/lib')
0 files changed, 0 insertions, 0 deletions