Commit Graph

172 Commits

Author SHA1 Message Date
Ian Lance Taylor d5b18b0b13 syscall: Add Dup3, {Get,List,Remove,Set}xattr, {Get,Set}priority.
From-SVN: r203788
2013-10-17 18:41:12 +00:00
Ian Lance Taylor cc1a9ac808 reflect: Use hand-coded .eh_frame section rather than CFI directives.
From Rainer Orth.

From-SVN: r203120
2013-10-02 17:30:07 +00:00
Ian Lance Taylor 6e6bbb604e libgo: Update libtool.m4 from upstream to recognize powerpcle.
From-SVN: r201933
2013-08-23 01:08:25 +00:00
Ian Lance Taylor fdbc38a6e8 compiler, runtime: Use function descriptors.
This changes the representation of a Go value of function type
from being a pointer to function code (like a C function
pointer) to being a pointer to a struct.  The first field of
the struct points to the function code.  The remaining fields,
if any, are the addresses of variables referenced in enclosing
functions.  For each call to a function, the address of the
function descriptor is passed as the last argument.

This lets us avoid generating trampolines, and removes the use
of writable/executable sections of the heap.

From-SVN: r200181
2013-06-18 23:49:49 +00:00
Ian Lance Taylor ae135907ba re PR go/56171 (syscall FAILs on Solaris)
PR go/56171
libgo: Solaris portability for syscall package.

From Rainer Orth.

From-SVN: r195950
2013-02-11 19:03:04 +00:00
Ian Lance Taylor 553752e19f libgo: Correct test for whether to use DejaGNU.
From-SVN: r195861
2013-02-07 18:01:54 +00:00
Ian Lance Taylor 7134cf2833 re PR go/56017 (libgo testsuite does not support cross testing)
PR go/56017
libgo: Use DejaGNU when testing a cross-compiler.

From-SVN: r195766
2013-02-05 22:22:17 +00:00
Ian Lance Taylor d6f2922e91 libgo: Update Go library to master revision 15489/921e53d4863c.
From-SVN: r195560
2013-01-29 20:52:43 +00:00
Ian Lance Taylor 0d4668c1d5 libgo: Add --enable-werror configure option.
From-SVN: r195482
2013-01-26 00:13:34 +00:00
Ian Lance Taylor e8028ecdd0 re PR go/54918 (libgo.so.0 is not runtime compatible between gcc-4.6.2 and gcc-4.7.x)
PR go/54918
libgo: Set library version number.

From-SVN: r192706
2012-10-23 05:01:24 +00:00
Ian Lance Taylor 4ccad563d2 libgo: Update to current sources.
From-SVN: r192704
2012-10-23 04:31:11 +00:00
Ian Lance Taylor 0d7afaa749 runtime: Use dl_iterate_phdr to get TLS size.
From-SVN: r188290
2012-06-07 00:55:20 +00:00
Ian Lance Taylor 44072af5b0 runtime: Fix call to _dl_get_tls_static_info for i386.
From-SVN: r188230
2012-06-05 06:19:19 +00:00
Ian Lance Taylor 324612b351 re PR go/52358 (math FAILs on Solaris 8 and 9)
PR go/52358
configure, runtime: Provide i386 long double math functions if needed.

