[Ada] Gigi support for OpenACC pragmas

Programming / Compilers / GCC - pmderodat [138bc75d-0d04-0410-961f-82ee72b054a4] - 3 December 2018 15:47 EST

Matching front-end bits to support Acc_Kernels, Acc_Parallel, Acc_Loop and Acc_Data.

2018-12-03 Olivier Hainque

gcc/ada/

- gcc-interface/lang.opt (fopenacc): New option for Ada.
- gcc-interface/misc.c (gnat_handle_option): Handle it.
- gcc-interface/trans.c (struct loop_info_d): Add OMP attributes. (Iterate_Acc_Clause_Arg, Acc_gnat_to_gnu): New functions, helpers for OpenACC pragmas processing in Pragma_to_gnu. (Acc_Var_to_gnu, Acc_Reduc_Var_to_gnu, Acc_Reduc_to_gnu): Likewise. (Acc_Size_Expr_to_gnu, Acc_Size_List_to_gnu): Likewise. (Pragma_Acc_Data_to_gnu): Likewise. (Pragma_to_gnu): Handle Pragma_Acc_Loop, Pragma_Acc_Data, Pragma_Acc_Kernels and Pragma_Acc_Parallel. (Acc_Loop_to_gnu, Regular_Loop_to_gnu): New functions. Helpers for ... (Loop_Statement_to_gnu): Rework to handle OpenACC loops.

a6f7b064e67 [Ada] Gigi support for OpenACC pragmas
gcc/ada/ChangeLog | 18 +
gcc/ada/gcc-interface/lang.opt | 4 +
gcc/ada/gcc-interface/misc.c | 1 +
gcc/ada/gcc-interface/trans.c | 736 +++++++++++++++++++++++++++++++++++++++--
4 files changed, 739 insertions(+), 20 deletions(-)

Upstream: gcc.gnu.org


  • Share