From e301d76124596d7fdb4bfcc849eafe5d2b58a5b9 Mon Sep 17 00:00:00 2001 From: Joerg Sonnenberger Date: Thu, 17 Sep 2015 20:54:26 +0000 Subject: [PATCH] [SPARC] Add mulscc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247940 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Sparc/SparcInstrInfo.td | 4 ++++ test/MC/Sparc/sparc-alu-instructions.s | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/lib/Target/Sparc/SparcInstrInfo.td b/lib/Target/Sparc/SparcInstrInfo.td index 0beef34ba85..d7649dafd4d 100644 --- a/lib/Target/Sparc/SparcInstrInfo.td +++ b/lib/Target/Sparc/SparcInstrInfo.td @@ -628,6 +628,10 @@ let Defs = [Y, ICC] in { defm SMULCC : F3_12np<"smulcc", 0b011011>; } +let Defs = [Y, ICC], Uses = [Y, ICC] in { + defm MULSCC : F3_12np<"mulscc", 0b100100>; +} + // Section B.19 - Divide Instructions, p. 115 let Uses = [Y], Defs = [Y] in { defm UDIV : F3_12np<"udiv", 0b001110>; diff --git a/test/MC/Sparc/sparc-alu-instructions.s b/test/MC/Sparc/sparc-alu-instructions.s index 98caf1d6d67..b08ab43f13e 100644 --- a/test/MC/Sparc/sparc-alu-instructions.s +++ b/test/MC/Sparc/sparc-alu-instructions.s @@ -91,6 +91,12 @@ ! CHECK: smulcc %g2, %g1, %g3 ! encoding: [0x86,0xd8,0x80,0x01] smulcc %g2, %g1, %g3 + ! CHECK: mulscc %g2, %g1, %g3 ! encoding: [0x87,0x20,0x80,0x01] + mulscc %g2, %g1, %g3 + + ! CHECK: mulscc %g2, 254, %g3 ! encoding: [0x87,0x20,0xa0,0xfe] + mulscc %g2, 254, %g3 + ! CHECK: udivcc %g2, %g1, %g3 ! encoding: [0x86,0xf0,0x80,0x01] udivcc %g2, %g1, %g3 -- 2.34.1