LLVM API Documentation
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/Constants.h"
#include "llvm/GlobalValue.h"
#include "llvm/Intrinsics.h"
#include "llvm/Assembly/Writer.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/StringExtras.h"
#include <iostream>
#include <set>
#include <cmath>
#include <algorithm>
Include dependency graph for SelectionDAG.cpp:
Go to the source code of this file.
Functions | |
static bool | isCommutativeBinOp (unsigned Opcode) |
static bool | isInvertibleForFree (SDOperand N) |
static int | isSignedOp (ISD::CondCode Opcode) |
static void | DumpNodes (const SDNode *N, unsigned indent, const SelectionDAG *G) |
static void DumpNodes | ( | const SDNode * | N, | |
unsigned | indent, | |||
const SelectionDAG * | G | |||
) | [static] |
Definition at line 3065 of file SelectionDAG.cpp.
References llvm::SDNode::dump(), G, llvm::SDNode::getNumOperands(), llvm::SDNode::getOperand(), llvm::SDNode::hasOneUse(), and llvm::SDOperand::Val.
Referenced by llvm::SelectionDAG::dump().
static bool isCommutativeBinOp | ( | unsigned | Opcode | ) | [static] |
Definition at line 33 of file SelectionDAG.cpp.
References ADD, AND, llvm::ISD::FADD, llvm::ISD::FMUL, MUL, llvm::ISD::MULHS, llvm::ISD::MULHU, OR, and XOR.
static bool isInvertibleForFree | ( | SDOperand | N | ) | [static] |
Definition at line 50 of file SelectionDAG.cpp.
References llvm::SDNode::getOpcode(), llvm::SDNode::hasOneUse(), llvm::X86ISD::SETCC, and llvm::SDOperand::Val.
static int isSignedOp | ( | ISD::CondCode | Opcode | ) | [static] |
isSignedOp - For an integer comparison, return 1 if the comparison is a signed operation and 2 if the result is an unsigned comparison. Return zero if the operation does not depend on the sign of the input (setne and seteq).
Definition at line 189 of file SelectionDAG.cpp.
References llvm::ISD::SETEQ, llvm::ISD::SETGE, llvm::ISD::SETGT, llvm::ISD::SETLE, llvm::ISD::SETLT, llvm::ISD::SETNE, llvm::ISD::SETUGE, llvm::ISD::SETUGT, llvm::ISD::SETULE, and llvm::ISD::SETULT.
Referenced by llvm::ISD::getSetCCAndOperation(), and llvm::ISD::getSetCCOrOperation().