diff options
author | Craig Topper <craig.topper@intel.com> | 2020-03-09 10:35:31 -0700 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2020-03-09 11:26:12 -0700 |
commit | 3dcc0db15e372df2e6c61873dc2d8a2f780cd27e (patch) | |
tree | 159d7432a4b7b4725ec3eda056d4bf08581ceebf /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 8fc9eea43a94d83e46614eee47b069e25848fedb (diff) | |
download | llvm-3dcc0db15e372df2e6c61873dc2d8a2f780cd27e.zip llvm-3dcc0db15e372df2e6c61873dc2d8a2f780cd27e.tar.gz llvm-3dcc0db15e372df2e6c61873dc2d8a2f780cd27e.tar.bz2 |
[X86] Teach combineToExtendBoolVectorInReg to create opportunities for using broadcast load instructions.
If we're inserting a scalar that is smaller than the element
size of the final VT, the value of the extra bits doesn't matter.
Previously we any_extended in the scalar domain before inserting.
This patch changes this to use a broadcast of the original
scalar type and then a bitcast to the final type. This might
enable the use of a broadcast load.
This recovers regressions from 07d68c24aa19483e44db4336b0935b00a5d69949
and 9fcd212e2f678fdbdf304399a1e58ca490dc54d1 without relying on
alignment of the load.
Differential Revision: https://reviews.llvm.org/D75835
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions