Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Apr 2011 23:41:06 +0000
From:      Alexander Best <arundel@freebsd.org>
To:        freebsd-toolchain@freebsd.org
Subject:   clang and 3dnow(a)
Message-ID:  <20110414234106.GA22718@freebsd.org>

next in thread | raw e-mail | index | archive | help
hi there,

per coincidence i discovered the following contrary behavior between gcc and
clang:

-mno-mmx implies -mno-3dnow under gcc. under clang -mno-mmx will *not* imply
-mno-3dnow!

is this a clang design feature or a bug? fixing it would be trivial (see
attached patch).

cheers.
alex

diff --git a/contrib/llvm/tools/clang/lib/Basic/Targets.cpp b/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
index 55321f2..1af7c52 100644
--- a/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
+++ b/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
@@ -1133,8 +1133,9 @@ bool X86TargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features,
       Features["avx"] = true;
   } else {
     if (Name == "mmx")
-      Features["mmx"] = Features["sse"] = Features["sse2"] = Features["sse3"] =
-        Features["ssse3"] = Features["sse41"] = Features["sse42"] = false;
+      Features["mmx"] = Features["3dnow"] = Features["3dnowa"] =
+       Features["sse"] = Features["sse2"] = Features["sse3"] =
+       Features["ssse3"] = Features["sse41"] = Features["sse42"] = false;
     else if (Name == "sse")
       Features["sse"] = Features["sse2"] = Features["sse3"] =
         Features["ssse3"] = Features["sse41"] = Features["sse42"] = false;

-- 
a13x



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110414234106.GA22718>