Avoid MipsAnalyzeImmediate pass if the constant fits in an 32-bit
integer. This allows us to generate the same instructions for the
materialization of the same constants regardless the width of their
type.
Depends on D16221.
Paths
| Differential D16290
[mips] Optimize materialization of i64 constants. AbandonedPublic Authored by vkalintiris on Jan 18 2016, 4:23 AM.
Details
Diff Detail Event Timelinevkalintiris updated this object. dsanders edited edge metadata. dsanders added inline comments.
This revision now requires changes to proceed.Feb 3 2016, 7:49 AM
Revision Contents
Diff 45167 lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsInstrInfo.td
lib/Target/Mips/MipsSEISelDAGToDAG.cpp
test/CodeGen/Mips/atomic.ll
test/CodeGen/Mips/cmov.ll
test/CodeGen/Mips/llvm-ir/ret.ll
test/CodeGen/Mips/load-store-left-right.ll
test/CodeGen/Mips/mips64imm.ll
test/MC/Mips/sext_64_32.ll
|
The bug is probably the use of 'imm' here. I think you want immSExt32.