diff options
author | Venkatraman Govindaraju <venkatra@cs.wisc.edu> | 2014-01-08 06:14:52 +0000 |
---|---|---|
committer | Venkatraman Govindaraju <venkatra@cs.wisc.edu> | 2014-01-08 06:14:52 +0000 |
commit | b3b7c389831d063c2f3058ac272517b2d68962b9 (patch) | |
tree | 4f4866810894dfe819777c5fbdd9363fcf3f15b9 /llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp | |
parent | 173c69f2267594d2dbba0bde2a81e55c8e494987 (diff) | |
download | bcm5719-llvm-b3b7c389831d063c2f3058ac272517b2d68962b9.tar.gz bcm5719-llvm-b3b7c389831d063c2f3058ac272517b2d68962b9.zip |
[Sparc] Add support for parsing branch instructions and conditional moves.
llvm-svn: 198738
Diffstat (limited to 'llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp')
-rw-r--r-- | llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp b/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp index 77404f83146..5e39bd6cb1f 100644 --- a/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp +++ b/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp @@ -82,6 +82,17 @@ void SparcInstPrinter::printCCOperand(const MCInst *MI, int opNum, raw_ostream &O) { int CC = (int)MI->getOperand(opNum).getImm(); + switch (MI->getOpcode()) { + default: break; + case SP::FBCOND: + case SP::MOVFCCrr: + case SP::MOVFCCri: + case SP::FMOVS_FCC: + case SP::FMOVD_FCC: + case SP::FMOVQ_FCC: // Make sure CC is a fp conditional flag. + CC = (CC < 16) ? (CC + 16) : CC; + break; + } O << SPARCCondCodeToString((SPCC::CondCodes)CC); } |