From c337c9510393f2152e8cc773ab41d2a6b5d1bf58 Mon Sep 17 00:00:00 2001 From: Daniel Sanders Date: Tue, 6 Oct 2015 15:13:16 +0000 Subject: [PATCH] Revert r249123 - [mips][microMIPS] Fix an issue with selecting sqrt instruction in LLVM backend The author was not credited and most of the commit message is missing. Will re-commit with this fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@249415 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Mips/MipsInstrFPU.td | 7 +++++-- test/CodeGen/Mips/llvm-ir/sqrt.ll | 13 ------------- 2 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 test/CodeGen/Mips/llvm-ir/sqrt.ll diff --git a/lib/Target/Mips/MipsInstrFPU.td b/lib/Target/Mips/MipsInstrFPU.td index d1a72494433..9b9d5f6cc2e 100644 --- a/lib/Target/Mips/MipsInstrFPU.td +++ b/lib/Target/Mips/MipsInstrFPU.td @@ -353,8 +353,11 @@ def FNEG_S : MMRel, ABSS_FT<"neg.s", FGR32Opnd, FGR32Opnd, II_NEG, fneg>, defm FABS : ABSS_M<"abs.d", II_ABS, fabs>, ABSS_FM<0x5, 17>; defm FNEG : ABSS_M<"neg.d", II_NEG, fneg>, ABSS_FM<0x7, 17>; -def FSQRT_S : MMRel, StdMMR6Rel, ABSS_FT<"sqrt.s", FGR32Opnd, FGR32Opnd, - II_SQRT_S, fsqrt>, ABSS_FM<0x4, 16>, ISA_MIPS2; +let AdditionalPredicates = [NotInMicroMips] in { +def FSQRT_S : MMRel, ABSS_FT<"sqrt.s", FGR32Opnd, FGR32Opnd, II_SQRT_S, fsqrt>, + ABSS_FM<0x4, 16>, ISA_MIPS2; +} + defm FSQRT : ABSS_M<"sqrt.d", II_SQRT_D, fsqrt>, ABSS_FM<0x4, 17>, ISA_MIPS2; // The odd-numbered registers are only referenced when doing loads, diff --git a/test/CodeGen/Mips/llvm-ir/sqrt.ll b/test/CodeGen/Mips/llvm-ir/sqrt.ll deleted file mode 100644 index 1a8892de0ee..00000000000 --- a/test/CodeGen/Mips/llvm-ir/sqrt.ll +++ /dev/null @@ -1,13 +0,0 @@ -; RUN: llc < %s -march=mipsel -mcpu=mips32r2 -mattr=+micromips | FileCheck %s -; RUN: llc < %s -march=mips -mcpu=mips32r2 -mattr=+micromips | FileCheck %s -; RUN: llc < %s -march=mips -mcpu=mips32r6 -mattr=+micromips | FileCheck %s - -define float @sqrt_fn(float %value) #0 { -entry: - %sqrtf = tail call float @sqrtf(float %value) #0 - ret float %sqrtf -} - -declare float @sqrtf(float) - -; CHECK: sqrt.s $f0, $f12 -- 2.34.1