Fix dEQP-VK.glsl.atomic_operations.*64bit*
authorNorbert Garnys <Norbert.Garnys@amd.com>
Thu, 20 Sep 2018 11:27:11 +0000 (13:27 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 27 Sep 2018 07:35:54 +0000 (03:35 -0400)
Change buffer structure to be naturally aligned.

Affected tests:
dEQP-VK.glsl.atomic_operations.*

Components: Vulkan

VK-GL-CTS issue:1364

Change-Id: I6721ee396e55e6c83cb3970171eafd064076c988

external/vulkancts/modules/vulkan/shaderexecutor/vktAtomicOperationTests.cpp

index a066f04..8e46111 100644 (file)
@@ -212,11 +212,11 @@ public:
                // Use half the number of elements for inout to cause overlap between atomic operations.
                // Each inout element at index i will have two atomic operations using input from
                // indices i and i + NUM_ELEMENTS / 2.
-               deInt32         index;
                T                       inout[NUM_ELEMENTS / 2];
                T                       input[NUM_ELEMENTS];
                T                       compare[NUM_ELEMENTS];
                T                       output[NUM_ELEMENTS];
+               deInt32         index;
        };
 
        virtual void setBuffer(void* ptr)
@@ -671,11 +671,11 @@ void AtomicOperationCase::createShaderSpec (void)
                "${EXTENSIONS}\n"
                "layout (set = ${SETIDX}, binding = 0) buffer AtomicBuffer\n"
                "{\n"
-               "    int index;\n"
                "    ${DATATYPE} inoutValues[${N}/2];\n"
                "    ${DATATYPE} inputValues[${N}];\n"
                "    ${DATATYPE} compareValues[${N}];\n"
                "    ${DATATYPE} outputValues[${N}];\n"
+               "    int index;\n"
                "} buf;\n");
 
        std::map<std::string, std::string> specializations;