; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -verify-machineinstrs -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
; RUN:   < %s -mtriple=powerpc64-unknown-linux -mcpu=pwr8 | FileCheck %s \
; RUN:   -check-prefix=P8
; RUN: llc -verify-machineinstrs -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
; RUN:   < %s -mtriple=powerpc64le-unknown-linux -mcpu=pwr9 \
; RUN:   | FileCheck %s -check-prefix=P9
; RUN: llc -verify-machineinstrs -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
; RUN:   < %s -mtriple=powerpc64le-unknown-linux -mcpu=pwr8 -mattr=-vsx | \
; RUN:   FileCheck %s -check-prefix=NOVSX

define i32 @test_f32_oeq_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_oeq_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iseleq r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_oeq_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iseleq r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_oeq_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"oeq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ogt_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ogt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iselgt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ogt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iselgt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ogt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ogt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_oge_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_oge_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_oge_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_oge_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"oge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_olt_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_olt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isellt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_olt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isellt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_olt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"olt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ole_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ole_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ole_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ole_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ole",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_one_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_one_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_one_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_one_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"one",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ord_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ord_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isel r3, r4, r3, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ord_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isel r3, r4, r3, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ord_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isel r3, r4, r3, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ord",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ueq_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ueq_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ueq_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ueq_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ueq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ugt_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ugt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ugt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ugt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ugt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_uge_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_uge_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isellt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_uge_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_uge_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"uge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ult_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ult_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ult_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ult_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ult",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ule_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ule_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iselgt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ule_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ule_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"ule",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_une_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_une_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iseleq r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_une_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_une_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"une",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_uno_q(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_uno_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isel r3, r3, r4, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_uno_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isel r3, r3, r4, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_uno_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isel r3, r3, r4, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f32(
                                               float %f1, float %f2, metadata !"uno",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_oeq_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_oeq_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iseleq r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_oeq_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iseleq r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_oeq_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"oeq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ogt_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ogt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iselgt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ogt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iselgt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ogt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ogt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_oge_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_oge_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_oge_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_oge_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"oge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_olt_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_olt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isellt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_olt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isellt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_olt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"olt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ole_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ole_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ole_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ole_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ole",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_one_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_one_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_one_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_one_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"one",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ord_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ord_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isel r3, r4, r3, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ord_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isel r3, r4, r3, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ord_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isel r3, r4, r3, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ord",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ueq_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ueq_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ueq_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ueq_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ueq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ugt_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ugt_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ugt_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ugt_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ugt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_uge_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_uge_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isellt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_uge_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_uge_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"uge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ult_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ult_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ult_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ult_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ult",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ule_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ule_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iselgt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ule_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ule_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"ule",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_une_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_une_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    iseleq r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_une_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_une_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"une",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_uno_q(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_uno_q:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f2
