CACAO
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
source
cacao
src
vm
jit
compiler2
MachineLoop.cpp
Go to the documentation of this file.
1
/* src/vm/jit/compiler2/MachineLoop.cpp - MachineLoop
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/MachineLoop.hpp
"
26
#include "
vm/jit/compiler2/MachineBasicBlock.hpp
"
27
#include "
vm/jit/compiler2/MachineInstruction.hpp
"
28
#include "
toolbox/OStream.hpp
"
29
30
namespace
cacao {
31
namespace
jit {
32
namespace
compiler2 {
33
34
35
OStream
&
operator<<
(
OStream
&
OS
,
const
MachineLoop
&L) {
36
return
OS << *L.
get_header
() <<
" <- "
<< *L.
get_exit
();
37
}
38
39
OStream
&
operator<<
(
OStream
&
OS
,
const
MachineLoop
*L) {
40
if
(!L) {
41
return
OS <<
"MachineLoop is NULL"
;
42
}
43
return
OS << *L;
44
}
45
46
}
// end namespace compiler2
47
}
// end namespace jit
48
}
// end namespace cacao
49
50
51
/*
52
* These are local overrides for various environment variables in Emacs.
53
* Please do not remove this and leave it at the end of the file, where
54
* Emacs will automagically detect them.
55
* ---------------------------------------------------------------------
56
* Local variables:
57
* mode: c++
58
* indent-tabs-mode: t
59
* c-basic-offset: 4
60
* tab-width: 4
61
* End:
62
* vim:noexpandtab:sw=4:ts=4:
63
*/
64
cacao::jit::compiler2::LoopBase::get_exit
NodeType * get_exit() const
Definition:
LoopBase.hpp:59
cacao::jit::compiler2::LoopBase
Definition:
LoopBase.hpp:44
MachineInstruction.hpp
OStream.hpp
MachineBasicBlock.hpp
cacao::OStream
Simple stream class for formatted output.
Definition:
OStream.hpp:141
cacao::jit::compiler2::operator<<
OStream & operator<<(OStream &OS, const Conditional::CondID &cond)
Definition:
Conditional.cpp:34
OS
OStream & OS
Definition:
LivetimeAnalysisPass.cpp:316
MachineLoop.hpp
cacao::jit::compiler2::LoopBase::get_header
NodeType * get_header() const
Definition:
LoopBase.hpp:56
Generated on Fri Aug 4 2017 03:01:52 for CACAO by
1.8.5