141/143 Test #85: regression/struct_kernel_arguments ..................................................***Failed Error regular expression found in output. Regex=[FAIL] 4.58 sec
CMake Error at /build/pocl-1.4/cmake/run_test.cmake:34 (message):
FAIL: Test exited with nonzero code (1):
/build/pocl-1.4/obj-i686-linux-gnu/tests/regression/test_structs_as_args
STDOUT:
F(4: 0 != 5) F(5: -
2147483648 != 6) F(6: 0 != 7) F(7: 0 != 8)
STDERR:
-- OK
Bug: https://github.com/pocl/pocl/issues/801
Bug: https://github.com/KhronosGroup/OpenCL-Headers/issues/149
Forwarded: not-needed
Gbp-Pq: Name test_structs_as_args.patch
add_test_pocl(NAME "regression/struct_kernel_arguments" COMMAND "test_structs_as_args")
+if(0)
+if(LLC_HOST_CPU STREQUAL "i686")
+ set_tests_properties("regression/struct_kernel_arguments"
+ PROPERTIES WILL_FAIL 1)
+endif()
+endif()
+
add_test_pocl(NAME "regression/vector_kernel_arguments" COMMAND "test_vectors_as_args")
set(TCE_TESTS "regression/barrier_between_two_for_loops_LOOPS"
cl_long b;\r
};\r
\r
+// i386 has a default alignment of 4 even for 64-bit types\r
+#ifdef __i386__\r
+#define CL_LONG_ALIGNMENT __attribute__((aligned(8)))\r
+#define CL_DOUBLE_ALIGNMENT __attribute__((aligned(8)))\r
+#else\r
+#define CL_LONG_ALIGNMENT\r
+#define CL_DOUBLE_ALIGNMENT\r
+#endif\r
+\r
struct test_struct {\r
cl_int elementA;\r
cl_int elementB;\r
- cl_long elementC;\r
+ cl_long elementC CL_LONG_ALIGNMENT;\r
cl_char elementD;\r
- cl_long elementE;\r
+ cl_long elementE CL_LONG_ALIGNMENT;\r
cl_float elementF;\r
cl_short elementG;\r
#ifdef _CL_DISABLE_DOUBLE\r
- cl_long elementH;\r
+ cl_long elementH CL_LONG_ALIGNMENT;\r
#else\r
- cl_double elementH;\r
+ cl_double elementH CL_DOUBLE_ALIGNMENT;\r
#endif\r
};\r
\r
+#undef CL_LONG_ALIGNMENT\r
+#undef CL_DOUBLE_ALIGNMENT\r
+\r
static char\r
kernelSourceCode[] = \r
"typedef struct int_single {\n"\r