History log of /llvm-project/llvm/lib/CodeGen/SelectOptimize.cpp (Results 51 – 61 of 61)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# aa8feeef 25-Jun-2022 Kazu Hirata <kazu@google.com>

Don't use Optional::hasValue (NFC)


Revision tags: llvmorg-14.0.6
# 7a47ee51 21-Jun-2022 Kazu Hirata <kazu@google.com>

[llvm] Don't use Optional::getValue (NFC)


# e0e687a6 20-Jun-2022 Kazu Hirata <kazu@google.com>

[llvm] Don't use Optional::hasValue (NFC)


# b254d671 18-Jun-2022 Kazu Hirata <kazu@google.com>

[llvm] Call *set::insert without checking membership first (NFC)


Revision tags: llvmorg-14.0.5, llvmorg-14.0.4
# 67be40df 24-May-2022 Sotiris Apostolakis <apostolakis@google.com>

Recommit "[SelectOpti][5/5] Optimize select-to-branch transformation"

Use container::size_type directly to avoid type mismatch causing build failures in Windows.

Original commit message:
This patch

Recommit "[SelectOpti][5/5] Optimize select-to-branch transformation"

Use container::size_type directly to avoid type mismatch causing build failures in Windows.

Original commit message:
This patch optimizes the transformation of selects to a branch when the heuristics deemed it profitable.
It aggressively sinks eligible instructions to the newly created true/false blocks to prevent their
execution on the common path and interleaves dependence slices to maximize ILP.

Depends on D120232

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D120233

show more ...


# 1786e70b 24-May-2022 Sotiris Apostolakis <apostolakis@google.com>

Revert "[SelectOpti][5/5] Optimize select-to-branch transformation"

This reverts commit a111fb960108df910a864500f3b98d75d37f083c.


# a111fb96 24-May-2022 Sotiris Apostolakis <apostolakis@google.com>

[SelectOpti][5/5] Optimize select-to-branch transformation

This patch optimizes the transformation of selects to a branch when the heuristics deemed it profitable.
It aggressively sinks eligible ins

[SelectOpti][5/5] Optimize select-to-branch transformation

This patch optimizes the transformation of selects to a branch when the heuristics deemed it profitable.
It aggressively sinks eligible instructions to the newly created true/false blocks to prevent their
execution on the common path and interleaves dependence slices to maximize ILP.

Depends on D120232

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D120233

show more ...


# d7ebb746 24-May-2022 Sotiris Apostolakis <apostolakis@google.com>

[SelectOpti][4/5] Loop Heuristics

This patch adds the loop-level heuristics for determining whether branches are more profitable than conditional moves.
These heuristics apply to only inner-most loo

[SelectOpti][4/5] Loop Heuristics

This patch adds the loop-level heuristics for determining whether branches are more profitable than conditional moves.
These heuristics apply to only inner-most loops.

Depends on D120231

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D120232

show more ...


# 8b42bc56 23-May-2022 Sotiris Apostolakis <apostolakis@google.com>

[SelectOpti][3/5] Base Heuristics

This patch adds the base heuristics for determining whether branches are more profitable than conditional moves.
Base heuristics apply to all code apart from inner-

[SelectOpti][3/5] Base Heuristics

This patch adds the base heuristics for determining whether branches are more profitable than conditional moves.
Base heuristics apply to all code apart from inner-most loops.

Depends on D122259

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D120231

show more ...


# 97c3ef5c 23-May-2022 Sotiris Apostolakis <apostolakis@google.com>

[SelectOpti][2/5] Select-to-branch base transformation

This patch implements the actual transformation of selects to branches.
It includes only the base transformation without any sinking.

Depends

[SelectOpti][2/5] Select-to-branch base transformation

This patch implements the actual transformation of selects to branches.
It includes only the base transformation without any sinking.

Depends on D120230

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D122259

show more ...


# ca7c307d 13-May-2022 Sotiris Apostolakis <apostolakis@google.com>

[SelectOpti][1/5] Setup new select-optimize pass

This is the first commit for the cmov-vs-branch optimization pass.
The goal is to develop a new profile-guided and target-independent cost/benefit an

[SelectOpti][1/5] Setup new select-optimize pass

This is the first commit for the cmov-vs-branch optimization pass.
The goal is to develop a new profile-guided and target-independent cost/benefit analysis
for selecting conditional moves over branches when optimizing for performance.

Initially, this new pass is expected to be enabled only for instrumentation-based PGO.

RFC: https://discourse.llvm.org/t/rfc-cmov-vs-branch-optimization/6040

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D120230

show more ...


123