LLVM
17.0.0git
|
#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< 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 const Mips16IntrinsicHelperType | Mips16IntrinsicHelper [] |
static const char * | vMips16Helper [MAX_STUB_NUMBER+1] |
static const char * | sfMips16Helper [MAX_STUB_NUMBER+1] |
static const char * | dfMips16Helper [MAX_STUB_NUMBER+1] |
static const char * | scMips16Helper [MAX_STUB_NUMBER+1] |
static const char * | dcMips16Helper [MAX_STUB_NUMBER+1] |
#define DEBUG_TYPE "mips-lower" |
Definition at line 24 of file Mips16ISelLowering.cpp.
#define MAX_STUB_NUMBER 10 |
Definition at line 339 of file Mips16ISelLowering.cpp.
This currently compiles esp xmm0 movsd esp eax eax esp ret We should use not the dag combiner This is because dagcombine2 needs to be able to see through the X86ISD::Wrapper which DAGCombine can t really do The code for turning x load into a single vector load is target independent and should be moved to the dag combiner The code for turning x load into a vector load can only handle a direct load from a global or a direct load from the stack It should be generalized to handle any load from P P_ |
Definition at line 358 of file Mips16ISelLowering.cpp.
#define P P_ "sf_" |
Definition at line 358 of file Mips16ISelLowering.cpp.
#define P P_ "df_" |
Definition at line 358 of file Mips16ISelLowering.cpp.
#define P P_ "sc_" |
Definition at line 358 of file Mips16ISelLowering.cpp.
#define P P_ "dc_" |
Definition at line 358 of file Mips16ISelLowering.cpp.
#define P_ "__mips16_call_stub_" |
Definition at line 338 of file Mips16ISelLowering.cpp.
Definition at line 341 of file Mips16ISelLowering.cpp.
Definition at line 340 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 743 of file Mips16ISelLowering.cpp.
References llvm::RISCVMatInt::Imm, and llvm_unreachable.
|
static |
Definition at line 359 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 351 of file Mips16ISelLowering.cpp.
|
static |
|
static |
Definition at line 57 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 94 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 355 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 347 of file Mips16ISelLowering.cpp.
|
static |
Definition at line 343 of file Mips16ISelLowering.cpp.