diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2025-05-28 11:02:37 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-28 11:02:37 +0100 |
commit | d1592a966bc22b94362380aa690eeb92f42b8ca0 (patch) | |
tree | 087c31b836f81be817d0b13eafe3f49d133ffc3f /clang/lib/CodeGen/CodeGenFunction.cpp | |
parent | eea69691908d2ff59ef2614fc6f948d021d0ef07 (diff) | |
download | llvm-d1592a966bc22b94362380aa690eeb92f42b8ca0.zip llvm-d1592a966bc22b94362380aa690eeb92f42b8ca0.tar.gz llvm-d1592a966bc22b94362380aa690eeb92f42b8ca0.tar.bz2 |
[X86] X86FixupVectorConstantsPass - use scheduler model to avoid regressions (#140028)
When attempting to replace a full vector constant load with an instruction that uses a smaller constant, check the scheduler model to ensure the instruction isn't slower.
Throughput must not regress, but allow a small increase in latency based on how much constant data we're saving (I've used a simple estimate of 1 cycle per 128-bits of data saved).
NOTE: this currently ignores hoisted constant loads where the slower instruction might be acceptable.
Fixes #135998
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions