Skip to content

LLVM’s legacy pass manager passes for sanitizers will go away #44987

Closed
@MaskRay

Description

@MaskRay

Using LLVM's legacy PM for optimization pipeline was deprecated in 13.0.0 and the relevant functionality was scheduled to be removed after 14.0.0 (got delayed). Clang dropped legacy PM support in D123609 (milestone: 15.0.0). I plan to remove instrumentation passes like gcov, PGO, and sanitizers (milestone: 15.0.0).

src/aotcompile.cpp has code like PM->add(createAddressSanitizerFunctionPass()); which needs to be ported to the new pass manager. You can see llvm-project clang/lib/CodeGen/BackendUtil.cpp for how to use the new pass manager.

LLVM's legacy PM for optimization pipeline may be completely removed in 16.0.0. You may want to migrate to the new pass manager now. llvm-project clang/lib/CodeGen/BackendUtil.cpp can serve as an example using the new pass manager.

Metadata

Metadata

Assignees

No one assigned

    Labels

    compiler:llvmFor issues that relate to LLVM

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions