<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Courier New" size="2"><span style="font-size:11pt;">
<div>Hi, everyone. I add a unit test and I have committed it, but I’m wondering whether I’m using git the same way as you do.</div>
<div><font face="Times New Roman" size="2"><span style="font-size:10.5pt;"> </span></font></div>
<div>---</div>
<div> ...nment.cl => test_rowpitch_clenqueuemapimage.cl} |    2 +-</div>
<div> utests/CMakeLists.txt                              |    2 +-</div>
<div> ....cpp => runtime_rowpitch_clenqueuemapimage.cpp} |   35 +++++++++-----------</div>
<div> 3 files changed, 18 insertions(+), 21 deletions(-)</div>
<div> rename kernels/{test_map_alignment.cl => test_rowpitch_clenqueuemapimage.cl} (76%)</div>
<div> rename utests/{runtime_map_alignment.cpp => runtime_rowpitch_clenqueuemapimage.cpp} (50%)</div>
<div> </div>
<div>diff --git a/kernels/test_map_alignment.cl b/kernels/test_rowpitch_clenqueuemapimage.cl</div>
<div>similarity index 76%</div>
<div>rename from kernels/test_map_alignment.cl</div>
<div>rename to kernels/test_rowpitch_clenqueuemapimage.cl</div>
<div>index 874f75c..d27c090 100644</div>
<div>--- a/kernels/test_map_alignment.cl</div>
<div>+++ b/kernels/test_rowpitch_clenqueuemapimage.cl</div>
<div>@@ -1,5 +1,5 @@</div>
<div> __kernel void </div>
<div>-test_map_alignment(__write_only image2d_t out) {</div>
<div>+test_rowpitch_clenqueuemapimage(__write_only image2d_t out) {</div>
<div>     int2 loc = (int2)(get_global_id(0), get_global_id(1));</div>
<div>     int4 pixel;</div>
<div>     pixel.s0 = 1;</div>
<div>diff --git a/utests/CMakeLists.txt b/utests/CMakeLists.txt</div>
<div>index 46284a0..aebd950 100644</div>
<div>--- a/utests/CMakeLists.txt</div>
<div>+++ b/utests/CMakeLists.txt</div>
<div>@@ -123,6 +123,7 @@ set (utests_sources</div>
<div>   runtime_createcontext.cpp</div>
<div>   runtime_null_kernel_arg.cpp</div>
<div>         runtime_event.cpp</div>
<div>+  runtime_rowpitch_clenqueuemapimage.cpp</div>
<div>   compiler_double.cpp</div>
<div>   compiler_double_2.cpp</div>
<div>   compiler_double_3.cpp</div>
<div>@@ -135,7 +136,6 @@ set (utests_sources</div>
<div>   compiler_long_asr.cpp</div>
<div>   compiler_long_mult.cpp</div>
<div>   compiler_long_cmp.cpp</div>
<div>-  runtime_map_alignment.cpp</div>
<div>   utest_assert.cpp</div>
<div>   utest.cpp</div>
<div>   utest_file_map.cpp</div>
<div>diff --git a/utests/runtime_map_alignment.cpp b/utests/runtime_rowpitch_clenqueuemapimage.cpp</div>
<div>similarity index 50%</div>
<div>rename from utests/runtime_map_alignment.cpp</div>
<div>rename to utests/runtime_rowpitch_clenqueuemapimage.cpp</div>
<div>index d0868ae..bd71e95 100644</div>
<div>--- a/utests/runtime_map_alignment.cpp</div>
<div>+++ b/utests/runtime_rowpitch_clenqueuemapimage.cpp</div>
<div>@@ -1,20 +1,18 @@</div>
<div> #include "utest_helper.hpp"</div>
<div> </div>
<div>-static void runtime_map_alignment(void) </div>
<div>+static void runtime_rowpitch_clenqueuemapimage(void) </div>
<div> {</div>
<div>-    const int W = 16, H = 16;</div>
<div>+    const size_t W = 16, H = 16;</div>
<div>     cl_image_format format;</div>
<div> </div>
<div>     buf_data[0] = (uint32_t *) malloc(sizeof(uint32_t) * W * H);</div>
<div>     for(uint32_t j = 0; j < H; ++j)</div>
<div>         for(uint32_t i = 0; i < W; i++)</div>
<div>             ((uint32_t*)buf_data[0])[j*W+i] = 0;</div>
<div>-    //OCL_CREATE_KERNEL_FROM_FILE("compiler_enqueue", kernel_name);</div>
<div>-    OCL_CREATE_KERNEL("test_map_alignment");</div>
<div>+    OCL_CREATE_KERNEL("test_rowpitch_clenqueuemapimage");</div>
<div> </div>
<div>     format.image_channel_order = CL_RGBA;</div>
<div>     format.image_channel_data_type = CL_UNSIGNED_INT8;</div>
<div>-    //OCL_CREATE_IMAGE2D(buf[0], CL_MEM_COPY_HOST_PTR, &format, W, H, W * sizeof(uint32_t), NULL);</div>
<div>     OCL_CREATE_IMAGE2D(buf[0], 0, &format, W, H, 0, NULL);</div>
<div>     OCL_SET_ARG(0, sizeof(cl_mem), &buf[0]);</div>
<div>     globals[0] = W;</div>
<div>@@ -23,24 +21,23 @@ static void runtime_map_alignment(void)</div>
<div>     locals[1] = 16;</div>
<div>     OCL_NDRANGE(2);</div>
<div> </div>
<div>-    /*const size_t origin[] = {0,0,0}, region[] = {W,H,1};</div>
<div>+    const size_t origin[] = {0,0,0}, region[] = {W,H,1};</div>
<div>     size_t image_row_pitch = W * 32;</div>
<div>     size_t image_slice_pitch = H * image_row_pitch;</div>
<div>-    cl_int * ret;</div>
<div>-    uint *xx = (uint *) clEnqueueMapImage(x_cmd_q,</div>
<div>-                   x_mem_out_1, // cl_mem            buffer,</div>
<div>+    cl_int ret;</div>
<div>+    buf_data[0] = (uint32_t *) clEnqueueMapImage(queue,</div>
<div>+                   buf[0],      // cl_mem            buffer,</div>
<div>                    CL_TRUE,     // cl_bool           blocking_map,</div>
<div>-                   CL_MAP_READ,           // cl_map_flags      map_flags,</div>
<div>-                   origin,           // size_t            origin[3],</div>
<div>-                   region,    // size_t            region[3],</div>
<div>-                   &image_row_pitch,           // size_t * image_row_pitch,</div>
<div>+                   CL_MAP_READ, // cl_map_flags      map_flags,</div>
<div>+                   origin,      // size_t            origin[3],</div>
<div>+                   region,      // size_t            region[3],</div>
<div>+                   &image_row_pitch,         // size_t * image_row_pitch,</div>
<div>                    &image_slice_pitch,       //size_t * image_slice_pitch,</div>
<div>                    0,           // cl_uint num_event_in_wait_list </div>
<div>-                   nullptr,     // const cl_event *  event_wait_list,</div>
<div>-                   nullptr,     // cl_event *        event,</div>
<div>-                   & err        // cl_int *          errcode_ret</div>
<div>-                 );*/</div>
<div>-    OCL_MAP_BUFFER(0);</div>
<div>+                   NULL,        // const cl_event *  event_wait_list,</div>
<div>+                   NULL,        // cl_event *        event,</div>
<div>+                   & ret        // cl_int *          errcode_ret</div>
<div>+                 );</div>
<div>     for(uint32_t j = 0; j < H; ++j)</div>
<div>         for(uint32_t i = 0; i < W; i++)</div>
<div>             //printf("j=%d i=%d data=0x%x\n", j, i, ((uint32_t*)buf_data[0])[j*W+i]);</div>
<div>@@ -48,4 +45,4 @@ static void runtime_map_alignment(void)</div>
<div>     OCL_UNMAP_BUFFER(0);</div>
<div> }</div>
<div> </div>
<div>-MAKE_UTEST_FROM_FUNCTION(runtime_map_alignment);</div>
<div>+MAKE_UTEST_FROM_FUNCTION(runtime_rowpitch_clenqueuemapimage);</div>
<div>-- </div>
<div>1.7.9.5</div>
<div> </div>
<div> </div>
<div align="left" style="text-align:justify;"><font face="Times New Roman" size="2"><span style="font-size:10.5pt;"> </span></font></div>
<div align="left" style="text-align:justify;"><font face="Times New Roman" size="2"><span style="font-size:10.5pt;"> </span></font></div>
</span></font>
</body>
</html>