R600/SI: Also enable WQM for image opcodes which calculate LOD v3
authorMichel Danzer <michel.daenzer@amd.com>
Fri, 6 Feb 2015 02:51:20 +0000 (02:51 +0000)
committerMichel Danzer <michel.daenzer@amd.com>
Fri, 6 Feb 2015 02:51:20 +0000 (02:51 +0000)
commita7879dcf33916d30f6a7ba99d10f09b004bd895a
treea640fcbfd7a3f4bfa7119090f6df82d738de0d05
parentab28439f9a5381997cd8335e9974b21f2193b23c
R600/SI: Also enable WQM for image opcodes which calculate LOD v3

If whole quad mode isn't enabled for these, the level of detail is
calculated incorrectly for pixels along diagonal triangle edges, causing
artifacts.

v2: Use a TSFlag instead of lots of switch cases
v3: Add test coverage

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88642
Reviewed-by: Tom Stellard <tom@stellard.net>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228372 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/R600/SIDefines.h
lib/Target/R600/SIInstrFormats.td
lib/Target/R600/SIInstrInfo.h
lib/Target/R600/SIInstrInfo.td
lib/Target/R600/SIInstructions.td
lib/Target/R600/SILowerControlFlow.cpp
test/CodeGen/R600/llvm.SI.image.sample.ll
test/CodeGen/R600/llvm.SI.image.sample.o.ll