aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/Path.cpp
diff options
context:
space:
mode:
authorFraser Cormack <fraser@codeplay.com>2021-10-18 15:16:56 +0100
committerFraser Cormack <fraser@codeplay.com>2021-10-29 18:27:31 +0100
commit8314a04ede9ba1ddc03bfec24bf6431ff9a8c609 (patch)
tree52768dac8ccc82f6dc5092dbb16da81e981dff6e /llvm/lib/Support/Path.cpp
parent3b285ff5172c734240a96a12bd7a2d125136efef (diff)
downloadllvm-8314a04ede9ba1ddc03bfec24bf6431ff9a8c609.zip
llvm-8314a04ede9ba1ddc03bfec24bf6431ff9a8c609.tar.gz
llvm-8314a04ede9ba1ddc03bfec24bf6431ff9a8c609.tar.bz2
[SelectionDAG] Allow FindMemType to fail when widening loads & stores
This patch removes an internal failure found in FindMemType and "bubbles it up" to the users of that method: GenWidenVectorLoads and GenWidenVectorStores. FindMemType -- renamed findMemType -- now returns an optional value, returning None if no such type is found. Each of the aforementioned users now pre-calculates the list of types it will use to widen the memory access. If the type breakdown is not possible they will signal a failure, at which point the compiler will crash as it does currently. This patch is preparing the ground for alternative legalization strategies for vector loads and stores, such as using vector-predication versions of loads or stores. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D112000
Diffstat (limited to 'llvm/lib/Support/Path.cpp')
0 files changed, 0 insertions, 0 deletions