LLVM
8.0.1
lib
Target
Mips
Mips16HardFloatInfo.h
Go to the documentation of this file.
1
//===---- Mips16HardFloatInfo.h for Mips16 Hard Float --------===//
2
//
3
// The LLVM Compiler Infrastructure
4
//
5
// This file is distributed under the University of Illinois Open Source
6
// License. See LICENSE.TXT for details.
7
//
8
//===----------------------------------------------------------------------===//
9
//
10
// This file defines some data structures relevant to the implementation of
11
// Mips16 hard float.
12
//
13
//
14
//===----------------------------------------------------------------------===//
15
16
#ifndef LLVM_LIB_TARGET_MIPS_MIPS16HARDFLOATINFO_H
17
#define LLVM_LIB_TARGET_MIPS_MIPS16HARDFLOATINFO_H
18
19
namespace
llvm
{
20
21
namespace
Mips16HardFloatInfo {
22
23
// Return types that matter for hard float are:
24
// float, double, complex float, and complex double
25
//
26
enum
FPReturnVariant
{
FRet
,
DRet
,
CFRet
,
CDRet
,
NoFPRet
};
27
28
//
29
// Parameter type that matter are float, (float, float), (float, double),
30
// double, (double, double), (double, float)
31
//
32
enum
FPParamVariant
{
FSig
,
FFSig
,
FDSig
,
DSig
,
DDSig
,
DFSig
,
NoSig
};
33
34
struct
FuncSignature
{
35
FPParamVariant
ParamSig
;
36
FPReturnVariant
RetSig
;
37
};
38
39
struct
FuncNameSignature
{
40
const
char
*
Name
;
41
FuncSignature
Signature
;
42
};
43
44
extern
const
FuncNameSignature
PredefinedFuncs
[];
45
46
extern
FuncSignature
const
*
findFuncSignature
(
const
char
*
name
);
47
}
48
}
49
50
#endif
llvm
This class represents lattice values for constants.
Definition:
AllocatorList.h:24
llvm::Mips16HardFloatInfo::FuncNameSignature::Name
const char * Name
Definition:
Mips16HardFloatInfo.h:40
llvm::Mips16HardFloatInfo::FuncNameSignature
Definition:
Mips16HardFloatInfo.h:39
llvm::Mips16HardFloatInfo::FSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::DSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::FFSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::FuncNameSignature::Signature
FuncSignature Signature
Definition:
Mips16HardFloatInfo.h:41
llvm::Mips16HardFloatInfo::PredefinedFuncs
const FuncNameSignature PredefinedFuncs[]
Definition:
Mips16HardFloatInfo.cpp:22
llvm::Mips16HardFloatInfo::CFRet
Definition:
Mips16HardFloatInfo.h:26
llvm::Mips16HardFloatInfo::CDRet
Definition:
Mips16HardFloatInfo.h:26
llvm::Mips16HardFloatInfo::NoSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::FPReturnVariant
FPReturnVariant
Definition:
Mips16HardFloatInfo.h:26
llvm::Mips16HardFloatInfo::DDSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::DFSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::findFuncSignature
FuncSignature const * findFuncSignature(const char *name)
Definition:
Mips16HardFloatInfo.cpp:38
llvm::Mips16HardFloatInfo::FuncSignature
Definition:
Mips16HardFloatInfo.h:34
llvm::Mips16HardFloatInfo::FRet
Definition:
Mips16HardFloatInfo.h:26
name
static const char * name
Definition:
PPCLoopPreIncPrep.cpp:115
llvm::Mips16HardFloatInfo::FPParamVariant
FPParamVariant
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::DRet
Definition:
Mips16HardFloatInfo.h:26
llvm::Mips16HardFloatInfo::NoFPRet
Definition:
Mips16HardFloatInfo.h:26
llvm::Mips16HardFloatInfo::FuncSignature::ParamSig
FPParamVariant ParamSig
Definition:
Mips16HardFloatInfo.h:35
llvm::Mips16HardFloatInfo::FDSig
Definition:
Mips16HardFloatInfo.h:32
llvm::Mips16HardFloatInfo::FuncSignature::RetSig
FPReturnVariant RetSig
Definition:
Mips16HardFloatInfo.h:36
Generated on Sun Dec 20 2020 13:56:56 for LLVM by
1.8.13