LLVM
8.0.1
lib
Target
PowerPC
PPCCCState.h
Go to the documentation of this file.
1
//===---- PPCCCState.h - CCState with PowerPC specific extensions -----------===//
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
#ifndef PPCCCSTATE_H
11
#define PPCCCSTATE_H
12
13
#include "
PPCISelLowering.h
"
14
#include "
llvm/ADT/SmallVector.h
"
15
#include "
llvm/CodeGen/CallingConvLower.h
"
16
17
namespace
llvm
{
18
19
class
PPCCCState
:
public
CCState
{
20
public
:
21
22
void
23
PreAnalyzeCallOperands
(
const
SmallVectorImpl<ISD::OutputArg>
&Outs);
24
void
25
PreAnalyzeFormalArguments
(
const
SmallVectorImpl<ISD::InputArg>
&
Ins
);
26
27
private
:
28
29
// Records whether the value has been lowered from an ppcf128.
30
SmallVector<bool, 4>
OriginalArgWasPPCF128;
31
32
public
:
33
PPCCCState
(
CallingConv::ID
CC,
bool
isVarArg
,
MachineFunction
&MF,
34
SmallVectorImpl<CCValAssign>
&locs,
LLVMContext
&
C
)
35
:
CCState
(CC, isVarArg, MF, locs, C) {}
36
37
bool
WasOriginalArgPPCF128
(
unsigned
ValNo) {
return
OriginalArgWasPPCF128[ValNo]; }
38
void
clearWasPPCF128
() { OriginalArgWasPPCF128.
clear
(); }
39
};
40
}
41
42
#endif
C
uint64_t CallInst * C
Definition:
NVVMIntrRange.cpp:67
llvm
This class represents lattice values for constants.
Definition:
AllocatorList.h:24
llvm::MachineFunction
Definition:
MachineFunction.h:226
llvm::PPCCCState::PreAnalyzeCallOperands
void PreAnalyzeCallOperands(const SmallVectorImpl< ISD::OutputArg > &Outs)
Definition:
PPCCCState.cpp:17
llvm::SmallVectorImpl
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
Definition:
APFloat.h:42
unsigned
llvm::PPCCCState::WasOriginalArgPPCF128
bool WasOriginalArgPPCF128(unsigned ValNo)
Definition:
PPCCCState.h:37
CallingConvLower.h
llvm::PPCCCState
Definition:
PPCCCState.h:19
llvm::MipsISD::Ins
Definition:
MipsISelLowering.h:160
llvm::SmallVectorImpl::clear
void clear()
Definition:
SmallVector.h:346
llvm::LLVMContext
This is an important class for using LLVM in a threaded context.
Definition:
LLVMContext.h:69
llvm::PPCCCState::PreAnalyzeFormalArguments
void PreAnalyzeFormalArguments(const SmallVectorImpl< ISD::InputArg > &Ins)
Definition:
PPCCCState.cpp:27
llvm::CCState
CCState - This class holds information needed while lowering arguments and return values...
Definition:
CallingConvLower.h:190
llvm::CCState::isVarArg
bool isVarArg() const
Definition:
CallingConvLower.h:267
llvm::SmallVector< bool, 4 >
llvm::PPCCCState::clearWasPPCF128
void clearWasPPCF128()
Definition:
PPCCCState.h:38
llvm::PPCCCState::PPCCCState
PPCCCState(CallingConv::ID CC, bool isVarArg, MachineFunction &MF, SmallVectorImpl< CCValAssign > &locs, LLVMContext &C)
Definition:
PPCCCState.h:33
SmallVector.h
PPCISelLowering.h
Generated on Sun Dec 20 2020 13:57:26 for LLVM by
1.8.13