[llvm] r178018 - R600/SI: fix ELSE pseudo op handling

Tobias Grosser tobias at grosser.es
Wed Mar 27 03:06:37 PDT 2013


On 03/27/2013 10:07 AM, Christian König wrote:
> Am 27.03.2013 07:46, schrieb Tobias Grosser:
>> On 03/26/2013 03:11 PM, Sean Silva wrote:
>>> Test?
>>
>> Yes, very good point. I have the feeling the R600 commits miss test
>> cases most of the time. Christian, was there a specific reason that
>> there is no test case? In case there was, please explain the next time
>> in the commit message. Otherwise, can you commit a test case.
>>
>
> For this specific case I really had problems extracting a reasonable
> test case.
>
> The bug was that PHI elimination placed a COPY directly beneath a
> control flow pseudo opcode, and while expanding the COPY and pseudo
> opcode they ended up in the wrong order. But to actually force those
> condition you need a quite fair amount of control flow, and my example
> IR only generates exactly this pattern because it isn't optimized
> properly. I just wanted to avoid submitting a large amount of IR to test
> for this bug which I need to remove again when I optimize this control
> flow pattern.
>
> Well you guys pretty much convinced me of the reason for good testcases,
> but we have developed this backend for quite some time outside of master
> and honestly we probably would need to add a couple of hundred test
> cases to cover all the stuff in it.
>
> I think the only way out of this misery is that I promise to either
> provide a test case or a very very good reason not to do so for future
> patches.

Wonderful, that's a very good general rule.

Also, to second Chandlers comments. Besides the low test case coverage, 
you guys are doing an amazing job with R600, especially the style it is 
developed. Small patches, regular contributions, everything directly 
developed upstream. This makes following your development both easy and 
pleasant and it could serves as an example for new contributors/back-ends.

Thanks again,
Tobi



More information about the llvm-commits mailing list