* t/pmc/complex.t:
[parrot.git] / include / parrot / settings.h
blobacacdf7fe4ff5b60545b22dba653dc26f26b628f
1 /* settings.h
2 * Copyright (C) 2001-2004, The Perl Foundation.
3 * SVN Info
4 * $Id$
5 * Overview:
6 * Overall settings for Parrot
7 * Data Structure and Algorithms:
8 * History: initial version 2004.08.13
9 * Notes:
10 * References:
13 #ifndef PARROT_SETTINGS_H_GUARD
14 #define PARROT_SETTINGS_H_GUARD
17 * DOD/GC switches
20 /* If you are trying to debug GC problems which only occur on large test cases,
21 * turning on GC_DEBUG should help make the problem appear with smaller data
22 * samples by reducing various numbers, and causing DOD and allocation runs
23 * to occur more frequently. It does significantly reduce performance. */
24 #ifndef DISABLE_GC_DEBUG
25 # define DISABLE_GC_DEBUG 0
26 #endif /* DISABLE_GC_DEBUG */
28 /* Helpful internal macro for testing whether we are currently
29 * debugging garbage collection and memory management. See also the
30 * definition of GC_VERBOSE in dod.c. */
31 #if DISABLE_GC_DEBUG
32 # define GC_DEBUG(interp) 0
33 #else
34 # define GC_DEBUG(interp) Interp_flags_TEST((interp), PARROT_GC_DEBUG_FLAG)
35 #endif /* DISABLE_GC_DEBUG */
38 * GC_SUBSYSTEM selection
39 * 0 ... MS stop-the-world mark & sweep
40 * 1 ... IMS incremental mark & sweep
41 * 2 ... GMS generational mark & sweep
43 * Please note that only '0' is tested.
46 #define PARROT_GC_SUBSYSTEM 0
48 #if PARROT_GC_SUBSYSTEM == 0
49 # define PARROT_GC_MS 1
50 # define PARROT_GC_IMS 0
51 # define PARROT_GC_GMS 0
52 #endif
53 #if PARROT_GC_SUBSYSTEM == 1
54 # define PARROT_GC_MS 0
55 # define PARROT_GC_IMS 1
56 # define PARROT_GC_GMS 0
57 #endif
58 #if PARROT_GC_SUBSYSTEM == 2
59 # define PARROT_GC_MS 0
60 # define PARROT_GC_IMS 0
61 # define PARROT_GC_GMS 1
62 #endif
66 * misc settings
70 * JIT/i386 can use the CGP run core for external functions instead
71 * of calling the function version of the opcode
73 * This is for some reason currently slower, so it's turned off
76 #define PARROT_I386_JIT_CGP 0
78 #endif /* PARROT_SETTINGS_H_GUARD */
81 * Local variables:
82 * c-file-style: "parrot"
83 * End:
84 * vim: expandtab shiftwidth=4: