brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · ee926fe Raw
77 lines · c
1// --------------------------------------------------2// Check 'to' and extends before3// --------------------------------------------------4 5// RUN: %libomptarget-compile-generic \6// RUN:   -DCLAUSE=to -DEXTENDS=BEFORE7// RUN: %libomptarget-run-generic 2>&1 \8// RUN: | %fcheck-generic9 10// --------------------------------------------------11// Check 'from' and extends before12// --------------------------------------------------13 14// RUN: %libomptarget-compile-generic \15// RUN:   -DCLAUSE=from -DEXTENDS=BEFORE16// RUN: %libomptarget-run-generic 2>&1 \17// RUN: | %fcheck-generic18 19// --------------------------------------------------20// Check 'to' and extends after21// --------------------------------------------------22 23// RUN: %libomptarget-compile-generic \24// RUN:   -DCLAUSE=to -DEXTENDS=AFTER25// RUN: %libomptarget-run-generic 2>&1 \26// RUN: | %fcheck-generic27 28// --------------------------------------------------29// Check 'from' and extends after30// --------------------------------------------------31 32// RUN: %libomptarget-compile-generic \33// RUN:   -DCLAUSE=from -DEXTENDS=AFTER34// RUN: %libomptarget-run-generic 2>&1 \35// RUN: | %fcheck-generic36 37// END.38 39#include <stdio.h>40 41#define BEFORE 042#define AFTER 143 44#if EXTENDS == BEFORE45#define SMALL 2 : 346#define LARGE 0 : 547#elif EXTENDS == AFTER48#define SMALL 0 : 349#define LARGE 0 : 550#else51#error EXTENDS undefined52#endif53 54int main() {55  int arr[5];56 57  // CHECK-NOT: omptarget58#pragma omp target data map(alloc : arr[LARGE])59  {60#pragma omp target update CLAUSE(arr[SMALL])61  }62 63  // CHECK: success64  fprintf(stderr, "success\n");65 66  // CHECK-NOT: omptarget67#pragma omp target data map(alloc : arr[SMALL])68  {69#pragma omp target update CLAUSE(arr[LARGE])70  }71 72  // CHECK: success73  fprintf(stderr, "success\n");74 75  return 0;76}77