Changes between Version 10 and Version 11 of Commentary/SourceTree/Includes


Ignore:
Timestamp:
Dec 11, 2012 4:57:39 PM (2 years ago)
Author:
simonmar
Comment:

use source: links

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/SourceTree/Includes

    v10 v11  
    1313relatively stable: 
    1414 
    15  [http://darcs.haskell.org/ghc/includes/HsFFI.h HsFFI.h]:: 
     15 [source:includes/HsFFI.h HsFFI.h]:: 
    1616  The external FFI api, as required by the FFI spec 
    1717 
    18  [http://darcs.haskell.org/ghc/includes/RtsAPI.h RtsAPI.h]:: 
     18 [source:includes/RtsAPI.h RtsAPI.h]:: 
    1919  The API for calling into the RTS.  Used by the implementation 
    2020  of `foreign export` calls, but may also be used by external 
    2121  clients. 
    2222 
    23  [http://darcs.haskell.org/ghc/includes/Rts.h Rts.h]:: 
     23 [source:includes/Rts.h Rts.h]:: 
    2424  This header file defines everything that is visible 
    2525  externally to the RTS.  It includes `Stg.h` and everything 
     
    3030The canonical definition of certain structures are in C header files. 
    3131For example, the layout of closures and info tables are defined in the 
    32 headers [http://darcs.haskell.org/ghc/includes/rts/storage/Closures.h Closures.h] and 
    33 [http://darcs.haskell.org/ghc/includes/rts/storage/InfoTables.h InfoTables.h] respectivesly.  How do we get the information about the 
     32headers [source:includes/rts/storage/Closures.h Closures.h] and 
     33[source:includes/rts/storage/InfoTables.h InfoTables.h] respectivesly.  How do we get the information about the 
    3434layout of these structures to the parts of the system that are not 
    3535written in C, such as the compiler itself, or the C-- code in the RTS? 
     
    5151functions from `.hc` files are given types at the call site. 
    5252 
    53  [http://darcs.haskell.org/ghc/includes/Stg.h Stg.h]:: 
     53 [source:includes/Stg.h Stg.h]:: 
    5454  The top of the hierarchy is `Stg.h`, which includes everything 
    5555  required by `.hc` code.  Most files `#included` by `Stg.h` are in the 
    5656  `stg` subdirectory. 
    5757 
    58  [http://darcs.haskell.org/ghc/includes/ghcconfig.h ghcconfig.h]:: 
     58 [source:includes/ghcconfig.h ghcconfig.h]:: 
    5959  Configuration info derived by the `configure` script. 
    60  [http://darcs.haskell.org/ghc/includes/MachDeps.h MachDeps.h]:: 
     60 [source:includes/MachDeps.h MachDeps.h]:: 
    6161  Sizes of various basic types (should be in the `stg` subdirectory, 
    6262  but left here for backwards-compatibility reasons). 
    63  [http://darcs.haskell.org/ghc/includes/stg/DLL.h stg/DLL.h]:: 
     63 [source:includes/stg/DLL.h stg/DLL.h]:: 
    6464  Stuff related to Windows DLLs. 
    65  [http://darcs.haskell.org/ghc/includes/stg/MachRegs.h stg/MachRegs.h]:: 
     65 [source:includes/stg/MachRegs.h stg/MachRegs.h]:: 
    6666  Global register assignments for this processor. 
    67  [http://darcs.haskell.org/ghc/includes/stg/MiscClosures.h stg/MiscClosures.h]:: 
     67 [source:includes/stg/MiscClosures.h stg/MiscClosures.h]:: 
    6868  Declarations for closures & info tables built-in to the RTS 
    69  [http://darcs.haskell.org/ghc/includes/stg/Regs.h stg/Regs.h]:: 
     69 [source:includes/stg/Regs.h stg/Regs.h]:: 
    7070  "registers" in the virtual machine. 
    71  [http://darcs.haskell.org/ghc/includes/stg/SMP.h stg/SMP.h]:: 
     71 [source:includes/stg/SMP.h stg/SMP.h]:: 
    7272  Atomic memory operations for SMP support 
    73  [http://darcs.haskell.org/ghc/includes/stg/Ticky.h stg/Ticky.h]:: 
     73 [source:includes/stg/Ticky.h stg/Ticky.h]:: 
    7474  Declarations for ticky-ticky counters 
    75  [http://darcs.haskell.org/ghc/includes/stg/Types.h stg/Types.h]:: 
     75 [source:includes/stg/Types.h stg/Types.h]:: 
    7676  Basic types specific to the virtual machine (eg. `StgWord`). 
    7777 
    7878== The RTS external APIs == 
    7979 
    80 The header [http://darcs.haskell.org/ghc/includes/Rts.h Rts.h] 
     80The header [source:includes/Rts.h Rts.h] 
    8181includes all the headers below the `rts` subdirectory, which together 
    8282define the RTS external API.  Virtually all RTS code `#includes` 
     
    8585The rts header files are divided into a few directories: 
    8686 
    87  * [http://darcs.haskell.org/ghc/includes/rts includes/rts]: Most of 
     87 * [source:includes/rts includes/rts]: Most of 
    8888   the external RTS APIs, in separate header files per-subsystem 
    8989 
    90  * [http://darcs.haskell.org/ghc/includes/rts/storage includes/rts/storage]: Definitions of the layout of heap and stack 
     90 * [source:includes/rts/storage includes/rts/storage]: Definitions of the layout of heap and stack 
    9191   objects, info tables, structures that define memory areas managed 
    9292   by the GC, and memory management APIs. 
    9393 
    94  * [http://darcs.haskell.org/ghc/includes/rts/prof includes/rts/prof]: 
     94 * [source:includes/rts/prof includes/rts/prof]: 
    9595   Interfaces and definitions for profiling. 
    9696 
    9797== Included into C-- (`.cmm`) code == 
    9898 
    99  [http://darcs.haskell.org/ghc/includes/Cmm.h Cmm.h]:: 
     99 [source:includes/Cmm.h Cmm.h]:: 
    100100  included into `.cmm` source only; provides useful macros for writing 
    101101  low-level C-- code for GHC.