CACAO
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
source
cacao
src
vm
jit
compiler2
RegisterAllocatorPass.cpp
Go to the documentation of this file.
1
/* src/vm/jit/compiler2/RegisterAllocatorPass.cpp - RegisterAllocatorPass
2
3
Copyright (C) 2013
4
CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
5
6
This file is part of CACAO.
7
8
This program is free software; you can redistribute it and/or
9
modify it under the terms of the GNU General Public License as
10
published by the Free Software Foundation; either version 2, or (at
11
your option) any later version.
12
13
This program is distributed in the hope that it will be useful, but
14
WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
General Public License for more details.
17
18
You should have received a copy of the GNU General Public License
19
along with this program; if not, write to the Free Software
20
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21
02110-1301, USA.
22
23
*/
24
25
#include "
vm/jit/compiler2/RegisterAllocatorPass.hpp
"
26
#include "
vm/jit/compiler2/PassManager.hpp
"
27
#include "
vm/jit/compiler2/JITData.hpp
"
28
#include "
vm/jit/compiler2/PassUsage.hpp
"
29
#include "
vm/jit/compiler2/LinearScanAllocatorPass.hpp
"
30
31
namespace
cacao {
32
namespace
jit {
33
namespace
compiler2 {
34
35
bool
RegisterAllocatorPass::run
(
JITData
&JD) {
36
return
true
;
37
}
38
39
// pass usage
40
PassUsage
&
RegisterAllocatorPass::get_PassUsage
(
PassUsage
&PU)
const
{
41
PU.
add_requires
<
LinearScanAllocatorPass
>();
42
return
PU;
43
}
44
45
// the address of this variable is used to identify the pass
46
char
RegisterAllocatorPass::ID
= 0;
47
48
// register pass
49
static
PassRegistry<RegisterAllocatorPass>
X
(
"RegisterAllocatorPass"
);
50
51
}
// end namespace compiler2
52
}
// end namespace jit
53
}
// end namespace cacao
54
55
56
/*
57
* These are local overrides for various environment variables in Emacs.
58
* Please do not remove this and leave it at the end of the file, where
59
* Emacs will automagically detect them.
60
* ---------------------------------------------------------------------
61
* Local variables:
62
* mode: c++
63
* indent-tabs-mode: t
64
* c-basic-offset: 4
65
* tab-width: 4
66
* End:
67
* vim:noexpandtab:sw=4:ts=4:
68
*/
LinearScanAllocatorPass.hpp
cacao::jit::compiler2::RegisterAllocatorPass::get_PassUsage
virtual PassUsage & get_PassUsage(PassUsage &PU) const
Set the requirements for the pass.
Definition:
RegisterAllocatorPass.cpp:40
PassManager.hpp
RegisterAllocatorPass.hpp
cacao::jit::compiler2::PassUsage
Stores the interdependencies of a pass.
Definition:
PassUsage.hpp:55
cacao::jit::compiler2::JITData
Definition:
JITData.hpp:42
PassUsage.hpp
cacao::jit::compiler2::RegisterAllocatorPass::run
virtual bool run(JITData &JD)
Run the Pass.
Definition:
RegisterAllocatorPass.cpp:35
cacao::jit::compiler2::LinearScanAllocatorPass
Linear Scan Allocator.
Definition:
LinearScanAllocatorPass.hpp:83
JITData.hpp
cacao::jit::compiler2::PassRegistry
Definition:
PassManager.hpp:175
cacao::jit::compiler2::X
static PassRegistry< BasicBlockSchedulingPass > X("BasicBlockSchedulingPass")
cacao::jit::compiler2::RegisterAllocatorPass::ID
static char ID
Definition:
RegisterAllocatorPass.hpp:41
cacao::jit::compiler2::PassUsage::add_requires
void add_requires()
PassName is required.
Definition:
PassUsage.hpp:78
Generated on Fri Aug 4 2017 03:01:52 for CACAO by
1.8.5