mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-20 19:54:19 +01:00
[dxvk] Don't use alignas(16) for DxvkMetaClearArgs members
Instead, pad members explicitly. This is necessary because GCC makes incorrect assumptions about stack alignment on 32-bit.
This commit is contained in:
parent
ca634ec484
commit
32dff89b2d
@ -428,7 +428,7 @@ namespace dxvk {
|
||||
m_cmd->updateDescriptorSets(1, &descriptorWrite);
|
||||
|
||||
// Prepare shader arguments
|
||||
DxvkMetaClearArgs pushArgs;
|
||||
DxvkMetaClearArgs pushArgs = { };
|
||||
pushArgs.clearValue = value;
|
||||
pushArgs.offset = VkOffset3D { int32_t(offset), 0, 0 };
|
||||
pushArgs.extent = VkExtent3D { uint32_t(length), 1, 1 };
|
||||
@ -2571,7 +2571,7 @@ namespace dxvk {
|
||||
m_cmd->updateDescriptorSets(1, &descriptorWrite);
|
||||
|
||||
// Prepare shader arguments
|
||||
DxvkMetaClearArgs pushArgs;
|
||||
DxvkMetaClearArgs pushArgs = { };
|
||||
pushArgs.clearValue = value.color;
|
||||
pushArgs.offset = offset;
|
||||
pushArgs.extent = extent;
|
||||
|
@ -17,9 +17,8 @@ namespace dxvk {
|
||||
*/
|
||||
struct DxvkMetaClearArgs {
|
||||
VkClearColorValue clearValue;
|
||||
|
||||
alignas(16) VkOffset3D offset;
|
||||
alignas(16) VkExtent3D extent;
|
||||
VkOffset3D offset; uint32_t pad1;
|
||||
VkExtent3D extent; uint32_t pad2;
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user