[all-commits] [llvm/llvm-project] 4ce540: AMDGPU: Convert enqueue-kernel.ll to opaque pointers

Matt Arsenault via All-commits all-commits at lists.llvm.org
Fri Jan 6 18:15:52 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4ce5400a3fdf595c25aeaa467472efa62a83a232
      https://github.com/llvm/llvm-project/commit/4ce5400a3fdf595c25aeaa467472efa62a83a232
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-01-06 (Fri, 06 Jan 2023)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/enqueue-kernel.ll

  Log Message:
  -----------
  AMDGPU: Convert enqueue-kernel.ll to opaque pointers

This demonstrates the pass is broken with them, the follow up change
will fix it.


  Commit: 0416883dc1f5d6b9bfa2c543f590f40e23868403
      https://github.com/llvm/llvm-project/commit/0416883dc1f5d6b9bfa2c543f590f40e23868403
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-01-06 (Fri, 06 Jan 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp
    M llvm/test/CodeGen/AMDGPU/enqueue-kernel.ll

  Log Message:
  -----------
  AMDGPU: Fix enqueue block lowering for opaque pointers

This was looking for a specific constant cast of the function, when
the type doesn't matter. Doesn't bother trying to handle typed
pointers, it will just assert.

Things probably don't work completely correctly if the block kernel
address is captured somewhere else, but that wouldn't work before
either. The uses should really be loads out of the handle, and the
handle initializer should contain the kernel address.


Compare: https://github.com/llvm/llvm-project/compare/cf97ee75f080...0416883dc1f5


More information about the All-commits mailing list