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().