HomePhabricator

Basic Block Sections support in LLVM.

Authored by tmsriram on Mar 16 2020, 3:56 PM.

Description

Basic Block Sections support in LLVM.

This is the second patch in a series of patches to enable basic block
sections support.

This patch adds support for:

  • Creating direct jumps at the end of basic blocks that have fall

through instructions.

  • New pass, bbsections-prepare, that analyzes placement of basic blocks

in sections.

  • Actual placing of a basic block in a unique section with special

handling of exception handling blocks.

  • Supports placing a subset of basic blocks in a unique section.
  • Support for MIR serialization and deserialization with basic block

sections.

Parent patch : D68063
Differential Revision: https://reviews.llvm.org/D73674

Details