[all-commits] [llvm/llvm-project] a03ea3: [mlir][LLVM] Introduce verfier for call debug loca...

Christian Ulmann via All-commits all-commits at lists.llvm.org
Sun Aug 6 23:02:15 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a03ea35e59e4b9a678a714ba5c6639e9667f5854
      https://github.com/llvm/llvm-project/commit/a03ea35e59e4b9a678a714ba5c6639e9667f5854
  Author: Christian Ulmann <christian.ulmann at nextsilicon.com>
  Date:   2023-08-07 (Mon, 07 Aug 2023)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    A mlir/test/Dialect/LLVMIR/invalid-call-location.mlir

  Log Message:
  -----------
  [mlir][LLVM] Introduce verfier for call debug locations

This commit introduces a debug location verifier for the LLVM dialect's
call operation. LLVM does not allow calls to have no debug location when
they reference an inlinable function with debug information. This
apparenlty breaks assumptions of LLVM's inliner.

So far, there was a hack in the LLVM export that avoided this case to
be triggered, but that hack causes issues when debug intrinsics are
involved. Link to the revision that inroduced the export hack:
https://reviews.llvm.org/D88135

LLVM's verifier as a reference: https://github.com/llvm/llvm-project/blob/2df05cd01c17f3ef720e554dc7cde43df27e5224/llvm/lib/IR/Verifier.cpp#L3546

Reviewed By: gysit, zero9178

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




More information about the All-commits mailing list