summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp2
-rw-r--r--llvm/test/MC/Mips/mips_directives.s2
-rw-r--r--llvm/test/MC/Mips/module-directive-bad.s4
3 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
index 45169b70513..c503083028a 100644
--- a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
+++ b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
@@ -3434,6 +3434,7 @@ bool MipsAsmParser::parseSetMacroDirective() {
return false;
}
AssemblerOptions.back()->setMacro();
+ getTargetStreamer().emitDirectiveSetMacro();
Parser.Lex(); // Consume the EndOfStatement.
return false;
}
@@ -3451,6 +3452,7 @@ bool MipsAsmParser::parseSetNoMacroDirective() {
return false;
}
AssemblerOptions.back()->setNoMacro();
+ getTargetStreamer().emitDirectiveSetNoMacro();
Parser.Lex(); // Consume the EndOfStatement.
return false;
}
diff --git a/llvm/test/MC/Mips/mips_directives.s b/llvm/test/MC/Mips/mips_directives.s
index 1a7d61f3ad4..2ea37822f76 100644
--- a/llvm/test/MC/Mips/mips_directives.s
+++ b/llvm/test/MC/Mips/mips_directives.s
@@ -17,6 +17,7 @@ $BB0_2:
# CHECK-NOT: nop
# CHECK: jal 1328 # encoding: [0x0c,0x00,0x01,0x4c]
# CHECK-NOT: nop
+# CHECK: .set nomacro
.set noreorder
b 1332
@@ -33,6 +34,7 @@ $JTI0_0:
# CHECK: .4byte 2013265916
.set at=$12
.set macro
+# CHECK: .set macro
# CHECK: .set reorder
# CHECK: b 1332 # encoding: [0x10,0x00,0x01,0x4d]
# CHECK: nop # encoding: [0x00,0x00,0x00,0x00]
diff --git a/llvm/test/MC/Mips/module-directive-bad.s b/llvm/test/MC/Mips/module-directive-bad.s
index 963d651afe5..74dc6d22793 100644
--- a/llvm/test/MC/Mips/module-directive-bad.s
+++ b/llvm/test/MC/Mips/module-directive-bad.s
@@ -203,7 +203,7 @@
.set macro
.module fp=64
-# FIXME: emitDirectiveSetMacro should call forbidModuleDirective().
+# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
.llvm_internal_mips_reallow_module_directive
.module fp=32
@@ -211,7 +211,7 @@
.set nomacro
.module fp=64
-# FIXME: emitDirectiveSetNoMacro should call forbidModuleDirective().
+# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
.llvm_internal_mips_reallow_module_directive
.module fp=32
OpenPOWER on IntegriCloud