This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: nvptx offloading patches [3/n], RFD

On Tue, 17 Feb 2015, Jakub Jelinek wrote:

> Third attempt failed with:
> ../../../libgcc/config/nvptx/realloc.c:24:20: fatal error: stdlib.h: No such file or directory
> compilation terminated.
> ../../../libgcc/ recipe for target 'realloc.o' failed
> make[2]: *** [realloc.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[2]: Leaving directory '/usr/src/gcc/objnvptx/nvptx-none/libgcc'
> I have nvptx-newlib symlinked into the gcc tree as newlib, so I expected it
> would be built in-tree, is that not the case (at least wiki/Offloading
> mentions that).  Or is it just that libgcc can't really have dependencies on
> newlib headers as newlib is built after libgcc?

I've committed this patch to fix this last issue (the header dependence, 
that is; I don't know about the in-tree build).

2015-02-17  Joseph Myers  <>

	* config/nvptx/realloc.c: Include <stddef.h> instead of <stdlib.h>
	and <string.h>.
	(__nvptx_realloc): Call __builtin_memcpy instead of memcpy.

Index: libgcc/config/nvptx/realloc.c
--- libgcc/config/nvptx/realloc.c	(revision 220763)
+++ libgcc/config/nvptx/realloc.c	(working copy)
@@ -21,8 +21,7 @@
    see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
    <>.  */
-#include <stdlib.h>
-#include <string.h>
+#include <stddef.h>
 #include "nvptx-malloc.h"
 void *
@@ -44,7 +43,7 @@ __nvptx_realloc (void *ptr, size_t newsz)
       oldsz = *sp;
   if (oldsz != 0)
-    memcpy (newptr, ptr, oldsz > newsz ? newsz : oldsz);
+    __builtin_memcpy (newptr, ptr, oldsz > newsz ? newsz : oldsz);
   __nvptx_free (ptr);
   return newptr;

Joseph S. Myers

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]