; P8-NEXT:    isel r3, r3, r4, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_uno_q:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f2
; P9-NEXT:    isel r3, r3, r4, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_uno_q:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f2
; NOVSX-NEXT:    isel r3, r3, r4, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmp.f64(
                                               double %f1, double %f2, metadata !"uno",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_oeq_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_oeq_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iseleq r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_oeq_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iseleq r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_oeq_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"oeq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ogt_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ogt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iselgt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ogt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iselgt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ogt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ogt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_oge_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_oge_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_oge_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_oge_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"oge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_olt_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_olt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isellt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_olt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isellt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_olt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"olt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ole_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ole_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ole_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ole_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ole",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_one_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_one_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_one_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_one_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"one",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ord_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ord_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isel r3, r4, r3, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ord_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isel r3, r4, r3, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ord_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isel r3, r4, r3, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ord",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ueq_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ueq_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ueq_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ueq_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ueq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ugt_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ugt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ugt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ugt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ugt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_uge_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_uge_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isellt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_uge_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_uge_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"uge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ult_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ult_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ult_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ult_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ult",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_ule_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_ule_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iselgt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_ule_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_ule_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"ule",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_une_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_une_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iseleq r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_une_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_une_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"une",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f32_uno_s(i32 %a, i32 %b, float %f1, float %f2) #0 {
; P8-LABEL: test_f32_uno_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isel r3, r3, r4, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f32_uno_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isel r3, r3, r4, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f32_uno_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isel r3, r3, r4, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f32(
                                               float %f1, float %f2, metadata !"uno",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_oeq_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_oeq_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iseleq r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_oeq_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iseleq r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_oeq_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"oeq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ogt_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ogt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iselgt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ogt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iselgt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ogt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ogt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_oge_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_oge_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_oge_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_oge_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"oge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_olt_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_olt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isellt r3, r3, r4
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_olt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isellt r3, r3, r4
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_olt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r3, r4
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"olt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ole_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ole_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ole_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ole_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ole",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_one_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_one_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_one_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_one_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"one",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ord_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ord_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isel r3, r4, r3, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ord_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isel r3, r4, r3, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ord_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isel r3, r4, r3, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ord",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ueq_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ueq_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ueq_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ueq_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ueq",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ugt_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ugt_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ugt_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ugt_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ugt",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_uge_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_uge_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isellt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_uge_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_uge_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isellt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"uge",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ult_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ult_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ult_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    cror 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, r3, r4, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ult_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    isel r3, r3, r4, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ult",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_ule_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_ule_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iselgt r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_ule_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_ule_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iselgt r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"ule",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_une_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_une_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    iseleq r3, r4, r3
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_une_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_une_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    iseleq r3, r4, r3
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"une",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @test_f64_uno_s(i32 %a, i32 %b, double %f1, double %f2) #0 {
; P8-LABEL: test_f64_uno_s:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f2
; P8-NEXT:    isel r3, r3, r4, un
; P8-NEXT:    blr
;
; P9-LABEL: test_f64_uno_s:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f2
; P9-NEXT:    isel r3, r3, r4, un
; P9-NEXT:    blr
;
; NOVSX-LABEL: test_f64_uno_s:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f2
; NOVSX-NEXT:    isel r3, r3, r4, un
; NOVSX-NEXT:    blr
  %cond = call i1 @llvm.experimental.constrained.fcmps.f64(
                                               double %f1, double %f2, metadata !"uno",
                                               metadata !"fpexcept.strict") #0
  %res = select i1 %cond, i32 %a, i32 %b
  ret i32 %res
}

define i32 @fcmp_olt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_olt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __ltkf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_olt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_olt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __ltkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"olt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ole_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ole_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __lekf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ole_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    xscmpuqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, gt, 4*cr1+gt
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ole_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __lekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ole", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ogt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ogt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gtkf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ogt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ogt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gtkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ogt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_oge_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_oge_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gekf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_oge_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    xscmpuqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, lt, 4*cr1+lt
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_oge_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"oge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_oeq_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_oeq_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_oeq_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_oeq_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"oeq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_one_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_one_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -176(r1)
; P8-NEXT:    li r3, 128
; P8-NEXT:    std r30, 160(r1) # 8-byte Folded Spill
; P8-NEXT:    stxvd2x v30, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    li r3, 144
; P8-NEXT:    vmr v30, v2
; P8-NEXT:    stxvd2x v31, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    vmr v31, v3
; P8-NEXT:    bl __unordkf2
; P8-NEXT:    nop
; P8-NEXT:    vmr v2, v30
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    vmr v3, v31
; P8-NEXT:    srwi r30, r3, 5
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    li r4, 144
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    lxvd2x v31, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    li r4, 128
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    lxvd2x v30, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    and r3, r30, r3
; P8-NEXT:    ld r30, 160(r1) # 8-byte Folded Reload
; P8-NEXT:    addi r1, r1, 176
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_one_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    xscmpuqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, eq, 4*cr1+eq
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_one_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r26, -48(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r27, -40(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r28, -32(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r29, -24(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r30, -16(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -80(r1)
; NOVSX-NEXT:    mr r30, r6
; NOVSX-NEXT:    mr r29, r5
; NOVSX-NEXT:    mr r28, r4
; NOVSX-NEXT:    mr r27, r3
; NOVSX-NEXT:    bl __unordkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    mr r4, r28
; NOVSX-NEXT:    mr r5, r29
; NOVSX-NEXT:    mr r6, r30
; NOVSX-NEXT:    srwi r26, r3, 5
; NOVSX-NEXT:    mr r3, r27
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    and r3, r26, r3
; NOVSX-NEXT:    addi r1, r1, 80
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    ld r30, -16(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r29, -24(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r28, -32(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r27, -40(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r26, -48(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"one", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ult_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ult_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gekf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ult_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ult_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ult", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ule_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ule_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gtkf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ule_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    iselgt r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ule_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gtkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ule", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ugt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ugt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __lekf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ugt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ugt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __lekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ugt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_uge_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_uge_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __ltkf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_uge_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    isellt r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_uge_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __ltkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"uge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ueq_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_ueq_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -176(r1)
; P8-NEXT:    li r3, 128
; P8-NEXT:    std r30, 160(r1) # 8-byte Folded Spill
; P8-NEXT:    stxvd2x v30, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    li r3, 144
; P8-NEXT:    vmr v30, v2
; P8-NEXT:    stxvd2x v31, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    vmr v31, v3
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    vmr v2, v30
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    vmr v3, v31
; P8-NEXT:    srwi r30, r3, 5
; P8-NEXT:    bl __unordkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    li r4, 144
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    lxvd2x v31, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    li r4, 128
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    lxvd2x v30, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    or r3, r3, r30
; P8-NEXT:    ld r30, 160(r1) # 8-byte Folded Reload
; P8-NEXT:    addi r1, r1, 176
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ueq_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ueq_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r26, -48(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r27, -40(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r28, -32(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r29, -24(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r30, -16(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -80(r1)
; NOVSX-NEXT:    mr r30, r6
; NOVSX-NEXT:    mr r29, r5
; NOVSX-NEXT:    mr r28, r4
; NOVSX-NEXT:    mr r27, r3
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    mr r4, r28
; NOVSX-NEXT:    mr r5, r29
; NOVSX-NEXT:    mr r6, r30
; NOVSX-NEXT:    srwi r26, r3, 5
; NOVSX-NEXT:    mr r3, r27
; NOVSX-NEXT:    bl __unordkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    or r3, r3, r26
; NOVSX-NEXT:    addi r1, r1, 80
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    ld r30, -16(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r29, -24(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r28, -32(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r27, -40(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r26, -48(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"ueq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_une_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmp_une_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __nekf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_une_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpuqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    iseleq r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_une_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __nekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.f128(fp128 %a, fp128 %b, metadata !"une", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_olt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_olt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __ltkf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_olt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    isellt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_olt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __ltkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"olt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ole_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ole_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __lekf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ole_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    xscmpoqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, gt, 4*cr1+gt
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ole_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __lekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ole", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ogt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ogt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gtkf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ogt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    iselgt r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ogt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gtkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ogt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_oge_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_oge_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gekf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_oge_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    xscmpoqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, lt, 4*cr1+lt
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_oge_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"oge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_oeq_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_oeq_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_oeq_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 0
; P9-NEXT:    li r4, 1
; P9-NEXT:    iseleq r3, r4, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_oeq_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"oeq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_one_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_one_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -176(r1)
; P8-NEXT:    li r3, 128
; P8-NEXT:    std r30, 160(r1) # 8-byte Folded Spill
; P8-NEXT:    stxvd2x v30, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    li r3, 144
; P8-NEXT:    vmr v30, v2
; P8-NEXT:    stxvd2x v31, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    vmr v31, v3
; P8-NEXT:    bl __unordkf2
; P8-NEXT:    nop
; P8-NEXT:    vmr v2, v30
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    vmr v3, v31
; P8-NEXT:    srwi r30, r3, 5
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    li r4, 144
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    lxvd2x v31, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    li r4, 128
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    lxvd2x v30, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    and r3, r30, r3
; P8-NEXT:    ld r30, 160(r1) # 8-byte Folded Reload
; P8-NEXT:    addi r1, r1, 176
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_one_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    xscmpoqp cr1, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, 4*cr1+un
; P9-NEXT:    crnor 4*cr5+gt, eq, 4*cr1+eq
; P9-NEXT:    crnand 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_one_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r26, -48(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r27, -40(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r28, -32(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r29, -24(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r30, -16(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -80(r1)
; NOVSX-NEXT:    mr r30, r6
; NOVSX-NEXT:    mr r29, r5
; NOVSX-NEXT:    mr r28, r4
; NOVSX-NEXT:    mr r27, r3
; NOVSX-NEXT:    bl __unordkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    mr r4, r28
; NOVSX-NEXT:    mr r5, r29
; NOVSX-NEXT:    mr r6, r30
; NOVSX-NEXT:    srwi r26, r3, 5
; NOVSX-NEXT:    mr r3, r27
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    and r3, r26, r3
; NOVSX-NEXT:    addi r1, r1, 80
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    ld r30, -16(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r29, -24(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r28, -32(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r27, -40(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r26, -48(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"one", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ult_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ult_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gekf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ult_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, lt, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ult_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ult", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ule_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ule_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __gtkf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ule_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    iselgt r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ule_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __gtkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ule", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ugt_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ugt_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __lekf2
; P8-NEXT:    nop
; P8-NEXT:    extsw r3, r3
; P8-NEXT:    neg r3, r3
; P8-NEXT:    rldicl r3, r3, 1, 63
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ugt_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, gt, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ugt_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __lekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    extsw r3, r3
; NOVSX-NEXT:    neg r3, r3
; NOVSX-NEXT:    rldicl r3, r3, 1, 63
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ugt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_uge_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_uge_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __ltkf2
; P8-NEXT:    nop
; P8-NEXT:    rlwinm r3, r3, 1, 31, 31
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_uge_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    isellt r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_uge_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __ltkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    rlwinm r3, r3, 1, 31, 31
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"uge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ueq_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_ueq_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -176(r1)
; P8-NEXT:    li r3, 128
; P8-NEXT:    std r30, 160(r1) # 8-byte Folded Spill
; P8-NEXT:    stxvd2x v30, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    li r3, 144
; P8-NEXT:    vmr v30, v2
; P8-NEXT:    stxvd2x v31, r1, r3 # 16-byte Folded Spill
; P8-NEXT:    vmr v31, v3
; P8-NEXT:    bl __eqkf2
; P8-NEXT:    nop
; P8-NEXT:    vmr v2, v30
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    vmr v3, v31
; P8-NEXT:    srwi r30, r3, 5
; P8-NEXT:    bl __unordkf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    li r4, 144
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    lxvd2x v31, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    li r4, 128
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    lxvd2x v30, r1, r4 # 16-byte Folded Reload
; P8-NEXT:    or r3, r3, r30
; P8-NEXT:    ld r30, 160(r1) # 8-byte Folded Reload
; P8-NEXT:    addi r1, r1, 176
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ueq_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, eq, un
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ueq_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r26, -48(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r27, -40(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r28, -32(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r29, -24(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r30, -16(r1) # 8-byte Folded Spill
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -80(r1)
; NOVSX-NEXT:    mr r30, r6
; NOVSX-NEXT:    mr r29, r5
; NOVSX-NEXT:    mr r28, r4
; NOVSX-NEXT:    mr r27, r3
; NOVSX-NEXT:    bl __eqkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    mr r4, r28
; NOVSX-NEXT:    mr r5, r29
; NOVSX-NEXT:    mr r6, r30
; NOVSX-NEXT:    srwi r26, r3, 5
; NOVSX-NEXT:    mr r3, r27
; NOVSX-NEXT:    bl __unordkf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    or r3, r3, r26
; NOVSX-NEXT:    addi r1, r1, 80
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    ld r30, -16(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r29, -24(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r28, -32(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r27, -40(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    ld r26, -48(r1) # 8-byte Folded Reload
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"ueq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_une_f128(fp128 %a, fp128 %b) #0 {
; P8-LABEL: fcmps_une_f128:
; P8:       # %bb.0:
; P8-NEXT:    mflr r0
; P8-NEXT:    std r0, 16(r1)
; P8-NEXT:    stdu r1, -112(r1)
; P8-NEXT:    bl __nekf2
; P8-NEXT:    nop
; P8-NEXT:    cntlzw r3, r3
; P8-NEXT:    srwi r3, r3, 5
; P8-NEXT:    xori r3, r3, 1
; P8-NEXT:    addi r1, r1, 112
; P8-NEXT:    ld r0, 16(r1)
; P8-NEXT:    mtlr r0
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_une_f128:
; P9:       # %bb.0:
; P9-NEXT:    xscmpoqp cr0, v2, v3
; P9-NEXT:    li r3, 1
; P9-NEXT:    iseleq r3, 0, r3
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_une_f128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    mflr r0
; NOVSX-NEXT:    std r0, 16(r1)
; NOVSX-NEXT:    stdu r1, -32(r1)
; NOVSX-NEXT:    bl __nekf2
; NOVSX-NEXT:    nop
; NOVSX-NEXT:    cntlzw r3, r3
; NOVSX-NEXT:    srwi r3, r3, 5
; NOVSX-NEXT:    xori r3, r3, 1
; NOVSX-NEXT:    addi r1, r1, 32
; NOVSX-NEXT:    ld r0, 16(r1)
; NOVSX-NEXT:    mtlr r0
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.f128(fp128 %a, fp128 %b, metadata !"une", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_olt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_olt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f3
; P8-NEXT:    fcmpu cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; P8-NEXT:    crandc 4*cr5+gt, lt, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_olt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; P9-NEXT:    crandc 4*cr5+gt, lt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_olt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f3
; NOVSX-NEXT:    fcmpu cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, lt, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"olt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ole_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ole_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+gt
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ole_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, gt
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ole_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+gt
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ole", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ogt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ogt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f3
; P8-NEXT:    fcmpu cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; P8-NEXT:    crandc 4*cr5+gt, gt, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ogt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; P9-NEXT:    crandc 4*cr5+gt, gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ogt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f3
; NOVSX-NEXT:    fcmpu cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; NOVSX-NEXT:    crandc 4*cr5+gt, gt, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ogt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_oge_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_oge_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+lt
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_oge_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, lt
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_oge_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+lt
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"oge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_oeq_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_oeq_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f1, f3
; P8-NEXT:    fcmpu cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; P8-NEXT:    crandc 4*cr5+gt, eq, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_oeq_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; P9-NEXT:    crandc 4*cr5+gt, eq, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_oeq_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f1, f3
; NOVSX-NEXT:    fcmpu cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; NOVSX-NEXT:    crandc 4*cr5+gt, eq, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"oeq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_one_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_one_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+eq
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_one_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, eq
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_one_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+eq
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"one", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ult_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ult_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+lt, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ult_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+lt, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, lt, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ult_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+lt, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ult", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ule_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ule_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ule_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    fcmpu cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; P9-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ule_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ule", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ugt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ugt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+gt, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ugt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+gt, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, gt, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ugt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+gt, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ugt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_uge_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_uge_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_uge_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    fcmpu cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; P9-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_uge_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"uge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_ueq_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_ueq_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+eq, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_ueq_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f1, f3
; P9-NEXT:    fcmpu cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+eq, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, eq, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_ueq_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+eq, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ueq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmp_une_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmp_une_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpu cr0, f2, f4
; P8-NEXT:    fcmpu cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmp_une_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpu cr0, f2, f4
; P9-NEXT:    fcmpu cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmp_une_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpu cr0, f2, f4
; NOVSX-NEXT:    fcmpu cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"une", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_olt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_olt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f3
; P8-NEXT:    fcmpo cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; P8-NEXT:    crandc 4*cr5+gt, lt, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_olt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; P9-NEXT:    crandc 4*cr5+gt, lt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_olt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f3
; NOVSX-NEXT:    fcmpo cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, lt, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"olt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ole_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ole_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, gt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+gt
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ole_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, gt
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, gt
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ole_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, gt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+gt
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ole", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ogt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ogt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f3
; P8-NEXT:    fcmpo cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; P8-NEXT:    crandc 4*cr5+gt, gt, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ogt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; P9-NEXT:    crandc 4*cr5+gt, gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ogt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f3
; NOVSX-NEXT:    fcmpo cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+gt
; NOVSX-NEXT:    crandc 4*cr5+gt, gt, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ogt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_oge_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_oge_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, lt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+lt
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_oge_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, lt
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, lt
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_oge_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, lt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+lt
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"oge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_oeq_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_oeq_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f1, f3
; P8-NEXT:    fcmpo cr1, f2, f4
; P8-NEXT:    li r3, 1
; P8-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; P8-NEXT:    crandc 4*cr5+gt, eq, eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_oeq_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; P9-NEXT:    crandc 4*cr5+gt, eq, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_oeq_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f1, f3
; NOVSX-NEXT:    fcmpo cr1, f2, f4
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crand 4*cr5+lt, eq, 4*cr1+eq
; NOVSX-NEXT:    crandc 4*cr5+gt, eq, eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"oeq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_one_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_one_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crnor 4*cr5+lt, un, eq
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+eq
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_one_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    crnor 4*cr5+lt, un, eq
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    crnor 4*cr5+gt, un, eq
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_one_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crnor 4*cr5+lt, un, eq
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+un, 4*cr1+eq
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"one", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ult_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ult_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, lt, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+lt, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ult_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+lt, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, lt, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ult_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, lt, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+lt, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ult", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ule_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ule_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ule_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    fcmpo cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; P9-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ule_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, gt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ule", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ugt_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ugt_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, gt, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+gt, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ugt_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+gt, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, gt, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ugt_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, gt, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+gt, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ugt", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_uge_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_uge_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; P8-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_uge_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    fcmpo cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; P9-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_uge_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, lt
; NOVSX-NEXT:    crnor 4*cr5+gt, 4*cr1+lt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"uge", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_ueq_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_ueq_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    cror 4*cr5+lt, eq, un
; P8-NEXT:    cror 4*cr5+gt, 4*cr1+eq, 4*cr1+un
; P8-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; P8-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_ueq_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f1, f3
; P9-NEXT:    fcmpo cr1, f2, f4
; P9-NEXT:    li r3, 1
; P9-NEXT:    cror 4*cr5+lt, 4*cr1+eq, 4*cr1+un
; P9-NEXT:    cror 4*cr5+gt, eq, un
; P9-NEXT:    crand 4*cr5+lt, eq, 4*cr5+lt
; P9-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, eq
; P9-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_ueq_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    cror 4*cr5+lt, eq, un
; NOVSX-NEXT:    cror 4*cr5+gt, 4*cr1+eq, 4*cr1+un
; NOVSX-NEXT:    crand 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    crandc 4*cr5+gt, 4*cr5+gt, 4*cr1+eq
; NOVSX-NEXT:    crnor 4*cr5+lt, 4*cr5+gt, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"ueq", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

define i32 @fcmps_une_ppcf128(ppc_fp128 %a, ppc_fp128 %b) #0 {
; P8-LABEL: fcmps_une_ppcf128:
; P8:       # %bb.0:
; P8-NEXT:    fcmpo cr0, f2, f4
; P8-NEXT:    fcmpo cr1, f1, f3
; P8-NEXT:    li r3, 1
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; P8-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P8-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P8-NEXT:    blr
;
; P9-LABEL: fcmps_une_ppcf128:
; P9:       # %bb.0:
; P9-NEXT:    fcmpo cr0, f2, f4
; P9-NEXT:    fcmpo cr1, f1, f3
; P9-NEXT:    li r3, 1
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; P9-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; P9-NEXT:    isel r3, 0, r3, 4*cr5+lt
; P9-NEXT:    blr
;
; NOVSX-LABEL: fcmps_une_ppcf128:
; NOVSX:       # %bb.0:
; NOVSX-NEXT:    fcmpo cr0, f2, f4
; NOVSX-NEXT:    fcmpo cr1, f1, f3
; NOVSX-NEXT:    li r3, 1
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, eq
; NOVSX-NEXT:    crandc 4*cr5+lt, 4*cr1+eq, 4*cr5+lt
; NOVSX-NEXT:    isel r3, 0, r3, 4*cr5+lt
; NOVSX-NEXT:    blr
  %cmp = call i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128 %a, ppc_fp128 %b, metadata !"une", metadata !"fpexcept.strict") #0
  %conv = zext i1 %cmp to i32
  ret i32 %conv
}

attributes #0 = { strictfp nounwind }

declare i1 @llvm.experimental.constrained.fcmp.f32(float, float, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmp.f64(double, double, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmps.f32(float, float, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmps.f64(double, double, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmps.f128(fp128, fp128, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmp.f128(fp128, fp128, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmps.ppcf128(ppc_fp128, ppc_fp128, metadata, metadata)
declare i1 @llvm.experimental.constrained.fcmp.ppcf128(ppc_fp128, ppc_fp128, metadata, metadata)
