LLVM API Documentation

Defines | Functions | Variables
Mips16ISelLowering.cpp File Reference
#include "Mips16ISelLowering.h"
#include "MCTargetDesc/MipsBaseInfo.h"
#include "Mips16HardFloatInfo.h"
#include "MipsMachineFunction.h"
#include "MipsRegisterInfo.h"
#include "MipsTargetMachine.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Target/TargetInstrInfo.h"
#include <string>
Include dependency graph for Mips16ISelLowering.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "mips-lower"
#define P_   "__mips16_call_stub_"
#define MAX_STUB_NUMBER   10
#define T1   P "1", P "2", 0, 0, P "5", P "6", 0, 0, P "9", P "10"
#define T   P "0" , T1
#define P   P_
#define P   P_ "sf_"
#define P   P_ "df_"
#define P   P_ "sc_"
#define P   P_ "dc_"

Functions

static unsigned Mips16WhichOp8uOr16simm (unsigned shortOp, unsigned longOp, int64_t Imm)

Variables

static cl::opt< boolDontExpandCondPseudos16 ("mips16-dont-expand-cond-pseudo", cl::init(false), cl::desc("Don't expand conditional move related ""pseudos for Mips 16"), cl::Hidden)
static const Mips16Libcall HardFloatLibCalls []
static const
Mips16IntrinsicHelperType 
Mips16IntrinsicHelper []
static char constvMips16Helper [MAX_STUB_NUMBER+1]
static char constsfMips16Helper [MAX_STUB_NUMBER+1]
static char constdfMips16Helper [MAX_STUB_NUMBER+1]
static char constscMips16Helper [MAX_STUB_NUMBER+1]
static char constdcMips16Helper [MAX_STUB_NUMBER+1]

Define Documentation

#define DEBUG_TYPE   "mips-lower"

Definition at line 27 of file Mips16ISelLowering.cpp.

#define MAX_STUB_NUMBER   10

Definition at line 350 of file Mips16ISelLowering.cpp.

#define P   P_

Definition at line 369 of file Mips16ISelLowering.cpp.

#define P   P_ "sf_"

Definition at line 369 of file Mips16ISelLowering.cpp.

#define P   P_ "df_"

Definition at line 369 of file Mips16ISelLowering.cpp.

#define P   P_ "sc_"

Definition at line 369 of file Mips16ISelLowering.cpp.

#define P   P_ "dc_"

Definition at line 369 of file Mips16ISelLowering.cpp.

#define P_   "__mips16_call_stub_"

Definition at line 349 of file Mips16ISelLowering.cpp.

#define T   P "0" , T1

