Go patch committed: Multiplex goroutines onto OS threads

2011-11-27 Thread Ian Lance Taylor
This patch changes the Go library to multiplex goroutines onto operating system threads. Previously, each new goroutine ran in a separate thread. That is inefficient for programs with lots of goroutines. This patch changes the library such that it runs a certain numbers of threads, and lets each

split stack patch committed: More split stack support for coroutines

2011-11-27 Thread Ian Lance Taylor
This patch adds some more split stack runtime support for coroutines. This is just a couple of small functions: one to reset an existing split stack context to use the initial stack, and one to release an existing split stack context. Bootstrapped and tested on x86_64-unknown-linux-gnu. Committed

Re: [Patch,AVR]: Add %T/%t to print_operand. Add built-in to permute bits.

2011-11-27 Thread Denis Chertykov
2011/11/28 Georg-Johann Lay : > This adds two built-in functions that facilitate moving bits. > > The two built-ins work the same way; there is a 16-bit version and a 8-bit > version. > > The first operand specifies a mapping to apply to the second operand: > The n-th nibble of the mapping specifi

Re: [build] Cleanup rs6000/t-ppccomm configurations (PR other/51022)

2011-11-27 Thread Alan Modra
On Sun, Nov 27, 2011 at 08:36:38PM -0500, David Edelsohn wrote: > I was hoping that other targets affected by the patch would test it as well. powerpc-linux and powerpc64-linux look good. -- Alan Modra Australia Development Lab, IBM

Re: [build] Cleanup rs6000/t-ppccomm configurations (PR other/51022)

2011-11-27 Thread David Edelsohn
On Mon, Nov 21, 2011 at 11:01 AM, Rainer Orth wrote: > As reported in the PR, powerpc-rtems bootstrap (and certainly several > other powerpc targets) is currently broken since rs6000/ibm-ldouble.c > appears twice in LIB2ADD, once from rs6000/t-ppccomm and > rs6000/t-ppccomm-ldbl, which confuses ma

PR middle-end/51273: call cgraph_call_node_duplication_hooks

