> -----Original Message-----
> From: Richard Biener <richard.guent...@gmail.com>
> Sent: Thursday, August 22, 2024 2:16 PM
> To: H.J. Lu <hjl.to...@gmail.com>
> Cc: gcc-patches@gcc.gnu.org; josmy...@redhat.com
> Subject: Re: [PATCH v3] Update LDPT_REGISTER_CLAIM_FILE_HOOK_V2 linker
> plugin hook
> 
> External email: Use caution opening links or attachments
> 
> 
> On Wed, Aug 21, 2024 at 4:25 PM H.J. Lu <hjl.to...@gmail.com> wrote:
> >
> > This hook allows the BFD linker plugin to distinguish calls to
> > claim_file_handler that know the object is being used by the linker
> > (from ldmain.c:add_archive_element), from calls that don't know it's
> > being used by the linker (from elf_link_is_defined_archive_symbol);
> in
> > the latter case, the plugin should avoid including the unused LTO
> > archive members in link output.  To get the proper support for
> > archives with LTO common symbols, the linker fix
> 
> OK.
Hi,
After this commit:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=a98dd536b1017c2b814a3465206c6c01b2890998
I am no longer able to see mkoffload (and accel compiler) being invoked for 
nvptx (-save-temps also doesn't show accel dumps).
I have attached -v output before and after the commit for x86_64->nvptx 
offloading for the following simple test (host doesn't really matter, can also 
reproduce with aarch64 host):

int main()
{
  int x = 1;
  #pragma omp target map(x)
    x = 5;
  return x;
}

Thanks,
Prathamesh
> 
> Thanks,
> Richard.
> 
> > commit a6f8fe0a9e9cbe871652e46ba7c22d5e9fb86208
> > Author: H.J. Lu <hjl.to...@gmail.com>
> > Date:   Wed Aug 14 20:50:02 2024 -0700
> >
> >     lto: Don't include unused LTO archive members in output
> >
> > is required.
> >
> >         PR lto/116361
> >         * lto-plugin.c (claim_file_handler_v2): Rename claimed to
> >         can_be_claimed.  Include the LTO object only if it is known
> to
> >         be included in link output.
> >
> > Signed-off-by: H.J. Lu <hjl.to...@gmail.com>
> > ---
> >  lto-plugin/lto-plugin.c | 53
> > ++++++++++++++++++++++++-----------------
> >  1 file changed, 31 insertions(+), 22 deletions(-)
> >
> > diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c index
> > 152648338b9..61b0de62f52 100644
> > --- a/lto-plugin/lto-plugin.c
> > +++ b/lto-plugin/lto-plugin.c
> > @@ -1191,16 +1191,19 @@ process_offload_section (void *data, const
> char *name, off_t offset, off_t len)
> >    return 1;
> >  }
> >
> > -/* Callback used by a linker to check if the plugin will claim
> FILE. Writes
> > -   the result in CLAIMED.  If KNOWN_USED, the object is known by
> the linker
> > -   to be used, or an older API version is in use that does not
> provide that
> > -   information; otherwise, the linker is only determining whether
> this is
> > -   a plugin object and it should not be registered as having
> offload data if
> > -   not claimed by the plugin.  */
> > +/* Callback used by a linker to check if the plugin can claim FILE.
> > +   Writes the result in CAN_BE_CLAIMED.  If KNOWN_USED != 0, the
> object
> > +   is known by the linker to be included in link output, or an
> older API
> > +   version is in use that does not provide that information.
> Otherwise,
> > +   the linker is only determining whether this is a plugin object
> and
> > +   only the symbol table is needed by the linker.  In this case,
> the
> > +   object should not be included in link output and this function
> will
> > +   be called by the linker again with KNOWN_USED != 0 after the
> linker
> > +   decides the object should be included in link output. */
> >
> >  static enum ld_plugin_status
> > -claim_file_handler_v2 (const struct ld_plugin_input_file *file, int
> *claimed,
> > -                      int known_used)
> > +claim_file_handler_v2 (const struct ld_plugin_input_file *file,
> > +                      int *can_be_claimed, int known_used)
> >  {
> >    enum ld_plugin_status status;
> >    struct plugin_objfile obj;
> > @@ -1229,7 +1232,7 @@ claim_file_handler_v2 (const struct
> ld_plugin_input_file *file, int *claimed,
> >      }
> >    lto_file.handle = file->handle;
> >
> > -  *claimed = 0;
> > +  *can_be_claimed = 0;
> >    obj.file = file;
> >    obj.found = 0;
> >    obj.offload = false;
> > @@ -1286,15 +1289,19 @@ claim_file_handler_v2 (const struct
> ld_plugin_input_file *file, int *claimed,
> >                               lto_file.symtab.syms);
> >        check (status == LDPS_OK, LDPL_FATAL, "could not add
> symbols");
> >
> > -      LOCK_SECTION;
> > -      num_claimed_files++;
> > -      claimed_files =
> > -       xrealloc (claimed_files,
> > -                 num_claimed_files * sizeof (struct
> plugin_file_info));
> > -      claimed_files[num_claimed_files - 1] = lto_file;
> > -      UNLOCK_SECTION;
> > +      /* Include it only if it is known to be used for link output.
> */
> > +      if (known_used)
> > +       {
> > +         LOCK_SECTION;
> > +         num_claimed_files++;
> > +         claimed_files =
> > +           xrealloc (claimed_files,
> > +                     num_claimed_files * sizeof (struct
> plugin_file_info));
> > +         claimed_files[num_claimed_files - 1] = lto_file;
> > +         UNLOCK_SECTION;
> > +       }
> >
> > -      *claimed = 1;
> > +      *can_be_claimed = 1;
> >      }
> >
> >    LOCK_SECTION;
> > @@ -1310,10 +1317,10 @@ claim_file_handler_v2 (const struct
> ld_plugin_input_file *file, int *claimed,
> >    /* If this is an LTO file without offload, and it is the first
> LTO file, save
> >       the pointer to the last offload file in the list.  Further
> offload LTO
> >       files will be inserted after it, if any.  */
> > -  if (*claimed && !obj.offload && offload_files_last_lto == NULL)
> > +  if (*can_be_claimed && !obj.offload && offload_files_last_lto ==
> > + NULL)
> >      offload_files_last_lto = offload_files_last;
> >
> > -  if (obj.offload && (known_used || obj.found > 0))
> > +  if (obj.offload && known_used && obj.found > 0)
> >      {
> >        /* Add file to the list.  The order must be exactly the same
> as the final
> >          order after recompilation and linking, otherwise host and
> > target tables @@ -1324,7 +1331,9 @@ claim_file_handler_v2 (const
> struct ld_plugin_input_file *file, int *claimed,
> >        ofld->name = lto_file.name;
> >        ofld->next = NULL;
> >
> > -      if (*claimed && offload_files_last_lto == NULL && file-
> >offset != 0
> > +      if (*can_be_claimed
> > +         && offload_files_last_lto == NULL
> > +         && file->offset != 0
> >           && gold_version == -1)
> >         {
> >           /* ld only: insert first LTO file from the archive after
> the
> > last real @@ -1341,7 +1350,7 @@ claim_file_handler_v2 (const struct
> ld_plugin_input_file *file, int *claimed,
> >               offload_files->next = ofld;
> >             }
> >         }
> > -      else if (*claimed && offload_files_last_lto != NULL)
> > +      else if (*can_be_claimed && offload_files_last_lto != NULL)
> >         {
> >           /* Insert LTO file after the last LTO file in the list.
> */
> >           ofld->next = offload_files_last_lto->next; @@ -1356,7
> > +1365,7 @@ claim_file_handler_v2 (const struct ld_plugin_input_file
> *file, int *claimed,
> >         offload_files_last = ofld;
> >        if (file->offset == 0)
> >         offload_files_last_obj = ofld;
> > -      if (*claimed)
> > +      if (*can_be_claimed)
> >         offload_files_last_lto = ofld;
> >        num_offload_files++;
> >      }
> > --
> > 2.46.0
> >
Using built-in specs.
COLLECT_GCC=../../install/bin/gcc
COLLECT_LTO_WRAPPER=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --disable-multilib 
--enable-offload-targets=nvptx-none=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install
 --with-cuda-driver-lib=/usr/local/cuda/lib64 
--with-cuda-driver-include=/usr/local/cuda/include --disable-bootstrap 
--prefix=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install 
--disable-werror --enable-languages=c,c++,fortran,lto
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20240822 (experimental) (GCC) 
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -E -quiet -v -imultiarch x86_64-linux-gnu -D_REENTRANT t.c -mtune=generic 
-march=x86-64 -fopenmp -O2 -fpch-preprocess -o a-t.i
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory 
"/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include
 /usr/local/include
 /home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/include
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -fpreprocessed a-t.i -quiet -dumpdir a- -dumpbase t.c -dumpbase-ext .c 
-mtune=generic -march=x86-64 -O2 -version -fopenmp -o a-t.s
GNU C17 (GCC) version 15.0.0 20240822 (experimental) (x86_64-pc-linux-gnu)
        compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: b673df1f444dc27add2c2e34eb545bbf
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 as -v --64 -o a-t.o a-t.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils 
for Ubuntu) 2.38
COMPILER_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../:/lib/:/usr/lib/
Reading specs from 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/libgomp.spec
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a.'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/collect2
 -plugin 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/liblto_plugin.so
 
-plugin-opt=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
 -plugin-opt=-fresolution=a.res -plugin-opt=-pass-through=-lgcc 
-plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread 
-plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc 
-plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker 
/lib64/ld-linux-x86-64.so.2 /lib/x86_64-linux-gnu/crt1.o 
/lib/x86_64-linux-gnu/crti.o 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtbegin.o
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtoffloadbegin.o
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64
 -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu 
-L/usr/lib/../lib64 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../..
 a-t.o -lgomp -lgcc --push-state --as-needed -lgcc_s --pop-state -lpthread -lc 
-lgcc --push-state --as-needed -lgcc_s --pop-state 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtend.o
 /lib/x86_64-linux-gnu/crtn.o 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtoffloadend.o
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a.'
Using built-in specs.
COLLECT_GCC=../../install/bin/gcc
COLLECT_LTO_WRAPPER=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --disable-multilib 
--enable-offload-targets=nvptx-none=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install
 --with-cuda-driver-lib=/usr/local/cuda/lib64 
--with-cuda-driver-include=/usr/local/cuda/include --disable-bootstrap 
--prefix=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install 
--disable-werror --enable-languages=c,c++,fortran,lto
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20240822 (experimental) (GCC) 
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -E -quiet -v -imultiarch x86_64-linux-gnu -D_REENTRANT t.c -mtune=generic 
-march=x86-64 -fopenmp -O2 -fpch-preprocess -o a-t.i
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory 
"/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include
 /usr/local/include
 /home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/include
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -fpreprocessed a-t.i -quiet -dumpdir a- -dumpbase t.c -dumpbase-ext .c 
-mtune=generic -march=x86-64 -O2 -version -fopenmp -o a-t.s
GNU C17 (GCC) version 15.0.0 20240822 (experimental) (x86_64-pc-linux-gnu)
        compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: b673df1f444dc27add2c2e34eb545bbf
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a-'
 as -v --64 -o a-t.o a-t.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils 
for Ubuntu) 2.38
COMPILER_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../:/lib/:/usr/lib/
Reading specs from 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/libgomp.spec
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a.'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/collect2
 -plugin 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/liblto_plugin.so
 
-plugin-opt=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
 -plugin-opt=-fresolution=a.res -plugin-opt=-pass-through=-lgcc 
-plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread 
-plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc 
-plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker 
/lib64/ld-linux-x86-64.so.2 /lib/x86_64-linux-gnu/crt1.o 
/lib/x86_64-linux-gnu/crti.o 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtbegin.o
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtoffloadbegin.o
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64
 -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu 
-L/usr/lib/../lib64 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../..
 a-t.o -lgomp -lgcc --push-state --as-needed -lgcc_s --pop-state -lpthread -lc 
-lgcc --push-state --as-needed -lgcc_s --pop-state 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtend.o
 /lib/x86_64-linux-gnu/crtn.o 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/crtoffloadend.o
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
 -fresolution=a.res -flinker-output=exec -foffload-objects=a.ofldlist 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper
 -fresolution=a.res -flinker-output=exec -foffload-objects=a.ofldlist 
[Leaving LTRANS a.ofldlist]
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0//accel/nvptx-none/mkoffload
 @./a.nvptx-none.offload_args
GCC_OFFLOAD_OMP_REQUIRES_FILE=./a.xnvptx-none.mkoffload.omp_requires
../../install/bin/x86_64-pc-linux-gnu-accel-nvptx-none-gcc 
@./a.xnvptx-none.gcc_args
Using built-in specs.
COLLECT_GCC=../../install/bin/x86_64-pc-linux-gnu-accel-nvptx-none-gcc
COLLECT_LTO_WRAPPER=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/lto-wrapper
Target: nvptx-none
Configured with: ../gcc/configure 
--prefix=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install 
--target=nvptx-none --with-arch=sm_70 
--enable-as-accelerator-for=x86_64-pc-linux-gnu --disable-bootstrap 
--disable-werror 
--with-build-time-tools=/home/prathameshk/gnu-toolchain/nvptx-tools/install/bin 
--disable-sjlj-exceptions --enable-newlib-io-long-long 
--enable-languages=c,c++,fortran,lto
Thread model: single
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20240822 (experimental) (GCC) 
COLLECT_GCC_OPTIONS='-save-temps' '-v' '-m64' '-mgomp' '-save-temps' '-v' 
'-fno-openacc' '-fno-pie' '-fcf-protection=none' '-foffload-abi=lp64' '-O2' 
'-fopenmp'     '-o' './a.xnvptx-none.mkoffload' '-misa=sm_70'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/lto1
 -quiet -dumpbase ./a.xnvptx-none.mkoffload -m64 -mgomp -misa=sm_70 -O2 
-version -fno-openacc -fno-pie -fcf-protection=none -foffload-abi=lp64 -fopenmp 
@./a.xnvptx-none.mkoffload.args.0 -o ./a.xnvptx-none.mkoffload.s
GNU GIMPLE (GCC) version 15.0.0 20240822 (experimental) (nvptx-none)
        compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
COLLECT_GCC_OPTIONS='-save-temps' '-v' '-m64' '-mgomp' '-save-temps' '-v' 
'-fno-openacc' '-fno-pie' '-fcf-protection=none' '-foffload-abi=lp64' '-O2' 
'-fopenmp'     '-o' './a.xnvptx-none.mkoffload' '-misa=sm_70'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/as
 -v -v -o ./a.xnvptx-none.mkoffload.o ./a.xnvptx-none.mkoffload.s
 ptxas -c -o /dev/null ./a.xnvptx-none.mkoffload.o --gpu-name sm_70 -O0
COMPILER_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/nvptx-none/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/nvptx-none/
LIBRARY_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/mgomp/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/../../../../../../nvptx-none/lib/mgomp/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/../../../../../../nvptx-none/lib/
Reading specs from 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/../../../../../../nvptx-none/lib/mgomp/libgomp.spec
COLLECT_GCC_OPTIONS='-save-temps' '-v' '-m64' '-mgomp' '-save-temps' '-v' 
'-fno-openacc' '-fno-pie' '-fcf-protection=none' '-foffload-abi=lp64' '-O2' 
'-fopenmp'     '-o' './a.xnvptx-none.mkoffload' '-misa=sm_70' '-dumpdir' 
'./a.xnvptx-none.mkoffload.'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/collect2
 -o ./a.xnvptx-none.mkoffload 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/mgomp
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/../../../../../../nvptx-none/lib/mgomp
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none
 
-L/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/accel/nvptx-none/../../../../../../nvptx-none/lib
 @./a.xnvptx-none.mkoffload.args.1 -lgomp -lgcc -lc -lgcc
COLLECT_GCC_OPTIONS='-save-temps' '-v' '-m64' '-mgomp' '-save-temps' '-v' 
'-fno-openacc' '-fno-pie' '-fcf-protection=none' '-foffload-abi=lp64' '-O2' 
'-fopenmp'     '-o' './a.xnvptx-none.mkoffload' '-misa=sm_70' '-dumpdir' 
'./a.xnvptx-none.mkoffload.'
GCC_EXEC_PREFIX=
COMPILER_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../:/lib/:/usr/lib/
../../install/bin/gcc @./a.xnvptx-none.gccnative_args
Using built-in specs.
COLLECT_GCC=../../install/bin/gcc
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --disable-multilib 
--enable-offload-targets=nvptx-none=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install
 --with-cuda-driver-lib=/usr/local/cuda/lib64 
--with-cuda-driver-include=/usr/local/cuda/include --disable-bootstrap 
--prefix=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install 
--disable-werror --enable-languages=c,c++,fortran,lto
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20240822 (experimental) (GCC) 
COLLECT_GCC_OPTIONS='-save-temps' '-v' '-dumpdir' '' '-dumpbase' 
'./a.xnvptx-none.c' '-dumpbase-ext' '.c' '-m64' '-c' '-o' './a.xnvptx-none.o' 
'-mtune=generic' '-march=x86-64'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -E -quiet -v -imultiarch x86_64-linux-gnu -iprefix x86_64-pc-linux-gnu/15.0.0/ 
-isystem 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include
 -isystem 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu
 -isystem 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed
 ./a.xnvptx-none.c -m64 -mtune=generic -march=x86-64 -fpch-preprocess -o 
./a.xnvptx-none.i
ignoring nonexistent directory "x86_64-pc-linux-gnu/15.0.0/include"
ignoring nonexistent directory 
"x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu"
ignoring nonexistent directory "x86_64-pc-linux-gnu/15.0.0/include-fixed"
ignoring nonexistent directory 
"x86_64-pc-linux-gnu/15.0.0/../../../../x86_64-pc-linux-gnu/include"
ignoring nonexistent directory 
"../../lib/gcc/x86_64-pc-linux-gnu/15.0.0/include"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "../../include"
ignoring nonexistent directory 
"../../lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu"
ignoring nonexistent directory 
"../../lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed"
ignoring nonexistent directory 
"../../lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed/x86_64-linux-gnu
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/include-fixed
 /usr/local/include
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-save-temps' '-v'    '-m64' '-c' '-o' './a.xnvptx-none.o' 
'-mtune=generic' '-march=x86-64'
 
/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/cc1
 -fpreprocessed ./a.xnvptx-none.i -quiet -dumpbase ./a.xnvptx-none.c 
-dumpbase-ext .c -m64 -mtune=generic -march=x86-64 -version -o ./a.xnvptx-none.s
GNU C17 (GCC) version 15.0.0 20240822 (experimental) (x86_64-pc-linux-gnu)
        compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: b673df1f444dc27add2c2e34eb545bbf
COLLECT_GCC_OPTIONS='-save-temps' '-v'    '-m64' '-c' '-o' './a.xnvptx-none.o' 
'-mtune=generic' '-march=x86-64'
 as -v --64 -o ./a.xnvptx-none.o ./a.xnvptx-none.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils 
for Ubuntu) 2.38
COMPILER_PATH=/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/libexec/gcc/x86_64-pc-linux-gnu/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/../lib64/:/lib/../lib64/../lib64/:/usr/lib/../lib64/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/prathameshk/gnu-toolchain/gcc/grcogcc-38/install/lib/gcc/x86_64-pc-linux-gnu/15.0.0/../../../:/lib/:/usr/lib/:../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-save-temps' '-v'    '-m64' '-c' '-o' './a.xnvptx-none.o' 
'-mtune=generic' '-march=x86-64' '-dumpdir' './a.xnvptx-none.'
[Leaving ./a.xnvptx-none.c]
[Leaving ./a.xnvptx-none.mkoffload]
[Leaving ./a.xnvptx-none.mkoffload.omp_requires]
[Leaving a.lto_wrapper_args]
[Leaving ./a.crtoffloadtable.o]
[Leaving ./a.xnvptx-none.o]
COLLECT_GCC_OPTIONS='-O2' '-fopenmp' '-save-temps' '-v' '-mtune=generic' 
'-march=x86-64' '-pthread' '-dumpdir' 'a.'

Reply via email to