diff options
author | Tom de Vries <tdevries@suse.de> | 2018-12-13 18:04:05 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2018-12-13 18:04:05 +0000 |
commit | fe0827eed09d14064efe070dc0f4db71bc66bbd4 (patch) | |
tree | 1d57d9badd25c6a5f1a76878106124d6add57a25 /libgomp/libgomp.h | |
parent | b3147e59284d2a916eac1972f44bd9aff72178a4 (diff) | |
download | gcc-fe0827eed09d14064efe070dc0f4db71bc66bbd4.tar.gz |
[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.
From-SVN: r267100
Diffstat (limited to 'libgomp/libgomp.h')
-rw-r--r-- | libgomp/libgomp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libgomp/libgomp.h b/libgomp/libgomp.h index 7eacb45db66..8105e640e32 100644 --- a/libgomp/libgomp.h +++ b/libgomp/libgomp.h @@ -751,6 +751,7 @@ extern void gomp_display_affinity_place (char *, size_t, size_t *, int); /* affinity-fmt.c */ +extern void gomp_print_string (const char *str, size_t len); extern void gomp_set_affinity_format (const char *, size_t); extern void gomp_display_string (char *, size_t, size_t *, const char *, size_t); |