From-SVN: r186915
2012-04-27 16:38:11 +00:00
Ian Lance Taylor f04e40afc1 mksysinfo: More fixes to emulate master Go library.
From-SVN: r186685
2012-04-22 20:07:23 +00:00
Ian Lance Taylor 1410c22260 syscall: Additional constants, some type corrections.
From-SVN: r186655
2012-04-21 18:49:58 +00:00
Ian Lance Taylor d25a12fc2d net, syscall: Use native endianness for GNU/Linux netlink code.
From-SVN: r186640
2012-04-20 20:11:28 +00:00
Ian Lance Taylor b059fba469 syscall: Add more constants.
From-SVN: r186144
2012-04-04 18:50:09 +00:00
Ian Lance Taylor ea8505da90 syscall, net: Fix GNU/Linux netlink code for big-endian systems.
From-SVN: r186123
2012-04-03 23:44:53 +00:00
Ian Lance Taylor 8db6380aa7 mksysinfo.sh: Add some more networking constants.
From-SVN: r186114
2012-04-03 19:42:24 +00:00
Ian Lance Taylor dbe1e4a5a6 libgo: Fix Solaris ustat.h test.
From-SVN: r184913
2012-03-05 06:04:14 +00:00
Ian Lance Taylor 2aeaf0fb26 libgo: Try to fix use of <ustat.h> for Solaris and older GNU/Linux.
From-SVN: r184828
2012-03-02 21:07:52 +00:00
Ian Lance Taylor b65734ac6c syscall: Fill out GNU/Linux support.
From-SVN: r184669
2012-02-29 20:02:31 +00:00
Ian Lance Taylor 5d46bf0538 libgo: Add mount flags, fallocate, statfs.
From-SVN: r184365
2012-02-18 01:22:02 +00:00
Ian Lance Taylor 061793a4cc re PR go/52266 (syntax error in libgo/configure)
PR go/52266
libgo: Remove accidental AC_INCLUDES_DEFAULT from configure script.

From-SVN: r184345
2012-02-17 15:44:29 +00:00
Ian Lance Taylor ca59d219fe runtime: Support broken makecontext on Solaris 8/9.
From Rainer Orth.

From-SVN: r184289
2012-02-15 22:29:35 +00:00
Ian Lance Taylor 317ea7c0f4 re PR go/48410 (weird installation dir)
PR go/48410
libgo: Don't put .gox files in version-specific directory.

From-SVN: r184223
2012-02-14 19:40:09 +00:00
Ian Lance Taylor 12e3c39614 re PR go/52084 (go tests fail to link on powerpc-linux-gnu (undefined reference to __sync_add_and_fetch_8))
PR go/52084
libgo: Provide more __sync functions if required.

From-SVN: r184138
2012-02-12 06:23:08 +00:00
Ian Lance Taylor e6c5817dca libgo/configure: Fixes for Solaris 8 and cross-compilation.
From Rainer Orth.

From-SVN: r184092
2012-02-10 14:07:44 +00:00
Ian Lance Taylor d2b480bc96 runtime: Add matherr function when appropriate.
From-SVN: r184024
2012-02-08 22:35:30 +00:00
Ian Lance Taylor 9d465faf92 math: Compile with -mfancy-math-387 -funsafe-optimizations on x86.
From-SVN: r184015
2012-02-08 19:38:17 +00:00
Ian Lance Taylor 7f57843fbe runtime: System-specific hack fix for x86_64 Solaris 10.
Fixes problem in which setcontext changes all thread-specific
information.

From-SVN: r183993
2012-02-08 05:30:12 +00:00
Ian Lance Taylor e02ed81e1b libgo: Build stubs for some syscall functions not on older systems.
From-SVN: r183577
2012-01-26 20:24:01 +00:00
Ian Lance Taylor df1304ee03 libgo: Update to weekly.2012-01-15.
From-SVN: r183539
2012-01-25 20:56:26 +00:00
Ian Lance Taylor 1efa38d1a7 libgo: Solaris and Irix compatibility patches.
From Rainer Orth.

From-SVN: r183246
2012-01-17 14:18:39 +00:00
Ian Lance Taylor df4aa89a5e libgo: Update to weekly.2011-12-22.
From-SVN: r183150
2012-01-13 05:11:45 +00:00
Ian Lance Taylor bbe847a162 libgo: Use -std=gnu99 on Solaris 10.
From Rainer Orth.

