Workaround clang/LLVM bug with /fp:fast+SSE+float_control (#449)

This commit is contained in:
Chuck Walbourn
2024-02-05 10:08:59 -08:00
committed by GitHub
parent 95796ba57e
commit 819c5b78f7
11 changed files with 235 additions and 32 deletions

View File

@@ -830,6 +830,9 @@ namespace
// No 3:3:2 or paletted DXGI formats aka D3DFMT_R3G3B2, D3DFMT_P8
break;
default:
return DXGI_FORMAT_UNKNOWN;
}
}
else if (ddpf.flags & DDS_LUMINANCE)
@@ -860,6 +863,9 @@ namespace
return DXGI_FORMAT_R8G8_UNORM; // Some DDS writers assume the bitcount should be 8 instead of 16
}
break;
default:
return DXGI_FORMAT_UNKNOWN;
}
}
else if (ddpf.flags & DDS_ALPHA)
@@ -892,6 +898,9 @@ namespace
return DXGI_FORMAT_R8G8_SNORM; // D3DX10/11 writes this out as DX10 extension
}
break;
default:
return DXGI_FORMAT_UNKNOWN;
}
// No DXGI format maps to DDPF_BUMPLUMINANCE aka D3DFMT_L6V5U5, D3DFMT_X8L8V8U8
@@ -992,6 +1001,9 @@ namespace
return DXGI_FORMAT_R32G32B32A32_FLOAT;
// No DXGI format maps to D3DFMT_CxV8U8
default:
return DXGI_FORMAT_UNKNOWN;
}
}
@@ -1127,6 +1139,9 @@ namespace
res.SlicePitch = res.RowPitch * static_cast<LONG>(height);
}
break;
default:
break;
}
}