[all-commits] [llvm/llvm-project] 281f59: [SPIR-V] Emit valid Lifestart/Lifestop instruction...

Vyacheslav Levytskyy via All-commits all-commits at lists.llvm.org
Mon Aug 12 06:49:38 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 281f59fdf9c4142a6d6b2e7b4bde2663ec3d313f
      https://github.com/llvm/llvm-project/commit/281f59fdf9c4142a6d6b2e7b4bde2663ec3d313f
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/lifetime.ll

  Log Message:
  -----------
  [SPIR-V] Emit valid Lifestart/Lifestop instructions (#98475)

This PR fixes emission of valid OpLifestart/OpLifestop instructions.
According to
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpLifetimeStart:
"Size must be 0 if Pointer is a pointer to a non-void type or the
Addresses
[capability](https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#Capability)
is not declared.". The `Size` argument is set the corresponding
intrinsics arguments, so Size is not zero we must ensure that Pointer
has the required type by inserting a bitcast if needed.



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