[all-commits] [llvm/llvm-project] 1f5b6a: [flang] optionally add lifetime markers to alloca ...

jeanPerier via All-commits all-commits at lists.llvm.org
Thu May 22 00:26:36 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1f5b6ae89fbc88d22c323fa56d8bdad9f7b695c3
      https://github.com/llvm/llvm-project/commit/1f5b6ae89fbc88d22c323fa56d8bdad9f7b695c3
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-05-22 (Thu, 22 May 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    A flang/test/Transforms/stack-arrays-lifetime.fir

  Log Message:
  -----------
  [flang] optionally add lifetime markers to alloca created in stack-arrays (#140901)

Flang at Ofast usually produces executables that consume more stack that
other Fortran compilers.
This is in part because the alloca created from temporary heap
allocation by the StackArray pass are created at the function scope
level without lifetimes, and LLVM does not/is not able to merge alloca
that do not have overlapping lifetimes.

This patch adds an option to generate LLVM lifetime in the StackArray
pass at the previous heap allocation/free using the LLVM dialect
operation for it.



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