[all-commits] [llvm/llvm-project] db8ae2: [llvm][doc] Update comments and documentation of c...

zero9178 via All-commits all-commits at lists.llvm.org
Tue Feb 15 03:17:33 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: db8ae2fef1592126a8ce52d97e1d6df069ff1e58
      https://github.com/llvm/llvm-project/commit/db8ae2fef1592126a8ce52d97e1d6df069ff1e58
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2022-02-15 (Tue, 15 Feb 2022)

  Changed paths:
    M llvm/docs/Statepoints.rst
    M llvm/include/llvm/IR/GCStrategy.h

  Log Message:
  -----------
  [llvm][doc] Update comments and documentation of custom stackmap formats in GC

Since https://reviews.llvm.org/D53892 it is possible to emit a custom stackmap by overwriting the emitStackMaps method of GCMetadataPrinter. That way even AOT compilers can generate a more efficient and more suitable format for their needs.

This patch updates documentation and stale comments in source code. In particular it removes the issue from the issue list in the Statepoints documentation and adjusts comments in GCStrategy.

Differential Revision: https://reviews.llvm.org/D119660


  Commit: 78c27a3cee424d1989ec7ce188b7142511482f77
      https://github.com/llvm/llvm-project/commit/78c27a3cee424d1989ec7ce188b7142511482f77
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2022-02-15 (Tue, 15 Feb 2022)

  Changed paths:
    M llvm/lib/Target/X86/X86AvoidTrailingCall.cpp
    A llvm/test/CodeGen/X86/win64-eh-trailing-statepoint.ll

  Log Message:
  -----------
  [X86][Win64] Avoid statepoints in trailing call position

The "avoid trailing call pass" makes sure that no function ends with a call instruction for the purpose of the unwinder.
It starts of by skipping over any non real instruction, which is approximated via the Pseudo and Meta property. This sadly leads to issues when the last machine instruction is a STATEPOINT, as it is skipped despite it lowering to a call.

This patch fixes the use of a statepoint in the trailing call position by making sure call instructions are not skipped.

Differential Revision: https://reviews.llvm.org/D119644


Compare: https://github.com/llvm/llvm-project/compare/87de451bc577...78c27a3cee42


More information about the All-commits mailing list