[llvm] 1ae1dd1 - [MC][PowerPC] Replace MCContext::reportFatalError calls with reportError

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 15 00:01:41 PST 2022


Author: Fangrui Song
Date: 2022-01-15T00:01:36-08:00
New Revision: 1ae1dd16cf2de7f85e2eb68f975d63fbd9c20098

URL: https://github.com/llvm/llvm-project/commit/1ae1dd16cf2de7f85e2eb68f975d63fbd9c20098
DIFF: https://github.com/llvm/llvm-project/commit/1ae1dd16cf2de7f85e2eb68f975d63fbd9c20098.diff

LOG: [MC][PowerPC] Replace MCContext::reportFatalError calls with reportError

User errors should use reportError. reportError allows us to continue parsing
the file and collect more diagnostics.

While here, make the diagnostic follow convention, merge tests, and test
line/column numbers.

Added: 
    

Modified: 
    llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
    llvm/test/MC/PowerPC/ppc64-localentry-error1.s

Removed: 
    llvm/test/MC/PowerPC/ppc64-localentry-error2.s


################################################################################
diff  --git a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
index d6e02d0d08628..a651362f703b2 100644
--- a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
+++ b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
@@ -271,14 +271,14 @@ class PPCTargetELFStreamer : public PPCTargetStreamer {
     MCAssembler &MCA = getStreamer().getAssembler();
     int64_t Offset;
     if (!LocalOffset->evaluateAsAbsolute(Offset, MCA))
-      MCA.getContext().reportFatalError(
-          LocalOffset->getLoc(), ".localentry expression must be absolute.");
+      MCA.getContext().reportError(LocalOffset->getLoc(),
+                                   ".localentry expression must be absolute");
 
     switch (Offset) {
     default:
-      MCA.getContext().reportFatalError(
-          LocalOffset->getLoc(),
-          ".localentry expression is not a valid power of 2.");
+      MCA.getContext().reportError(
+          LocalOffset->getLoc(), ".localentry expression must be a power of 2");
+      return 0;
     case 0:
       return 0;
     case 1:

diff  --git a/llvm/test/MC/PowerPC/ppc64-localentry-error1.s b/llvm/test/MC/PowerPC/ppc64-localentry-error1.s
index 3c54606bd15a7..9568af3fec164 100644
--- a/llvm/test/MC/PowerPC/ppc64-localentry-error1.s
+++ b/llvm/test/MC/PowerPC/ppc64-localentry-error1.s
@@ -4,8 +4,12 @@
 # RUN: not llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj < %s 2> %t
 # RUN: FileCheck < %t %s
 
+	.globl remote_sym
 sym:
+
+# CHECK: :0: error: .localentry expression must be a power of 2
 	.localentry sym, 123
 
-# CHECK: error: .localentry expression is not a valid power of 2.
+# CHECK: :[[#@LINE+1]]:19: error: .localentry expression must be absolute
+	.localentry sym, remote_sym
 

diff  --git a/llvm/test/MC/PowerPC/ppc64-localentry-error2.s b/llvm/test/MC/PowerPC/ppc64-localentry-error2.s
deleted file mode 100644
index 8603dfb37c633..0000000000000
--- a/llvm/test/MC/PowerPC/ppc64-localentry-error2.s
+++ /dev/null
@@ -1,12 +0,0 @@
-
-# RUN: not llvm-mc -triple powerpc64-unknown-unknown -filetype=obj < %s 2> %t
-# RUN: FileCheck < %t %s
-# RUN: not llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj < %s 2> %t
-# RUN: FileCheck < %t %s
-
-	.globl remote_sym
-sym:
-	.localentry sym, remote_sym
-
-# CHECK: error: .localentry expression must be absolute.
-


        


More information about the llvm-commits mailing list