[ARC] Add ARC backend.

Add the ARC backend as an experimental target to lib/Target.
Reviewed at: https://reviews.llvm.org/D36331

llvm-svn: 311667
diff --git a/llvm/lib/Target/ARC/ARCSubtarget.cpp b/llvm/lib/Target/ARC/ARCSubtarget.cpp
new file mode 100644
index 0000000..2107a27
--- /dev/null
+++ b/llvm/lib/Target/ARC/ARCSubtarget.cpp
@@ -0,0 +1,31 @@
+//===- ARCSubtarget.cpp - ARC Subtarget Information -------------*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file implements the ARC specific subclass of TargetSubtargetInfo.
+//
+//===----------------------------------------------------------------------===//
+
+#include "ARCSubtarget.h"
+#include "ARC.h"
+#include "llvm/Support/TargetRegistry.h"
+
+using namespace llvm;
+
+#define DEBUG_TYPE "arc-subtarget"
+
+#define GET_SUBTARGETINFO_TARGET_DESC
+#define GET_SUBTARGETINFO_CTOR
+#include "ARCGenSubtargetInfo.inc"
+
+void ARCSubtarget::anchor() {}
+
+ARCSubtarget::ARCSubtarget(const Triple &TT, const std::string &CPU,
+                           const std::string &FS, const TargetMachine &TM)
+    : ARCGenSubtargetInfo(TT, CPU, FS), FrameLowering(*this),
+      TLInfo(TM, *this) {}