X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=docs%2FSegmentedStacks.html;h=16f55074732c38ec6058e52f0a261bfda8a2852f;hb=527a08b253795cf09de41c289c9dc071f00b1d4a;hp=a91b109308a2242c6170307636f31afca0a69de0;hpb=2ac6b0185466024e306de142623b803565a1c526;p=oota-llvm.git diff --git a/docs/SegmentedStacks.html b/docs/SegmentedStacks.html index a91b109308a..16f55074732 100644 --- a/docs/SegmentedStacks.html +++ b/docs/SegmentedStacks.html @@ -20,18 +20,12 @@
  • Variable Sized Allocas
  • -
  • Results -
      -
    1. Go on LLVM
    2. -
    3. Runtime ABI
    4. -
    -
  • Introduction

    - Segmented stack allows stack space to be allocated incrementally than as a monolithic chunk (of some worst case size) at thread initialization. This is done by allocating stack blocks (henceforth called stacklets) and linking them into a doubly linked list. The function prologue is responsible for checking if the current stacklet has enough space for the function to execute; and if not, call into the libgcc runtime to allocate more stack space. Support for segmented stacks on x86 / Linux is currently being worked on. + Segmented stack allows stack space to be allocated incrementally than as a monolithic chunk (of some worst case size) at thread initialization. This is done by allocating stack blocks (henceforth called stacklets) and linking them into a doubly linked list. The function prologue is responsible for checking if the current stacklet has enough space for the function to execute; and if not, call into the libgcc runtime to allocate more stack space. When using llc, segmented stacks can be enabled by adding -segmented-stacks to the command line.

    The runtime functionality is already there in libgcc.