aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Atanasyan <satanasyan@mips.com>2012-04-06 19:15:24 +0000
committerSimon Atanasyan <satanasyan@mips.com>2012-04-06 19:15:24 +0000
commit5f0a1c12dacadd5a061ea5b57d51cf6798ae22a1 (patch)
tree8fbea58dbb6f752ba2e228ef8149898c93e18837
parentf439e00c7055d2d51b88141f63ebfc893af10951 (diff)
MIPS: Pass -EB/-EL argument to the assembler according to selected endian when compile for MIPS targets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154195 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Driver/Tools.cpp6
-rw-r--r--test/Driver/mips-as.c21
2 files changed, 27 insertions, 0 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index 4c4ab7bc98..8c4378c666 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -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
index 0000000000..d6282d789d
--- /dev/null
+++ b/test/Driver/mips-as.c
@@ -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"