Re: No documentation of -fsched-pressure-algorithm

2012-05-03 Thread Ian Lance Taylor
Richard Sandiford writes: > gcc/ > * doc/invoke.texi (sched-pressure-algorithm): Document new --param. > * common.opt (fsched-pressure-algorithm=): Remove. > * flag-types.h (sched_pressure_algorithm): Move to... > * sched-int.h (sched_pressure_algorithm): ...here. >

Re: improve collect2 to preserve a RO output as the linker does

2012-05-03 Thread Ian Lance Taylor
Olivier Hainque writes: > 2012-05-03 Olivier Hainque > > * collect2.c (may_unlink_output_file): New global. > (maybe_unlink): Honor it. > * collect2.h: Add extern for it. > * tlink.c (do_tlink): Set it to true if the link succeeded. This is OK. Thanks. Ian

Go patch committed: Error on duplicate import

2012-05-03 Thread Ian Lance Taylor
This patch to the Go frontend gives an error if a file attempts to import the same package twice under the same name. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.7 branch. Ian diff -r c6d54ab88baf go/gogo.cc --- a/go/gogo.cc Thu May 03 10:39:39 201

patch ping: Add static branch predict heuristic of comparing IV to loop_bound variable

2012-05-03 Thread Dehao Chen
http://gcc.gnu.org/ml/gcc-patches/2012-01/msg00377.html I've also refined the patch, adding support for comparison of IV to its initial value. The updated patch is attached, and you can also it in: http://codereview.appspot.com/5504086/ Passed bootstrap and all gcc regression tests. Thanks, Deh

Re: PATCH to gengtype to fix diagnostics

2012-05-03 Thread Laurynas Biveinis
> While adjusting some GTY markers I started getting warnings about '^C' used > but not defined; this looks to be a cut and paste error. > > Applying as obvious. Good catch, thanks for fixing this. -- Laurynas

RE: [PATCH, reload] Fix bug pr52804, RELOAD pass reloads wrong register on ARM for cortex-m0

2012-05-03 Thread Bin Cheng
> -Original Message- > From: Ulrich Weigand [mailto:uweig...@de.ibm.com] > Sent: Thursday, May 03, 2012 6:11 PM > To: Bin Cheng > Cc: gcc-patches@gcc.gnu.org > Subject: Re: [PATCH, reload] Fix bug pr52804, RELOAD pass reloads wrong > register on ARM for cortex-m0 > > Bin Cheng wrote: >

[C++ Patch] PR 53166

2012-05-03 Thread Paolo Carlini
Hi, the below handles spurious -Waddress warnings during the evaluation of the static_assert condition in the usual way, already used in many other places (in pt.c + typeck.c), that is by increasing and decreasing c_inhibit_evaluation_warnings around the tsubst_expr call. Tested x86_64-linux

Re: [google/gcc-4_6_2-mobile] Port of Android target support in i386 for google/gcc-4_6_2-mobile branch

2012-05-03 Thread Maxim Kuvyrkov
On 3/05/2012, at 8:51 PM, Ilya Enkovich wrote: > Hi, > > here is a port of Android support patch > (http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00944.html) for > google/gcc-4_6_2-mobile branch. Is it OK? > > Bootstrapped on linux-x86_64. Successfullly used for NDK release build > and Android IC

Re: PR c++/24985 caret diagnostics for macro expansions

2012-05-03 Thread Manuel López-Ibáñez
On 4 May 2012 02:08, Gabriel Dos Reis wrote: > On Thu, May 3, 2012 at 6:56 PM, Manuel López-Ibáñez > wrote: >> On 4 May 2012 01:09, Gabriel Dos Reis wrote: >>> >>> The patch changes indentation in several places (violating, I think >>> coding conventions) which are unrelated to the functionality

Re: PR c++/24985 caret diagnostics for macro expansions

2012-05-03 Thread Gabriel Dos Reis
On Thu, May 3, 2012 at 6:56 PM, Manuel López-Ibáñez wrote: > On 4 May 2012 01:09, Gabriel Dos Reis wrote: >> >> The patch changes indentation in several places (violating, I think >> coding conventions) which are unrelated to the functionality >> that the patch is supposed to implement.  Could yo

Re: PR c++/24985 caret diagnostics for macro expansions

2012-05-03 Thread Manuel López-Ibáñez
On 4 May 2012 01:09, Gabriel Dos Reis wrote: > > The patch changes indentation in several places (violating, I think > coding conventions) which are unrelated to the functionality > that the patch is supposed to implement.  Could you resend > a version unencumbered by those changes for review? > T

Re: PR c++/24985 caret diagnostics for macro expansions

2012-05-03 Thread Gabriel Dos Reis
On Thu, May 3, 2012 at 5:58 PM, Manuel López-Ibáñez wrote: > This patch enables caret diagnostics for macro expansions. So now we will get: > > /home/manuel/macro-clang.c:2:91: error: invalid operands to binary < > (have ‘struct mystruct’ and ‘float’) >  #define MYMAX(A,B) __extension__ ({ __typeo

