r300/compiler: r500-fs: Properly set HW register swizzles.
Fixes fallout from 9a1bf52c.
This commit is contained in:
@@ -295,7 +295,7 @@ static char *toswiz(int swiz_val) {
|
||||
case 2: return "B";
|
||||
case 3: return "A";
|
||||
case 4: return "0";
|
||||
case 5: return "1/2";
|
||||
case 5: return "H";
|
||||
case 6: return "1";
|
||||
case 7: return "U";
|
||||
}
|
||||
|
||||
@@ -121,8 +121,19 @@ static unsigned int translate_alpha_op(struct r300_fragment_program_compiler *c,
|
||||
|
||||
static unsigned int fix_hw_swizzle(unsigned int swz)
|
||||
{
|
||||
if (swz == 5) swz = 6;
|
||||
if (swz == RC_SWIZZLE_UNUSED) swz = 4;
|
||||
switch (swz) {
|
||||
case RC_SWIZZLE_ZERO:
|
||||
case RC_SWIZZLE_UNUSED:
|
||||
swz = 4;
|
||||
break;
|
||||
case RC_SWIZZLE_HALF:
|
||||
swz = 5;
|
||||
break;
|
||||
case RC_SWIZZLE_ONE:
|
||||
swz = 6;
|
||||
break;
|
||||
}
|
||||
|
||||
return swz;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user