3 * File name: ir/common/tune.h
4 * Purpose: Tune --- tunable parameters.
5 * Author: Markus Armbruster & Christian von Roques
7 * Created: 1999 by getting from fiasco
9 * Copyright: (c) 1995, 1996 Markus Armbruster & Christian von Roques
10 * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
21 @author Markus Armbruster & Christian von Roques
25 :tune: vt. [from automotive or musical usage] To optimize a
26 program or system for a particular environment, esp. by adjusting
27 numerical parameters designed as {hook}s for tuning, e.g., by
28 changing `#define' lines in C. One may `tune for time'
29 (fastest execution), `tune for space' (least memory use), or
30 `tune for configuration' (most efficient use of hardware). See
31 {bum}, {hot spot}, {hand-hacking}.
36 /** Suggested minimal block size for buffered I/O */
37 #define TUNE_SMALL_IOBUF_SIZE 512
39 /** Size of pdeq block cache */
40 #define TUNE_NSAVED_PDEQS 16
43 /* The following numbers are only estimates. If the input exceeds
44 them, the program dynamically enlarges data structures. However,
45 larger values generally mean slower startup. */
48 /** Expected number of distinct identifiers */
49 #define TUNE_NIDENTS 1024
51 /** Expected number of classes */
52 #define TUNE_NCLASSES 128
54 /** Expected number of class types */
55 #define TUNE_NCTYPES 128
57 /** Expected number of routine, stream and stream object types */
58 #define TUNE_NMTYPES 512
60 /** Expected number of method families */
61 #define TUNE_NMFAMILIES (TUNE_NCTYPES * 16)
63 /** Expected number of Intermediate Representation nodes for a method */
64 #define TUNE_NIR_NODES 512
66 /** Expected number of distinct constant target values */
67 #define TUNE_NCONSTANTS 2048
69 /** notify configuration manager to prefetch sources */