[GSoC] Weekly report - week 1

Sebastian Galindo via Gcc <[email protected]>
Newsgroups gmane.comp.gcc.devel
Message-ID <[email protected]>
Hi!

Here is my first weekly report :-).

This week I set out to:

In general, the following tasks are related to implementing the init/shutdown/set directives from OpenACC:

   - Detail the existing patch regarding the API runtime functions.
   - Implement the parsing of the directives in the Fortran front-end first.
   - Link the existing API calls to the lowered function from the {front,middle}-end. 

Over the week:

   - I've built a script to retrieve and review a patch from the mailing list (linked with the first week's task).
   - I noticed that, actually, the directives can be placed as built-in functions; regardless, I posted a question on the mailing list about that: https://gcc.gnu.org/pipermail/gcc/2026-May/248254.html
   - I've implemented the parsing process for the init directive in the simplest possible case (no clauses included).
   - I've included the corresponding built-in function in the libgomp library.
   - I've started the implementation of the clause parsing specified in the acc init directive.
   - I've recognized that, actually, the "acc routine" directive is missing two clauses to be supported: the device_type and bind clauses. (This might be a task included in the last part of my GSoC project: "Add newer features from OpenACC spec".)

Current status:

    - The compiler is able to recognize the "!$acc init" directive, emit the built-in function call, and print a debug message from the runtime library (libgomp).
    - The current progress works in Fortran only, and I'm waiting for an answer to a question regarding a specific clause naming case: https://gcc.gnu.org/pipermail/gcc/2026-May/248262.html 
        - In the meanwhile I'll implement the directive parsing in the
          others front-ends.

For now, I'll focus on the full implementation in Fortran (of the 3 directives) and then move on to the C and C++ front-ends.

Let me know if the report is too large or I'm being too specific.

Thanks!

Best,
Sebastian Galindo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.