[all-commits] [llvm/llvm-project] 464d9d: [RemoveDIs][DebugInfo][IR] Add parsing for non-int...

Stephen Tozer via All-commits all-commits at lists.llvm.org
Thu Mar 7 05:05:25 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 464d9d96b3565ead06396ffb8d02b4dcf9cb9556
      https://github.com/llvm/llvm-project/commit/464d9d96b3565ead06396ffb8d02b4dcf9cb9556
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Assembler/dbg-record-invalid-0.ll
    A llvm/test/Assembler/dbg-record-invalid-1.ll
    A llvm/test/Assembler/dbg-record-invalid-2.ll
    A llvm/test/Assembler/dbg-record-invalid-3.ll
    A llvm/test/Assembler/dbg-record-invalid-4.ll
    A llvm/test/Assembler/dbg-record-invalid-5.ll
    A llvm/test/Assembler/dbg-record-invalid-6.ll
    A llvm/test/Assembler/dbg-record-invalid-7.ll
    A llvm/test/Assembler/dbg-record-invalid-8.ll
    A llvm/test/DebugInfo/roundtrip-non-instruction-debug-info.ll
    A llvm/test/Verifier/RemoveDI/blockbyref.ll
    A llvm/test/Verifier/RemoveDI/dbg-invalid-vector.ll
    A llvm/test/Verifier/RemoveDI/di-subroutine-localvar.ll
    A llvm/test/Verifier/RemoveDI/diexpression-entry-value-llvm-ir.ll
    A llvm/test/Verifier/RemoveDI/fnarg-debuginfo.ll
    A llvm/test/Verifier/RemoveDI/fnarg-nodebug.ll
    A llvm/test/Verifier/RemoveDI/invalid-disubrange-count-node.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-address.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-variable.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.intrinsic-dbg-attachment.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-value.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-variable.ll
    A llvm/test/Verifier/RemoveDI/set1.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo][IR] Add parsing for non-intrinsic debug values (#79818)

This patch adds support for parsing the proposed non-instruction debug
info ("RemoveDIs") from textual IR, and adds a test for the parser as well
as a set of verifier tests that are dependent on parsing to fire.

An important detail of this patch is the fact that although we can now
parse in the RemoveDIs (new) and Intrinsic (old) debug info formats, we
will always convert back to the old format at the end of parsing - this
is done for two reasons: firstly to ensure that every tool is able to
process IR printed in the new format, regardless of whether that tool
has had RemoveDIs support added, and secondly to maintain the effect of
the existing flags: for the tools where support for the new format has
been added, we will run LLVM passes in the new format iff
`--try-experimental-debuginfo-iterators=true`, and we will print in the
new format iff `--write-experimental-debuginfo-iterators=true`; the
format of the textual IR input should have no effect on either of these
features.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list