[all-commits] [llvm/llvm-project] a5fe6c: [symbolizer] Change reaction on invalid input

Serge Pavlov via All-commits all-commits at lists.llvm.org
Sat Aug 12 01:58:20 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a5fe6c7f5e2d1d265bd7c312ef55259fee7a68f9
      https://github.com/llvm/llvm-project/commit/a5fe6c7f5e2d1d265bd7c312ef55259fee7a68f9
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2023-08-12 (Sat, 12 Aug 2023)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-symbolizer.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/DebugInfo/Symbolize/DIPrinter.h
    M llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
    M llvm/test/tools/llvm-symbolizer/debuginfod.test
    M llvm/test/tools/llvm-symbolizer/file-prefix.test
    M llvm/test/tools/llvm-symbolizer/flag-grouping.test
    M llvm/test/tools/llvm-symbolizer/flush-output.s
    M llvm/test/tools/llvm-symbolizer/functions.s
    M llvm/test/tools/llvm-symbolizer/input-base.test
    M llvm/test/tools/llvm-symbolizer/invalid-input-address.test
    M llvm/test/tools/llvm-symbolizer/options-from-env.test
    M llvm/test/tools/llvm-symbolizer/output-style-empty-line.test
    M llvm/test/tools/llvm-symbolizer/output-style-json-code.test
    M llvm/test/tools/llvm-symbolizer/output-style-json-data.test
    M llvm/test/tools/llvm-symbolizer/output-style-json-frame.ll
    M llvm/test/tools/llvm-symbolizer/sym-verbose.test
    M llvm/test/tools/llvm-symbolizer/sym.test
    M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp

  Log Message:
  -----------
  [symbolizer] Change reaction on invalid input

If llvm-symbolizer finds a malformed command, it echoes it to the
standard output. New versions of binutils (starting from 2.39) allow to
specify an address by a symbols. Implementation of this feature in
llvm-symbolizer makes the current reaction on invalid input
inappropriate. Almost any invalid command may be treated as a symbol
name, so the right reaction should be "symbol not found" in such case.

The exception are commands that are recognized but have incorrect
syntax, like "FILE:FILE:". The utility must produce descriptive
diagnostic for such input and route it to the stderr.

This change implements the new reaction on invalid input and is a
prerequisite for implementation of symbol lookup in llvm-symbolizer.

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




More information about the All-commits mailing list