Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / perl-5.8.0 / lib / site_perl / 5.8.0 / midasconfig.pl
CommitLineData
86530b38
AT
1# -*- perl -*-
2
3our %PROJ_CONFIG =
4 (
5
6 # NIAGARA-1
7 BW =>
8 {
9 mmu_type => 'niagara',
10 ttefmt => 'sun4v',
11 tsbtagfmt => 'tagaccess',
12 default_radix => 'decimal',
13
14 # Number of assemblers to run in parallel
15 build_threads => 3,
16 # Erase build directory on success if this invocation created it
17 cleanup => 1,
18 # Erase build directory on success (if cleanup is set), even if
19 # it wasn't created by this invocation
20 force_cleanup => 0,
21 # Build the diag, even if it looks like we have the same input and
22 # same args as last time.
23 force_build => 0,
24
25 # If set, allow a TSB to have a collision (two addresses mapping
26 # to same TSB pointer
27 allow_tsb_conflicts => 0,
28 # If set, don't cause fatal error if section is empty
29 allow_empty_sections => 0,
30 # If set, do not generate a fatal error if an illegal page size is
31 # specified
32 allow_illegal_page_sizes => 0,
33 # If set (and allow_tsb_conflicts), allow the same tag to appear
34 # twice in the same tsb.
35 allow_duplicate_tags => 0,
36 # Allows a TSB base to not be aligned with its size. Real
37 # software will never do this, but who knows about diags
38 allow_misaligned_tsb_base => 0,
39 # If set, generate all TSBs that are defined, not just the ones
40 # being used.
41 gen_all_tsbs => 0,
42 # If set to zero, do not compress any sections, regardless of the per-
43 # section settings
44 compress_image => 1,
45 # Use backdoor environment mechanism to zero compressed sections
46 env_zero => 1,
47 # By default, result files in build directory are hard-linked to
48 # destination directory. If this option is set, a copy is done
49 # instead.
50 copy_products => 0,
51 # Use full paths for commands if set. Relative paths make output
52 # more readable, though.
53 full_paths => 0,
54
55
56 # COMMAND OPTIONS. Note that if no path is given, it picks up tools
57 # from the path.
58
59 # Binary to use for goldfinger.
60 goldfinger_cmd => 'goldfinger',
61 # Minimum allowable version of goldfinger.
62 goldfinger_version => '1.07',
63
64 cat_cmd => 'gcat',
65 diff_cmd => 'diff',
66 pal_cmd => 'pal',
67 cpp_cmd => 'bw_cpp',
68 cpp_opt => ['-B -P'],
69
70 m4_cmd => 'bw_m4',
71 m4_opt => [],
72
73 as_cmd => 'g_as',
74 as_opt => ['-xarch=v9b'],
75
76 ld_cmd => 'g_ld',
77 ld_opt => ['-b elf64-sparc', '-no-warn-mismatch',
78 '--no-check-sections'],
79
80 gcc_cmd => 'gcc',
81 gcc_opt => ['-m64', '-nostdinc', '-fno-common', '-fno-builtin'],
82
83 perl_cmd => 'perl',
84
85 # PATH OPTIONS
86
87 cpp_includes => {
88 # from diagroot
89 diagroot => ['verif/diag/assembly/include'],
90 # from directory where midas is run
91 startdir => ['.'],
92 # from build directory
93 builddir => ['.'],
94 # absolute paths
95 abs => [],
96 },
97 cpp_defines => [ 'GOLDFINGER=1'
98 ],
99 m4_includes => {
100 diagroot => [],
101 startdir => ['.'],
102 builddir => ['.'],
103 abs => [],
104 },
105
106
107 link_paths => {
108 diagroot => ['verif/diag'],
109 startdir => ['.'],
110 builddir => [],
111 abs => [],
112 },
113
114 csrc_includes => {
115 diagroot => ['verif/diag/c'],
116 startdir => ['.'],
117 builddir => [],
118 abs => [],
119 },
120
121 c_includes => {
122 diagroot => ['verif/diag/c/include'],
123 startdir => ['.'],
124 builddir => ['.'],
125 abs => [],
126 },
127
128 },
129
130 # NIAGARA-2
131 N2 =>
132 {
133 mmu_type => 'niagara2',
134 ttefmt => 'sun4v',
135 tsbtagfmt => 'tagtarget',
136
137 default_radix => 'decimal',
138
139 # Number of assemblers to run in parallel
140 build_threads => 3,
141 # Erase build directory on success if this invocation created it
142 cleanup => 1,
143 # Erase build directory on success (if cleanup is set), even if
144 # it wasn't created by this invocation
145 force_cleanup => 0,
146 # Build the diag, even if it looks like we have the same input and
147 # same args as last time.
148 force_build => 0,
149
150 # If set, allow a TSB to have a collision (two addresses mapping
151 # to same TSB pointer
152 allow_tsb_conflicts => 0,
153 # If set, don't cause fatal error if section is empty
154 allow_empty_sections => 0,
155 # If set, do not generate a fatal error if an illegal page size is
156 # specified
157 allow_illegal_page_sizes => 0,
158 # If set (and allow_tsb_conflicts), allow the same tag to appear
159 # twice in the same tsb.
160 allow_duplicate_tags => 0,
161 # Allows a TSB base to not be aligned with its size. Real
162 # software will never do this, but who knows about diags
163 allow_misaligned_tsb_base => 0,
164 # If set, generate all TSBs that are defined, not just the ones
165 # being used.
166 gen_all_tsbs => 0,
167 # If set to zero, do not compress any sections, regardless of the per-
168 # section settings
169 compress_image => 1,
170 # Backdoor environment mechanism to zero compressed sections is
171 # not available in N2
172 env_zero => 0,
173 # By default, result files in build directory are hard-linked to
174 # destination directory. If this option is set, a copy is done
175 # instead.
176 copy_products => 0,
177 # Use full paths for commands if set. Relative paths make output
178 # more readable, though.
179 full_paths => 0,
180
181
182 # COMMAND OPTIONS. Note that if no path is given, it picks up tools
183 # from the path.
184
185 # Binary to use for goldfinger.
186 goldfinger_cmd => 'goldfinger',
187 # Minimum allowable version of goldfinger.
188 goldfinger_version => '1.07',
189
190 cat_cmd => 'gcat',
191 diff_cmd => 'diff',
192 pal_cmd => 'pal',
193 cpp_cmd => 'bw_cpp',
194 cpp_opt => ['-B -P -traditional-cpp'],
195
196 m4_cmd => 'bw_m4',
197 m4_opt => [],
198
199 as_cmd => 'g_as',
200 as_opt => ['-xarch=v9b'],
201
202 ld_cmd => 'g_ld',
203 ld_opt => ['-b elf64-sparc', '-no-warn-mismatch',
204 '--no-check-sections'],
205
206 gcc_cmd => 'gcc',
207 gcc_opt => ['-m64', '-nostdinc', '-fno-common', '-fno-builtin'],
208
209 perl_cmd => 'perl',
210
211 # PATH OPTIONS
212
213 cpp_includes => {
214 # from diagroot
215 diagroot => ['verif/diag/assembly/include'],
216 # from directory where midas is run
217 startdir => ['.'],
218 # from build directory
219 builddir => ['.'],
220 # absolute paths
221 abs => [],
222 },
223 cpp_defines => [ 'GOLDFINGER=1'
224 ],
225 m4_includes => {
226 diagroot => [],
227 startdir => ['.'],
228 builddir => ['.'],
229 abs => [],
230 },
231
232
233 link_paths => {
234 diagroot => ['verif/diag'],
235 startdir => ['.'],
236 builddir => [],
237 abs => [],
238 },
239
240 csrc_includes => {
241 diagroot => ['verif/diag/c'],
242 startdir => ['.'],
243 builddir => [],
244 abs => [],
245 },
246
247 c_includes => {
248 diagroot => ['verif/diag/c/include'],
249 startdir => ['.'],
250 builddir => ['.'],
251 abs => [],
252 },
253
254
255 },
256
257 # NIAGARA-2plus
258 NP =>
259 {
260 mmu_type => 'niagara2',
261 ttefmt => 'sun4v',
262 tsbtagfmt => 'tagtarget',
263
264 default_radix => 'decimal',
265
266 # Number of assemblers to run in parallel
267 build_threads => 3,
268 # Erase build directory on success if this invocation created it
269 cleanup => 1,
270 # Erase build directory on success (if cleanup is set), even if
271 # it wasn't created by this invocation
272 force_cleanup => 0,
273 # Build the diag, even if it looks like we have the same input and
274 # same args as last time.
275 force_build => 0,
276
277 # If set, allow a TSB to have a collision (two addresses mapping
278 # to same TSB pointer
279 allow_tsb_conflicts => 0,
280 # If set, don't cause fatal error if section is empty
281 allow_empty_sections => 0,
282 # If set, do not generate a fatal error if an illegal page size is
283 # specified
284 allow_illegal_page_sizes => 0,
285 # If set (and allow_tsb_conflicts), allow the same tag to appear
286 # twice in the same tsb.
287 allow_duplicate_tags => 0,
288 # Allows a TSB base to not be aligned with its size. Real
289 # software will never do this, but who knows about diags
290 allow_misaligned_tsb_base => 0,
291 # If set, generate all TSBs that are defined, not just the ones
292 # being used.
293 gen_all_tsbs => 0,
294 # If set to zero, do not compress any sections, regardless of the per-
295 # section settings
296 compress_image => 1,
297 # Backdoor environment mechanism to zero compressed sections is
298 # not available in NP
299 env_zero => 0,
300 # By default, result files in build directory are hard-linked to
301 # destination directory. If this option is set, a copy is done
302 # instead.
303 copy_products => 0,
304 # Use full paths for commands if set. Relative paths make output
305 # more readable, though.
306 full_paths => 0,
307
308
309 # COMMAND OPTIONS. Note that if no path is given, it picks up tools
310 # from the path.
311
312 # Binary to use for goldfinger.
313 goldfinger_cmd => 'goldfinger',
314 # Minimum allowable version of goldfinger.
315 goldfinger_version => '1.07',
316
317 cat_cmd => 'gcat',
318 diff_cmd => 'diff',
319 pal_cmd => 'pal',
320 cpp_cmd => 'bw_cpp',
321 cpp_opt => ['-B -P -traditional-cpp'],
322
323 m4_cmd => 'bw_m4',
324 m4_opt => [],
325
326 as_cmd => 'g_as',
327 as_opt => ['-xarch=v9b'],
328
329 ld_cmd => 'g_ld',
330 ld_opt => ['-b elf64-sparc', '-no-warn-mismatch',
331 '--no-check-sections'],
332
333 gcc_cmd => 'gcc',
334 gcc_opt => ['-m64', '-nostdinc', '-fno-common', '-fno-builtin'],
335
336 perl_cmd => 'perl',
337
338 # PATH OPTIONS
339
340 cpp_includes => {
341 # from diagroot
342 diagroot => ['verif/diag/assembly/include'],
343 # from directory where midas is run
344 startdir => ['.'],
345 # from build directory
346 builddir => ['.'],
347 # absolute paths
348 abs => [],
349 },
350 cpp_defines => [ 'GOLDFINGER=1'
351 ],
352 m4_includes => {
353 diagroot => [],
354 startdir => ['.'],
355 builddir => ['.'],
356 abs => [],
357 },
358
359
360 link_paths => {
361 diagroot => ['verif/diag'],
362 startdir => ['.'],
363 builddir => [],
364 abs => [],
365 },
366
367 csrc_includes => {
368 diagroot => ['verif/diag/c'],
369 startdir => ['.'],
370 builddir => [],
371 abs => [],
372 },
373
374 c_includes => {
375 diagroot => ['verif/diag/c/include'],
376 startdir => ['.'],
377 builddir => ['.'],
378 abs => [],
379 },
380
381
382 },
383
384 # JUPITER, NIAGARA-2 Clone
385 JUPITER =>
386 {
387 mmu_type => 'niagara2',
388 ttefmt => 'sun4v',
389 tsbtagfmt => 'tagtarget',
390
391 default_radix => 'decimal',
392
393 # Number of assemblers to run in parallel
394 build_threads => 3,
395 # Erase build directory on success if this invocation created it
396 cleanup => 1,
397 # Erase build directory on success (if cleanup is set), even if
398 # it wasn't created by this invocation
399 force_cleanup => 0,
400 # Build the diag, even if it looks like we have the same input and
401 # same args as last time.
402 force_build => 0,
403
404 # If set, allow a TSB to have a collision (two addresses mapping
405 # to same TSB pointer
406 allow_tsb_conflicts => 0,
407 # If set, don't cause fatal error if section is empty
408 allow_empty_sections => 0,
409 # If set, do not generate a fatal error if an illegal page size is
410 # specified
411 allow_illegal_page_sizes => 0,
412 # If set (and allow_tsb_conflicts), allow the same tag to appear
413 # twice in the same tsb.
414 allow_duplicate_tags => 0,
415 # Allows a TSB base to not be aligned with its size. Real
416 # software will never do this, but who knows about diags
417 allow_misaligned_tsb_base => 0,
418 # If set, generate all TSBs that are defined, not just the ones
419 # being used.
420 gen_all_tsbs => 0,
421 # If set to zero, do not compress any sections, regardless of the per-
422 # section settings
423 compress_image => 1,
424 # Backdoor environment mechanism to zero compressed sections is
425 # not available in N2
426 env_zero => 0,
427 # By default, result files in build directory are hard-linked to
428 # destination directory. If this option is set, a copy is done
429 # instead.
430 copy_products => 0,
431 # Use full paths for commands if set. Relative paths make output
432 # more readable, though.
433 full_paths => 0,
434
435
436 # COMMAND OPTIONS. Note that if no path is given, it picks up tools
437 # from the path.
438
439 # Binary to use for goldfinger.
440 goldfinger_cmd => 'goldfinger',
441 # Minimum allowable version of goldfinger.
442 goldfinger_version => '1.07',
443
444 cat_cmd => 'gcat',
445 diff_cmd => 'diff',
446 pal_cmd => 'pal',
447 cpp_cmd => 'bw_cpp',
448 cpp_opt => ['-B -P -traditional-cpp'],
449
450 m4_cmd => 'bw_m4',
451 m4_opt => [],
452
453 as_cmd => 'g_as',
454 as_opt => ['-xarch=v9b'],
455
456 ld_cmd => 'g_ld',
457 ld_opt => ['-b elf64-sparc', '-no-warn-mismatch',
458 '--no-check-sections'],
459
460 gcc_cmd => 'gcc',
461 gcc_opt => ['-m64', '-nostdinc', '-fno-common', '-fno-builtin'],
462
463 perl_cmd => 'perl',
464
465 # PATH OPTIONS
466
467 cpp_includes => {
468 # from diagroot
469 diagroot => ['verif/diag/assembly/include'],
470 # from directory where midas is run
471 startdir => ['.'],
472 # from build directory
473 builddir => ['.'],
474 # absolute paths
475 abs => [],
476 },
477 cpp_defines => [ 'GOLDFINGER=1'
478 ],
479 m4_includes => {
480 diagroot => [],
481 startdir => ['.'],
482 builddir => ['.'],
483 abs => [],
484 },
485
486
487 link_paths => {
488 diagroot => ['verif/diag'],
489 startdir => ['.'],
490 builddir => [],
491 abs => [],
492 },
493
494 csrc_includes => {
495 diagroot => ['verif/diag/c'],
496 startdir => ['.'],
497 builddir => [],
498 abs => [],
499 },
500
501 c_includes => {
502 diagroot => ['verif/diag/c/include'],
503 startdir => ['.'],
504 builddir => ['.'],
505 abs => [],
506 },
507
508
509 },
510
511 );