[all-commits] [llvm/llvm-project] 23b058: [SPIR-V] Re-implement switch and improve validatio...

Vyacheslav Levytskyy via All-commits all-commits at lists.llvm.org
Tue Apr 9 07:16:06 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 23b058cb7f2da7778eb66dbe44d5e60390264e4b
      https://github.com/llvm/llvm-project/commit/23b058cb7f2da7778eb66dbe44d5e60390264e4b
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-04-09 (Tue, 09 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/test/CodeGen/SPIRV/branching/OpSwitchUnreachable.ll
    A llvm/test/CodeGen/SPIRV/branching/switch-range-check.ll

  Log Message:
  -----------
  [SPIR-V] Re-implement switch and improve validation of forward calls (#87823)

This PR fixes issue https://github.com/llvm/llvm-project/issues/87763
and preserves valid CFG in cases when previous scheme failed to generate
valid code for a switch statement. The PR hardens one existing test case
and adds one more test case as a validation of a new switch generation.
Tests are passing spirv-val now.

This PR also improves validation of forward calls.



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