[PATCH] [mips] Enable arithmetic and binary operations for the i128 data type.
Daniel Sanders
daniel.sanders at imgtec.com
Sat Jan 24 05:49:58 PST 2015
LGTM with the comment. As with the other patch, please try to annotate the redundant instructions with FIXME's but there's quite a few so I'm not going to require that.
I was reminded last night that I hadn't committed the add/sub portion I did a few weeks back. I committed it today as r227003. Feel free to revert it if the conflict is awkward since your patch makes the same change and fixes all the other operations too.
================
Comment at: lib/Target/Mips/MipsSEISelDAGToDAG.cpp:251-256
@@ +250,8 @@
+
+ if (Subtarget->isGP64bit()) {
+ Carry = CurDAG->getMachineNode(Mips::SUBREG_TO_REG, DL, VT,
+ CurDAG->getTargetConstant(0, VT),
+ SDValue(Carry, 0),
+ CurDAG->getTargetConstant(Mips::sub_32, VT));
+ }
+
----------------
Please add a comment about this. I believe you are working around the fact that we currently use i32 for conditions on MIPS64 but we should probably be using i64.
http://reviews.llvm.org/D7143
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list