Recreate gccgo branch from gcc 4.7 branch

2012-05-03 Thread Ian Lance Taylor
The gccgo branch has gotten into a bit of a mess, since I was doing merges from trunk and then switched to doing merges from 4.7 branch. I just deleted the whole branch and recreated it as a copy from 4.7 branch. Ian

PR c++/24985 caret diagnostics for macro expansions

2012-05-03 Thread Manuel López-Ibáñez
This patch enables caret diagnostics for macro expansions. So now we will get: /home/manuel/macro-clang.c:2:91: error: invalid operands to binary < (have ‘struct mystruct’ and ‘float’) #define MYMAX(A,B) __extension__ ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; })

Re: [PATCH] Fix PR52976

2012-05-03 Thread H.J. Lu
On Sat, Apr 14, 2012 at 10:05 AM, William J. Schmidt wrote: > This patch corrects two errors in reassociating expressions with > repeated factors.  First, undistribution needs to recognize repeated > factors.  For now, repeated factors will be ineligible for this > optimization.  In the future, th

Re: [PR52983, PR48866] eliminate autoinc from debug_insn locs

2012-05-03 Thread Alexandre Oliva
On May 3, 2012, Alexandre Oliva wrote: > My recent patch for PR48866 ... had some inconsistency in behavior between dce and word_dce, as you pointed out. I couldn't find any reason for that, so I made them the same. Regstrapped on x86_64-linux-gnu and i686-linux-gnu, no regressions detected b

Re: PATCH for to use tree clobbers for c++/51060 (temporary re-use)

2012-05-03 Thread H.J. Lu
On Sat, Nov 12, 2011 at 4:42 PM, Jason Merrill wrote: > Now that we have a way of explicitly marking a variable as dead, we can use > that to indicate the end of a temporary's lifetime by adding it as a cleanup > for that temporary.  Since gimple_push_cleanup still deals in trees I needed > to twe

Re: [C Patch]: pr52543

2012-05-03 Thread Mike Stump
On May 3, 2012, at 12:50 PM, Georg-Johann Lay wrote: > It's hardly possible to write proper rtx_costs for SET: > > 1) What should be the cost of (const_int 1) if you don't see the > machine mode? Is it QI, is it HI, is it SI or whatever? You can choose to see the complete expression in its entire

PATCH to gengtype to fix diagnostics

2012-05-03 Thread Jason Merrill
While adjusting some GTY markers I started getting warnings about '^C' used but not defined; this looks to be a cut and paste error. Applying as obvious. commit 26c4827e3ffe0be492e68a31193c120fdf806756 Author: Jason Merrill Date: Thu Apr 26 19:17:21 2012 -0400 * gengtype.c (write_types)

Re: [PATCH, powerpc] PR 53199, fix usage of __builtin_bswap64 on power6

2012-05-03 Thread David Edelsohn
On Thu, May 3, 2012 at 1:56 PM, Michael Meissner wrote: > In trying to build machine specific versions of glibc with newer compilers, we > ran into a bug where the current glibc would not build on power6.  This was > due > to glibc using the __builtin_swap64 builtin.  Power6 sets the > -mavoid-in

Re: fix spec function evaluations part of an outer string construction

2012-05-03 Thread Joseph S. Myers
On Thu, 3 May 2012, Olivier Hainque wrote: > 2012-05-03 Olivier Hainque > > * gcc.c (eval_spec_function): Finalize/restore the current string > obstack state as part of the context push/pop operations. OK. -- Joseph S. Myers jos...@codesourcery.com

fix spec function evaluations part of an outer string construction

2012-05-03 Thread Olivier Hainque
Hello, Spec function evaluations currently fail to work properly when involved as part of an outer ongoing construction, as in *cpp: -I%:getenv(MYROOT /include) for example. Here, the getenv function eval is queried while the "-I..." string is being constructed. The bug is that the currentl

[v3] testsuite_flags vs. -ftrack-macro-expansion

2012-05-03 Thread Benjamin De Kosnik
Enables -ftrack-macro-expansion when running libstdc++ testsuite. tested x86/linux -benjamin2012-05-03 Benjamin Kosnik * scripts/testsuite_flags.in (cxxflags): Remove -ftrack-macro-expansion=0. diff --git a/libstdc++-v3/scripts/testsuite_flags.in b/libstdc++-v3/scripts/testsuite_flags.in

Re: DWARF patch to reduce the number of inter-CU refs

2012-05-03 Thread Jason Merrill
On 05/03/2012 04:17 PM, Cary Coutant wrote: I believe I was just replicating the existing practice of putting definitions at the top level, with a DW_AT_specification pointing to a declaration DIE within the namespace/class hierarchy when necessary. Yeah, I seem to remember there being a debugg

