LLVM  4.0.0
Public Types | Public Member Functions | Friends | List of all members
llvm::FastMathFlags Class Reference

Convenience struct for specifying and reasoning about fast-math flags. More...

#include <Operator.h>

Public Types

enum  {
  UnsafeAlgebra = (1 << 0), NoNaNs = (1 << 1), NoInfs = (1 << 2), NoSignedZeros = (1 << 3),
  AllowReciprocal = (1 << 4)
}
 

Public Member Functions

 FastMathFlags ()=default
 
bool any () const
 Whether any flag is set. More...
 
void clear ()
 Set all the flags to false. More...
 
bool noNaNs () const
 Flag queries. More...
 
bool noInfs () const
 
bool noSignedZeros () const
 
bool allowReciprocal () const
 
bool unsafeAlgebra () const
 
void setNoNaNs ()
 Flag setters. More...
 
void setNoInfs ()
 
void setNoSignedZeros ()
 
void setAllowReciprocal ()
 
void setUnsafeAlgebra ()
 
void operator&= (const FastMathFlags &OtherFlags)
 

Friends

class FPMathOperator
 

Detailed Description

Convenience struct for specifying and reasoning about fast-math flags.

Definition at line 168 of file Operator.h.

Member Enumeration Documentation

anonymous enum
Enumerator
UnsafeAlgebra 
NoNaNs 
NoInfs 
NoSignedZeros 
AllowReciprocal 

Definition at line 177 of file Operator.h.

Constructor & Destructor Documentation

llvm::FastMathFlags::FastMathFlags ( )
default

Member Function Documentation

bool llvm::FastMathFlags::allowReciprocal ( ) const
inline

Definition at line 197 of file Operator.h.

References fuzzer::Flags.

bool llvm::FastMathFlags::any ( ) const
inline

Whether any flag is set.

Definition at line 188 of file Operator.h.

References fuzzer::Flags.

void llvm::FastMathFlags::clear ( )
inline

Set all the flags to false.

Definition at line 191 of file Operator.h.

References fuzzer::Flags.

Referenced by llvm::IRBuilderBase::clearFastMathFlags().

bool llvm::FastMathFlags::noInfs ( ) const
inline

Definition at line 195 of file Operator.h.

References fuzzer::Flags.

Referenced by SimplifyFAddInst().

bool llvm::FastMathFlags::noNaNs ( ) const
inline
bool llvm::FastMathFlags::noSignedZeros ( ) const
inline
void llvm::FastMathFlags::operator&= ( const FastMathFlags OtherFlags)
inline

Definition at line 213 of file Operator.h.

References fuzzer::Flags.

void llvm::FastMathFlags::setAllowReciprocal ( )
inline

Definition at line 204 of file Operator.h.

References fuzzer::Flags.

Referenced by getDecodedFastMathFlags().

void llvm::FastMathFlags::setNoInfs ( )
inline

Definition at line 202 of file Operator.h.

References fuzzer::Flags.

Referenced by getDecodedFastMathFlags().

void llvm::FastMathFlags::setNoNaNs ( )
inline

Flag setters.

Definition at line 201 of file Operator.h.

References fuzzer::Flags.

Referenced by getDecodedFastMathFlags().

void llvm::FastMathFlags::setNoSignedZeros ( )
inline

Definition at line 203 of file Operator.h.

References fuzzer::Flags.

Referenced by getDecodedFastMathFlags().

void llvm::FastMathFlags::setUnsafeAlgebra ( )
inline
bool llvm::FastMathFlags::unsafeAlgebra ( ) const
inline

Definition at line 198 of file Operator.h.

References fuzzer::Flags.

Friends And Related Function Documentation

friend class FPMathOperator
friend

Definition at line 170 of file Operator.h.


The documentation for this class was generated from the following file: