diff options
author | Craig Topper <craig.topper@sifive.com> | 2022-04-15 16:33:12 -0700 |
---|---|---|
committer | Craig Topper <craig.topper@sifive.com> | 2022-04-15 16:38:27 -0700 |
commit | a7b9d75e7a4e4d9555f54753c70e66821dd447a9 (patch) | |
tree | abb7cee87c5051cf4907c3c94eab74bc7164ba5e /llvm/lib/Transforms/Utils/ModuleUtils.cpp | |
parent | 81143b69dd832da189b1c875fd8a94b288c486c6 (diff) | |
download | llvm-a7b9d75e7a4e4d9555f54753c70e66821dd447a9.zip llvm-a7b9d75e7a4e4d9555f54753c70e66821dd447a9.tar.gz llvm-a7b9d75e7a4e4d9555f54753c70e66821dd447a9.tar.bz2 |
[DAGCombiner] Move or/xor/and opcode check in ReduceLoadOpStoreWidth before hasOneUse check.
hasOneUse is not cheap on nodes with chain results that might have
many uses. By checking the opcode first, we can avoid a costly walk
of the use list on nodes we aren't interested in.
Found by investigating calls to hasNUsesOfValue from the example
provided in D123857.
Diffstat (limited to 'llvm/lib/Transforms/Utils/ModuleUtils.cpp')
0 files changed, 0 insertions, 0 deletions