[PATCH] D21061: [ARM] Remove exit-on-error flag from test (PR27765)

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 10 08:28:47 PDT 2016


Renato Golin <renato.golin at linaro.org> writes:
> rengolin added inline comments.
>
> ================
> Comment at: lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:452
> @@ -451,1 +451,3 @@
>                                          "scalar-to-vector conversion failed");
> +      Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
> +    }
> ----------------
> rovka wrote:
>> rengolin wrote:
>> > I take it that this transformation is harmless, since the
>> > compilation is going to fail anyway.
>> > 
>> > But I'm worried that this could trigger unrelated errors down the
>> > pipe until the last error is reported and the program exits, and
>> > confuse the user.
>>
>> Not taking this lightly, but we're not seeing any other errors now,
>> and I'm not sure how you could recover in a way that would guarantee
>> you won't see any bogus errors ever (while still reporting all the
>> useful ones). I think it should be pretty safe to have a bitcast
>> between two values that have the same number of bits (assertion just
>> above, at line 445).
>> 
>> I'm open to other suggestions though :)
>
> Right... maybe @bogner or @echristo can shed some light?

The approach here seems fine. Best effort recovery like this has better
odds of giving the user a good error experience than doing nothing, and
since -exit-on-error isn't the normal way of running things I guess this
is just overall better.


More information about the llvm-commits mailing list