1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

Drop support for Allegrex. Allegrex implements a variant of Mips2.

llvm-svn: 139383
This commit is contained in:
Akira Hatanaka 2011-09-09 19:00:51 +00:00
parent eb2d668899
commit 17df2dfe8c
10 changed files with 33 additions and 39 deletions

View File

@ -82,13 +82,6 @@ def : Proc<"r6000", [FeatureMips2]>;
def : Proc<"mips32r1", [FeatureMips32]>;
def : Proc<"4ke", [FeatureMips32r2]>;
// Allegrex is a 32bit subset of r4000, both for integer and fp registers,
// but much more similar to Mips2 than Mips3. It also contains some of
// Mips32/Mips32r2 instructions and a custom vector fpu processor.
def : Proc<"allegrex", [FeatureMips2, FeatureSingleFloat, FeatureEABI,
FeatureVFPU, FeatureSEInReg, FeatureCondMov, FeatureMulDivAdd,
FeatureMinMax, FeatureSwap, FeatureBitCount]>;
def MipsAsmWriter : AsmWriter {
string AsmWriterClassName = "InstPrinter";
bit isMCAsmWriter = 1;

View File

@ -42,20 +42,4 @@ MipsSubtarget::MipsSubtarget(const std::string &TT, const std::string &CPU,
// Is the target system Linux ?
if (TT.find("linux") == std::string::npos)
IsLinux = false;
// When only the target triple is specified and is
// a allegrex target, set the features. We also match
// big and little endian allegrex cores (dont really
// know if a big one exists)
if (TT.find("mipsallegrex") != std::string::npos ||
TT.find("psp") != std::string::npos) {
MipsABI = EABI;
IsSingleFloat = true;
MipsArchVersion = Mips2;
HasVFPU = true; // Enables Allegrex Vector FPU (not supported yet)
HasSEInReg = true;
HasBitCount = true;
HasSwap = true;
HasCondMov = true;
}
}

View File

@ -1,4 +1,6 @@
; RUN: llc < %s -march=mips | grep {lw.*(\$4)} | count 2
; DISABLED: llc < %s -march=mips | grep {lw.*(\$4)} | count 2
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,4 +1,6 @@
; RUN: llc < %s -march=mips | grep __adddf3
; DISABLED: llc < %s -march=mips | grep __adddf3
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,4 +1,6 @@
; RUN: llc < %s -march=mips | grep __extendsfdf2
; DISABLED: llc < %s -march=mips | grep __extendsfdf2
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,8 +1,10 @@
; RUN: llc < %s -march=mips -o %t
; RUN: grep __floatsidf %t | count 1
; RUN: grep __floatunsidf %t | count 1
; RUN: grep __fixdfsi %t | count 1
; RUN: grep __fixunsdfsi %t | count 1
; DISABLED: llc < %s -march=mips -o %t
; DISABLED: grep __floatsidf %t | count 1
; DISABLED: grep __floatunsidf %t | count 1
; DISABLED: grep __fixdfsi %t | count 1
; DISABLED: grep __fixunsdfsi %t | count 1
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,6 +1,8 @@
; RUN: llc < %s -march=mips -o %t
; RUN: grep seh %t | count 1
; RUN: grep seb %t | count 1
; DISABLED: llc < %s -march=mips -o %t
; DISABLED: grep seh %t | count 1
; DISABLED: grep seb %t | count 1
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,6 +1,8 @@
; RUN: llc < %s -march=mips -o %t
; RUN: grep {lui.*32767} %t | count 1
; RUN: grep {ori.*65535} %t | count 1
; DISABLED: llc < %s -march=mips -o %t
; DISABLED: grep {lui.*32767} %t | count 1
; DISABLED: grep {ori.*65535} %t | count 1
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,4 +1,6 @@
; RUN: llc < %s -march=mips | grep __truncdfsf2 | count 1
; DISABLED: llc < %s -march=mips | grep __truncdfsf2 | count 1
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

View File

@ -1,4 +1,7 @@
; RUN: llc < %s | grep wsbw | count 1
; DISABLED: llc < %s | grep wsbw | count 1
; RUN: false
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "psp"