xref: /llvm-project/llvm/lib/Target/Sparc/SparcSubtarget.cpp (revision 8228b11abc7da31f1e49e3c4342f9dcb01ec4dc1)
1 //===- SparcSubtarget.cpp - SPARC Subtarget Information -------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file implements the SPARC specific subclass of TargetSubtarget.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #include "SparcSubtarget.h"
15 #include "SparcGenSubtarget.inc"
16 using namespace llvm;
17 
18 SparcSubtarget::SparcSubtarget(const std::string &TT, const std::string &FS,
19                                bool is64Bit) :
20   IsV9(false),
21   V8DeprecatedInsts(false),
22   IsVIS(false),
23   Is64Bit(is64Bit) {
24 
25   // Determine default and user specified characteristics
26   const char *CPU = "v8";
27   if (is64Bit) {
28     CPU = "v9";
29     IsV9 = true;
30   }
31 
32   // Parse features string.
33   ParseSubtargetFeatures(FS, CPU);
34 }
35