Index: lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp =================================================================== --- lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp +++ lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp @@ -58,34 +58,9 @@ else if (!Options.getABIName().empty()) llvm_unreachable("Unknown ABI option for MIPS"); - // FIXME: This shares code with the selectMipsCPU routine that's - // used and not shared in a couple of other places. This needs unifying - // at some level. - if (CPU.empty() || CPU == "generic") { - if (TT.getArch() == Triple::mips || TT.getArch() == Triple::mipsel) - CPU = "mips32"; - else - CPU = "mips64"; - } - - return StringSwitch(CPU) - .Case("mips1", MipsABIInfo::O32()) - .Case("mips2", MipsABIInfo::O32()) - .Case("mips32", MipsABIInfo::O32()) - .Case("mips32r2", MipsABIInfo::O32()) - .Case("mips32r3", MipsABIInfo::O32()) - .Case("mips32r5", MipsABIInfo::O32()) - .Case("mips32r6", MipsABIInfo::O32()) - .Case("mips3", MipsABIInfo::N64()) - .Case("mips4", MipsABIInfo::N64()) - .Case("mips5", MipsABIInfo::N64()) - .Case("mips64", MipsABIInfo::N64()) - .Case("mips64r2", MipsABIInfo::N64()) - .Case("mips64r3", MipsABIInfo::N64()) - .Case("mips64r5", MipsABIInfo::N64()) - .Case("mips64r6", MipsABIInfo::N64()) - .Case("octeon", MipsABIInfo::N64()) - .Default(MipsABIInfo::Unknown()); + if (TT.getArch() == Triple::mips64 || TT.getArch() == Triple::mips64el) + return MipsABIInfo::N64(); + return MipsABIInfo::O32(); } unsigned MipsABIInfo::GetStackPtr() const { Index: test/CodeGen/Mips/Fast-ISel/check-disabled-mcpus.ll =================================================================== --- test/CodeGen/Mips/Fast-ISel/check-disabled-mcpus.ll +++ test/CodeGen/Mips/Fast-ISel/check-disabled-mcpus.ll @@ -1,8 +1,8 @@ ; RUN: llc -march=mips -mcpu=mips2 -O0 -relocation-model=pic \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips3 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips3 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips4 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips4 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s ; RUN: llc -march=mips -mcpu=mips32r6 -O0 -relocation-model=pic \ @@ -10,13 +10,13 @@ ; RUN: llc -march=mips -mcpu=mips32r2 -mattr=+micromips -O0 -relocation-model=pic \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips64 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips64 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips64r2 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips64r2 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips64r3 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips64r3 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s -; RUN: llc -march=mips -mcpu=mips64r5 -O0 -relocation-model=pic \ +; RUN: llc -march=mips -mcpu=mips64r5 -O0 -relocation-model=pic -target-abi n64 \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s ; RUN: llc -march=mips -mcpu=mips32r6 -O0 -relocation-model=pic \ ; RUN: -fast-isel-verbose <%s 2>&1 | FileCheck %s Index: test/CodeGen/Mips/adjust-callstack-sp.ll =================================================================== --- test/CodeGen/Mips/adjust-callstack-sp.ll +++ test/CodeGen/Mips/adjust-callstack-sp.ll @@ -2,18 +2,18 @@ ; RUN: llc < %s -march=mips -mcpu=mips2 | FileCheck %s -check-prefix=GP32 ; RUN: llc < %s -march=mips -mcpu=mips32 | FileCheck %s -check-prefix=GP32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 | FileCheck %s -check-prefix=GP32 -; RUN: llc < %s -march=mips -mcpu=mips3 | FileCheck %s -check-prefix=GP64 -; RUN: llc < %s -march=mips -mcpu=mips64 | FileCheck %s -check-prefix=GP64 -; RUN: llc < %s -march=mips -mcpu=mips64r6 | FileCheck %s -check-prefix=GP64 +; RUN: llc < %s -march=mips -mcpu=mips3 -target-abi n64 | FileCheck %s -check-prefix=GP64 +; RUN: llc < %s -march=mips -mcpu=mips64 -target-abi n64 | FileCheck %s -check-prefix=GP64 +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 | FileCheck %s -check-prefix=GP64 declare void @bar(i32*) define void @foo(i32 %sz) { ; ALL-LABEL: foo: - ; M16-NOT: addiu $sp, 0 # 16 bit inst - ; GP32-NOT: addiu $sp, $sp, 0 - ; GP64-NOT: daddiu $sp, $sp, 0 + ; M16-NOT: addiu $sp, 0 # 16 bit inst + ; GP32-NOT: addiu $sp, $sp, 0 + ; GP64-NOT: daddiu $sp, $sp, 0 %a = alloca i32, i32 %sz call void @bar(i32* %a) ret void Index: test/CodeGen/Mips/compactbranches/compact-branches.ll =================================================================== --- test/CodeGen/Mips/compactbranches/compact-branches.ll +++ test/CodeGen/Mips/compactbranches/compact-branches.ll @@ -1,5 +1,5 @@ ; RUN: llc -march=mipsel -mcpu=mips32r6 -relocation-model=static -disable-mips-delay-filler < %s | FileCheck %s -check-prefix=STATIC32 -; RUN: llc -march=mipsel -mcpu=mips64r6 -disable-mips-delay-filler < %s | FileCheck %s -check-prefix=PIC +; RUN: llc -march=mipsel -mcpu=mips64r6 -target-abi n64 -disable-mips-delay-filler < %s | FileCheck %s -check-prefix=PIC ; Function Attrs: nounwind define void @l() { Index: test/CodeGen/Mips/elf_eflags.ll =================================================================== --- test/CodeGen/Mips/elf_eflags.ll +++ test/CodeGen/Mips/elf_eflags.ll @@ -23,13 +23,13 @@ ; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips32r2 -mattr=+micromips -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE32R2-MICROMIPS %s ; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips32r2 -mattr=+micromips %s -o - | FileCheck -check-prefix=CHECK-LE32R2-MICROMIPS_PIC %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips4 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64 %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips4 %s -o - | FileCheck -check-prefix=CHECK-LE64_PIC %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips4 -target-abi n64 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64 %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips4 -target-abi n64 %s -o - | FileCheck -check-prefix=CHECK-LE64_PIC %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64 %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64 %s -o - | FileCheck -check-prefix=CHECK-LE64_PIC %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64r2 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64R2 %s -; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64r2 %s -o - | FileCheck -check-prefix=CHECK-LE64R2_PIC %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64 -target-abi n64 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64 %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64 -target-abi n64 %s -o - | FileCheck -check-prefix=CHECK-LE64_PIC %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64r2 -target-abi n64 -relocation-model=static %s -o - | FileCheck -check-prefix=CHECK-LE64R2 %s +; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips64r2 -target-abi n64 %s -o - | FileCheck -check-prefix=CHECK-LE64R2_PIC %s ; RUN: llc -mtriple mipsel-unknown-linux -mcpu=mips32r2 -mattr=+mips16 -relocation-model=pic %s -o - | FileCheck -check-prefix=CHECK-LE32R2-MIPS16 %s Index: test/CodeGen/Mips/fcmp.ll =================================================================== --- test/CodeGen/Mips/fcmp.ll +++ test/CodeGen/Mips/fcmp.ll @@ -17,7 +17,7 @@ ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MMR6 \ ; RUN: -check-prefix=MM32R6 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ +; RUN: llc < %s -march=mips64 -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MMR6 \ ; RUN: -check-prefix=MM64R6 Index: test/CodeGen/Mips/interrupt-attr-64-error.ll =================================================================== --- test/CodeGen/Mips/interrupt-attr-64-error.ll +++ test/CodeGen/Mips/interrupt-attr-64-error.ll @@ -1,4 +1,4 @@ -; RUN: not llc -mcpu=mips64r6 -march=mipsel -relocation-model=static < %s 2>%t +; RUN: not llc -mcpu=mips64r6 -march=mipsel -target-abi n64 -relocation-model=static < %s 2>%t ; RUN: FileCheck %s < %t ; CHECK: LLVM ERROR: "interrupt" attribute is only supported for the O32 ABI on MIPS32R2+ at the present time. Index: test/CodeGen/Mips/llvm-ir/add.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/add.ll +++ test/CodeGen/Mips/llvm-ir/add.ll @@ -28,7 +28,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -O2 | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -O2 | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips -O2 | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM64 define signext i1 @add_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/and.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/and.ll +++ test/CodeGen/Mips/llvm-ir/and.ll @@ -28,7 +28,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM64 define signext i1 @and_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/lh_lhu.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/lh_lhu.ll +++ test/CodeGen/Mips/llvm-ir/lh_lhu.ll @@ -1,7 +1,7 @@ ; RUN: llc < %s -march=mips -mcpu=mips32r2 -mattr=+micromips -relocation-model=pic | FileCheck %s ; RUN: llc < %s -march=mips -mcpu=mips32r3 -mattr=+micromips -relocation-model=pic | FileCheck %s ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips -relocation-model=pic | FileCheck %s @us = global i16 0, align 2 Index: test/CodeGen/Mips/llvm-ir/mul.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/mul.ll +++ test/CodeGen/Mips/llvm-ir/mul.ll @@ -26,7 +26,7 @@ ; RUN: -check-prefix=MM32 -check-prefix=MM32R3 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=MM32 -check-prefix=MM32R6 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -target-abi n64 -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=64R6 define signext i1 @mul_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/not.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/not.ll +++ test/CodeGen/Mips/llvm-ir/not.ll @@ -28,7 +28,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM64 define signext i1 @not_i1(i1 signext %a) { Index: test/CodeGen/Mips/llvm-ir/or.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/or.ll +++ test/CodeGen/Mips/llvm-ir/or.ll @@ -28,7 +28,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM64 define signext i1 @or_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/sdiv.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/sdiv.ll +++ test/CodeGen/Mips/llvm-ir/sdiv.ll @@ -43,7 +43,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MMR3 -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -target-abi n64 -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM64 define signext i1 @sdiv_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/srem.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/srem.ll +++ test/CodeGen/Mips/llvm-ir/srem.ll @@ -43,7 +43,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MMR3 -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM64 define signext i1 @srem_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/udiv.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/udiv.ll +++ test/CodeGen/Mips/llvm-ir/udiv.ll @@ -30,7 +30,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MMR3 -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM64 define zeroext i1 @udiv_i1(i1 zeroext %a, i1 zeroext %b) { Index: test/CodeGen/Mips/llvm-ir/urem.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/urem.ll +++ test/CodeGen/Mips/llvm-ir/urem.ll @@ -43,7 +43,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MMR3 -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips -relocation-model=pic | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips -relocation-model=pic | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MMR6 -check-prefix=MM64 define signext i1 @urem_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/llvm-ir/xor.ll =================================================================== --- test/CodeGen/Mips/llvm-ir/xor.ll +++ test/CodeGen/Mips/llvm-ir/xor.ll @@ -28,7 +28,7 @@ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 ; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM32 -; RUN: llc < %s -march=mips -mcpu=mips64r6 -mattr=+micromips | FileCheck %s \ +; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 -mattr=+micromips | FileCheck %s \ ; RUN: -check-prefix=ALL -check-prefix=MM -check-prefix=MM64 define signext i1 @xor_i1(i1 signext %a, i1 signext %b) { Index: test/CodeGen/Mips/madd-msub.ll =================================================================== --- test/CodeGen/Mips/madd-msub.ll +++ test/CodeGen/Mips/madd-msub.ll @@ -2,9 +2,9 @@ ; RUN: llc -march=mips -mcpu=mips32r2 < %s | FileCheck %s -check-prefix=ALL -check-prefix=32 ; RUN: llc -march=mips -mcpu=mips32r6 < %s | FileCheck %s -check-prefix=ALL -check-prefix=32R6 ; RUN: llc -march=mips -mcpu=mips32 -mattr=dsp < %s | FileCheck %s -check-prefix=DSP -; RUN: llc -march=mips -mcpu=mips64 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64 -; RUN: llc -march=mips -mcpu=mips64r2 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64 -; RUN: llc -march=mips -mcpu=mips64r6 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64R6 +; RUN: llc -march=mips -mcpu=mips64 -target-abi n64 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64 +; RUN: llc -march=mips -mcpu=mips64r2 -target-abi n64 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64 +; RUN: llc -march=mips -mcpu=mips64r6 -target-abi n64 < %s | FileCheck %s -check-prefix=ALL -check-prefix=64R6 ; FIXME: The MIPS16 test should check its output ; RUN: llc -march=mips -mattr=mips16 < %s Index: test/CodeGen/Mips/mips64extins.ll =================================================================== --- test/CodeGen/Mips/mips64extins.ll +++ test/CodeGen/Mips/mips64extins.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=mips64el -mcpu=mips64r2 -target-abi=n64 | FileCheck %s +; RUN: llc < %s -march=mips64el -mcpu=mips64r2 -target-abi=n64 | FileCheck %s define i64 @dext(i64 %i) nounwind readnone { entry: Index: test/CodeGen/Mips/mips64r6/compatibility.ll =================================================================== --- test/CodeGen/Mips/mips64r6/compatibility.ll +++ test/CodeGen/Mips/mips64r6/compatibility.ll @@ -1,5 +1,5 @@ -; RUN: llc -march=mipsel -mcpu=mips64r6 < %s | FileCheck %s -; RUN: not llc -march=mipsel -mcpu=mips64r6 -mattr=+dsp < %s 2>&1 | FileCheck --check-prefix=DSP %s +; RUN: llc -march=mipsel -mcpu=mips64r6 -target-abi n64 < %s | FileCheck %s +; RUN: not llc -march=mipsel -mcpu=mips64r6 -target-abi n64 -mattr=+dsp < %s 2>&1 | FileCheck --check-prefix=DSP %s ; CHECK: foo: ; DSP: MIPS64r6 is not compatible with the DSP ASE Index: test/CodeGen/Mips/zeroreg.ll =================================================================== --- test/CodeGen/Mips/zeroreg.ll +++ test/CodeGen/Mips/zeroreg.ll @@ -1,10 +1,10 @@ ; RUN: llc < %s -march=mipsel -mcpu=mips32 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=32-CMOV ; RUN: llc < %s -march=mipsel -mcpu=mips32r2 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=32-CMOV ; RUN: llc < %s -march=mipsel -mcpu=mips32r6 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=32R6 -; RUN: llc < %s -march=mipsel -mcpu=mips4 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV -; RUN: llc < %s -march=mipsel -mcpu=mips64 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV -; RUN: llc < %s -march=mipsel -mcpu=mips64r2 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV -; RUN: llc < %s -march=mipsel -mcpu=mips64r6 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64R6 +; RUN: llc < %s -march=mipsel -mcpu=mips4 -target-abi n64 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV +; RUN: llc < %s -march=mipsel -mcpu=mips64 -target-abi n64 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV +; RUN: llc < %s -march=mipsel -mcpu=mips64r2 -target-abi n64 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64-CMOV +; RUN: llc < %s -march=mipsel -mcpu=mips64r6 -target-abi n64 -relocation-model=pic | FileCheck %s -check-prefix=ALL -check-prefix=64R6 @g1 = external global i32 Index: test/MC/Mips/elf_eflags.s =================================================================== --- test/MC/Mips/elf_eflags.s +++ test/MC/Mips/elf_eflags.s @@ -1,26 +1,26 @@ # These *MUST* match the output of 'gcc -c' compiled with the same triple and # corresponding options (-mcpu=mips32 -> -mips32 for example). -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r6 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R6 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r6 -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R6 %s # MIPSEL-MIPS64R6: Flags [ (0xA0000406) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r6 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R6-NAN2008 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r6 -target-abi n64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R6-NAN2008 %s # MIPSEL-MIPS64R6-NAN2008: Flags [ (0xA0000406) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r2 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r3 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r5 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r2 -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r3 -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r5 -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2 %s # MIPSEL-MIPS64R2: Flags [ (0x80000006) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r2 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r3 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r5 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r2 -target-abi n64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r3 -target-abi n64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64r5 -target-abi n64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64R2-NAN2008 %s # MIPSEL-MIPS64R2-NAN2008: Flags [ (0x80000406) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64 -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64 %s # MIPSEL-MIPS64: Flags [ (0x60000006) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64-NAN2008 %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips64 -target-abi n64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS64-NAN2008 %s # MIPSEL-MIPS64-NAN2008: Flags [ (0x60000406) # RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=mips32r6 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-MIPS32R6 %s @@ -126,5 +126,5 @@ # RUN: llvm-mc -filetype=obj -triple mips64el-unknown-linux -mcpu=mips64 -mattr=+nan2008 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPS64EL-MIPS64-NAN2008 %s # MIPS64EL-MIPS64-NAN2008: Flags [ (0x60000406) -# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=octeon %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-OCTEON %s +# RUN: llvm-mc -filetype=obj -triple mipsel-unknown-linux -mcpu=octeon -target-abi n64 %s -o -| llvm-readobj -h | FileCheck --check-prefix=MIPSEL-OCTEON %s # MIPSEL-OCTEON: Flags [ (0x808B0006) Index: test/MC/Mips/mips64/abiflags.s =================================================================== --- test/MC/Mips/mips64/abiflags.s +++ test/MC/Mips/mips64/abiflags.s @@ -1,7 +1,7 @@ -# RUN: llvm-mc %s -arch=mips -mcpu=mips64 | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n64 | \ # RUN: FileCheck %s -check-prefix=CHECK-ASM # -# RUN: llvm-mc %s -arch=mips -mcpu=mips64 -filetype=obj -o - | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n64 -filetype=obj -o - | \ # RUN: llvm-readobj -sections -section-data -section-relocations - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ Index: test/MC/Mips/mips64r2/abi-bad.s =================================================================== --- test/MC/Mips/mips64r2/abi-bad.s +++ test/MC/Mips/mips64r2/abi-bad.s @@ -1,4 +1,4 @@ -# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r2 2>&1 | FileCheck %s +# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r2 -target-abi n64 2>&1 | FileCheck %s .set fp=xx # CHECK: error: '.set fp=xx' requires the O32 ABI # CHECK: .set fp=xx Index: test/MC/Mips/mips64r2/abiflags.s =================================================================== --- test/MC/Mips/mips64r2/abiflags.s +++ test/MC/Mips/mips64r2/abiflags.s @@ -1,7 +1,7 @@ -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r2 | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r2 -target-abi n64 | \ # RUN: FileCheck %s -check-prefix=CHECK-ASM # -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r2 -filetype=obj -o - | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r2 -target-abi n64 -filetype=obj -o - | \ # RUN: llvm-readobj -sections -section-data -section-relocations - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ Index: test/MC/Mips/mips64r3/abi-bad.s =================================================================== --- test/MC/Mips/mips64r3/abi-bad.s +++ test/MC/Mips/mips64r3/abi-bad.s @@ -1,4 +1,4 @@ -# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r3 2>&1 | FileCheck %s +# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r3 -target-abi n64 2>&1 | FileCheck %s .set fp=xx # CHECK: error: '.set fp=xx' requires the O32 ABI # CHECK: .set fp=xx Index: test/MC/Mips/mips64r3/abiflags.s =================================================================== --- test/MC/Mips/mips64r3/abiflags.s +++ test/MC/Mips/mips64r3/abiflags.s @@ -1,7 +1,7 @@ -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r3 | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r3 -target-abi n64 | \ # RUN: FileCheck %s -check-prefix=CHECK-ASM # -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r3 -filetype=obj -o - | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r3 -target-abi n64 -filetype=obj -o - | \ # RUN: llvm-readobj -sections -section-data -section-relocations - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ Index: test/MC/Mips/mips64r5/abi-bad.s =================================================================== --- test/MC/Mips/mips64r5/abi-bad.s +++ test/MC/Mips/mips64r5/abi-bad.s @@ -1,4 +1,4 @@ -# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r5 2>&1 | FileCheck %s +# RUN: not llvm-mc %s -triple mips-unknown-linux -mcpu=mips64r5 -target-abi n64 2>&1 | FileCheck %s .set fp=xx # CHECK: error: '.set fp=xx' requires the O32 ABI # CHECK: .set fp=xx Index: test/MC/Mips/mips64r5/abiflags.s =================================================================== --- test/MC/Mips/mips64r5/abiflags.s +++ test/MC/Mips/mips64r5/abiflags.s @@ -1,7 +1,7 @@ -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r5 | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r5 -target-abi n64 | \ # RUN: FileCheck %s -check-prefix=CHECK-ASM # -# RUN: llvm-mc %s -arch=mips -mcpu=mips64r5 -filetype=obj -o - | \ +# RUN: llvm-mc %s -arch=mips -mcpu=mips64r5 -target-abi n64 -filetype=obj -o - | \ # RUN: llvm-readobj -sections -section-data -section-relocations - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ Index: test/MC/Mips/mips_abi_flags_xx.s =================================================================== --- test/MC/Mips/mips_abi_flags_xx.s +++ test/MC/Mips/mips_abi_flags_xx.s @@ -16,7 +16,7 @@ # RUN: FileCheck %s -check-prefix=CHECK-OBJ -check-prefix=CHECK-OBJ-32R6 \ # RUN: -check-prefix=CHECK-OBJ-MIPS -# RUN: llvm-mc /dev/null -arch=mips -mcpu=octeon -filetype=obj -o - | \ +# RUN: llvm-mc /dev/null -arch=mips -mcpu=octeon -target-abi n64 -filetype=obj -o - | \ # RUN: llvm-readobj -sections -section-data -section-relocations -mips-abi-flags - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ -check-prefix=CHECK-OBJ-64R2 \ # RUN: -check-prefix=CHECK-OBJ-OCTEON Index: test/MC/Mips/nooddspreg-cmdarg.s =================================================================== --- test/MC/Mips/nooddspreg-cmdarg.s +++ test/MC/Mips/nooddspreg-cmdarg.s @@ -8,7 +8,7 @@ # RUN: not llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n32 -mattr=+nooddspreg 2> %t0 # RUN: FileCheck %s -check-prefix=INVALID < %t0 # -# RUN: not llvm-mc %s -arch=mips -mcpu=mips64 -mattr=+nooddspreg 2> %t0 +# RUN: not llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n64 -mattr=+nooddspreg 2> %t0 # RUN: FileCheck %s -check-prefix=INVALID < %t0 # # CHECK-ASM-NOT: .module nooddspreg Index: test/MC/Mips/nooddspreg.s =================================================================== --- test/MC/Mips/nooddspreg.s +++ test/MC/Mips/nooddspreg.s @@ -8,7 +8,7 @@ # RUN: not llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n32 2> %t1 # RUN: FileCheck %s -check-prefix=INVALID < %t1 # -# RUN: not llvm-mc %s -arch=mips -mcpu=mips64 2> %t2 +# RUN: not llvm-mc %s -arch=mips -mcpu=mips64 -target-abi n64 2> %t2 # RUN: FileCheck %s -check-prefix=INVALID < %t2 # # CHECK-ASM: .module nooddspreg