X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fincludes%2Foptions.h;h=aca0b1e589e17ed7cf2859c24b1c80cd77e58ab8;hb=b9daf612008be8a05925045c38b161fe2c9f1045;hp=7ce4ee2f1378e89c4b7b60c879471645659a67d9;hpb=7fa1adea9ebcb83add6754cd9b90e421954a551d;p=ghc-hetmet.git diff --git a/ghc/includes/options.h b/ghc/includes/options.h index 7ce4ee2..aca0b1e 100644 --- a/ghc/includes/options.h +++ b/ghc/includes/options.h @@ -1,20 +1,14 @@ -/* ../options.h. Generated automatically by configure. */ + /* -------------------------------------------------------------------------- * Configuration options * - * Most configuration options are arguments to the configure script - * (try running "configure --help"). The following options are either - * experimental or require changes to "Prelude.hs", the standard libraries - * and demos and therefore cannot be modified using the configure script. - * Most users should leave them alone! - * * Copyright (c) The University of Nottingham and Yale University, 1994-1997. * All rights reserved. See NOTICE for details and conditions of use etc... * Hugs version 1.4, December 1997 * * $RCSfile: options.h,v $ - * $Revision: 1.15 $ - * $Date: 1999/12/07 11:55:25 $ + * $Revision: 1.25 $ + * $Date: 2000/04/05 16:57:18 $ * ------------------------------------------------------------------------*/ @@ -61,11 +55,6 @@ * User interface options * ------------------------------------------------------------------------*/ -/* Define if you want to use the "Hugs for Windows" GUI. - * (Windows 3.1 and compatibles only) - */ -#define HUGS_FOR_WINDOWS 0 - /* Define if you want filenames to be converted to normal form by: * o replacing relative pathnames with absolute pathnames and * eliminating .. and . where possible. @@ -77,92 +66,52 @@ */ #define SMALL_BANNER 0 -/* Define if you want to be able to redirect stdout/stderr to a buffer. - * Only necessary for the Hugs server interface (which is used in the - * Netscape plugin and the standalone evaluator "runhugs"). - */ -#define REDIRECT_OUTPUT (!HUGS_FOR_WINDOWS) - /* -------------------------------------------------------------------------- - * Making Hugs smaller + * Language extensions * ------------------------------------------------------------------------*/ -/* Define one of these to select overall size of Hugs - * SMALL_HUGS for 16 bit operation on a limited memory PC. - * REGULAR_HUGS for 32 bit operation using largish default table sizes. - * LARGE_HUGS for 32 bit operation using larger default table sizes. - */ -#define SMALL_HUGS 0 -#define REGULAR_HUGS 0 -#define LARGE_HUGS 1 +/* Define if T-REX; Typed Rows and EXtension should be enabled */ +/* Doesn't work in current system - I don't know what the primops do */ +#define TREX 0 + +/* Implicit Parameters */ +#define IPARAM 1 + +/* Multi-instance resolution */ +#define MULTI_INST 0 + -#define NUM_SYNTAX 100 -#define NUM_TUPLES 20 -#define NUM_OFFSETS 1024 +/* -------------------------------------------------------------------------- + * Various table sizes + * ------------------------------------------------------------------------*/ + +#define NUM_TUPLES 37 #define NUM_CHARS 256 #if TREX #define NUM_EXT 100 #endif #define CHAR_MASK 0xff -#if SMALL_HUGS /* the McDonalds mentality :-) */ -#define Pick(s,r,l) s -#endif -#if REGULAR_HUGS -#define Pick(s,r,l) r -#endif -#if LARGE_HUGS -#define Pick(s,r,l) l -#endif +#define MINIMUMHEAP 19000 +#define MAXIMUMHEAP 0 +#define DEFAULTHEAP 320000 -#define MINIMUMHEAP Pick(7500, 19000, 19000) -#define MAXIMUMHEAP Pick(32765, 0, 0) -#define DEFAULTHEAP Pick(28000, 50000, 350000) - -#define NUM_SCRIPTS Pick(64, 100, 100) -#define NUM_MODULE NUM_SCRIPTS -#define NUM_TYCON Pick(60, 160, 400) -#define NUM_NAME Pick(1000, 2000, 16000) -#define NUM_CLASSES Pick(30, 40, 80) -#define NUM_INSTS Pick(200, 300, 600) -#define NUM_TEXT Pick(12000, 20000, 100000) -#define NUM_TEXTH Pick(1, 10, 10) -#define NUM_TYVARS Pick(800, 2000, 4000) -#define NUM_STACK Pick(1800, 12000, 16000) -#define NUM_DTUPLES Pick(3, 5, 5) +#define TEXT_SIZE 100000 +#define NUM_TEXTH 10 +#define NUM_TYVARS 4000 +#define NUM_STACK 16000 +#define NUM_DTUPLES 5 +#define NUM_MSTACK 2000 #define MAXPOSINT 0x7fffffff #define MINNEGINT (-MAXPOSINT-1) #define MAXHUGSWORD 0xffffffffU -#define BIGBASE Pick(100, 10000, 10000) -#define BIGEXP Pick(2, 4, 4) - -#define minRecovery Pick(1000, 1000, 1000) -#define bitsPerWord Pick(16, 32, 32) -#define wordShift Pick(4, 5, 5) -#define wordMask Pick(15, 31, 31) - -/* Define to force a fixed size (NUM_TYVARS) for the current substitution. - * Setting this flag places a limit on the maximum complexity of - * expressions handled by the typechecker. It is normally turned off - * but may be required for small machines/configurations. - */ -#define FIXED_SUBST 0 - -/* Define this to allocate tables dynamically. - * This is currently just a memory saving trick, but this may be - * extended at a later stage to allow at least some of the tables - * to be extended dynamically at run-time to avoid exhausted space errors. - */ -#define DYN_TABLES SMALL_HUGS - -/* Define this to include support for storing pointers in the heap. - * This is required by the code generator (which has to store - * pointers to AsmObjects). - */ -#define PTR_ON_HEAP 1 +#define minRecovery 1000 +#define bitsPerWord 32 +#define wordShift 5 +#define wordMask 31 /* Should quantifiers be displayed in error messages. * Warning: not consistently used. @@ -177,19 +126,13 @@ * without attention. However, standard Haskell 98 is supported * is supported without needing them. */ -#undef PROVIDE_STABLE -#undef PROVIDE_FOREIGN #undef PROVIDE_WEAK -#undef PROVIDE_CONCURRENT -#undef PROVIDE_PTREQUALITY -#undef PROVIDE_COERCE - -/* Set to 1 to use a non-GMP implementation of integer, in the - standalone Hugs. Set to 0 in the combined GHC-Hugs system, - in which case GNU MP will be used. -*/ -#define STANDALONE_INTEGER 1 +#define PROVIDE_STABLE 1 +#define PROVIDE_FOREIGN 1 +#define PROVIDE_COERCE 1 +#define PROVIDE_PTREQUALITY 1 +#define PROVIDE_CONCURRENT 1 /* Enable a crude profiler which counts BCO entries, bytes allocated and bytecode insns executed on a per-fn basis. Used for assessing @@ -197,19 +140,6 @@ */ #undef CRUDE_PROFILING - -/* Is the default default (Int,Double) or (Integer,Double)? - */ -#define DEFAULT_BIGNUM 1 - -/* Are things being used in an interactive setting or a batch setting? - * In an interactive setting, System.exitWith should not call _exit - * getProgName and getProgArgs need to be handled differently, etc. - * - * Warning: this flag is ignored by an awful lot of code. - */ -#define INTERACTIVE - /* Turn bytecode interpreter support on/off. */ #define INTERPRETER 1 @@ -238,14 +168,6 @@ #define NO_REGS -/* -------------------------------------------------------------------------- - * Fancy features - * ------------------------------------------------------------------------*/ - -/* Define if T-REX; Typed Rows and EXtension should be enabled */ -/* Doesn't work in current system - I don't know what the primops do */ -#define TREX 0 - /* Define if :xplain should be enabled */ #define EXPLAIN_INSTANCE_RESOLUTION 0 @@ -298,21 +220,6 @@ */ #define USE_ADDR_FOR_STRINGS 1 -/* Define to include support for (n+k) patterns. - * Warning: many people in the Haskell committee want to remove n+k patterns. - */ -#define NPLUSK 1 - - -/* -------------------------------------------------------------------------- - * Debugging options (intended for use by maintainers) - * ------------------------------------------------------------------------*/ - -/* Define if debugging generated bytecodes or the bytecode interpreter */ -#define DEBUG_CODE 1 - -/* Define if you want to use a low-level printer from within a debugger */ -#define DEBUG_PRINTER 1 /* -------------------------------------------------------------------------- * Experimental features