[all-commits] [llvm/llvm-project] c3b8a1: [CodeGen] Add TBAA struct path info for array memb...

Bruno De Fraine via All-commits all-commits at lists.llvm.org
Thu Jun 5 04:37:40 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c3b8a15eab06fceb6f4d0f2a0f505d5290ff208a
      https://github.com/llvm/llvm-project/commit/c3b8a15eab06fceb6f4d0f2a0f505d5290ff208a
  Author: Bruno De Fraine <brunodf at synopsys.com>
  Date:   2025-06-05 (Thu, 05 Jun 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/test/CodeGen/tbaa-array.cpp

  Log Message:
  -----------
  [CodeGen] Add TBAA struct path info for array members (#137719)

This enables the LLVM optimizer to view accesses to distinct struct
members as independent, also for array members. For example, the
following two stores no longer alias:

    struct S { int a[10]; int b; };
    void test(S *p, int i) {
      p->a[i] = ...;
      p->b = ...;
    }

Array members were already added to TBAA struct type nodes in commit
57493e29. Here, we extend a path tag for an array subscript expression.



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