$OpenBSD: patch-tools_clang_lib_Basic_Targets_cpp,v 1.3 2011/12/14 22:58:23 sthen Exp $

- let profiling work on OpenBSD
- fix the symbol prefix to be empty rather than an underscore

--- tools/clang/lib/Basic/Targets.cpp.orig	Wed Dec 14 20:21:06 2011
+++ tools/clang/lib/Basic/Targets.cpp	Wed Dec 14 20:22:38 2011
@@ -367,7 +367,26 @@ class OpenBSDTargetInfo : public OSTargetInfo<Target> 
   }
 public:
   OpenBSDTargetInfo(const std::string &triple)
-    : OSTargetInfo<Target>(triple) {}
+    : OSTargetInfo<Target>(triple) {
+      this->UserLabelPrefix = "";
+
+      llvm::Triple Triple(triple);
+      switch (Triple.getArch()) {
+        default:
+        case llvm::Triple::x86:
+        case llvm::Triple::x86_64:
+        case llvm::Triple::arm:
+       case llvm::Triple::sparc:
+          this->MCountName = "__mcount";
+          break;
+        case llvm::Triple::mips64:
+        case llvm::Triple::mips64el:
+        case llvm::Triple::ppc:
+       case llvm::Triple::sparcv9:
+          this->MCountName = "_mcount";
+          break;
+      }
+  }
 };
 
 // PSP Target
