LLVM API Documentation
#include "llvm/Target/TargetLowering.h"
#include "llvm/Target/TargetData.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/DerivedTypes.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/MathExtras.h"
Include dependency graph for TargetLowering.cpp:
Go to the source code of this file.
Classes | |
struct | ms |
struct | mu |
Functions | |
static void | SetValueTypeAction (MVT::ValueType VT, TargetLowering::LegalizeAction Action, TargetLowering &TLI, MVT::ValueType *TransformToType, TargetLowering::ValueTypeActionImpl &ValueTypeActions) |
static ms | magic32 (int32_t d) |
static mu | magicu32 (uint32_t d) |
static ms | magic64 (int64_t d) |
static mu | magicu64 (uint64_t d) |
static ms magic32 | ( | int32_t | d | ) | [static] |
magic - calculate the magic numbers required to codegen an integer sdiv as a sequence of multiply and shifts. Requires that the divisor not be 0, 1, or -1.
Definition at line 1372 of file TargetLowering.cpp.
References ms::m, ms::s, and U.
Referenced by llvm::TargetLowering::BuildSDIV().
static ms magic64 | ( | int64_t | d | ) | [static] |
magic - calculate the magic numbers required to codegen an integer sdiv as a sequence of multiply and shifts. Requires that the divisor not be 0, 1, or -1.
Definition at line 1452 of file TargetLowering.cpp.
Referenced by llvm::TargetLowering::BuildSDIV().
static mu magicu32 | ( | uint32_t | d | ) | [static] |
magicu - calculate the magic numbers required to codegen an integer udiv as a sequence of multiply, add and shifts. Requires that the divisor not be 0.
Definition at line 1411 of file TargetLowering.cpp.
References mu::a, mu::m, and mu::s.
Referenced by llvm::TargetLowering::BuildUDIV().
static mu magicu64 | ( | uint64_t | d | ) | [static] |
magicu - calculate the magic numbers required to codegen an integer udiv as a sequence of multiply, add and shifts. Requires that the divisor not be 0.
Definition at line 1491 of file TargetLowering.cpp.
References mu::a, mu::m, and mu::s.
Referenced by llvm::TargetLowering::BuildUDIV().
static void SetValueTypeAction | ( | MVT::ValueType | VT, | |
TargetLowering::LegalizeAction | Action, | |||
TargetLowering & | TLI, | |||
MVT::ValueType * | TransformToType, | |||
TargetLowering::ValueTypeActionImpl & | ValueTypeActions | |||
) | [static] |
setValueTypeAction - Set the action for a particular value type. This assumes an action has not already been set for this value type.
Definition at line 50 of file TargetLowering.cpp.
References llvm::TargetLowering::Expand, llvm::MVT::f32, llvm::MVT::f64, llvm::MVT::i8, llvm::MVT::isFloatingPoint(), llvm::MVT::isInteger(), llvm::TargetLowering::isTypeLegal(), llvm::TargetLowering::Promote, llvm::TargetLowering::ValueTypeActionImpl::setTypeAction(), TLI, ValueTypeActions, and llvm::MVT::Vector.
Referenced by llvm::TargetLowering::computeRegisterProperties().