summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStopAndContinue.py
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2016-04-25 12:22:29 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2016-04-25 12:22:29 +0000
commit7292c29bb51191cdceeff6d5e2cac62cc2f4ef4c (patch)
tree4d8e405fb69d0bddbded24bb87f5a2d07b3ead08 /lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStopAndContinue.py
parenta6c4d2f19762a65c98b4a53e66be1c512cf0af6a (diff)
downloadbcm5719-llvm-7292c29bb51191cdceeff6d5e2cac62cc2f4ef4c.tar.gz
bcm5719-llvm-7292c29bb51191cdceeff6d5e2cac62cc2f4ef4c.zip
[OPENMP 4.5] Codegen for 'taskloop' directive.
The taskloop construct specifies that the iterations of one or more associated loops will be executed in parallel using OpenMP tasks. The iterations are distributed across tasks created by the construct and scheduled to be executed. The next code will be generated for the taskloop directive: #pragma omp taskloop num_tasks(N) lastprivate(j) for( i=0; i<N*GRAIN*STRIDE-1; i+=STRIDE ) { int th = omp_get_thread_num(); #pragma omp atomic counter++; #pragma omp atomic th_counter[th]++; j = i; } Generated code: task = __kmpc_omp_task_alloc(NULL,gtid,1,sizeof(struct task),sizeof(struct shar),&task_entry); psh = task->shareds; psh->pth_counter = &th_counter; psh->pcounter = &counter; psh->pj = &j; task->lb = 0; task->ub = N*GRAIN*STRIDE-2; task->st = STRIDE; __kmpc_taskloop( NULL, // location gtid, // gtid task, // task structure 1, // if clause value &task->lb, // lower bound &task->ub, // upper bound STRIDE, // loop increment 0, // 1 if nogroup specified 2, // schedule type: 0-none, 1-grainsize, 2-num_tasks N, // schedule value (ignored for type 0) (void*)&__task_dup_entry // tasks duplication routine ); llvm-svn: 267395
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStopAndContinue.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud