[x86] Allow merging multiple instances of an immediate within a basic block for code...
authorSanjay Patel <spatel@rotateright.com>
Tue, 16 Aug 2016 21:35:16 +0000 (21:35 +0000)
committerSanjay Patel <spatel@rotateright.com>
Tue, 16 Aug 2016 21:35:16 +0000 (21:35 +0000)
commit904cd39b0562cec4a53adc02307af64189306e08
tree09be450af230837513486f6acfb3f07f0491d1d5
parent3044390af140b3c7a86d75aaa3b0ca7ee03432bf
[x86] Allow merging multiple instances of an immediate within a basic block for code size savings, for 64-bit constants.

This patch handles 64-bit constants which can be encoded as 32-bit immediates.

It extends the functionality added by https://reviews.llvm.org/D11363 for 32-bit constants to 64-bit constants.

Patch by Sunita Marathe!

Differential Revision: https://reviews.llvm.org/D23391

llvm-svn: 278857
llvm/lib/Target/X86/X86InstrArithmetic.td
llvm/lib/Target/X86/X86InstrInfo.td
llvm/test/CodeGen/X86/immediate_merging64.ll