Changeset 196011 in webkit


Ignore:
Timestamp:
Feb 2, 2016 8:58:41 AM (8 years ago)
Author:
fpizlo@apple.com
Message:

Minor fixes for B3 IR documentation
https://bugs.webkit.org/show_bug.cgi?id=153782

Reviewed by Michael Saboff.

Fix minor issues that Geoff found.

  • docs/b3/intermediate-representation.html:
Location:
trunk/Websites/webkit.org
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Websites/webkit.org/ChangeLog

    r195921 r196011  
     12016-02-02  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Minor fixes for B3 IR documentation
     4        https://bugs.webkit.org/show_bug.cgi?id=153782
     5
     6        Reviewed by Michael Saboff.
     7
     8        Fix minor issues that Geoff found.
     9
     10        * docs/b3/intermediate-representation.html:
     11
    1122016-01-30  Filip Pizlo  <fpizlo@apple.com>
    213
  • trunk/Websites/webkit.org/docs/b3/intermediate-representation.html

    r195903 r196011  
    8989
    9090    <p>B3 exposes the concept of stack-allocated data and gives the client a lot of control.
    91       You can force stack slots to end up at a particular offset from the frame pointer, though
    92       this is very dangerous.  After compilation is done, you can get the selected frame pointer
    93       offset from any stack slot.  Usually, you let B3 select where stack slots go, and then use
    94       the StackSlot API to get its FP offset after compilation.</p>
     91      By default, stack slots get allocated wherever B3 chooses. It will try to pack them as
     92      much as possible. After compilation is done, you can retrieve each stack slot's location
     93      in the form of an offset from the frame pointer.</p>
     94
     95    <p>You can force stack slots to end up at a particular offset from the frame pointer, though
     96      this is very dangerous.  For example, B3 assumes that it can use the slots closest to the
     97      frame pointer for callee-saves, and currently when you force something to a particular
     98      frame pointer offset, there is no mechanism to notice that this space is also being used
     99      for callee-saves.  Therefore, we recommend not using the frame pointer offset forcing
     100      feature unless you know a lot about the ABI and you have no other choice.</p>
    95101
    96102    <p>Stack slots are also used for creating non-SSA variables with the intention of having B3
    97       convert them into SSA.  There are two kinds of stack lots.</p>
     103      convert them into SSA.  There are two kinds of stack slots.</p>
    98104
    99105    <dl>
     
    119125      controlled by the basic block's last Value, which must be a ControlValue instance.</p>
    120126
    121     <p>Each basic block contains a Vector&lt;Value*&gt; as the contents of the block.</p>
     127    <p>Each basic block contains a Vector&lt;Value*&gt; as the contents of the block. Control
     128      flow inside the block is implicit based on the order of Values in the vector.</p>
    122129
    123130    <h2>Opcodes</h2>
Note: See TracChangeset for help on using the changeset viewer.