Issue 147788
Summary [liboffload] Runtime SEGFAULT when linking static archives
Labels new issue
Assignees jhuber6
Reporter mjklemm
    Clang and Flang fail to link code that is contained in static archives and to properly initialize the offload runtime:

Clang:
```
> ./build-c.sh && ./num_devices-c.exe
+ rm -f NumberOfDevices_Function-c.o num_devices-c.o libnum_devices-c.a libnum_devices-c.a num_devices-c.exe
+ clang -fopenmp --offload-arch=gfx1030 -c NumberOfDevices_Function.c -o NumberOfDevices_Function-c.o
+ ar r libnum_devices-c.a NumberOfDevices_Function-c.o
ar: creating libnum_devices-c.a
+ clang -fopenmp --offload-arch=gfx1030 -c num_devices.c -o num_devices-c.o
+ ar r libmain-c.a num_devices-c.o
+ clang -fopenmp --offload-arch=gfx1030 -o num_devices-c.exe libmain-c.a libnum_devices-c.a
[1]    3688277 segmentation fault (core dumped) ./num_devices-c.exe
```

Flang:
```
> ./build-ftn.sh && ./num_devices-ftn.exe                               [ROCm 6.4.1] [llvm-project:dev]
+ rm -f NumberOfDevices_Function-ftn.o num_devices-ftn.o libnum_devices-ftn.a libnum_devices-ftn.a num_devices-ftn.exe numberofdevices_function.mod
+ flang -fopenmp --offload-arch=gfx1030 -cpp -c NumberOfDevices_Function.f90 -o NumberOfDevices_Function-ftn.o
+ ar r libnum_devices-ftn.a NumberOfDevices_Function-ftn.o
ar: creating libnum_devices-ftn.a
+ flang -fopenmp --offload-arch=gfx1030 -c num_devices.f90 -o num_devices-ftn.o
+ ar r libmain-ftn.a num_devices-ftn.o
+ flang -fopenmp --offload-arch=gfx1030 -o num_devices-ftn.exe libmain-ftn.a libnum_devices-ftn.a
./build-ftn.sh  0.70s user 0.44s system 97% cpu 1.168 total
[1]    3688606 segmentation fault (core dumped) ./num_devices-ftn.exe
```

[reproducer.tar.gz](https://github.com/user-attachments/files/21147649/reproducer.tar.gz)
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to