[mips] Improve support for the .set at/noat assembler directives.
authorToma Tabacu <toma.tabacu@imgtec.com>
Fri, 13 Feb 2015 10:30:57 +0000 (10:30 +0000)
committerToma Tabacu <toma.tabacu@imgtec.com>
Fri, 13 Feb 2015 10:30:57 +0000 (10:30 +0000)
commit94b64060afe95fa064c875d010ec77731c117cb9
treeb9a14193c4d5dd79fb598782fbbcb27f3e5cf194
parent7ea33e53c78e6fb9ca96ece5a884d6e86e2f0e4f
[mips] Improve support for the .set at/noat assembler directives.

Summary:
Made the following changes:
  Added calls to emitDirectiveSetNoAt() and emitDirectiveSetAt().
  Added special emit function for .set at=$reg, emitDirectiveSetAtWithArg(unsigned RegNo).
  Improved parsing error checks for .set at.
  Refactored parser code for .set at.
  Improved testing of both directives.
  Improved code readability and comments.

Reviewers: dsanders

Reviewed By: dsanders

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229097 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/mips-noat.s
test/MC/Mips/set-at-directive-explicit-at.s
test/MC/Mips/set-at-directive.s
test/MC/Mips/set-at-noat-bad-syntax.s [new file with mode: 0644]