[PATCH 8/9] d3dx9: Add test for 'cmp' preshader opcode.
Paul Gofman
gofmanp at gmail.com
Thu May 11 18:46:03 CDT 2017
On 05/12/2017 01:16 AM, Matteo Bruni wrote:
> 2017-05-11 23:57 GMT+02:00 Paul Gofman <gofmanp at gmail.com>:
>
>> I would suggest doing the following:
>> 1. prepare a separate blob for the instructions testing not to mess up with
>> a copy of a big one which suits for different tests;
>> 2. comment the fields directly related to the preshader being changed right
>> in the effect blob;
>> 3. leave the code modifying the blob online but add comments for setting
>> fields.
>>
>> Otherwise I can prepare the single blob with everything buildin, mark
>> preshader code in comments pointing where manual changes are, and leave test
>> function just to set parameters. I could possibly do the same in the very
>> beginning when was adding this test, somehow this was not discussed that
>> time. But actually I was previously sure that having all that binary blobs
>> in tests is an ugly but unavoidable measure, and generating what we need to
>> test based on some patterns or readable data is preferred if possible, as
>> makes those tests easier verifiable and easier producible.
> This "otherwise" sounds like what I last proposed. Yeah, ideally we'd
> always generate the relevant preshaders instructions from source but
> as you noticed that isn't always doable. That means resorting to some
> kind of hack and, as far as hacks go, manually modifying the bytecode
> offline while adding comments looks like the least ugly option to me
> at the moment.
Should I make a single blob or separate for each instruction? Single
blob will require an update on each instruction added, while separate
(rather small) blobs for each will be the same apart from a few bytes
related to the operation being tested. Separate blobs look slightly
preferable to me, as don't require using and enumerating numerous
unrelated states in test function, and it is easier to find something in
the blob which has just one state and one preshader. If to go with
separate blobs, could you please advise how to best send it taking into
account existing test? As a single patch replacing the test with all the
blobs at once, or a few ones leaving existing test and removing it in
the last one?
More information about the wine-devel
mailing list