LLVM API Documentation
#include "PPCISelLowering.h"
#include "PPCTargetMachine.h"
#include "llvm/ADT/VectorExtras.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/CodeGen/SSARegMap.h"
#include "llvm/Constants.h"
#include "llvm/Function.h"
#include "llvm/Intrinsics.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Target/TargetOptions.h"
Include dependency graph for PPCISelLowering.cpp:
Go to the source code of this file.
Functions | |
static bool | isFloatingPointZero (SDOperand Op) |
isFloatingPointZero - Return true if this is 0.0 or -0.0. | |
static bool | isConstantOrUndef (SDOperand Op, unsigned Val) |
static bool | isVMerge (SDNode *N, unsigned UnitSize, unsigned LHSStart, unsigned RHSStart) |
static bool | GetConstantBuildVectorBits (SDNode *BV, uint64_t VectorBits[2], uint64_t UndefBits[2]) |
static bool GetConstantBuildVectorBits | ( | SDNode * | BV, | |
uint64_t | VectorBits[2], | |||
uint64_t | UndefBits[2] | |||
) | [static] |
Definition at line 554 of file PPCISelLowering.cpp.
References llvm::MVT::f32, llvm::FloatToBits(), llvm::SDNode::getNumOperands(), llvm::SDNode::getOperand(), llvm::MVT::getSizeInBits(), llvm::SDOperand::getValueType(), U, and llvm::ISD::UNDEF.
Referenced by llvm::PPCTargetLowering::LowerOperation().
static bool isConstantOrUndef | ( | SDOperand | Op, | |
unsigned | Val | |||
) | [static] |
isConstantOrUndef - Op is either an undef node or a ConstantSDNode. Return true if Op is undef or if it matches the specified value.
Definition at line 276 of file PPCISelLowering.cpp.
References Op, and llvm::ISD::UNDEF.
Referenced by isVMerge(), llvm::PPC::isVPKUHUMShuffleMask(), llvm::PPC::isVPKUWUMShuffleMask(), and llvm::PPC::isVSLDOIShuffleMask().
static bool isFloatingPointZero | ( | SDOperand | Op | ) | [static] |
isFloatingPointZero - Return true if this is 0.0 or -0.0.
Definition at line 262 of file PPCISelLowering.cpp.
References CP, llvm::ISD::EXTLOAD, llvm::ISD::LOAD, and Op.
static bool isVMerge | ( | SDNode * | N, | |
unsigned | UnitSize, | |||
unsigned | LHSStart, | |||
unsigned | RHSStart | |||
) | [static] |
isVMerge - Common function, used to match vmrg* shuffles.
Definition at line 318 of file PPCISelLowering.cpp.
References llvm::ISD::BUILD_VECTOR, llvm::SDNode::getNumOperands(), llvm::SDNode::getOpcode(), llvm::SDNode::getOperand(), and isConstantOrUndef().
Referenced by llvm::PPC::isVMRGHShuffleMask(), and llvm::PPC::isVMRGLShuffleMask().