2011-11-27 Thread Patrick Marlier
cgraph_copy_node_for_versioning duplicate a node but it does not call cgraph_call_node_duplication_hooks (as in cgraph_clone_node). So the vector is not resized for the new node. Bootstrapped and tested with no new regression on linux-x86-64. (Don't have any account so please commit if ok) Pat

Re: Use atomics in libgomp mutex

2011-11-27 Thread Alan Modra
On Mon, Nov 28, 2011 at 09:27:20AM +1030, Alan Modra wrote: > This is the mutex part. Depends on > http://gcc.gnu.org/ml/gcc-patches/2011-11/msg02454.html for MEMMODEL_* > values. Arrgh, I posted the wrong patch. I know it needs work elsewhere in libgomp to comply with the OMP spec, which says o

Fix PR51298, libgomp barrier failure

2011-11-27 Thread Alan Modra
This patch cures the remaining libgomp failures I see on power7. I'll admit to approaching this fix with a big hammer at first, liberally using MEMMODEL_SEQ_CST barriers all over bar.h and bar.c, then gradually reducing the number of places and strictness of the barriers. This may still have a fe

[Patch,AVR]: Add %T/%t to print_operand. Add built-in to permute bits.

2011-11-27 Thread Georg-Johann Lay
This adds two built-in functions that facilitate moving bits. The two built-ins work the same way; there is a 16-bit version and a 8-bit version. The first operand specifies a mapping to apply to the second operand: The n-th nibble of the mapping specifies the image of the n-th bit. Typical use

Re: [PATCH] Remove dead labels to increase superblock scope

2011-11-27 Thread Eric Botcazou
> No, DELETED_LABEL notes still work just fine. It depends on how you > remove the label and replace it with a note, and Tom isn't showing > what he did, so... I agree that there is no obvious reason why just calling delete_insn would not work, so this should be investigated first. -- Eric Botc

Use atomics in libgomp mutex

2011-11-27 Thread Alan Modra
This is the mutex part. Depends on http://gcc.gnu.org/ml/gcc-patches/2011-11/msg02454.html for MEMMODEL_* values. * config/linux/mutex.h: Use atomic rather than sync builtins. * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state. * config/linux/omp-lock.h:

Re: Fix libgomp semaphores

2011-11-27 Thread Alan Modra
On Fri, Nov 25, 2011 at 08:38:39AM +0100, Jakub Jelinek wrote: > Furthermore, I'd prefer if the patch could be split into smaller parts, > e.g. for bisecting purposes. One patch would do the mutex changes > to use new atomics, remove extra mutex.h headers and start using 0/1/-1 > instead of 0/1/2.

[testsuite] xfail target-specific asms, & gcov

2011-11-27 Thread Nathan Sidwell
I couldn't figure out a way to have a scan-assembler check be specific to a particular target and xfailed. It appeared one could have one or the other, but not both. this patch extends scan-assembler (and scan-assembler-not) to allow something like: /* { dg-final { scan-assembler "\\.hidden\t

Re: [PATCH 0/5] Convert Sparc to atomic optabs

2011-11-27 Thread Eric Botcazou
> Try top-of-branch > > git://repo.or.cz/gcc/rth.git rth/atomic/sparc > > That's the last iteration I went through with Dave. Thanks, this works on Solaris, both 32-bit and 64-bit. So, modulo the cosmetic changes I suggested, the documentation about the new -m flag and the selection of the de

Re: [patch] support LTO of transactional memory

2011-11-27 Thread Iain Sandoe
On 22 Nov 2011, at 22:42, Aldy Hernandez wrote: On 11/22/11 16:40, Iain Sandoe wrote: On 22 Nov 2011, at 21:43, Richard Henderson wrote: On 11/22/2011 01:37 PM, Jack Howarth wrote: On x86_64-apple-darwin11, this converts the link failures into run-time failures as are seen on i386 linux.

Re: [Patch Darwin] fix thinko in TM crts

2011-11-27 Thread Iain Sandoe
On 24 Nov 2011, at 19:51, Mike Stump wrote: On Nov 23, 2011, at 2:02 AM, Iain Sandoe > wrote: the solution is to require the library to be present (no problem, since the crts are only fired up for -fgnu-tm) and to remove the dummy funcs from the crts, OK for trunk? Ok. I also applied th

Shrink-wrapping vs. EXIT_IGNORE_STACK

2011-11-27 Thread Richard Sandiford
resource.c (as used by dbr_schedule) considers the stack pointer to be unused on entry to the epilogue if: EXIT_IGNORE_STACK && frame_pointer_needed && !current_function_sp_is_unchanging Then the stack deallocation in the epilogue usually causes the stack pointer to become live on fun

[committed] Fix failure of Octeon BADDU tests

2011-11-27 Thread Richard Sandiford
This patch fixes the MIPS octeon-baddu-1.c failures. As Andrew says in the PR, the problem is that the combined instruction seems more expensive than the separate ones. Tested on mips64-linux-gnu and applied. Richard gcc/ PR target/51278 * config/mips/mips.c (mips_rtx_costs): H

[committed] Make mips16_unextended_reference_p handle BLKmode

2011-11-27 Thread Richard Sandiford
This patch fixes an ICE on gcc.dg/pr48774.c for MIPS16, which triggered while finding the rtx cost of a BLKmode memory. Tested on mips64-linux-gnu and applied. Richard gcc/ * config/mips/mips.c (mips16_unextended_reference_p): Test for BLKmode. Index: gcc/config/mips/mips.c ===

Re: Explicitly record which registers are inaccessible

2011-11-27 Thread Richard Sandiford
Richard Sandiford writes: > Richard Sandiford writes: >> Bernd Schmidt writes: >>> On 09/25/11 19:16, Richard Sandiford wrote: The last bit is indirect, via a new HARD_REG_SET called operand_reg_set. And this set is the reason why I'm sending the patch now. The MIPS16 port has al

Re: [Patch, wwwdocs, committed] Update Fortran section in gcc-4.7/changes.html

2011-11-27 Thread Tobias Burnus
Gerald Pfeifer wrote: On Wed, 16 Nov 2011, Tobias Burnus wrote: I have committed the following patch for http://gcc.gnu.org/gcc-4.7/changes.html#fortran How about the following minor editorial change on top? Well spotted. Thanks for the patch! Tobias - Generic interface name which have th