... | ... | @@ -21,4 +21,7 @@ Pointer to `StgWord`</td></tr></table> |
|
|
The word is the basic unit of allocation in GHC: the heap and stack are both allocated in units of a word. Throughout the runtime we often use sizes that are in units of words, so as to abstract away from the real word size of the underlying architecture.
|
|
|
|
|
|
|
|
|
C-- only understands units of bytes, so we have various macros in [includes/Cmm.h](/trac/ghc/browser/ghc/includes/Cmm.h) to make manipulating things in units of words easier in `.cmm` files. |
|
|
The `StgWord` type is also useful for storing the *size* of a memory object, since an `StgWord` is guaranteed to at least span the range of addressable memory. It is rather like `size_t` in this respect, although we prefer to use `StgWord` in the RTS sources.
|
|
|
|
|
|
|
|
|
C-- only understands units of bytes, so we have various macros in [source:includes/Cmm.h](/trac/ghc/browser/includes/Cmm.h)[](/trac/ghc/export/HEAD/ghc/includes/Cmm.h) to make manipulating things in units of words easier in `.cmm` files. |