LLVM API Documentation
#include "X86.h"
#include "X86InstrInfo.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/EdgeBundles.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include <algorithm>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "x86-codegen" |
#define | ASSERT_SORTED(TABLE) |
Functions | |
STATISTIC (NumFXCH,"Number of fxch instructions inserted") | |
STATISTIC (NumFP,"Number of floating point instructions") | |
static unsigned | getFPReg (const MachineOperand &MO) |
static bool | TableIsSorted (const TableEntry *Table, unsigned NumEntries) |
static int | Lookup (const TableEntry *Table, unsigned N, unsigned Opcode) |
static unsigned | getConcreteOpcode (unsigned Opcode) |
Variables | |
static const TableEntry | OpcodeTable [] |
static const TableEntry | PopTable [] |
static const TableEntry | ForwardST0Table [] |
static const TableEntry | ReverseST0Table [] |
static const TableEntry | ForwardSTiTable [] |
static const TableEntry | ReverseSTiTable [] |
#define ASSERT_SORTED | ( | TABLE | ) |
Definition at line 606 of file X86FloatingPoint.cpp.
Referenced by getConcreteOpcode().
#define DEBUG_TYPE "x86-codegen" |
Definition at line 26 of file X86FloatingPoint.cpp.
Definition at line 786 of file X86FloatingPoint.cpp.
References llvm::array_lengthof(), ASSERT_SORTED, Lookup(), and OpcodeTable.
|
static |
getFPReg - Return the X86::FPx register number for the specified operand. For example, this returns 3 for X86::FP3.
Definition at line 330 of file X86FloatingPoint.cpp.
References llvm::MachineOperand::getReg(), and llvm::MachineOperand::isReg().
Definition at line 596 of file X86FloatingPoint.cpp.
Referenced by getConcreteOpcode(), llvm::ConstantUniqueMap< llvm::InlineAsmKeyType, const llvm::InlineAsmKeyType &, llvm::PointerType, llvm::InlineAsm >::getOrCreate(), llvm::ConstantAggrUniqueMap< ArrayType, ConstantArray >::getOrCreate(), llvm::ConstantArray::replaceUsesOfWithOnConstant(), and llvm::ConstantStruct::replaceUsesOfWithOnConstant().
STATISTIC | ( | NumFXCH | , |
"Number of fxch instructions inserted" | |||
) |
STATISTIC | ( | NumFP | , |
"Number of floating point instructions" | |||
) |
Definition at line 589 of file X86FloatingPoint.cpp.
|
static |
Definition at line 1086 of file X86FloatingPoint.cpp.
|
static |
Definition at line 1118 of file X86FloatingPoint.cpp.
|
static |
Definition at line 624 of file X86FloatingPoint.cpp.
Referenced by getConcreteOpcode().
|
static |
Definition at line 800 of file X86FloatingPoint.cpp.
|
static |
Definition at line 1102 of file X86FloatingPoint.cpp.
|
static |
Definition at line 1134 of file X86FloatingPoint.cpp.