LLVM 19.0.0git
Macros | 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/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/Support/CommandLine.h"

Go to the source code of this file.

Macros

#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]
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "mips-lower"

Definition at line 24 of file Mips16ISelLowering.cpp.

◆ MAX_STUB_NUMBER

#define MAX_STUB_NUMBER   10

Definition at line 339 of file Mips16ISelLowering.cpp.

◆ P [1/5]

#define P   P_

Definition at line 358 of file Mips16ISelLowering.cpp.

◆ P [2/5]

#define P   P_ "sf_"

Definition at line 358 of file Mips16ISelLowering.cpp.

◆ P [3/5]

#define P   P_ "df_"

Definition at line 358 of file Mips16ISelLowering.cpp.

◆ P [4/5]

#define P   P_ "sc_"

Definition at line 358 of file Mips16ISelLowering.cpp.

◆ P [5/5]

#define P   P_ "dc_"

Definition at line 358 of file Mips16ISelLowering.cpp.

◆ P_

#define P_   "__mips16_call_stub_"

Definition at line 338 of file Mips16ISelLowering.cpp.

◆ T

#define T   P "0" , T1

◆ T1

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

Definition at line 340 of file Mips16ISelLowering.cpp.

Function Documentation

◆ Mips16WhichOp8uOr16simm()

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

Definition at line 742 of file Mips16ISelLowering.cpp.

References llvm_unreachable.

Variable Documentation

◆ dcMips16Helper

char const* dcMips16Helper[MAX_STUB_NUMBER+1]
static
Initial value:
=
{ T }

Definition at line 359 of file Mips16ISelLowering.cpp.

◆ dfMips16Helper

char const* dfMips16Helper[MAX_STUB_NUMBER+1]
static
Initial value:
=
{ T }

Definition at line 351 of file Mips16ISelLowering.cpp.

◆ DontExpandCondPseudos16

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) ( "mips16-dont-expand-cond-pseudo"  ,
cl::init(false)  ,
cl::desc("Don't expand conditional move related " "pseudos for Mips 16")  ,
cl::Hidden   
)
static

◆ HardFloatLibCalls

const Mips16Libcall HardFloatLibCalls[]
static

Definition at line 57 of file Mips16ISelLowering.cpp.

◆ Mips16IntrinsicHelper

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 94 of file Mips16ISelLowering.cpp.

◆ scMips16Helper

char const* scMips16Helper[MAX_STUB_NUMBER+1]
static
Initial value:
=
{ T }

Definition at line 355 of file Mips16ISelLowering.cpp.

◆ sfMips16Helper

char const* sfMips16Helper[MAX_STUB_NUMBER+1]
static
Initial value:
=
{ T }

Definition at line 347 of file Mips16ISelLowering.cpp.

◆ vMips16Helper

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

Definition at line 343 of file Mips16ISelLowering.cpp.