[mips][ias] Implement .cpreturn directive.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Tue, 22 Sep 2015 10:50:09 +0000 (10:50 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Tue, 22 Sep 2015 10:50:09 +0000 (10:50 +0000)
commit28042167f51ab2d16472c1f0b856392eefd90e2f
tree3314168b14365b9bd70c3154bfe43e5722de6425
parente3cdd3f338faf3322bff7ce8306d16cf8bfea4a7
[mips][ias] Implement .cpreturn directive.

Summary:
Based on a patch by David Chisnall. I've modified the original patch as follows:
* Moved the expansion to the TargetStreamers so that the directive isn't
  expanded when emitting assembly.
* Fixed an operand order bug.
* Changed the move instructions from DADDu to OR to match recent changes to GAS.

Reviewers: vkalintiris

Subscribers: llvm-commits, emaste, seanbruno, theraven

Differential Revision: http://reviews.llvm.org/D13017

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@248258 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/AsmParser/MipsAsmParser.cpp
lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
lib/Target/Mips/MipsTargetStreamer.h
test/MC/Mips/cpsetup.s