[all-commits] [llvm/llvm-project] c94196: [SPIRV] Extend NSDI debug handling for DebugTypeFu...

Manuel Carrasco via All-commits all-commits at lists.llvm.org
Fri Jun 5 09:06:28 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c941964c58cf8ba2b65c1358f42576ab1eff67b0
      https://github.com/llvm/llvm-project/commit/c941964c58cf8ba2b65c1358f42576ab1eff67b0
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-int-string-dedup.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-multi-scalar-params.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-omit.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-pointer-debug-none-base.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-pointer-param.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-scalar-returns.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-subroutine-type-flags.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-void-prototypes.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer-composite-pointee.ll

  Log Message:
  -----------
  [SPIRV] Extend NSDI debug handling for DebugTypeFunction. (#197003)

Extend NSDI handling for
[DebugTypeFunction](https://github.khronos.org/SPIRV-Registry/nonsemantic/NonSemantic.Shader.DebugInfo.html#DebugTypeFunction).

Changes:

- Collect required types with DebugInfoFinder instead of walking
DbgVariableRecords only. This allows processing types that might not be
available in these records, and avoids code duplication for the
traversals.
- Emit DebugTypeFunction for DISubroutineType when every signature slot
maps to an emitted debug type.
- Reset per-module state in beginModule().
- Replace parallel FileStringRegs/BasicTypeNameRegs with a StringMap
OpString cache, deduplicating identical strings.
- Add LLVM DINode flag lowering for NSDI.
- Cache DebugInfoNone, OpTypeVoid and OpTypeInt32 registers to avoid
duplicate instructions.



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