LRDE Tiger Compiler
1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
tasks.hh
Go to the documentation of this file.
1
6
#ifndef TARGET_TASKS_HH
7
# define TARGET_TASKS_HH
8
9
# include <
task/libtask.hh
>
10
11
# include <
assem/fragment.hh
>
12
13
# include <
target/fwd.hh
>
14
# include <
target/cpu-limits.hh
>
15
16
namespace
target
17
{
18
namespace
tasks
19
{
21
extern
std::unique_ptr<assem::Fragments>
fragments
;
22
24
extern
std::unique_ptr<Target>
target
;
25
27
extern
CpuLimits
limits
;
28
29
TASK_GROUP
(
"7. Target selection"
);
30
32
TASK_DECLARE
(
"i|inst-compute"
,
"select the instructions"
,
33
inst_compute
,
"lir-compute targeted"
);
34
36
TASK_DECLARE
(
"R|runtime-display"
,
"display the runtime"
,
37
runtime_display
,
"targeted"
);
38
40
BOOLEAN_TASK_DECLARE
(
"inst-debug"
,
"enable instructions verbose display"
,
41
inst_debug_p,
""
);
42
44
BOOLEAN_TASK_DECLARE
(
"rule-trace"
,
"enable rule reducing display"
,
45
rule_trace_p,
""
);
46
48
BOOLEAN_TASK_DECLARE
(
"garbage-collection"
,
"enable garbage collection"
,
49
gc_p,
""
);
50
52
TASK_DECLARE
(
"I|inst-display"
,
"display the instructions"
,
53
inst_display
,
"inst-compute"
);
54
56
TASK_DECLARE
(
"Y|nolimips-display"
,
57
"display Nolimips compatible instructions (i.e., allocate "
58
"the frames and then display the instructions"
,
59
nolimips_display
,
"inst-compute"
);
60
62
DISJUNCTIVE_TASK_DECLARE
(
"targeted"
,
"default the target to MIPS"
,
63
"target-mips target-ia32"
);
64
66
TASK_DECLARE
(
"target-mips"
,
"select MIPS as target"
,
67
target_mips
,
""
);
68
70
TASK_DECLARE
(
"target-ia32"
,
"select IA-32 as target"
,
71
target_ia32
,
""
);
72
74
TASK_DECLARE
(
"target-display"
,
"display the current target"
,
75
target_display
,
"targeted"
);
76
78
INT_TASK_DECLARE
(
"callee-save"
, 0, 99,
79
"max number of callee save registers"
,
80
limits
.
callee_save_max
,
""
);
81
83
INT_TASK_DECLARE
(
"caller-save"
, 0, 99,
84
"max number of caller save registers"
,
85
limits
.
caller_save_max
,
""
);
86
88
INT_TASK_DECLARE
(
"argument"
, 0, 99,
89
"max number of argument registers"
,
90
limits
.
argument_max
,
""
);
91
}
// namespace tasks
92
93
}
// namespace target
94
95
#endif // !TARGET_TASKS_HH
target
tasks.hh
Generated on Wed Mar 5 2014 15:47:36 for LRDE Tiger Compiler by
1.8.1.2