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


Ignore:
Timestamp:
Sep 7, 2006 10:14:26 AM (8 years ago)
Author:
simonmar
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Rts/HeapObjects

    v6 v7  
    1717 
    1818Unboxed tuples {{{(#...#)}}} are both unlifted and unboxed.  They are represented by multiple values passed in registers or on the stack, according to the [wiki:Commentary/Rts/HaskellExecution return convention]. 
     19 
     20----------- 
    1921 
    2022== Heap Objects == 
     
    4648need to. 
    4749 
     50----------- 
     51 
    4852== Info Tables == 
    4953 
     
    8892When {{{TABLES_NEXT_TO_CODE}}} is off, info tables get another field, {{{entry}}}, which points to the entry code.  In a generated object file, each symbol {{{X_info}}} representing an info table will have an associated symbol {{{X_entry}}} pointing to the entry code (in {{{TABLES_NEXT_TO_CODE}}}, the entry symbol is omitted to keep the size of symbol tables down). 
    8993 
     94----------- 
     95 
    9096== Dynamic vs. Static objects == 
    9197 
     
    120126variant.  To access the static link field of a closure, use the 
    121127{{{STATIC_LINK()}}} macro from [[GhcFile(includes/ClosureMacros.h)]]. 
     128 
     129----------- 
    122130 
    123131== Types of object == 
     
    394402which points to the new location of the object. 
    395403 
    396 == The stack, and stack objects == 
    397  
    398 === Return addresses === 
    399  
    400 {{{RET_BCO}}}, 
    401 {{{RET_SMALL}}}, 
    402 {{{RET_VEC_SMALL}}}, 
    403 {{{RET_BIG}}}, 
    404 {{{RET_VEC_BIG}}}, 
    405 {{{RET_DYN}}}, 
    406 {{{RET_FUN}}}, 
    407 {{{UPDATE_FRAME}}}, 
    408 {{{CATCH_FRAME}}}, 
    409 {{{STOP_FRAME}}}, 
    410 {{{ATOMICALLY_FRAME}}}, 
    411 {{{CATCH_RETRY_FRAME}}}, 
    412 {{{CATCH_STM_FRAME}}} 
    413  
    414404== Objects for PAR, GRAN == 
    415405