[all-commits] [llvm/llvm-project] 8dfe81: [Verifier] Constrain where DILocations may be nested

Vedant Kumar via All-commits all-commits at lists.llvm.org
Mon May 4 14:03:07 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 8dfe819bcd231486db3058e2538fff0f569e3c1a
      https://github.com/llvm/llvm-project/commit/8dfe819bcd231486db3058e2538fff0f569e3c1a
  Author: Vedant Kumar <vsk at apple.com>
  Date:   2020-05-04 (Mon, 04 May 2020)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Verifier/dilocation-in-wrong-place.ll

  Log Message:
  -----------
  [Verifier] Constrain where DILocations may be nested

Summary:
Constrain which metadata nodes are allowed to be, or contain,
DILocations. This ensures that logic for updating DILocations in a
Module is complete.

Currently, !llvm.loop metadata is the only odd duck which contains
nested DILocations. This has caused problems in the past: some passes
forgot to visit the nested locations, leading to subtly broken debug
info and late verification failures.

If there's a compelling reason for some future metadata to nest
DILocations, we'll need to introduce a generic API for updating the
locations attached to an Instruction before relaxing this check.

Reviewers: aprantl, dsanders

Subscribers: hiraditya, llvm-commits

Tags: #llvm

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


  Commit: 88d9e4326f48041056c4db3506d30574c6e1d83c
      https://github.com/llvm/llvm-project/commit/88d9e4326f48041056c4db3506d30574c6e1d83c
  Author: Vedant Kumar <vsk at apple.com>
  Date:   2020-05-04 (Mon, 04 May 2020)

  Changed paths:
    M lldb/include/lldb/Expression/Expression.h
    M lldb/include/lldb/Expression/UserExpression.h

  Log Message:
  -----------
  [lldb/Expression] Make Language() const, NFC

Allow Language() to be called from const methods within UserExpression.


Compare: https://github.com/llvm/llvm-project/compare/4ad53177db75...88d9e4326f48


More information about the All-commits mailing list