Commit Graph

65 Commits

Author SHA1 Message Date
Ian Lance Taylor f4c016e605 runtime: Remove temporary runtime_cond_wait function.
From-SVN: r181897
2011-12-01 23:50:48 +00:00
Ian Lance Taylor 17dcf07581 runtime: Rename sigignore to sig_ignore for Solaris.
From-SVN: r181885
2011-12-01 17:08:12 +00:00
Ian Lance Taylor 3e68d6d75a compiler/runtime: Copy channel implementation from master library.
From-SVN: r181874
2011-12-01 08:06:16 +00:00
Ian Lance Taylor b87974949f runtime: Copy runtime_panicstring from master library.
From-SVN: r181830
2011-11-30 00:21:52 +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 421ecf992e runtime: If O_CLOEXEC is not defined, define it as 0.
From-SVN: r181814
2011-11-29 19:26:00 +00:00
Ian Lance Taylor 737087cbc8 runtime: Multiplex goroutines onto OS threads.
From-SVN: r181772
2011-11-28 05:45:49 +00:00
Ian Lance Taylor 48e7d50e9f runtime: New lock/note implementation.
From-SVN: r181633
2011-11-22 20:24:44 +00:00
Ian Lance Taylor 5c262e9444 runtime: Use some of 6g runtime.c for easier merging.
From-SVN: r181368
2011-11-14 22:26:45 +00:00
Ian Lance Taylor 34277c5228 Introduce G structure and thread-local global g.
From-SVN: r181301
2011-11-11 21:02:48 +00:00
Ian Lance Taylor 787f74b487 runtime: Don't ask mmap for wrapping memory.
From-SVN: r180732
2011-11-01 05:20:40 +00:00
Ian Lance Taylor 3d43396098 runtime: Correct test of mmap return value.
From-SVN: r180731
2011-11-01 04:55:15 +00:00
Ian Lance Taylor f0080f6cf9 syscall: Use sched_yield rather than pthread_yield.
From-SVN: r180716
2011-10-31 22:09:21 +00:00
Ian Lance Taylor d8f412571f Update Go library to last weekly.
From-SVN: r180552
2011-10-26 23:57:58 +00:00
Ian Lance Taylor f29ce5f5f1 Implement predeclared delete function.
From-SVN: r180438
2011-10-25 17:21:07 +00:00
Ian Lance Taylor 09367c0d60 Don't permit close of receive-only channel.
Better panic on attempt to close nil channel.

From-SVN: r180437
2011-10-25 16:35:24 +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 e6f8e59016 Support nil maps.
From-SVN: r179054
2011-09-21 17:37:50 +00:00
Ian Lance Taylor f6cde0add6 Fix channels with element type of size zero.
From-SVN: r179030
2011-09-21 00:56:28 +00:00
Ian Lance Taylor 6fa2979911 Fix calling make with slice whose element type is size zero.
From-SVN: r179019
2011-09-20 22:06:20 +00:00
Ian Lance Taylor 31aeabd3c5 Block forever on send/receive to/from nil channel.
From-SVN: r178920
2011-09-16 22:56:32 +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 b9f04a8461 Fix defer when not calling recover in function with named results.
From-SVN: r178905
2011-09-16 05:47:20 +00:00
Ian Lance Taylor ae06570eb6 libgo/runtime: Change std::abort to abort.
From-SVN: r176181
2011-07-11 20:16:01 +00:00
Ian Lance Taylor de38eefaa7 Change builtin make to runtime call at lowering time.
Use kindNoPointers as 6g does.

	* Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).

From-SVN: r175020
2011-06-14 13:51:16 +00:00
Ian Lance Taylor 3b8dffe701 Change builtin make to runtime call at lowering time.
Use kindNoPointers as 6g does.

	* Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).

From-SVN: r175008
2011-06-14 05:53:10 +00:00
Ian Lance Taylor 891daafaf8 Use backend interface for map descriptors.
From-SVN: r174943
2011-06-11 06:21:55 +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 9ff56c9570 Update to current version of Go library.
From-SVN: r173931
2011-05-20 00:18:15 +00:00
Ian Lance Taylor 4e7e7a49b7 More uses of backend interface for types.
From-SVN: r173507
2011-05-06 20:06:29 +00:00
Ian Lance Taylor e1c2f29025 libgo: Fix append declaration.
From Rainer Orth.

From-SVN: r172659
2011-04-18 17:31:00 +00:00
Ian Lance Taylor b39c10b813 Unify handling of runtime support functions.
This introduces the new approach, and rewrites the lowering
code which uses runtime functions.  The code which calls
runtime functions at GENERIC conversion time is not yet
rewritten.

From-SVN: r172396
2011-04-13 21:00:59 +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
Rainer Orth 06ec98415a libgo: Always initialize semaphores.
2011-04-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR go/48222
	* runtime/malloc.goc (runtime_mallocinit): Call
	runtime_Mprof_Init, runtime_initfintab.
	* runtime/cpuprof.c (runtime_cpuprofinit): New function.
	* runtime/runtime.h (runtime_cpuprofinit): Declare it.
	* runtime/go-main.c (main): Use it.

From-SVN: r171960
2011-04-04 23:43:59 +00:00
Ian Lance Taylor c29301d6b1 Add runtime profiling infrastructure, not yet working.
From-SVN: r171579
2011-03-27 19:14:55 +00:00
Ian Lance Taylor c570af00f6 Remove closedchan function.
From-SVN: r171577
2011-03-27 18:06:50 +00:00
Ian Lance Taylor fe052134f6 Remove closed function. Fix tuple receive in select.
From-SVN: r171440
2011-03-25 05:14:57 +00:00
Ian Lance Taylor 8039ca76a5 Update to current version of Go library.
From-SVN: r171427
2011-03-24 23:46:17 +00:00
Ian Lance Taylor 3137991dfc Tuple receives indicate whether channel is closed.
From-SVN: r171380
2011-03-24 06:01:27 +00:00
Ian Lance Taylor 4bfc521c9e Send on a closed channel panics.
Calling close on a closed channel panics.
Don't limit number of receives on a closed channel.

From-SVN: r171364
2011-03-23 21:13:57 +00:00
Ian Lance Taylor 7b5da51d4f Don't catch LIBPROF in Go code.
From-SVN: r171077
2011-03-16 23:18:40 +00:00
Ian Lance Taylor 5133f00ef8 Update to current version of Go library (revision 94d654be2064).
From-SVN: r171076
2011-03-16 23:05:44 +00:00
Ian Lance Taylor 7b5e671326 re PR go/48019 (Need to handle EINTR in libgo testsuite)
PR go/48019
Ignore EINTR in runtime_lock_full.

From-SVN: r170810
2011-03-09 06:31:37 +00:00
Ian Lance Taylor a601335076 re PR go/47910 (typo in __go_map_next_prime)
PR go/47910
Correct search for next prime in libgo map code.

From-SVN: r170808
2011-03-09 05:32:36 +00:00
Ian Lance Taylor d8b878dc29 Permit garbage collection on any compiler generated memory allocation.
From-SVN: r170760
2011-03-07 22:19:50 +00:00
Ian Lance Taylor 691a924baf Avoid race condition manipulating heap when goroutine exits.
From-SVN: r170758
2011-03-07 21:56:40 +00:00
Ian Lance Taylor 7b67393dff Permit comparing non-empty interfaces with empty interfaces.
From-SVN: r170385
2011-02-22 02:52:55 +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 a7c48c8ec5 Test whether libgcc or kernel defines __sync_bool_compare_and_swap_4.
From-SVN: r169504
2011-02-01 21:23:07 +00:00