Re: DWARF patch to reduce the number of inter-CU refs

2012-05-03 Thread Cary Coutant
> Incidentally, I notice that we have unnecessary duplication in the type > units.  For instance, with nested-3.C: > >        .uleb128 0x2    # (DIE (0x25) DW_TAG_namespace) >        .long   .LASF0  # DW_AT_name: "thread" >                        # DW_AT_declaration >        .long   0x34    # DW_AT

Re: [patch] PR29442 - split insn-attrtab.c in three parts

2012-05-03 Thread Richard Henderson
On 05/03/2012 09:31 AM, Steven Bosscher wrote: +/* This gen* file is unique, in that it writes out multiple files. + + Before GCC 4.8, insn-attrtab.c was written out containing many large + functions and tables. This made insn-attrtab.c_the_ bottle-neck in + a parallel build, and even mad

DWARF patch to reduce the number of inter-CU refs

2012-05-03 Thread Jason Merrill
Here's the patch to perform that optimization I was talking about on the DWARF list: if we have multiple sig8 or symbolic references to another type, build up a local stub and redirect all the references there so that we are left with only one. If we left a skeleton in this CU when we split ou

Re: [C Patch]: pr52543

2012-05-03 Thread Georg-Johann Lay
Richard Sandiford wrote: Ian Lance Taylor writes: Richard Sandiford writes: Does anyone else have any thoughts before I make that change? I think that one of you should try to write a test case where it makes a difference, and add the test case to the testsuite. I originally took that to m

Re: Ping: always supply a mode to plus_constant

2012-05-03 Thread Richard Henderson
On 05/03/2012 11:15 AM, Richard Sandiford wrote: Ping for this patch to always supply a mode to plus_constant: http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00892.html Ok. r~

Fix emutls code handling aliases

2012-05-03 Thread Jan Hubicka
Hi, this patch fixes a bug I apparently intoduced while updating the code for new alias API. Instead of creating alias of emutls var it now creates alias of target var that leads to ICE later (or a wrong code when ICE is worked around). Bootstrapped/regtested x86_64-linux with emutls and comitte

Fix LTO spec2k6 build

2012-05-03 Thread Jan Hubicka
Hi, this patch fixes one place where I misupdated cgraph_remove_unreachable_nodes while removing reachable flag. Bootstrapped/regtested x86_64-linux and comitted. Honza Index: ChangeLog === --- ChangeLog (revision 187113) +++ Cha

Re: Restore bootstrap (PR53197)

2012-05-03 Thread Alexandre Oliva
On May 2, 2012, Michael Matz wrote: > my gimple_seq reshuffling broke boostrap on some machines. In particular > on those for which contrib/compare-debug works, meaning that > bootstrap-debug is selected as default BUILD_CONFIG (none of my machines > pass the respective configure.ac test, an

[Patch, Fortran] PR53175 - Fix another fallout of the TREE_PUBLIC=0 module variable patch

2012-05-03 Thread Tobias Burnus
A PRIVATE module variable, which is used in the specification expression of a function result variable cannot be TREE_PUBLIC()=0, unless the function itself is PRIVATE and also not accessible via type-bound procedures or a generic name. (The issue is gfortran specific as most compilers do not s

[PR52983] eliminate autoinc from debug_insn locs (was: Re: fix left-over debug insns in DCE)

2012-05-03 Thread Alexandre Oliva
My recent patch for PR48866, that introduced dead_debug_insert_temp() with DEBUG_TEMP_BEFORE_WITH_VALUE as a possibility for keeping expressions about to be DCE'd, caused regressions on ppc because it would take MEMs with autoinc addressing modes, which would be rejected down the road. This patch

Re: [PATCH] Hoist adjacent pointer loads

2012-05-03 Thread Jeff Law
On 05/03/2012 12:11 PM, William J. Schmidt wrote: However, from the wiki page I see: "A speculative load which has its results thrown away are considered to not have changed the semantics of the program, and are therefore allowed." That seems to cover the case here: the load is hoisted, but i

[C++ Patch] fix semi-random template specialization ICE

2012-05-03 Thread Alexandre Oliva
I've recently started getting “libstdc++-v3/include/functional:2057:63: internal compiler error: tree check: expected tree_vec, have error_mark in comp_template_args_with_info, at cp/pt.c:7038” on i686-linux-gnu, building libstdc++-v3/src/c++11/functexcept.cc -fPIC, at stage1 and on non-bootstrappe

Ping: always supply a mode to plus_constant

2012-05-03 Thread Richard Sandiford
Ping for this patch to always supply a mode to plus_constant: http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00892.html I've done a diff of the changes since the original test revision (which was r186448 FWIW) and there's only been one plus_constant- related change since then: Alan's rs6000 pro

Re: [PING] iwMMXt patches

2012-05-03 Thread Matt Turner
On Thu, May 3, 2012 at 12:59 AM, Xinyu Qi wrote: >> From: Matt Turner [mailto:matts...@gmail.com] >> To: Xinyu Qi >> Cc: Ramana Radhakrishnan; GCC Patches >> Subject: Re: [PING] iwMMXt patches >> >> On Tue, Apr 17, 2012 at 4:17 PM, Matt Turner wrote: >> > Are these patches ready to go in? It look

Re: [patch] PR29442 - split insn-attrtab.c in three parts

2012-05-03 Thread Mike Stump
On May 3, 2012, at 9:31 AM, Steven Bosscher wrote: > How does one turn random volunteer GCC hackers into spoiled brats? > Give them Big Iron to play with, like IBM's donation to the compile > farm aka gcc110. If you do "make -k 64" on a machine like that, a GCC > build takes _minutes_, and that's s

Re: [PATCH] Hoist adjacent pointer loads

2012-05-03 Thread William J. Schmidt
On Thu, 2012-05-03 at 11:44 -0600, Jeff Law wrote: > On 05/03/2012 10:47 AM, William J. Schmidt wrote: > >> > > Yes and no. What's important is that you don't want to introduce page > > faults (or less urgently, cache misses) by speculating the load. So the > > patch is currently extremely cons

[obvious] Do not declare flag_permissive explicitly and delete unused global var

2012-05-03 Thread Manuel López-Ibáñez
I will commit this as obvious shortly. Bootstrapped and regression tested x86_64-linux-gnu languages=all,ada,obj-c++ 2012-05-03 Manuel López-Ibáñez gcc/ * flags.h (flag_permissive): Do not declare. c-family/ * c.opt (fpermissive): Add Var(flag_permissive). gcc/ * diagno

[PATCH, powerpc] PR 53199, fix usage of __builtin_bswap64 on power6

2012-05-03 Thread Michael Meissner
In trying to build machine specific versions of glibc with newer compilers, we ran into a bug where the current glibc would not build on power6. This was due to glibc using the __builtin_swap64 builtin. Power6 sets the -mavoid-indexed-addresses option. The splitter that I wrote when I wrote the

[PATCH] libgcov support for profile collection in region of interest (issue6186044)

2012-05-03 Thread Teresa Johnson
This patch adds functionality to libgcov to enable user applications to collect profile data only in regions of interest. This is useful, for example, to collect profile data from a long-running server only during the time when it is serving requests. Specifically, the new routines __gcov_reset wi

Re: Optimize calls to functions that return one of their arguments

2012-05-03 Thread Richard Sandiford
Richard Guenther writes: > On Sat, Apr 28, 2012 at 5:31 PM, Bernd Schmidt > wrote: >> This patch allows us to recognize that even if the argument to memcpy lives >> across the call, we can allocate it to a call-used register by reusing the >> return value of the function. >> >> First, the patch

Re: [PATCH] Hoist adjacent pointer loads

2012-05-03 Thread Jeff Law
On 05/03/2012 10:47 AM, William J. Schmidt wrote: Yes and no. What's important is that you don't want to introduce page faults (or less urgently, cache misses) by speculating the load. So the patch is currently extremely constrained, and likely will always stay that way. Only fields that are

Go patch committed: Build interfaces tables for imported interfaces

2012-05-03 Thread Ian Lance Taylor
This patch to the Go frontend fixes a bug that can arise when a type in package A inherits from a type in package B, where the type in package B has a hidden method, and a third package C tries to convert the package A type to the B interface type. The compiler was failing to generate the required

Re: [PATCH] Fix overzealous DSE on sparc

2012-05-03 Thread David Miller
From: Richard Guenther Date: Thu, 3 May 2012 12:25:11 +0200 > On Thu, May 3, 2012 at 11:52 AM, David Miller wrote: >> From: Richard Guenther >> Date: Thu, 3 May 2012 11:48:03 +0200 >> >>> calls.c is unsafe, too.  Which is probably why making DSE stronger for >>> calls using the usual alias pred

Re: [PATCH] Hoist adjacent pointer loads

2012-05-03 Thread William J. Schmidt
On Thu, 2012-05-03 at 09:40 -0600, Jeff Law wrote: > On 05/03/2012 08:33 AM, William J. Schmidt wrote: > > This patch was posted for comment back in February during stage 4. It > > addresses a performance issue noted in the EEMBC routelookup benchmark > > on a common idiom: > > > >if (...) > >

Re: [PATCH] teach emit_store_flag to use clz/ctz

2012-05-03 Thread Richard Henderson
On 05/03/2012 08:23 AM, Paolo Bonzini wrote: Yeah, not as I posted... of course config/mips/mips.h needs change, but do you disagree that all targets_do_ have the same value at zero for the optab as they have for RTL? I don't agree without a port-by-port review, no. If, as you suggest, we ge

Re: Symbol table 6/many: Symbol table hashes

2012-05-03 Thread Martin Jambor
Hi, a bit late, but I do have two tiny comments nevertheless... On Mon, Apr 16, 2012 at 06:09:40PM +0200, Jan Hubicka wrote: > Hi, > this patch moves cgraph/varpool hashes into symbol table hashes, so the > symbol table is actually almost a symbol table ;) > Work done. > > Bootstrapped/regtested

two libatomic configure updates

2012-05-03 Thread Richard Henderson
The first, reported by David re a ppc32 build failure. I don't understand why gcc_no_link would be true in that case, but it does point out a real bug. And possibly the same one that was reported against darwin overnight. The second, pointed out by Jason re enabling maintainer mode. Both commi

Re: [C11-atomic] [patch] gimple atomic statements

2012-05-03 Thread Andrew MacLeod
On 05/03/2012 05:59 AM, Richard Guenther wrote: the type can be removed from the structure and now there would be no wastage. Is that reasonable? types in ops is a bad idea (tried that once - heh), it wrecks too much generic code. heh, no doubt. As I Iooked at handling the generic atomics,

[patch] PR29442 - split insn-attrtab.c in three parts

2012-05-03 Thread Steven Bosscher
Hello, How does one turn random volunteer GCC hackers into spoiled brats? Give them Big Iron to play with, like IBM's donation to the compile farm aka gcc110. If you do "make -k 64" on a machine like that, a GCC build takes _minutes_, and that's so slooow... Part of the problem is insn-at

[v3] doxygen markup for template parameters

2012-05-03 Thread Benjamin De Kosnik
In libstdc++/44015, there is a request for doxygen markup on template parameters, including default arguments. This is a kind of markup that libstdc++ has mostly not done, or done inconsistently. So, here's how I think it should be done, at least for io and containers. See generated files here:

Re: [google] re-enable r185948

2012-05-03 Thread Xinliang David Li
ok. Is the change in google-47 branch? Please also submit this to trunk (there was also a previous one pending). thanks, David On Thu, May 3, 2012 at 4:44 AM, Dehao Chen wrote: > Hi, > > This patch was reverted because of performance degradation. However, it > turns out to be an innocent perfo

Go patch committed: Fix global dependencies for a, b = foo()

2012-05-03 Thread Ian Lance Taylor
This patch to the Go frontend fixes the dependency analysis for code like func foo() (int, int) var c = b var a, b = foo() This code used to crash the compiler because the initialization of c would refer to b, which would build the call, and then the initialization of a would not be able to see t

rfa: shrink rtl_bb_info

2012-05-03 Thread Michael Matz
Hi, Richi made some good points about my last patch, related to struct rtl_bb_info. Even though it's not that important to shrink it (only few BBs are in RTL mode) there's no need to waste space. My last patch created an unused pointer-sized hole in RTL mode, which we can just as well use fo

Re: [PATCH] Hoist adjacent pointer loads

2012-05-03 Thread Jeff Law
On 05/03/2012 08:33 AM, William J. Schmidt wrote: This patch was posted for comment back in February during stage 4. It addresses a performance issue noted in the EEMBC routelookup benchmark on a common idiom: if (...) x = y->left; else x = y->right; If the two loads can be hoi

Re: RFA: PR target/53120, constraint modifier "+" on operand tied by matching-constraint, "0".

2012-05-03 Thread DJ Delorie
Make sure a match_dup will still match the generated pattern later, I've had problems with match_dup not matching two rtx that rtx_equals() says are "the same" but not physically the same.

Re: fix ppc-aix build failures with spaces in CC (internal) variable

2012-05-03 Thread Olivier Hainque
On May 3, 2012, at 16:45 , David Edelsohn wrote: >>> * config/mh-ppc-aix (LDFLAGS): Quote $(CC). > Okay. Committed, thanks :)

Re: [PATCH] teach emit_store_flag to use clz/ctz

2012-05-03 Thread Paolo Bonzini
Il 03/05/2012 17:10, Richard Henderson ha scritto: >>> >>> >>> ... except that no target sets the macros to 2, and all of them could >>> (as far as I could see). Looks like the code trumps the documentation; >>> how does this look? > > "No target sets to 2"? You mean like mips? You forgot to lo

Re: [PATCH] teach emit_store_flag to use clz/ctz

2012-05-03 Thread Richard Henderson
On 05/03/2012 03:23 AM, Paolo Bonzini wrote: - ctzsi4 expands to bitrev + clz:SI, so it will return 32 too. ctz:SI will never appear at all in the RTX stream, so you can define its value at zero to be whatever you want. Hence the correct valid of CTZ_DEFINED_VALUE_AT_ZERO is also 2. That's for

Re: [PATCH] teach emit_store_flag to use clz/ctz

2012-05-03 Thread Richard Henderson
On Fri, Apr 27, 2012 at 2:43 PM, Paolo Bonzini wrote: Interesting, first time I hear about this... ... except that no target sets the macros to 2, and all of them could (as far as I could see). Looks like the code trumps the documentation; how does this look? "No target sets to 2"? You mean

Re: fix ppc-aix build failures with spaces in CC (internal) variable

2012-05-03 Thread David Edelsohn
On Thu, May 3, 2012 at 6:19 AM, Olivier Hainque wrote: >> We sometimes get to invoke Makefile targets with a CC variable value >> containing >> spaces (for extra options, typically). This causes failure at some stages on >> powerpc-aix from mh-ppc-aix which has >> >>  LDFLAGS = `case $(CC) in *g

Re: [C++ Patch] PR 53186

2012-05-03 Thread Paolo Carlini
On 05/03/2012 04:00 PM, Jason Merrill wrote: OK. Seems safe enough for 4.7.1. Applied, thanks! Paolo.

[PATCH] Hoist adjacent pointer loads

2012-05-03 Thread William J. Schmidt
This patch was posted for comment back in February during stage 4. It addresses a performance issue noted in the EEMBC routelookup benchmark on a common idiom: if (...) x = y->left; else x = y->right; If the two loads can be hoisted out of the if/else, the if/else can be replaced by

Re: rfa: Tighten basic_block_def (inline il.gimple)

2012-05-03 Thread Richard Guenther
On Thu, May 3, 2012 at 3:08 PM, Michael Matz wrote: > Hi, > > this removes the XXXs I added with my prev/next shuffling.  A reason for > some conditionals in iterator setups is that ENTRY/EXIT bbs don't have > il.gimple setup, while all other blocks have it always initialized (well, > as long as !

Re: [PATCH] libatomic, v2

2012-05-03 Thread Jason Merrill
On 05/02/2012 09:14 AM, Richard Henderson wrote: On 05/02/2012 05:48 AM, Andreas Krebbel wrote: configure.ac:26: error: Please use exactly Autoconf 2.64 instead of 2.65. ../config/override.m4:12: _GCC_AUTOCONF_VERSION_CHECK is expanded from... configure.ac:26: the top level autom4te: m4 failed w

Re: [C++ Patch] PR 53186

2012-05-03 Thread Jason Merrill
OK. Seems safe enough for 4.7.1. Jason

Re: [C++ Patch] PR 53186

2012-05-03 Thread Paolo Carlini
On 05/03/2012 03:08 PM, Jason Merrill wrote: What if we moved all the devirtualization logic from build_new_method_call_1 to build_over_call? Doh, you are absolutely right, the below, very simple, appears to work well. Probably I was afraid that we could have issues with the other build_over_ca

Re: divide 64-bit by constant for 32-bit target machines

2012-05-03 Thread Richard Earnshaw
On 03/05/12 11:27, Dinar Temirbulatov wrote: > Hi, > Here is updated version of patch. I added comments describing the algorithm. > >> Hi Dinar. I'm afraid it gives the wrong results for some dividends >> * 82625484914982912 / 2023346444509052928: gives 4096, should be zero >> * 183174636040612

Re: fix incorrect SRA transformation on non-integral VIEW_CONVERT argument

2012-05-03 Thread Olivier Hainque
On May 3, 2012, at 12:24 , Richard Guenther wrote: >> One area of potential difference came to mind yesterday: regarding the >> processing of type alignment differences. VCE to more aligned (of the >> same size) would make a temp copy to yield a correctly aligned object. >> >> Would MEM_REF d

Re: [C++ Patch] PR 53186

2012-05-03 Thread Jason Merrill
What if we moved all the devirtualization logic from build_new_method_call_1 to build_over_call? Jason

rfa: Tighten basic_block_def (inline il.gimple)

2012-05-03 Thread Michael Matz
Hi, this removes the XXXs I added with my prev/next shuffling. A reason for some conditionals in iterator setups is that ENTRY/EXIT bbs don't have il.gimple setup, while all other blocks have it always initialized (well, as long as !BB_RTL of course). That annoyed me, but instead of simply a

[PATCH] More PRE TLC

2012-05-03 Thread Richard Guenther
This moves handling of trapping ops to prune_clobbered_mems and compute_avail, similar to how I moved handling of clobbered mems earlier. It fixes one existing testcase even. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2012-05-03 Richard Guenther * tree-s

RE: Propose to add a new argument MULTILIB_REQUIRED in multilib framework

2012-05-03 Thread Joseph S. Myers
On Thu, 3 May 2012, Terry Guo wrote: > 2012-05-03 Terry Guo > > * Makefile.in (s-mlib): Add new argument MULTILIB_REQUIRED. > * genmultilib (MULTILIB_REQUIRED): New. > * doc/fragments.texi: Document the MULTILIB_REQUIRED. This is OK, with copyright dates on genmultilib

RE: Propose to add a new argument MULTILIB_REQUIRED in multilib framework

2012-05-03 Thread Terry Guo
Hi Joseph, > > On Thu, 3 May 2012, Terry Guo wrote: > > > Thanks for your reminding. > > The attached patch added the missing documentation. Please help to > review. > > Please send the complete new patch, including documentation, for review > (unless the rest has been reviewed). > > > +@item

[PATCH, alpha]: Remove MAX_OFILE_ALIGNMENT definition

2012-05-03 Thread Uros Bizjak
Hello! This #define is the same as in generic config/elfos.h. 2012-05-03 Uros Bizjak * config/alpha/elf.h (MAX_OFILE_ALIGNMENT): Remove. Tested on alphaev68-pc-linux-gnu, committed to mainline SVN. Uros. Index: config/alpha/elf.h =

ping: recognize .persistent.bss sections as bss

2012-05-03 Thread Olivier Hainque
Hello, Ping for http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00833.html Thanks in advance, Olivier On Apr 13, 2012, at 15:06 , Olivier Hainque wrote: > For several years now, Ada has support for a "Persistent_BSS" pragma > that let users place data in a ".persistent.bss" section. This section:

Re: [PATCH] Fix some hle* tests

2012-05-03 Thread Uros Bizjak
On Thu, May 3, 2012 at 12:17 PM, Uros Bizjak wrote: >> BTW, I wonder if dg-options shouldn't select -march=i686 for !lp64, >> if somebody configures gcc to default to -march=i386, I guess xadd etc. >> won't be emitted there. > > You can add -march=x86-64 unconditionally to these test. This arch i

[google] re-enable r185948

2012-05-03 Thread Dehao Chen
Hi, This patch was reverted because of performance degradation. However, it turns out to be an innocent performance loss. Thus we want to reenable it in google branches. Passed bootstrap and gcc regression tests and google performance tests. OK for google branch? Thanks, Dehao gcc/ChangeLog.go

[PATCH] PRE TLC

2012-05-03 Thread Richard Guenther
When looking at PR53168 I noticed that clean () can be optimized and simplified quite a bit. Likewise that we do not dump whether we find a partial or a partial partial redundancy, nor dump the insert iteration. Also dumping the PRE sets is tedious from inside gdb so this adds a debug function t

RE: Propose to add a new argument MULTILIB_REQUIRED in multilib framework

2012-05-03 Thread Joseph S. Myers
On Thu, 3 May 2012, Terry Guo wrote: > Thanks for your reminding. > The attached patch added the missing documentation. Please help to review. Please send the complete new patch, including documentation, for review (unless the rest has been reviewed). > +@item MULTILIB_REQUIRED > +Sometimes wh

Re: [C++ Patch] PR 53186

2012-05-03 Thread Paolo Carlini
On 05/03/2012 03:27 AM, Paolo Carlini wrote: Hi, Vincenzo reported today that the work done by Roberto on devirtualizing final methods, doesn't cover operators (of all sorts). Thus I prepared the below, which passes the testsuite on x86_64-linux. ... I have an alternate proposal, which probabl

Re: [PATCH] Fix gcc-{ar,nm,ranlib} (PR plugins/53126)

2012-05-03 Thread Richard Guenther
On Thu, May 3, 2012 at 12:49 PM, Jakub Jelinek wrote: > Hi! > > What gcc-ar does to find the plugin is significantly different from > what gcc driver does.  This patch makes it behave tiny bit closer to > what the driver does, in particular if GCC_EXEC_PREFIX isn't defined > in the environment, it

[PATCH] Fix gcc-{ar,nm,ranlib} (PR plugins/53126)

2012-05-03 Thread Jakub Jelinek
Hi! What gcc-ar does to find the plugin is significantly different from what gcc driver does. This patch makes it behave tiny bit closer to what the driver does, in particular if GCC_EXEC_PREFIX isn't defined in the environment, it will use standard_libexec_prefix if gcc-{ar,nm,ranlib} program li

ping: use longcall to abort from !pic trampoline setup on ppc-vxworks

2012-05-03 Thread Olivier Hainque
Hello, Ping for http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00808.html Thanks in advance, Olivier On Apr 13, 2012, at 10:08 , Olivier Hainque wrote: ... > Relocation troubles (24bit reloc overflows) might show up when module > instructions contain short references to kernel symbols and the mod

Re: divide 64-bit by constant for 32-bit target machines

2012-05-03 Thread Dinar Temirbulatov
Hi, Here is updated version of patch. I added comments describing the algorithm. > Hi Dinar.  I'm afraid it gives the wrong results for some dividends >  * 82625484914982912 / 2023346444509052928: gives 4096, should be zero >  * 18317463604061229328 / 2023346444509052928: gives 4109, should be 9 >

[committed] Fix ARM ICE in arm_select_dominance_cc_mode (PR target/53187)

2012-05-03 Thread Jakub Jelinek
Hi! This patch fixes ICE in arm_select_dominance_cc_mode during combine, which tries to match some rtl expression which has (unlt:SI (reg:CCFPE cc) (const_int 0)) deep inside it (the match will fail), during simplification SELECT_CC_MODE is used and as arm_select_cc_mode returns CCmode for the u

ping: latch mem to reg before multi-access in convert_move

2012-05-03 Thread Olivier Hainque
Hello, Ping for http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00298.html Thanks in advance, Olivier On Apr 5, 2012, at 17:30 , Olivier Hainque wrote: ... > The original problem we had with this was the introduction of an > artificial race condition in addition to the potential performance > impa

RE: Propose to add a new argument MULTILIB_REQUIRED in multilib framework

2012-05-03 Thread Terry Guo
Hi Joseph, > > On Tue, 17 Apr 2012, Terry Guo wrote: > > > 2012-04-17 Terry Guo > > > > * Makefile.in (s-mlib): Add new argument MULTILIB_REQUIRED. > > * genmultilib (MULTILIB_REQUIRED): New. > > You need to add documentation in fragments.texi for MULTILIB_REQUIRED. > Thanks

Re: [PATCH] Fix overzealous DSE on sparc

2012-05-03 Thread Richard Guenther
On Thu, May 3, 2012 at 11:52 AM, David Miller wrote: > From: Richard Guenther > Date: Thu, 3 May 2012 11:48:03 +0200 > >> calls.c is unsafe, too.  Which is probably why making DSE stronger for >> calls using the usual alias predicates did not work. > > Well, when calls.c does something more sophi

Re: fix install-no-fixedincludes mishaps

2012-05-03 Thread Olivier Hainque
Hello, Ping for http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00274.html Thanks in advance, Olivier On Apr 5, 2012, at 14:54 , Olivier Hainque wrote: ... > install-no-fixedincludes remains a useful Makefile target > and it misbehaves in two ways: > > 1) past the second invocation, it rebuilds

Re: fix incorrect SRA transformation on non-integral VIEW_CONVERT argument

2012-05-03 Thread Richard Guenther
On Thu, May 3, 2012 at 10:21 AM, Olivier Hainque wrote: > > On Apr 30, 2012, at 16:18 , Olivier Hainque wrote: >>> Can you formally relate those three representations and tell me why >>> VIEW_CONVERT_EXPR is useful (not only convenient because of less operands) >>> to use on lvalues (thus memory,

Re: [PATCH] teach emit_store_flag to use clz/ctz

2012-05-03 Thread Paolo Bonzini
Il 03/05/2012 11:57, Richard Guenther ha scritto: > Hmm, I'll let target maintainers have a look at this - it's non-obvious > for arm (the only case I looked at) at least. My guess is that the > difference was to allow __builtin_ctz to be "optimized" and CTZ > to be always well-defined (which inci

Re: [PATCH] Fix for PR51879 - Missed tail merging with non-const/pure calls

2012-05-03 Thread Richard Guenther
On Wed, May 2, 2012 at 4:06 PM, Tom de Vries wrote: > On 27/04/12 11:01, Richard Guenther wrote: > >> I see you do not handle > >> struct S { int i; }; >> struct S foo (void); >> struct S bar (void) >> { >>   struct S s1, s2; >>   if (...) >>    s = foo (); >>

Re: fix ppc-aix build failures with spaces in CC (internal) variable

2012-05-03 Thread Olivier Hainque
Hello, Ping for http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00661.html Thanks in advance, Olivier On Apr 11, 2012, at 16:43 , Olivier Hainque wrote: > We sometimes get to invoke Makefile targets with a CC variable value > containing > spaces (for extra options, typically). This causes failur

Re: [PATCH] Fix some hle* tests

2012-05-03 Thread Uros Bizjak
On Thu, May 3, 2012 at 12:08 PM, Jakub Jelinek wrote: > During testing with older gas I've noticed failures, where 0xf2 was a pasto > instead of the right 0xf3 for xrelease insn. > > Fixed thusly, regtested on x86_64-linux and i686-linux, ok for trunk? > > BTW, I wonder if dg-options shouldn't se

improve collect2 to preserve a RO output as the linker does

2012-05-03 Thread Olivier Hainque
Hello, This is a followup on an old issue first discussed at http://gcc.gnu.org/ml/gcc-patches/2008-05/msg01290.html The original problem is still visible today: << While some target linkers silently replace read-only output files, others report an error in such circumstances. [...] col

Re: [PATCH, reload] Fix bug pr52804, RELOAD pass reloads wrong register on ARM for cortex-m0

2012-05-03 Thread Ulrich Weigand
Bin Cheng wrote: > Thanks for reviewing, I modified the ChangeLog. Is it ok for trunk and 4.7? Yes, this is OK for trunk. Once it has been in trunk for a week or so and nobody reported any regressions, it would also be OK to backport to 4.7. Thanks, Ulrich -- Dr. Ulrich Weigand GNU Toolch

  1   2   >