mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-19 03:24:09 +00:00
[Sparc] Add missing processor types: v7 and niagara
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199024 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -56,6 +56,7 @@ class Proc<string Name, list<SubtargetFeature> Features>
|
|||||||
: Processor<Name, NoItineraries, Features>;
|
: Processor<Name, NoItineraries, Features>;
|
||||||
|
|
||||||
def : Proc<"generic", []>;
|
def : Proc<"generic", []>;
|
||||||
|
def : Proc<"v7", []>;
|
||||||
def : Proc<"v8", []>;
|
def : Proc<"v8", []>;
|
||||||
def : Proc<"supersparc", []>;
|
def : Proc<"supersparc", []>;
|
||||||
def : Proc<"sparclite", []>;
|
def : Proc<"sparclite", []>;
|
||||||
@ -67,7 +68,10 @@ def : Proc<"tsc701", []>;
|
|||||||
def : Proc<"v9", [FeatureV9]>;
|
def : Proc<"v9", [FeatureV9]>;
|
||||||
def : Proc<"ultrasparc", [FeatureV9, FeatureV8Deprecated]>;
|
def : Proc<"ultrasparc", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
def : Proc<"ultrasparc3", [FeatureV9, FeatureV8Deprecated]>;
|
def : Proc<"ultrasparc3", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
def : Proc<"ultrasparc3-vis", [FeatureV9, FeatureV8Deprecated, FeatureVIS]>;
|
def : Proc<"niagara", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
|
def : Proc<"niagara2", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
|
def : Proc<"niagara3", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
|
def : Proc<"niagara4", [FeatureV9, FeatureV8Deprecated]>;
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
@ -35,13 +35,8 @@ SparcSubtarget::SparcSubtarget(const std::string &TT, const std::string &CPU,
|
|||||||
|
|
||||||
// Determine default and user specified characteristics
|
// Determine default and user specified characteristics
|
||||||
std::string CPUName = CPU;
|
std::string CPUName = CPU;
|
||||||
if (CPUName.empty()) {
|
if (CPUName.empty())
|
||||||
if (is64Bit)
|
CPUName = (is64Bit) ? "v9" : "v8";
|
||||||
CPUName = "v9";
|
|
||||||
else
|
|
||||||
CPUName = "v8";
|
|
||||||
}
|
|
||||||
IsV9 = CPUName == "v9";
|
|
||||||
|
|
||||||
// Parse features string.
|
// Parse features string.
|
||||||
ParseSubtargetFeatures(CPUName, FS);
|
ParseSubtargetFeatures(CPUName, FS);
|
||||||
|
@ -1,5 +1,12 @@
|
|||||||
; RUN: llc < %s -march=sparc -mattr=-v9 | FileCheck %s -check-prefix=V8
|
; RUN: llc < %s -march=sparc -mattr=-v9 | FileCheck %s -check-prefix=V8
|
||||||
; RUN: llc < %s -march=sparc -mattr=+v9 | FileCheck %s -check-prefix=V9
|
; RUN: llc < %s -march=sparc -mattr=+v9 | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=v9 | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=ultrasparc | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=ultrasparc3 | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=niagara | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=niagara2 | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=niagara3 | FileCheck %s -check-prefix=V9
|
||||||
|
; RUN: llc < %s -march=sparc -mcpu=niagara4 | FileCheck %s -check-prefix=V9
|
||||||
; RUN: llc < %s -march=sparcv9 | FileCheck %s -check-prefix=SPARC64
|
; RUN: llc < %s -march=sparcv9 | FileCheck %s -check-prefix=SPARC64
|
||||||
|
|
||||||
declare i32 @llvm.ctpop.i32(i32)
|
declare i32 @llvm.ctpop.i32(i32)
|
||||||
|
Reference in New Issue
Block a user