Mercurial > hg > CbC > CbC_gcc
comparison gcc/gimple.def @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
1 /* This file contains the definitions of the GIMPLE IR tuples used in GCC. | 1 /* This file contains the definitions of the GIMPLE IR tuples used in GCC. |
2 | 2 |
3 Copyright (C) 2007-2018 Free Software Foundation, Inc. | 3 Copyright (C) 2007-2020 Free Software Foundation, Inc. |
4 Contributed by Aldy Hernandez <aldyh@redhat.com> | 4 Contributed by Aldy Hernandez <aldyh@redhat.com> |
5 | 5 |
6 This file is part of GCC. | 6 This file is part of GCC. |
7 | 7 |
8 GCC is free software; you can redistribute it and/or modify it under | 8 GCC is free software; you can redistribute it and/or modify it under |
277 | 277 |
278 /* GIMPLE_OMP_MASTER <BODY> represents #pragma omp master. | 278 /* GIMPLE_OMP_MASTER <BODY> represents #pragma omp master. |
279 BODY is the sequence of statements to execute in the master section. */ | 279 BODY is the sequence of statements to execute in the master section. */ |
280 DEFGSCODE(GIMPLE_OMP_MASTER, "gimple_omp_master", GSS_OMP) | 280 DEFGSCODE(GIMPLE_OMP_MASTER, "gimple_omp_master", GSS_OMP) |
281 | 281 |
282 /* GIMPLE_OMP_TASKGROUP <BODY> represents #pragma omp taskgroup. | 282 /* GIMPLE_OMP_TASKGROUP <BODY, CLAUSES> represents #pragma omp taskgroup. |
283 BODY is the sequence of statements to execute in the taskgroup section. */ | 283 BODY is the sequence of statements inside the taskgroup section. |
284 DEFGSCODE(GIMPLE_OMP_TASKGROUP, "gimple_omp_taskgroup", GSS_OMP) | 284 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ |
285 DEFGSCODE(GIMPLE_OMP_TASKGROUP, "gimple_omp_taskgroup", GSS_OMP_SINGLE_LAYOUT) | |
285 | 286 |
286 /* GIMPLE_OMP_PARALLEL <BODY, CLAUSES, CHILD_FN, DATA_ARG> represents | 287 /* GIMPLE_OMP_PARALLEL <BODY, CLAUSES, CHILD_FN, DATA_ARG> represents |
287 | 288 |
288 #pragma omp parallel [CLAUSES] | 289 #pragma omp parallel [CLAUSES] |
289 BODY | 290 BODY |
327 data area allocated by GOMP_task and passed to CHILD_FN. */ | 328 data area allocated by GOMP_task and passed to CHILD_FN. */ |
328 DEFGSCODE(GIMPLE_OMP_TASK, "gimple_omp_task", GSS_OMP_TASK) | 329 DEFGSCODE(GIMPLE_OMP_TASK, "gimple_omp_task", GSS_OMP_TASK) |
329 | 330 |
330 /* OMP_RETURN marks the end of an OpenMP directive. */ | 331 /* OMP_RETURN marks the end of an OpenMP directive. */ |
331 DEFGSCODE(GIMPLE_OMP_RETURN, "gimple_omp_return", GSS_OMP_ATOMIC_STORE_LAYOUT) | 332 DEFGSCODE(GIMPLE_OMP_RETURN, "gimple_omp_return", GSS_OMP_ATOMIC_STORE_LAYOUT) |
333 | |
334 /* GIMPLE_OMP_SCAN <BODY, CLAUSES> represents #pragma omp scan | |
335 BODY is the sequence of statements inside the single section. | |
336 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ | |
337 DEFGSCODE(GIMPLE_OMP_SCAN, "gimple_omp_scan", GSS_OMP_SINGLE_LAYOUT) | |
332 | 338 |
333 /* OMP_SECTION <BODY> represents #pragma omp section. | 339 /* OMP_SECTION <BODY> represents #pragma omp section. |
334 BODY is the sequence of statements in the section body. */ | 340 BODY is the sequence of statements in the section body. */ |
335 DEFGSCODE(GIMPLE_OMP_SECTION, "gimple_omp_section", GSS_OMP) | 341 DEFGSCODE(GIMPLE_OMP_SECTION, "gimple_omp_section", GSS_OMP) |
336 | 342 |
351 BODY is the sequence of statements inside the single section. | 357 BODY is the sequence of statements inside the single section. |
352 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ | 358 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ |
353 DEFGSCODE(GIMPLE_OMP_SINGLE, "gimple_omp_single", GSS_OMP_SINGLE_LAYOUT) | 359 DEFGSCODE(GIMPLE_OMP_SINGLE, "gimple_omp_single", GSS_OMP_SINGLE_LAYOUT) |
354 | 360 |
355 /* GIMPLE_OMP_TARGET <BODY, CLAUSES, CHILD_FN> represents | 361 /* GIMPLE_OMP_TARGET <BODY, CLAUSES, CHILD_FN> represents |
356 #pragma acc {kernels,parallel,data,enter data,exit data,update} | 362 #pragma acc {kernels,parallel,serial,data,enter data,exit data,update} |
357 #pragma omp target {,data,update} | 363 #pragma omp target {,data,update} |
358 BODY is the sequence of statements inside the construct | 364 BODY is the sequence of statements inside the construct |
359 (NULL for some variants). | 365 (NULL for some variants). |
360 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. | 366 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. |
361 CHILD_FN is set when outlining the body of the offloaded region. | 367 CHILD_FN is set when outlining the body of the offloaded region. |
364 DATA_ARG is a vec of 3 local variables in the parent function | 370 DATA_ARG is a vec of 3 local variables in the parent function |
365 containing data to be mapped to CHILD_FN. This is used to | 371 containing data to be mapped to CHILD_FN. This is used to |
366 implement the MAP clauses. */ | 372 implement the MAP clauses. */ |
367 DEFGSCODE(GIMPLE_OMP_TARGET, "gimple_omp_target", GSS_OMP_PARALLEL_LAYOUT) | 373 DEFGSCODE(GIMPLE_OMP_TARGET, "gimple_omp_target", GSS_OMP_PARALLEL_LAYOUT) |
368 | 374 |
369 /* GIMPLE_OMP_TEAMS <BODY, CLAUSES> represents #pragma omp teams | 375 /* GIMPLE_OMP_TEAMS <BODY, CLAUSES, CHILD_FN, DATA_ARG> represents |
376 #pragma omp teams | |
370 BODY is the sequence of statements inside the single section. | 377 BODY is the sequence of statements inside the single section. |
371 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ | 378 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. |
372 DEFGSCODE(GIMPLE_OMP_TEAMS, "gimple_omp_teams", GSS_OMP_SINGLE_LAYOUT) | 379 CHILD_FN and DATA_ARG like for GIMPLE_OMP_PARALLEL. */ |
380 DEFGSCODE(GIMPLE_OMP_TEAMS, "gimple_omp_teams", GSS_OMP_PARALLEL_LAYOUT) | |
373 | 381 |
374 /* GIMPLE_OMP_ORDERED <BODY, CLAUSES> represents #pragma omp ordered. | 382 /* GIMPLE_OMP_ORDERED <BODY, CLAUSES> represents #pragma omp ordered. |
375 BODY is the sequence of statements to execute in the ordered section. | 383 BODY is the sequence of statements to execute in the ordered section. |
376 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ | 384 CLAUSES is an OMP_CLAUSE chain holding the associated clauses. */ |
377 DEFGSCODE(GIMPLE_OMP_ORDERED, "gimple_omp_ordered", GSS_OMP_SINGLE_LAYOUT) | 385 DEFGSCODE(GIMPLE_OMP_ORDERED, "gimple_omp_ordered", GSS_OMP_SINGLE_LAYOUT) |