From-SVN: r182637
2011-12-22 20:39:29 +00:00
Ian Lance Taylor d48be5dfaf libgo: Fix use of -D_GNU_SOURCE and friends when building libgo.
From-SVN: r182548
2011-12-20 18:14:30 +00:00
Ian Lance Taylor 18c700754e libgo: Generate dependencies automatically.
From-SVN: r181955
2011-12-03 00:16:12 +00:00
Ian Lance Taylor 506cf9aaea libgo: Update to weekly.2011-11-01.
From-SVN: r181938
2011-12-02 19:34:41 +00:00
Ian Lance Taylor 08ee945e0b runtime: If no sem_timedwait, use pthread_cond_timedwait.
From-SVN: r181821
2011-11-29 21:58:48 +00:00
Ian Lance Taylor 207c35fa9e syscall: Portability code for epoll_event on GNU/Linux.
From-SVN: r180729
2011-11-01 04:12:01 +00:00
Ian Lance Taylor de27caacfb Implement new syscall package.
Calls to library functions now use entersyscall and
exitsyscall as appropriate.  This is a first step toward
multiplexing goroutines onto threads.

From-SVN: r180345
2011-10-23 19:04:37 +00:00
Ian Lance Taylor adb0401dac Update Go library to r60.
From-SVN: r178910
2011-09-16 15:47:21 +00:00
Ian Lance Taylor d983a802f6 libgo: Define CC_FOR_BUILD in Makefile.
From-SVN: r176182
2011-07-11 20:27:50 +00:00
Rainer Orth fbdd5d8715 re PR bootstrap/39150 (Configure scripts have no 64-Bit Solaris defined (only i386-solaris*).)
gcc:
	PR target/39150
	* configure.ac (gcc_cv_as_hidden): Also accept
	x86_64-*-solaris2.1[0-9]*.
	(gcc_cv_as_cfi_directive): Likewise.
	(gcc_cv_as_comdat_group_group): Likewise.
	(set_have_as_tls): Likewise.
	* configure: Regenerate.
	* config.gcc (i[34567]86-*-solaris2*): Also handle
	x86_64-*-solaris2.1[0-9]*.
	* config.host (i[34567]86-*-solaris2*): Likewise.
	* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
	* config/sol2-bi.h (ASM_CPU_DEFAULT_SPEC): Redefine.
	[USE_GLD] (ARCH_DEFAULT_EMULATION): Define.
	(TARGET_LD_EMULATION): Use it.
	* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC): Define.
	(SUBTARGET_CPU_EXTRA_SPECS): Add asm_cpu_default.
	* config/i386/sol2-bi.h (ASM_CPU32_DEFAULT_SPEC): Define.
	(ASM_CPU64_DEFAULT_SPEC): Define.
	(ASM_CPU_SPEC): Use %(asm_cpu_default).
	(ASM_SPEC): Redefine.
	(DEFAULT_ARCH32_P): Define using TARGET_64BIT_DEFAULT.
	* config/host-solaris.c [__x86_64__] (TRY_EMPTY_VM_SPACE): Reduce.
	* doc/install.texi (Specific, amd64-*-solaris2.1[0-9]*):
	Document.
	(Specific, i?86-*-solaris2.10): Mention x86_64-*-solaris2.1[0-9]*
	configuration.
	(Specific, x86_64-*-solaris2.1[0-9]*): Document.

	gcc/ada:
	PR target/39150
	* gcc-interface/Makefile.in: Handle x86_64-solaris2.

	libgcc:
	PR target/39150
	* config.host (*-*-solaris2*): Handle x86_64-*-solaris2.1[0-9]*
	like i?86-*-solaris2.1[0-9]*.
	(i[34567]86-*-solaris2*): Also handle x86_64-*-solaris2.1[0-9]*.
	* configure.ac (i?86-*-solaris2*): Likewise.
	* configure: Regenerate.

	gcc/testsuite:
	PR target/39150
	* gcc.misc-tests/linkage.exp: Handle x86_64-*-solaris2.1[0-9]*.

	toplevel:
	PR target/39150
	* configure.ac (i[3456789]86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	boehm-gc:
	PR target/39150
	* configure.ac (i?86-*-solaris2.[89]): Also accept
	x86_64-*-solaris2.1?.
	* configure: Regenerate.

	gnattools:
	PR target/39150
	* configure.ac (*86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libcpp:
	PR target/39150
	* configure.ac (host_wide_int): Handle x86_64-*-solaris2.1[0-9]
	like i[34567]86-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libgo:
	PR target/39150
	* config/libtool.m4: Handle x86_64-*-solaris2.1[0-9]* like
	i?86-*-solaris*.
	* configure: Regenerate.

	libjava:
	PR target/39150
	* configure.host (x86_64-*): Add -Usun to libgcj_flags.
	(x86_64-*-solaris2.1[0-9]*): New case.
	(i?86-*-solaris2*): Also accept x86_64-*-solaris2.1[0-9]*.

From-SVN: r175958
2011-07-07 09:24:16 +00:00
Ian Lance Taylor 5bb92e54b7 libgo: Make os.setenv_c work on systems without setenv.
From-SVN: r174147
2011-05-24 22:21:34 +00:00
Ian Lance Taylor 9f3b1e6c60 libgo: Irix 6 patches.
From Rainer Orth.

From-SVN: r172935
2011-04-25 19:36:12 +00:00
Ian Lance Taylor 9cc1bb97bc libgo: Use MAP_FIXED if necessary to grab arena.
From Rainer Orth.

	PR go/48240
	* configure.ac: Check for mincore.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* runtime/mem.c: Include unistd.h.
	(addrspace_free): New function.
	(runtime_SysMap): Retry 64-bit runtime_mmap with MAP_FIXED.

From-SVN: r171961
2011-04-05 00:02:15 +00:00
Ian Lance Taylor 3b66f10536 Mark as executable in SVN.
From-SVN: r171913
2011-04-03 16:14:19 +00:00
Ian Lance Taylor e59b917109 libgo: Support for alpha.
From Uros Bizjak.

From-SVN: r171860
2011-04-01 23:02:16 +00:00
Ian Lance Taylor 4ac7fcaac0 libgo: Try to guess the right type for select bits in mksysinfo.
From-SVN: r171858
2011-04-01 22:53:54 +00:00
Ian Lance Taylor 90630d1932 libgo: Support Solaris 8/9.
From Rainer Orth.

From-SVN: r171818
2011-04-01 05:11:23 +00:00
Ian Lance Taylor 85a0921018 libgo: Recognize MIPS ABIs.
From-SVN: r171809
2011-04-01 00:17:10 +00:00
Ian Lance Taylor 654d2ec080 re PR go/47515 (Issues porting libgo to IRIX 6.5)
PR go/47515
libgo: Add Irix support.

From Rainer Orth.

From-SVN: r171806
2011-03-31 23:55:21 +00:00
Ian Lance Taylor 0b3189e79f libgo: Use waitpid on systems which do not have wait4.
From-SVN: r171758
2011-03-30 23:05:04 +00:00
Ian Lance Taylor 8955c80a1c libgo: Support systems which do not have strerror_r.
From-SVN: r171757
2011-03-30 22:34:55 +00:00
Ian Lance Taylor a3dbf764ae Support libgo on Solaris.
From Rainer Orth.

From-SVN: r170355
2011-02-21 04:17:20 +00:00
Ralf Wildenhues 029c8f3e77 Remove freebsd1 from libtool.m4 macros and config.rpath.
/:
	Import from Libtool and gnulib:

	2011-01-27  Gerald Pfeifer  <gerald@pfeifer.com>

	Prepare for supporting FreeBSD 10.
	* config.rpath: Remove handling of freebsd1* which soon would
	match FreeBSD 10.0.

	2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)

	Remove support for FreeBSD 1.x.
	* libtool.m4 (_LT_LINKER_SHLIBS)
	(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
	soon would incorrectly match FreeBSD 10.0.

boehm-gc/:
	* configure: Regenerate.

gcc/:
	* configure: Regenerate.

libffi/:
	* configure: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* configure: Likewise.

libgo/:
	* config/libtool.m4: (_LT_LINKER_SHLIBS)
	(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
	soon would incorrectly match FreeBSD 10.0.
	* configure: Regenerate.

libgomp/:
	* configure: Regenerate.

libjava/:
	* configure: Regenerate.
	* shlibpath.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling
	of freebsd1* which soon would incorrectly match FreeBSD 10.0.

libjava/classpath/:
	* config.rpath, ltcf-c.sh, ltcf-gcj.sh, ltconfig: Remove
	handling of freebsd1* which soon would match FreeBSD 10.0.
	* configure: Regenerate.

libjava/libltdl/:
	* acinclude.m4 (AC_LIBTOOL_PROG_LD_SHLIBS)
	(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling
	of freebsd1* which soon would incorrectly match FreeBSD 10.0.
	* configure: Regenerate.

libmudflap/:
	* configure: Regenerate.

libobjc/:
	* configure: Regenerate.

libquadmath/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* configure: Likewise.

libssp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* configure: Likewise.

libstdc++-v3/:
	* configure: Regenerate.

lto-plugin/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

zlib/:
	* configure: Regenerate.

From-SVN: r170106
2011-02-13 11:45:53 +00:00
Ian Lance Taylor 4a299bf4ff libgo/configure.ac: Use AC_COMPILE_IFELSE, not AC_PREPROC_IFELSE.
From-SVN: r170030
2011-02-10 23:43:42 +00:00
Ian Lance Taylor 084996f1d1 Implement __sync_fetch_and_add_4 if necessary.
From-SVN: r169820
2011-02-04 00:49:47 +00:00
Ian Lance Taylor 0c521d1875 Check whether we are using setjmp/longjmp exceptions.
From-SVN: r169777
2011-02-03 01:53:36 +00:00
Ian Lance Taylor 932e32375a libgo: Apply upstream libtool patch.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg00008.html

From-SVN: r169766
2011-02-02 18:41:27 +00:00
Ian Lance Taylor a7c48c8ec5 Test whether libgcc or kernel defines __sync_bool_compare_and_swap_4.
From-SVN: r169504
2011-02-01 21:23:07 +00:00
Ian Lance Taylor ca11cc98b9 Recognize m68k, mips, PPC. Don't require arch syscall files to exist.
From-SVN: r169185
2011-01-24 23:42:22 +00:00
Ian Lance Taylor ed4ebabc90 libgo: Check whether we need -lrt for sched_yield.
From Rainer Orth.

From-SVN: r168816
2011-01-14 19:18:38 +00:00
Ian Lance Taylor 545d1aa13c Use GOARCH value of sparc64 rather than sparcv9.
From-SVN: r168740
2011-01-13 06:18:45 +00:00
Ian Lance Taylor f2ee78b861 Preliminary framework for Solaris support.
Partly from Rainer Orth.

From-SVN: r168697
2011-01-12 06:34:08 +00:00
Ian Lance Taylor c3b5b97b64 Simplify libgo Makefile conditionals.
From-SVN: r168696
2011-01-12 02:03:46 +00:00
Ian Lance Taylor 505b439a06 re PR other/46840 (libgo should link against libm)
PR other/46840
Link libgo against -lm.

From-SVN: r167582
2010-12-08 02:08:59 +00:00
Ian Lance Taylor 6c94a9fa16 Check for -pthread and -lpthread at configure time.
From-SVN: r167445
2010-12-03 21:27:06 +00:00
Ian Lance Taylor 7a9389330e Add Go frontend, libgo library, and Go testsuite.
gcc/:
	* gcc.c (default_compilers): Add entry for ".go".
	* common.opt: Add -static-libgo as a driver option.
	* doc/install.texi (Configuration): Mention libgo as an option for
	--enable-shared.  Mention go as an option for --enable-languages.
	* doc/invoke.texi (Overall Options): Mention .go as a file name
	suffix.  Mention go as a -x option.
	* doc/frontends.texi (G++ and GCC): Mention Go as a supported
	language.
	* doc/sourcebuild.texi (Top Level): Mention libgo.
	* doc/standards.texi (Standards): Add section on Go language.
	Move references for other languages into their own section.
	* doc/contrib.texi (Contributors): Mention that I contributed the
	Go frontend.
gcc/testsuite/:
	* lib/go.exp: New file.
	* lib/go-dg.exp: New file.
	* lib/go-torture.exp: New file.
	* lib/target-supports.exp (check_compile): Match // Go.

From-SVN: r167407
2010-12-03 04:34:57 +00:00