1*330d8983SJohannes Doerfert // RUN: %libomptarget-compile-generic -DLIBRARY -c -o %t.o 2*330d8983SJohannes Doerfert // RUN: ar rcs %t.a %t.o 3*330d8983SJohannes Doerfert // RUN: %libomptarget-compile-generic %t.a && %libomptarget-run-generic 2>&1 | %fcheck-generic 4*330d8983SJohannes Doerfert 5*330d8983SJohannes Doerfert #ifdef LIBRARY 6*330d8983SJohannes Doerfert int x = 42; 7*330d8983SJohannes Doerfert #pragma omp declare target(x) 8*330d8983SJohannes Doerfert foo()9*330d8983SJohannes Doerfertint foo() { 10*330d8983SJohannes Doerfert int value; 11*330d8983SJohannes Doerfert #pragma omp target map(from : value) 12*330d8983SJohannes Doerfert value = x; 13*330d8983SJohannes Doerfert return value; 14*330d8983SJohannes Doerfert } 15*330d8983SJohannes Doerfert #else 16*330d8983SJohannes Doerfert #include <stdio.h> 17*330d8983SJohannes Doerfert int foo(); 18*330d8983SJohannes Doerfert main()19*330d8983SJohannes Doerfertint main() { 20*330d8983SJohannes Doerfert int x = foo(); 21*330d8983SJohannes Doerfert 22*330d8983SJohannes Doerfert // CHECK: PASS 23*330d8983SJohannes Doerfert if (x == 42) 24*330d8983SJohannes Doerfert printf("PASS\n"); 25*330d8983SJohannes Doerfert } 26*330d8983SJohannes Doerfert #endif 27