[all-commits] [llvm/llvm-project] b08bb1: Simplify flattening of GEP chains

Deric C. via All-commits all-commits at lists.llvm.org
Wed Jul 2 16:02:27 PDT 2025


  Branch: refs/heads/users/Icohedron/pr-146173
  Home:   https://github.com/llvm/llvm-project
  Commit: b08bb11fd23d314360d8407fef2bc34b77d58e7c
      https://github.com/llvm/llvm-project/commit/b08bb11fd23d314360d8407fef2bc34b77d58e7c
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-27 (Fri, 27 Jun 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp

  Log Message:
  -----------
  Simplify flattening of GEP chains

This simplification also fixes instances of incorrect flat index
computations


  Commit: e7b9d2131a327dd352664b0574dac7ddf2d7e6f9
      https://github.com/llvm/llvm-project/commit/e7b9d2131a327dd352664b0574dac7ddf2d7e6f9
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-27 (Fri, 27 Jun 2025)

  Changed paths:
    M llvm/test/CodeGen/DirectX/flatten-array.ll
    M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
    M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
    M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll
    M llvm/test/CodeGen/DirectX/scalarize-alloca.ll

  Log Message:
  -----------
  Fix tests with incorrect GEPs

A few tests had incorrect GEP indices or types.
This commit fixes these GEPs and array types.


  Commit: 1a09803d75b42e9b70c37e7e92c0ca2f3ddcf3f0
      https://github.com/llvm/llvm-project/commit/1a09803d75b42e9b70c37e7e92c0ca2f3ddcf3f0
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-28 (Sat, 28 Jun 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
    M llvm/test/CodeGen/DirectX/flatten-array.ll
    M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
    M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll

  Log Message:
  -----------
  Allow flattening GEPs for Global Variables not in the GlobalMap


  Commit: dee77e9f5cf1bed2b13d6078d7255219cac70538
      https://github.com/llvm/llvm-project/commit/dee77e9f5cf1bed2b13d6078d7255219cac70538
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-28 (Sat, 28 Jun 2025)

  Changed paths:
    M llvm/test/CodeGen/DirectX/flatten-array.ll

  Log Message:
  -----------
  Add test demonstrating the flattening of scalar GEPs, including i8


  Commit: 1ccaa986e4e9e024d91ef6a67509af657c7c9ebc
      https://github.com/llvm/llvm-project/commit/1ccaa986e4e9e024d91ef6a67509af657c7c9ebc
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-30 (Mon, 30 Jun 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp

  Log Message:
  -----------
  Clear GEPChainInfoMap after visiting a function

It is possible for GEPOperator* to overlap between function visits, so
we have to clear the map or else there could be stale data leftover that
causes GEPs to be incorrectly generated or skipped over.


  Commit: 32806096da0117831839567b18def3b8cd1a474e
      https://github.com/llvm/llvm-project/commit/32806096da0117831839567b18def3b8cd1a474e
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-30 (Mon, 30 Jun 2025)

  Changed paths:
    M llvm/test/CodeGen/DirectX/flatten-array.ll

  Log Message:
  -----------
  Fix check for constantexpr GEP instead of an instruction


  Commit: 9ff05d250a061bad0ef8f94d6e0103cbf35dc750
      https://github.com/llvm/llvm-project/commit/9ff05d250a061bad0ef8f94d6e0103cbf35dc750
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-06-30 (Mon, 30 Jun 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp

  Log Message:
  -----------
  Use .indices() instead of .idx_begin() and .idx_end()


  Commit: 3734f57aa50172899cc970b07dd3a18569374e93
      https://github.com/llvm/llvm-project/commit/3734f57aa50172899cc970b07dd3a18569374e93
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-07-01 (Tue, 01 Jul 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
    M llvm/test/CodeGen/DirectX/flatten-array.ll

  Log Message:
  -----------
  Handle cases where Multiplier is not divisible by BytesPerElem in variable index calculation


  Commit: b1206e31db2305a5387f52d4c92cd883adb56c34
      https://github.com/llvm/llvm-project/commit/b1206e31db2305a5387f52d4c92cd883adb56c34
  Author: Icohedron <cheung.deric at gmail.com>
  Date:   2025-07-01 (Tue, 01 Jul 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
    M llvm/test/CodeGen/DirectX/scalar-store.ll

  Log Message:
  -----------
  Move scalarizer to before dxil-flatten-arrays


Compare: https://github.com/llvm/llvm-project/compare/b08bb11fd23d%5E...b1206e31db23

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