]> git.ipfire.org Git - thirdparty/gcc.git/commit
[libgomp, nvptx] Fix libgomp.c/target-5.c compilation
authorvries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Dec 2018 18:04:05 +0000 (18:04 +0000)
committervries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Dec 2018 18:04:05 +0000 (18:04 +0000)
commitcfd86e2cfb7aa0a536ea9fdca63832e0114737ef
tree1d57d9badd25c6a5f1a76878106124d6add57a25
parent8541a54a6cf6d8dd0f31bf43b3383c9b0cc9cbf4
[libgomp, nvptx] Fix libgomp.c/target-5.c compilation

Libgomp test-case libgomp.c/target-5.c is failing to compile when building for
x86_64 with nvptx accelerator due to missing:
- getpid
- gethostname
- isatty (pulled in by fwrite)
in the nvptx newlib.

This patch fixes the build failure by:
- adding a function gomp_print_string which limits the use of fwrite to a single
  location (in affinity-fmt.c), and
- creating an nvptx version of affinity-fmt.c, which:
  - overrides the configure test results HAVE_GETPID and HAVE_GETHOSTNAME, and
  - implements fwrite using write.

Build and reg-tested on x86_64 with nvptx accelerator.

2018-12-13  Tom de Vries  <tdevries@suse.de>

* affinity-fmt.c (gomp_print_string): New function, factored out of ...
(omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
* fortran.c (omp_display_affinity_): ... here.
* libgomp.h (gomp_print_string): Declare.
* config/nvptx/affinity-fmt.c: New file.  Include affinity-fmt.c,
undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
write.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267100 138bc75d-0d04-0410-961f-82ee72b054a4
libgomp/ChangeLog
libgomp/affinity-fmt.c
libgomp/config/nvptx/affinity-fmt.c [new file with mode: 0644]
libgomp/fortran.c
libgomp/libgomp.h