From 855a44ee8f73b4c53a0bad7780baa85d043b890f Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 6 Nov 2012 18:12:45 +0000 Subject: compiler, runtime: Memcmp routine returns intgo. From-SVN: r193253 --- libgo/Makefile.am | 1 + libgo/Makefile.in | 35 ++++++++++++++++++++++------------- libgo/runtime/go-memcmp.c | 13 +++++++++++++ 3 files changed, 36 insertions(+), 13 deletions(-) create mode 100644 libgo/runtime/go-memcmp.c (limited to 'libgo') diff --git a/libgo/Makefile.am b/libgo/Makefile.am index 3cb39c0..4b244ad 100644 --- a/libgo/Makefile.am +++ b/libgo/Makefile.am @@ -462,6 +462,7 @@ runtime_files = \ runtime/go-map-len.c \ runtime/go-map-range.c \ runtime/go-matherr.c \ + runtime/go-memcmp.c \ runtime/go-nanotime.c \ runtime/go-now.c \ runtime/go-new-map.c \ diff --git a/libgo/Makefile.in b/libgo/Makefile.in index 4c13da5..e70ded3 100644 --- a/libgo/Makefile.in +++ b/libgo/Makefile.in @@ -201,19 +201,19 @@ am__objects_5 = go-append.lo go-assert.lo go-assert-interface.lo \ go-interface-compare.lo go-interface-eface-compare.lo \ go-interface-val-compare.lo go-make-slice.lo go-map-delete.lo \ go-map-index.lo go-map-len.lo go-map-range.lo go-matherr.lo \ - go-nanotime.lo go-now.lo go-new-map.lo go-new.lo go-nosys.lo \ - go-panic.lo go-print.lo go-recover.lo go-reflect-call.lo \ - go-reflect-map.lo go-rune.lo go-runtime-error.lo go-setenv.lo \ - go-signal.lo go-strcmp.lo go-string-to-byte-array.lo \ - go-string-to-int-array.lo go-strplus.lo go-strslice.lo \ - go-traceback.lo go-trampoline.lo go-type-complex.lo \ - go-type-eface.lo go-type-error.lo go-type-float.lo \ - go-type-identity.lo go-type-interface.lo go-type-string.lo \ - go-typedesc-equal.lo go-typestring.lo go-unsafe-new.lo \ - go-unsafe-newarray.lo go-unsafe-pointer.lo go-unwind.lo \ - chan.lo cpuprof.lo lfstack.lo $(am__objects_1) mcache.lo \ - mcentral.lo $(am__objects_2) mfinal.lo mfixalloc.lo mgc0.lo \ - mheap.lo msize.lo panic.lo parfor.lo print.lo proc.lo \ + go-memcmp.lo go-nanotime.lo go-now.lo go-new-map.lo go-new.lo \ + go-nosys.lo go-panic.lo go-print.lo go-recover.lo \ + go-reflect-call.lo go-reflect-map.lo go-rune.lo \ + go-runtime-error.lo go-setenv.lo go-signal.lo go-strcmp.lo \ + go-string-to-byte-array.lo go-string-to-int-array.lo \ + go-strplus.lo go-strslice.lo go-traceback.lo go-trampoline.lo \ + go-type-complex.lo go-type-eface.lo go-type-error.lo \ + go-type-float.lo go-type-identity.lo go-type-interface.lo \ + go-type-string.lo go-typedesc-equal.lo go-typestring.lo \ + go-unsafe-new.lo go-unsafe-newarray.lo go-unsafe-pointer.lo \ + go-unwind.lo chan.lo cpuprof.lo lfstack.lo $(am__objects_1) \ + mcache.lo mcentral.lo $(am__objects_2) mfinal.lo mfixalloc.lo \ + mgc0.lo mheap.lo msize.lo panic.lo parfor.lo print.lo proc.lo \ runtime.lo signal_unix.lo thread.lo yield.lo $(am__objects_3) \ iface.lo malloc.lo map.lo mprof.lo reflect.lo runtime1.lo \ sema.lo sigqueue.lo string.lo time.lo $(am__objects_4) @@ -793,6 +793,7 @@ runtime_files = \ runtime/go-map-len.c \ runtime/go-map-range.c \ runtime/go-matherr.c \ + runtime/go-memcmp.c \ runtime/go-nanotime.c \ runtime/go-now.c \ runtime/go-new-map.c \ @@ -2425,6 +2426,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-map-len.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-map-range.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-matherr.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-memcmp.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-nanotime.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-new-map.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/go-new.Plo@am__quote@ @@ -2731,6 +2733,13 @@ go-matherr.lo: runtime/go-matherr.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o go-matherr.lo `test -f 'runtime/go-matherr.c' || echo '$(srcdir)/'`runtime/go-matherr.c +go-memcmp.lo: runtime/go-memcmp.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT go-memcmp.lo -MD -MP -MF $(DEPDIR)/go-memcmp.Tpo -c -o go-memcmp.lo `test -f 'runtime/go-memcmp.c' || echo '$(srcdir)/'`runtime/go-memcmp.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/go-memcmp.Tpo $(DEPDIR)/go-memcmp.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='runtime/go-memcmp.c' object='go-memcmp.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o go-memcmp.lo `test -f 'runtime/go-memcmp.c' || echo '$(srcdir)/'`runtime/go-memcmp.c + go-nanotime.lo: runtime/go-nanotime.c @am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT go-nanotime.lo -MD -MP -MF $(DEPDIR)/go-nanotime.Tpo -c -o go-nanotime.lo `test -f 'runtime/go-nanotime.c' || echo '$(srcdir)/'`runtime/go-nanotime.c @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/go-nanotime.Tpo $(DEPDIR)/go-nanotime.Plo diff --git a/libgo/runtime/go-memcmp.c b/libgo/runtime/go-memcmp.c new file mode 100644 index 0000000..78a356b --- /dev/null +++ b/libgo/runtime/go-memcmp.c @@ -0,0 +1,13 @@ +/* go-memcmp.c -- the go memory comparison function. + + Copyright 2012 The Go Authors. All rights reserved. + Use of this source code is governed by a BSD-style + license that can be found in the LICENSE file. */ + +#include "runtime.h" + +intgo +__go_memcmp (const void *p1, const void *p2, uintptr len) +{ + return __builtin_memcmp (p1, p2, len); +} -- cgit v1.1