brintos

brintos / llvm-project-archived public Read only

0
0
Text · 900 B · 5526475 Raw
56 lines · c
1// RUN: %libomp-compile-and-run2#include <stdio.h>3#include "omp_testsuite.h"4 5int test_omp_section_firstprivate()6{7  int sum;8  int sum0;9  int known_sum;10 11  sum0 = 11;12  sum = 7;13  #pragma omp parallel14  {15    #pragma omp  sections firstprivate(sum0)16    {17      #pragma omp section18      {19        #pragma omp critical20        {21          sum = sum + sum0;22        }23      }24      #pragma omp section25      {26        #pragma omp critical27        {28          sum = sum + sum0;29        }30      }31      #pragma omp section32      {33        #pragma omp critical34        {35          sum = sum + sum0;36        }37      }38    }39  }40  known_sum = 11 * 3 + 7;41  return (known_sum == sum);42} /* end of check_section_firstprivate*/43 44int main()45{46  int i;47  int num_failed=0;48 49  for(i = 0; i < REPETITIONS; i++) {50    if(!test_omp_section_firstprivate()) {51      num_failed++;52    }53  }54  return num_failed;55}56