Bug 89670

Summary: cmod_propagation_test.andnz_one regression
Product: Mesa Reporter: Vinson Lee <vlee>
Component: Mesa coreAssignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact: mesa-dev
Severity: normal    
Priority: medium CC: jason, mattst88
Version: gitKeywords: bisected, regression
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Vinson Lee 2015-03-19 07:57:43 UTC
mesa: 036e347f3c129bb547137aed955e75062fca09b8 (master)

[ RUN      ] cmod_propagation_test.andnz_one
test_fs_cmod_propagation.cpp:479: Failure
Value of: cmod_propagation(v)
  Actual: false
Expected: true
test_fs_cmod_propagation.cpp:481: Failure
Value of: block0->end_ip
  Actual: 1
Expected: 0
[  FAILED  ] cmod_propagation_test.andnz_one (0 ms)
Comment 1 Vinson Lee 2015-03-19 18:45:44 UTC
bb22aa08e4b08c9688c5d5c6558ac01663d0163a is the first bad commit
commit bb22aa08e4b08c9688c5d5c6558ac01663d0163a
Author: Matt Turner <mattst88@gmail.com>
Date:   Tue Mar 17 19:17:15 2015 -0700

    i965/fs: Ignore type in cmod prop if scan_inst is CMP.
    
    total instructions in shared programs: 6263270 -> 6203091 (-0.96%)
    instructions in affected programs:     2606529 -> 2546350 (-2.31%)
    helped:                                14301
    GAINED:                                5
    LOST:                                  3
    
    Revewed-by: Jason Ekstrand <jason.ekstrand@intel.com>

:040000 040000 acacb2ba777652bcbeceb011456985b812b34e32 dfa64bcccb62ceb8510feb7d9b32f8edf0c24a2b M	src
bisect run success
Comment 2 Ian Romanick 2015-03-19 23:37:03 UTC
I think the problem is that the AND.NZ has a NULL destination, so (inst->dst.type == BRW_REGISTER_TYPE_D || inst->dst.type == BRW_REGISTER_TYPE_UD) is false.  I'll try a couple things, and I should have a patch shortly.
Comment 3 Ian Romanick 2015-03-19 23:46:36 UTC
It was just a dumb error in the test.  Patch sent:

http://lists.freedesktop.org/archives/mesa-dev/2015-March/079946.html
Comment 4 Ian Romanick 2015-03-20 21:15:43 UTC
Fixed by:

commit a04b520890c669ce012b4b18165392dcabe0b27b
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Thu Mar 19 16:44:14 2015 -0700

    i965/fs: Use correct null destination register in cmod tests
    
    Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89670
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Cc: Vinson Lee <vlee@freedesktop.org>

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.