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
Ian Lance Taylor
e499b5eef4
Add __sync_bool_compare_and_swap_4 for targets which don't have it.
...
From-SVN: r169502
2011-02-01 20:15:13 +00:00
Ian Lance Taylor
ca7174cf5c
re PR go/47515 (Issues porting libgo to IRIX 6.5)
...
PR go/47515
runtime: If no MAP_ANON, use /dev/zero.
From-SVN: r169388
2011-01-29 07:16:20 +00:00
Ian Lance Taylor
47ba04ab54
Avoid crash when M structure free just before thread exit.
...
From-SVN: r169121
2011-01-22 02:59:24 +00:00
Ian Lance Taylor
039868965d
libgo: Adjust deadlock avoidance.
...
From-SVN: r169120
2011-01-22 02:15:01 +00:00
Ian Lance Taylor
7e33c4aadc
Avoid deadlock creating new thread.
...
From-SVN: r169114
2011-01-22 00:12:00 +00:00
Ian Lance Taylor
cf606aeb06
Avoid deadlock when finalizer lock is held during gc.
...
From-SVN: r169112
2011-01-21 23:33:52 +00:00
Ian Lance Taylor
ff5f50c52c
Remove the types float and complex.
...
Update to current version of Go library.
Update testsuite for removed types.
* go-lang.c (go_langhook_init): Omit float_type_size when calling
go_create_gogo.
* go-c.h: Update declaration of go_create_gogo.
From-SVN: r169098
2011-01-21 18:19:03 +00:00
Ian Lance Taylor
2e7e3e1de1
Add file missed in previous commit.
...
From-SVN: r168684
2011-01-11 23:26:03 +00:00
Ian Lance Taylor
9a00604e53
re PR go/46959 (M68K Not Supported by Go)
...
PR go/46959
PR go/46960
PR go/46961
PR go/46962
PR go/46963
PR go/46964
Use __builtin_unwind_init rather than the SAVE_REGS hack.
From-SVN: r168500
2011-01-05 00:24:15 +00:00
Ian Lance Taylor
a3bc69c529
re PR go/46958 (ARM Go Does Not Compile (__builtin_return_address))
...
PR go/46958
PR go/46965
Call __builtin_return_address with 0 rather than 1.
From-SVN: r168495
2011-01-05 00:07:59 +00:00
Ian Lance Taylor
a4ad1c7a08
Rework locking code to split stack much less.
...
From-SVN: r167973
2010-12-17 06:42:06 +00:00
Ian Lance Taylor
b5343013fe
Avoid always splitting the stack when calling append and copy.
...
From-SVN: r167970
2010-12-17 06:33:41 +00:00
Ian Lance Taylor
646abff51d
Better error message if malloc gets a SIGSEGV.
...
From-SVN: r167785
2010-12-14 05:19:51 +00:00
Ian Lance Taylor
cac7efc966
Release cache while holding thread lock.
...
Don't bother to hold thread lock while allocating cache.
From-SVN: r167784
2010-12-14 05:16:18 +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