[all-commits] [llvm/llvm-project] 356139: [LLD][COFF] Add support for `--time-trace` (#68236)

Alexandre Ganea via All-commits all-commits at lists.llvm.org
Thu Oct 5 19:34:11 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 356139bd027d65b6843cbd4eda642104cfe6cf8f
      https://github.com/llvm/llvm-project/commit/356139bd027d65b6843cbd4eda642104cfe6cf8f
  Author: Alexandre Ganea <37383324+aganea at users.noreply.github.com>
  Date:   2023-10-05 (Thu, 05 Oct 2023)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/DebugTypes.cpp
    M lld/COFF/Driver.cpp
    M lld/COFF/DriverUtils.cpp
    M lld/COFF/ICF.cpp
    M lld/COFF/LLDMapFile.cpp
    M lld/COFF/LTO.cpp
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/MinGW.cpp
    M lld/COFF/Options.td
    M lld/COFF/PDB.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/Writer.cpp
    M lld/Common/Filesystem.cpp
    M lld/docs/ReleaseNotes.rst
    A lld/test/COFF/time-trace.s
    M llvm/lib/DebugInfo/MSF/MSFBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/InfoStreamBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBStringTableBuilder.cpp
    M llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
    M llvm/lib/Support/FileOutputBuffer.cpp

  Log Message:
  -----------
  [LLD][COFF] Add support for `--time-trace` (#68236)

This adds support for generating Chrome-tracing .json profile traces in
the LLD COFF driver.

Also add the necessary time scopes, so that the profile trace shows in
great detail which tasks are executed.

As an example, this is what we see when linking a Unreal Engine
executable:

![image](https://github.com/llvm/llvm-project/assets/37383324/b2e26eb4-9d37-4cf9-b002-48b604e7dcb7)




More information about the All-commits mailing list