diff --git a/docs/LangRef.html b/docs/LangRef.html index 1a2093634f8..18912ac07e7 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -51,6 +51,7 @@
  • 'switch' Instruction
  • 'invoke' Instruction
  • 'unwind' Instruction
  • +
  • 'unreachable' Instruction
  • Binary Operations @@ -753,8 +754,9 @@ the 'invoke' instruction).

    There are five different terminator instructions: the 'ret' instruction, the 'br' instruction, the 'switch' instruction, -the 'invoke' instruction, and the 'unwind' instruction.

    +the 'invoke' instruction, the 'unwind' instruction, and the 'unreachable' instruction.

    'ret' @@ -920,26 +922,63 @@ support them.

      %retval = invoke int %Test(int 15)
    to label %Continue
    except label %TestCleanup ; {int}:retval set
    + + +
    'unwind' Instruction
    +
    +
    Syntax:
    -
      unwind
    +
    +  unwind
    +
    +
    Overview:
    -

    The 'unwind' instruction unwinds the stack, continuing -control flow at the first callee in the dynamic call stack which used -an invoke instruction to perform the -call. This is primarily used to implement exception handling.

    + +

    The 'unwind' instruction unwinds the stack, continuing control flow +at the first callee in the dynamic call stack which used an invoke instruction to perform the call. This is +primarily used to implement exception handling.

    +
    Semantics:
    -

    The 'unwind' intrinsic causes execution of the current -function to immediately halt. The dynamic call stack is then searched -for the first invoke instruction on -the call stack. Once found, execution continues at the "exceptional" -destination block specified by the invoke instruction. If -there is no invoke instruction in the dynamic call chain, -undefined behavior results.

    + +

    The 'unwind' intrinsic causes execution of the current function to +immediately halt. The dynamic call stack is then searched for the first invoke instruction on the call stack. Once found, +execution continues at the "exceptional" destination block specified by the +invoke instruction. If there is no invoke instruction in the +dynamic call chain, undefined behavior results.

    + + + +
    'unreachable' +Instruction
    + +
    + +
    Syntax:
    +
    +  unreachable
    +
    + +
    Overview:
    + +

    The 'unreachable' instruction has no defined semantics. This +instruction is used to inform the optimizer that a particular portion of the +code is not reachable. This can be used to indicate that the code after a +no-return function cannot be reached, and other facts.

    + +
    Semantics:
    + +

    The 'unreachable' instruction has no defined semantics.

    +
    + + +
    Binary Operations