[OpenMP] Fix the test case issue that printf cannot be used in target region for AMDGPU

GitOrigin-RevId: 459e3c51840a7f09536a7839deb7184b53bd7e92
diff --git a/libomptarget/test/offloading/test_libc.cpp b/libomptarget/test/offloading/test_libc.cpp
index cfccf47..66d73d7 100644
--- a/libomptarget/test/offloading/test_libc.cpp
+++ b/libomptarget/test/offloading/test_libc.cpp
@@ -6,16 +6,17 @@
 
 // std::equal is lowered to libc function memcmp.
 void test_memcpy() {
-#pragma omp target
+  int r = 0;
+#pragma omp target map(from: r)
   {
     int x[2] = {0, 0};
     int y[2] = {0, 0};
     int z[2] = {0, 1};
     bool eq1 = std::equal(x, x + 2, y);
     bool eq2 = std::equal(x, x + 2, z);
-    bool r = eq1 && !eq2;
-    printf("memcmp: %s\n", r ? "PASS" : "FAIL");
+    r = eq1 && !eq2;
   }
+  printf("memcmp: %s\n", r ? "PASS" : "FAIL");
 }
 
 int main(int argc, char *argv[]) {