# Module Llvm.Fcmp

    module Fcmp: sig .. end

The predicate for a floating-point comparison (`fcmp`) instruction. Ordered means that neither operand is a QNAN while unordered means that either operand may be a QNAN. See the `llvm::FCmpInst::Predicate` enumeration.

    type t =

`|` | `False` | `(*` | Always false | `*)`
`|` | `Oeq` | `(*` | Ordered and equal | `*)`
`|` | `Ogt` | `(*` | Ordered and greater than | `*)`
`|` | `Oge` | `(*` | Ordered and greater or equal | `*)`
`|` | `Olt` | `(*` | Ordered and less than | `*)`
`|` | `Ole` | `(*` | Ordered and less or equal | `*)`
`|` | `One` | `(*` | Ordered and not equal | `*)`
`|` | `Ord` | `(*` | Ordered (no operand is NaN) | `*)`
`|` | `Uno` | `(*` | Unordered (one operand at least is NaN) | `*)`
`|` | `Ueq` | `(*` | Unordered and equal | `*)`
`|` | `Ugt` | `(*` | Unordered and greater than | `*)`
`|` | `Uge` | `(*` | Unordered and greater or equal | `*)`
`|` | `Ult` | `(*` | Unordered and less than | `*)`
`|` | `Ule` | `(*` | Unordered and less or equal | `*)`
`|` | `Une` | `(*` | Unordered and not equal | `*)`
`|` | `True` | `(*` | Always true | `*)`