[PATCH] D48374: [mips] Sign extend i32 return values on MIPS64
Stefan Maksimovic via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 13 03:57:44 PDT 2018
smaksimovic updated this revision to Diff 155342.
smaksimovic edited the summary of this revision.
smaksimovic added a comment.
This revision is now accepted and ready to land.
Added target hooks to replace the sign_extend with the sign_extend_inreg node which will get pattern matched with the SLL64_64 thus providing the needed sign extension.
The second target hook is introduced to keep the sign_extend_inreg node from being combined away.
https://reviews.llvm.org/D48374
Files:
include/llvm/CodeGen/TargetLowering.h
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/Mips64r6InstrInfo.td
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsISelLowering.h
test/CodeGen/Mips/delay-slot-kill.ll
test/CodeGen/Mips/llvm-ir/not.ll
test/CodeGen/Mips/llvm-ir/or.ll
test/CodeGen/Mips/llvm-ir/select-int.ll
test/CodeGen/Mips/llvm-ir/xor.ll
test/CodeGen/Mips/shrink-wrapping.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D48374.155342.patch
Type: text/x-patch
Size: 15791 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180713/f8a3ee87/attachment.bin>
More information about the llvm-commits
mailing list