LLVM  4.0.0
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::X86InstrFMA3Info Class Reference

This class provides information about all existing FMA3 opcodes. More...

#include <X86InstrFMA3Info.h>

Classes

class  rm_iterator
 Iterator that is used to walk on FMA register opcodes having memory form equivalents. More...
 

Public Member Functions

 X86InstrFMA3Info ()
 Constructor. Just creates an object of the class. More...
 
 ~X86InstrFMA3Info ()
 Destructor. Deallocates the memory used for FMA3 Groups. More...
 

Static Public Member Functions

static X86InstrFMA3InfogetX86InstrFMA3Info ()
 Returns the reference to an object of this class. More...
 
static const X86InstrFMA3GroupgetFMA3Group (unsigned Opcode)
 Returns a reference to a group of FMA3 opcodes to where the given Opcode is included. More...
 
static bool isFMA3 (unsigned Opcode)
 Returns true iff the given Opcode is recognized as FMA3 by this class. More...
 
static rm_iterator rm_begin ()
 Returns rm_iterator pointing to the first entry of OpcodeToGroup map with a register FMA opcode having memory form opcode equivalent. More...
 
static rm_iterator rm_end ()
 Returns the last rm_iterator. More...
 

Detailed Description

This class provides information about all existing FMA3 opcodes.

Definition at line 166 of file X86InstrFMA3Info.h.

Constructor & Destructor Documentation

llvm::X86InstrFMA3Info::X86InstrFMA3Info ( )
inline

Constructor. Just creates an object of the class.

Definition at line 204 of file X86InstrFMA3Info.h.

llvm::X86InstrFMA3Info::~X86InstrFMA3Info ( )
inline

Destructor. Deallocates the memory used for FMA3 Groups.

Definition at line 207 of file X86InstrFMA3Info.h.

References E, G, and I.

Member Function Documentation

static const X86InstrFMA3Group* llvm::X86InstrFMA3Info::getFMA3Group ( unsigned  Opcode)
inlinestatic

Returns a reference to a group of FMA3 opcodes to where the given Opcode is included.

If the given Opcode is not recognized as FMA3 and not included into any FMA3 group, then nullptr is returned.

Definition at line 222 of file X86InstrFMA3Info.h.

References getX86InstrFMA3Info(), and I.

Referenced by llvm::X86InstrInfo::commuteInstructionImpl(), llvm::X86InstrInfo::findCommutedOpIndices(), and isFMA3().

X86InstrFMA3Info * X86InstrFMA3Info::getX86InstrFMA3Info ( )
static

Returns the reference to an object of this class.

It is assumed that only one object may exist.

Definition at line 26 of file X86InstrFMA3Info.cpp.

References X86InstrFMA3InfoObj.

Referenced by getFMA3Group(), llvm::X86InstrFMA3Info::rm_iterator::operator++(), rm_begin(), and rm_end().

static bool llvm::X86InstrFMA3Info::isFMA3 ( unsigned  Opcode)
inlinestatic

Returns true iff the given Opcode is recognized as FMA3 by this class.

Definition at line 236 of file X86InstrFMA3Info.h.

References getFMA3Group().

static rm_iterator llvm::X86InstrFMA3Info::rm_begin ( )
inlinestatic

Returns rm_iterator pointing to the first entry of OpcodeToGroup map with a register FMA opcode having memory form opcode equivalent.

Definition at line 292 of file X86InstrFMA3Info.h.

References E, G, llvm::X86InstrFMA3Group::getMemOpcode(), getX86InstrFMA3Info(), and I.

Referenced by llvm::X86InstrInfo::X86InstrInfo().

static rm_iterator llvm::X86InstrFMA3Info::rm_end ( )
inlinestatic

Returns the last rm_iterator.

Definition at line 308 of file X86InstrFMA3Info.h.

References getX86InstrFMA3Info().

Referenced by llvm::X86InstrInfo::X86InstrInfo().


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