[PATCH] D30438: SplitKit: Correctly implement partial copies
Matthias Braun via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 14 15:10:15 PDT 2017
MatzeB marked an inline comment as done.
MatzeB added inline comments.
================
Comment at: lib/CodeGen/SplitKit.cpp:597
+ if (BestIdx == 0)
+ report_fatal_error("Impossible to implement partial COPY");
+
----------------
kparzysz wrote:
> This doesn't need to be addressed in this patch, but on a general note---this would be a case where the compiler corners itself into such a situation. It's not a symptom of simply a bug, but rather a design that can end up in a dead end. Ideally, we should avoid getting here early enough to have other options.
I think this cannot happen. As for liveness to split up into a given lanemask we need an operand in the function that uses a subregister index with such a lanemask. But that would mean we can use the same index to implement the COPY.
I'm not a 100% sure that I am not missing something here so I left this check in to better abort than silently infinite loop if I did :).
Repository:
rL LLVM
https://reviews.llvm.org/D30438
More information about the llvm-commits
mailing list