Changes between Version 6 and Version 7 of Commentary/Rts/Config


Ignore:
Timestamp:
Dec 12, 2012 8:43:40 AM (3 years ago)
Author:
simonmar
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Rts/Config

    v6 v7  
    2727  RTS suffix: {{{l}}} 
    2828 
    29  {{{NO_REGS}}}, {{{USE_MINIINTERPRETER}}}:: 
    30   Enables "unregisterised" compilation, i.e. via C with no mangler.[[br]] 
    31   GHC option: {{{-unreg}}}[[br]] 
    32   RTS suffix: {{{u}}} 
    33  
    3429So for example, {{{libHSrts_thr_debug.a}}} is the version of the runtime compiled with {{{THREADED_RTS}}} and {{{DEBUG}}}, and will be linked in if you use the {{{-threaded}}} and {{{-debug}}} options to GHC. 
    3530 
     
    3833== Combinations == 
    3934 
    40 The following combinations are allowed: 
     35All combinations are allowed.  Only some are built by default though; see [source:mk/config.mk.in] to see how the `GhcRTSWays` variable is set. 
    4136 
    42  * {{{DEBUG}}} with anything 
    43  * {{{PROFILING}}} only with {{{NO_REGS}}}, {{{USE_MINIINTERPRETER}}} 
     37== Other configuration options == 
    4438 
    45 == OLD ways == 
     39 {{{NO_REGS}}}:: 
     40  Disabled the use of hardware registers for the stack pointer (`Sp`), heap pointer (`Hp`), etc.  This is 
     41  enabled when building "unregisterised" code, which is controlled by the `GhcUnregisterised` build option. 
     42  Typically this is necessary when building GHC on a platform for which there is no native code generator 
     43  and LLVM does not have a GHC calling convention. 
    4644 
    47 The following ways are bitrotted and currently don't work (GHC 6.6): 
     45 {{{USE_MINIINTERPRETER}}}:: 
     46  Enables the use of the RTS "mini-interpreter", which simulates tail-calls.  Again, this is enabled by 
     47  `GhcUnregisterised` in the build system. 
    4848 
    49  {{{PAR}}}, {{{GRANSIM}}}:: 
    50   Parallel Haskell[[br]] 
    51   GHC option: {{{-par}}}[[br]] 
    52   RTS suffix: {{{mp, mg}}} 
    53  
    54  {{{TICKY}}}:: 
    55   Ticky-ticky profiling used to be a separate "way"; you had to rebuild all the libraries and the RTS for ticky-ticky profiling,  
    56   just like ordinary time/space profiling.  This isn't the case any more: you can link modules compiled with `-ticky` 
    57   against modules or packages compiled without it.  Since 6.12.1, the `-debug` RTS version also include ticky-ticky 
    58   support, and there is no separate RTS version for ticky.  If you use the `-ticky` flag when linking a program, it implies 
    59   `-debug`. 
    60  
     49 {{{TABLES_NEXT_TO_CODE}}}:: 
     50  Controls whether the info table is placed directly before the entry code for a closure or return continuation. 
     51  This is normally turned on if the platform supports it, but is turned off by `GhcUnregisterised`.