Definition at line 352 of file Mips16ISelLowering.cpp.

Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::Factory::add(), llvm::ImutAVLFactory< ImutInfo >::add(), BinomialCoefficient(), llvm::BitsToDouble(), llvm::BitsToFloat(), llvm::APInt::bitsToFloat(), llvm::APInt::ceilLogBase2(), llvm::ConstantFoldBinaryInstruction(), llvm::SmallPtrSetImplBase::CopyFrom(), llvm::countLeadingZeros(), llvm::countTrailingZeros(), llvm::ImutAVLFactory< ImutInfo >::createNode(), createPPCMCCodeGenInfo(), llvm::CreateX86AsmInstrumentation(), createX86MCCodeGenInfo(), llvm::SpecificBumpPtrAllocator< SCC >::DestroyAll(), llvm::BlockFrequencyInfoImplBase::distributeMass(), llvm::AsmPrinter::doFinalization(), llvm::DoubleToBits(), llvm::DwarfDebug::DwarfDebug(), llvm::PointerUnion< const Value *, const PseudoSourceValue * >::dyn_cast(), llvm::PointerUnion3< PT1, PT2, PT3 >::dyn_cast(), llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::dyn_cast(), llvm::AsmPrinter::EmitFunctionBody(), llvm::AsmPrinter::EmitFunctionHeader(), llvm::AsmPrinter::EmitGlobalVariable(), llvm::MipsRegInfoRecord::EmitMipsOptionRecord(), llvm::f64AssignAAPCS(), fixupFPReturnAndCall(), llvm::FloatToBits(), llvm::PointerUnion3< PT1, PT2, PT3 >::get(), llvm::ConstantStruct::get(), llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::get(), llvm::Triple::get32BitArchVariant(), llvm::Triple::get64BitArchVariant(), llvm::object::MachOObjectFile::getArch(), llvm::ImutAVLFactory< ImutInfo >::getCanonicalTree(), llvm::MCContext::getCOFFSection(), llvm::GraphTraits< Type * >::getEntryNode(), llvm::GraphTraits< const Type * >::getEntryNode(), llvm::ImutAVLTree< ImutInfo >::getMaxElement(), llvm::DIRef< T >::getName(), getNamedRegionTimer(), getTypeString(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, false >::getValue(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, true >::getValue(), llvm::yaml::Node::getVerbatimTag(), llvm::APIntOps::GreatestCommonDivisor(), llvm::GreatestCommonDivisor64(), indexReallyValid(), llvm::SmallVectorImpl< MachineInstr * >::insert(), insertSinCosCall(), llvm::PointerUnion< const Value *, const PseudoSourceValue * >::is(), llvm::PointerUnion3< PT1, PT2, PT3 >::is(), llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::is(), llvm::ImutAVLFactory< ImutInfo >::isEmpty(), LowerCMP_SWAP(), llvm::PatternMatch::m_Br(), llvm::make_unique(), llvm::make_vector(), llvm::SmallVectorTemplateCommon< MachineInstr * >::max_size(), llvm::MipsTargetELFStreamer::MipsTargetELFStreamer(), llvm::NVPTXSubtarget::NVPTXSubtarget(), llvm::Optional< COFF::AuxiliarySectionDefinition >::operator=(), llvm::Optional< COFF::AuxiliarySectionDefinition >::Optional(), llvm::parseIR(), llvm::TimerGroup::print(), llvm::SmallVectorTemplateBase< Segment, isPodLike< Segment >::value >::push_back(), reduceToSingleValueType(), llvm::TargetRegistry::RegisterTarget(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::Factory::remove(), llvm::ImutAVLFactory< ImutInfo >::remove(), llvm::ImutAVLFactory< ImutInfo >::remove_internal(), removeConstantFactors(), llvm::ImutAVLFactory< ImutInfo >::removeMinBinding(), llvm::SmallVectorImpl< MachineInstr * >::resize(), llvm::DIRef< T >::resolve(), llvm::APIntOps::RoundDoubleToAPInt(), llvm::APInt::roundToDouble(), llvm::MachineFrameInfo::setFrameAddressIsTaken(), llvm::PMDataManager::setTopLevelManager(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, false >::setValue(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, true >::setValue(), llvm::SmallVectorTemplateBase< Segment, isPodLike< Segment >::value >::uninitialized_move(), llvm::UnrollLoop(), llvm::unwrap(), llvm::visitAll(), llvm::InstCombiner::visitFDiv(), and WriteTypeTable().

#define T1   P "1", P "2", 0, 0, P "5", P "6", 0, 0, P "9", P "10"

Function Documentation

static unsigned Mips16WhichOp8uOr16simm ( unsigned  shortOp,
unsigned  longOp,
int64_t  Imm 
) [static]

Variable Documentation

Initial value:
  { T }

Definition at line 370 of file Mips16ISelLowering.cpp.

Initial value:
  { T }

Definition at line 362 of file Mips16ISelLowering.cpp.

cl::opt<bool> DontExpandCondPseudos16("mips16-dont-expand-cond-pseudo", cl::init(false), cl::desc("Don't expand conditional move related ""pseudos for Mips 16"), cl::Hidden) [static]
const Mips16Libcall HardFloatLibCalls[] [static]

Definition at line 60 of file Mips16ISelLowering.cpp.

const Mips16IntrinsicHelperType Mips16IntrinsicHelper[] [static]
Initial value:
 {
  {"__fixunsdfsi", "__mips16_call_stub_2" },
  {"ceil",  "__mips16_call_stub_df_2"},
  {"ceilf", "__mips16_call_stub_sf_1"},
  {"copysign",  "__mips16_call_stub_df_10"},
  {"copysignf", "__mips16_call_stub_sf_5"},
  {"cos",  "__mips16_call_stub_df_2"},
  {"cosf", "__mips16_call_stub_sf_1"},
  {"exp2",  "__mips16_call_stub_df_2"},
  {"exp2f", "__mips16_call_stub_sf_1"},
  {"floor",  "__mips16_call_stub_df_2"},
  {"floorf", "__mips16_call_stub_sf_1"},
  {"log2",  "__mips16_call_stub_df_2"},
  {"log2f", "__mips16_call_stub_sf_1"},
  {"nearbyint",  "__mips16_call_stub_df_2"},
  {"nearbyintf", "__mips16_call_stub_sf_1"},
  {"rint",  "__mips16_call_stub_df_2"},
  {"rintf", "__mips16_call_stub_sf_1"},
  {"sin",  "__mips16_call_stub_df_2"},
  {"sinf", "__mips16_call_stub_sf_1"},
  {"sqrt",  "__mips16_call_stub_df_2"},
  {"sqrtf", "__mips16_call_stub_sf_1"},
  {"trunc",  "__mips16_call_stub_df_2"},
  {"truncf", "__mips16_call_stub_sf_1"},
}

Definition at line 97 of file Mips16ISelLowering.cpp.

Initial value:
  { T }

Definition at line 366 of file Mips16ISelLowering.cpp.

Initial value:
  { T }

Definition at line 358 of file Mips16ISelLowering.cpp.

char const* vMips16Helper[MAX_STUB_NUMBER+1] [static]
Initial value:
  {nullptr, T1 }

Definition at line 354 of file Mips16ISelLowering.cpp.