summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@mips.com>2013-09-20 21:22:28 +0000
committerAkira Hatanaka <ahatanaka@mips.com>2013-09-20 21:22:28 +0000
commitff1fbda4cd7af9c0d7f1518cff3dee4e2f6bb1fe (patch)
tree530eedefbf4d5fce9a9e2f3edc27d60b6a90210f
parent47249631122d85fc85be4fb56330d9901482c017 (diff)
downloadbcm5719-llvm-ff1fbda4cd7af9c0d7f1518cff3dee4e2f6bb1fe.tar.gz
bcm5719-llvm-ff1fbda4cd7af9c0d7f1518cff3dee4e2f6bb1fe.zip
[mips] MUL should clobber HI0 and LO0.
I cannot think of a test case that reliably triggers this bug. llvm-svn: 191109
-rw-r--r--llvm/lib/Target/Mips/MipsInstrInfo.td1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MipsInstrInfo.td b/llvm/lib/Target/Mips/MipsInstrInfo.td
index 4795969175a..be6d7532a6c 100644
--- a/llvm/lib/Target/Mips/MipsInstrInfo.td
+++ b/llvm/lib/Target/Mips/MipsInstrInfo.td
@@ -878,6 +878,7 @@ def ADDu : MMRel, ArithLogicR<"addu", GPR32Opnd, 1, IIArith, add>,
ADD_FM<0, 0x21>;
def SUBu : MMRel, ArithLogicR<"subu", GPR32Opnd, 0, IIArith, sub>,
ADD_FM<0, 0x23>;
+let Defs = [HI0, LO0] in
def MUL : MMRel, ArithLogicR<"mul", GPR32Opnd, 1, IIImul, mul>,
ADD_FM<0x1c, 2>;
def ADD : MMRel, ArithLogicR<"add", GPR32Opnd>, ADD_FM<0, 0x20>;
OpenPOWER on IntegriCloud