[all-commits] [llvm/llvm-project] 9f6aae: [flang] Add type-specific runtime entries for Minl...
Slava Zakharin via All-commits
all-commits at lists.llvm.org
Mon Oct 10 17:00:29 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9f6aae46062e4f4e560cb3ae7a0110260a3c75da
https://github.com/llvm/llvm-project/commit/9f6aae46062e4f4e560cb3ae7a0110260a3c75da
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2022-10-10 (Mon, 10 Oct 2022)
Changed paths:
M flang/include/flang/Runtime/reduction.h
M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
M flang/runtime/extrema.cpp
M flang/test/Lower/Intrinsics/maxloc.f90
M flang/test/Lower/Intrinsics/minloc.f90
M flang/unittests/Optimizer/Builder/Runtime/ReductionTest.cpp
M flang/unittests/Optimizer/Builder/Runtime/RuntimeCallTestBase.h
M flang/unittests/Runtime/Reduction.cpp
Log Message:
-----------
[flang] Add type-specific runtime entries for Minloc/Maxloc.
We used to have a big switch statement over the type categories and kinds
inside Minloc/Maxloc. After D133051 the switch grew bigger, and this
changed inlining decisions made by GCC (the build compiler). Some of the
simple methods stopped being inlined, and this caused slight performance
regression in Polyhedron/gas_dyn2. This change adds separate entries
for real/integer data types to let them be optimized separately.
Differential Revision: https://reviews.llvm.org/D135610
More information about the All-commits
mailing list