]> granicus.if.org Git - clang/commitdiff
MIPS: Pass -EB/-EL argument to the assembler according to selected endian when compil...
authorSimon Atanasyan <satanasyan@mips.com>
Fri, 6 Apr 2012 19:15:24 +0000 (19:15 +0000)
committerSimon Atanasyan <satanasyan@mips.com>
Fri, 6 Apr 2012 19:15:24 +0000 (19:15 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154195 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/Tools.cpp
test/Driver/mips-as.c [new file with mode: 0644]

index 4c4ab7bc987f66806bb077a8953c98ac05b5f969..8c4378c666eb18ba700cfd58f449f4191fa42ba5 100644 (file)
@@ -5032,6 +5032,12 @@ void linuxtools::Assemble::ConstructJob(Compilation &C, const JobAction &JA,
       CmdArgs.push_back("-march");
       CmdArgs.push_back(CPUName);
     }
+
+    if (getToolChain().getArch() == llvm::Triple::mips ||
+        getToolChain().getArch() == llvm::Triple::mips64)
+      CmdArgs.push_back("-EB");
+    else
+      CmdArgs.push_back("-EL");
   }
 
   Args.AddAllArgValues(CmdArgs, options::OPT_Wa_COMMA,
diff --git a/test/Driver/mips-as.c b/test/Driver/mips-as.c
new file mode 100644 (file)
index 0000000..d6282d7
--- /dev/null
@@ -0,0 +1,21 @@
+// Check passing options to the assembler for MIPS targets.
+//
+// RUN: %clang -target mips-linux-gnu -### \
+// RUN:   -no-integrated-as -c %s 2>&1 \
+// RUN:   | FileCheck -check-prefix=MIPS32-EB-AS %s
+// CHECK-MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips32" "-EB"
+//
+// RUN: %clang -target mipsel-linux-gnu -### \
+// RUN:   -no-integrated-as -c %s 2>&1 \
+// RUN:   | FileCheck -check-prefix=MIPS32-EL-AS %s
+// CHECK-MIPS32-EL-AS: as{{(.exe)?}}" "-march" "mips32" "-EL"
+//
+// RUN: %clang -target mips64-linux-gnu -### \
+// RUN:   -no-integrated-as -c %s 2>&1 \
+// RUN:   | FileCheck -check-prefix=MIPS64-EB-AS %s
+// CHECK-MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips64" "-EB"
+//
+// RUN: %clang -target mips64el-linux-gnu -### \
+// RUN:   -no-integrated-as -c %s 2>&1 \
+// RUN:   | FileCheck -check-prefix=MIPS64-EL-AS %s
+// CHECK-MIPS64-EL-AS: as{{(.exe)?}}" "-march" "mips64" "-EL"