Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Miles Bader
Mike Stump mikest...@comcast.net writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly important for double_int. Show us the difference in timing. Show us the generated code. I can't imagine that it could ever matter. I'm also

Re: Value type of map need not be default copyable

2012-08-08 Thread Marc Glisse
On Tue, 7 Aug 2012, Richard Smith wrote: I've attached a patch for unordered_map which solves the rvalue reference problem.  For efficiency, I've created a new _M_emplace_bucket method rather than call emplace directly. I've verified all libstdc++ tests pass (sorry for the previous oversight)

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 9:09 AM, Miles Bader mi...@gnu.org wrote: Mike Stump mikest...@comcast.net writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly important for double_int. Show us the difference in timing. Show us the generated

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Tue, Aug 7, 2012 at 8:38 PM, Lawrence Crowl cr...@google.com wrote: On 8/7/12, Richard Guenther richard.guent...@gmail.com wrote: On Tue, Aug 7, 2012 at 2:35 AM, Lawrence Crowl cr...@google.com wrote: Convert double_int from a struct with function into a class with operators and methods.

Re: [PATCH, Android] Runtime stack protector enabling for Android target

2012-08-08 Thread Igor Zamyatin
Hi all! I'd like to ask whether stack-protector changes for Android could go to 4.7? Pathes are: http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01089.html http://gcc.gnu.org/ml/gcc-patches/2012-07/msg01157.html Thanks, Igor On Wed, Jul 25, 2012 at 2:08 AM, Maxim Kuvyrkov ma...@codesourcery.com

Re: PATCH: PR rtl-optimization/54157: [x32] -maddress-mode=long failures

2012-08-08 Thread Richard Sandiford
H.J. Lu hjl.to...@gmail.com writes: diff --git a/gcc/combine.c b/gcc/combine.c index a07c046..b9a3589 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -10784,12 +10784,30 @@ gen_lowpart_for_combine (enum machine_mode omode, rtx x) if (omode == imode) return x; - /* Return

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Miles Bader
Richard Guenther richard.guent...@gmail.com writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly important for double_int. Show us the difference in timing. Show us the generated code. I can't imagine that it could ever matter.

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Marc Glisse
On Wed, 8 Aug 2012, Richard Guenther wrote: + static double_int make (unsigned HOST_WIDE_INT cst); + static double_int make (HOST_WIDE_INT cst); + static double_int make (unsigned int cst); + static double_int make (int cst); [...] Btw, if HOST_WIDE_INT == int the above won't even

Commit: RL78: Include tree-pass.h

2012-08-08 Thread Nick Clifton
Hi DJ, I am applying the following patch to the gcc mainline as an obvious fix for the following problem building the RL78 backend: gcc/config/rl78/rl78.c:151:3: error: 'PASS_POS_INSERT_BEFORE' undeclared here (not in a function) Cheers Nick gcc/ChangeLog 2012-08-08 Nick Clifton

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 10:33 AM, Marc Glisse marc.gli...@inria.fr wrote: On Wed, 8 Aug 2012, Richard Guenther wrote: + static double_int make (unsigned HOST_WIDE_INT cst); + static double_int make (HOST_WIDE_INT cst); + static double_int make (unsigned int cst); + static double_int make

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 10:28 AM, Nick Clifton ni...@redhat.com wrote: Hi DJ, I am applying the following patch to the gcc mainline as an obvious fix for the following problem building the RL78 backend: gcc/config/rl78/rl78.c:151:3: error: 'PASS_POS_INSERT_BEFORE' undeclared here

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread nick clifton
Hi Richard, Err - you are inside the compiler and should not use plugin stuff to register your machine dependent pass. Umm, OK, what is the correct method for registering target specific passes ? (Ones that need to run at times other than TARGET_MACHINE_DEPENDENT_REORG). Cheers Nick

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 11:02 AM, nick clifton ni...@redhat.com wrote: Hi Richard, Err - you are inside the compiler and should not use plugin stuff to register your machine dependent pass. Umm, OK, what is the correct method for registering target specific passes ? (Ones that need to run

Re: [PATCH, Android] Runtime stack protector enabling for Android target

2012-08-08 Thread Uros Bizjak
On Wed, Aug 8, 2012 at 9:54 AM, Igor Zamyatin izamya...@gmail.com wrote: I'd like to ask whether stack-protector changes for Android could go to 4.7? Pathes are: http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01089.html http://gcc.gnu.org/ml/gcc-patches/2012-07/msg01157.html OK, as far as

Fix simplify-rtx losing side effects in operand of IOR

2012-08-08 Thread Joseph S. Myers
...@codesourcery.com * simplify-rtx.c (simplify_binary_operation_1): Do not simplify IOR to a constant if one operand has side effects. testsuite: 2012-08-08 Joseph Myers jos...@codesourcery.com * gcc.c-torture/execute/20120808-1.c: New test. Index: testsuite/gcc.c-torture/execute

[AArch64] Merge from upstream trunk reverted

2012-08-08 Thread Sofiane Naci
Hi, I've just reverted my recent merge from upstream trunk on the aarch64-branch (r190119). A cleaner and broader merge will follow. Thanks Sofiane

Re: [PATCH, Android] Runtime stack protector enabling for Android target

2012-08-08 Thread Maxim Kuvyrkov
On 8/08/2012, at 9:46 PM, Uros Bizjak wrote: On Wed, Aug 8, 2012 at 9:54 AM, Igor Zamyatin izamya...@gmail.com wrote: I'd like to ask whether stack-protector changes for Android could go to 4.7? Pathes are: http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01089.html

Re: Fix simplify-rtx losing side effects in operand of IOR

2012-08-08 Thread Richard Sandiford
Joseph S. Myers jos...@codesourcery.com writes: 2012-08-08 Joseph Myers jos...@codesourcery.com * simplify-rtx.c (simplify_binary_operation_1): Do not simplify IOR to a constant if one operand has side effects. OK, thanks. Richard

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-08-08 Thread Thomas Quinot
* Arnaud Charlet, 2012-06-18 : -#if defined (__linux__) !defined (_XOPEN_SOURCE) +#if (defined (__linux__) || defined (__GNU__)) !defined (_XOPEN_SOURCE) /** For Linux _XOPEN_SOURCE must be defined, otherwise IOV_MAX is not defined **/ #define _XOPEN_SOURCE 500

[PATCH,i386] fma,fma4 and xop flags

2012-08-08 Thread Ganesh.Gopalasubramanian
Hello, Bdver2 cpu supports both fma and fma4 instructions. Previous to patch, option -mno-xop removes -mfma4. Similarly, option -mno-fma4 removes -mxop. So, the patch conditionally disables -mfma or -mfma4. Enabling -mxop is done by also checking -mfma. Ok for trunk? Regards Ganesh 2012-08-08

Re: [PATCH,i386] fma,fma4 and xop flags

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 1:31 PM, ganesh.gopalasubraman...@amd.com wrote: Hello, Bdver2 cpu supports both fma and fma4 instructions. Previous to patch, option -mno-xop removes -mfma4. Similarly, option -mno-fma4 removes -mxop. Eh? Why's that? I think we should disentangle -mxop and -mfma4

Re: [RFH / Patch] PR 54191

2012-08-08 Thread Paolo Carlini
On 08/08/2012 01:57 PM, Paolo Carlini wrote: this also triggers the static_assert. Really, in 'decltype(B{declvalFrom()})' almost *everything* is Ok between the curly brackets. Maybe we should have a separate PR for this. And I think this issue is addressed by the ongoing work on instantiation

[Test] contrib/test_installed modified to set specific gcov

2012-08-08 Thread Anna Tikhonova
Hi, while running check for Android NDK compiler (I've used contrib/test_installed for it) I've noticed that gcov name is hardcoded in g++.dg/gcov/gcov.exp. All NDK x86 tools have prefix like i686-linux-android-, so testing will fail to spawn gcov. The patch attached introduces --with-gcov flag

Re: [RFH / Patch] PR 54191

2012-08-08 Thread Paolo Carlini
On 08/08/2012 02:47 PM, Paolo Carlini wrote: On 08/08/2012 01:57 PM, Paolo Carlini wrote: this also triggers the static_assert. Really, in 'decltype(B{declvalFrom()})' almost *everything* is Ok between the curly brackets. Maybe we should have a separate PR for this. And I think this issue is

Re: Value type of map need not be default copyable

2012-08-08 Thread François Dumont
On 08/08/2012 09:34 AM, Marc Glisse wrote: On Tue, 7 Aug 2012, Richard Smith wrote: I've attached a patch for unordered_map which solves the rvalue reference problem. For efficiency, I've created a new _M_emplace_bucket method rather than call emplace directly. I've verified all libstdc++

Re: [PATCH] Intrinsics for ADCX

2012-08-08 Thread Kirill Yukhin
Here is the patch with some obvious fixes. If there are no objections, could anyone please check it in? Done: http://gcc.gnu.org/ml/gcc-cvs/2012-08/msg00203.html Thanks, K

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Ian Lance Taylor
On Wed, Aug 8, 2012 at 1:45 AM, Richard Guenther richard.guent...@gmail.com wrote: On Wed, Aug 8, 2012 at 10:28 AM, Nick Clifton ni...@redhat.com wrote: Hi DJ, I am applying the following patch to the gcc mainline as an obvious fix for the following problem building the RL78 backend:

Re: Value type of map need not be default copyable

2012-08-08 Thread Paolo Carlini
On 08/08/2012 03:15 PM, François Dumont wrote: I have also introduce a special std::pair constructor for container usage so that we do not have to include the whole tuple stuff just for associative container implementations. To be clear: sorry, this is not an option. Paolo.

Re: PATCH: PR rtl-optimization/54157: [x32] -maddress-mode=long failures

2012-08-08 Thread H.J. Lu
On Wed, Aug 8, 2012 at 1:08 AM, Richard Sandiford rdsandif...@googlemail.com wrote: H.J. Lu hjl.to...@gmail.com writes: diff --git a/gcc/combine.c b/gcc/combine.c index a07c046..b9a3589 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -10784,12 +10784,30 @@ gen_lowpart_for_combine (enum

Re: Value type of map need not be default copyable

2012-08-08 Thread Marc Glisse
On Wed, 8 Aug 2012, François Dumont wrote: On 08/08/2012 09:34 AM, Marc Glisse wrote: On Tue, 7 Aug 2012, Richard Smith wrote: I've attached a patch for unordered_map which solves the rvalue reference problem. For efficiency, I've created a new _M_emplace_bucket method rather than call

Re: PATCH: PR rtl-optimization/54157: [x32] -maddress-mode=long failures

2012-08-08 Thread H.J. Lu
On Wed, Aug 8, 2012 at 6:43 AM, Uros Bizjak ubiz...@gmail.com wrote: On Wed, Aug 8, 2012 at 3:40 PM, H.J. Lu hjl.to...@gmail.com wrote: rdsandif...@googlemail.com wrote: H.J. Lu hjl.to...@gmail.com writes: diff --git a/gcc/combine.c b/gcc/combine.c index a07c046..b9a3589 100644 ---

[PATCH][4/n] Allow anonymous SSA names

2012-08-08 Thread Richard Guenther
This splits out more cleanups from the main patch to make that smaller. The only bigger part of the patch is making tree-stdarg track escapes/varargs for SSA names more precise by not globbing on SSA_NAME_VAR but instead using the bits [0..num_ssa_names-1] for SSA names and

[PATCH] Add virual_operand_p predicate

2012-08-08 Thread Richard Guenther
This adds a virual_operand_p predicate and uses it where we currently use the bit on the decl (VAR_DECL_IS_VIRTUAL_OPERAND) directly. I suspect most of the is_gimple_reg users in SSA optimizers can be replaced by this predicate eventually making is_gimple_reg a private predicate to the gimplifier

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 3:35 PM, Ian Lance Taylor i...@google.com wrote: On Wed, Aug 8, 2012 at 1:45 AM, Richard Guenther richard.guent...@gmail.com wrote: On Wed, Aug 8, 2012 at 10:28 AM, Nick Clifton ni...@redhat.com wrote: Hi DJ, I am applying the following patch to the gcc mainline as

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Ian Lance Taylor
On Wed, Aug 8, 2012 at 7:03 AM, Richard Guenther richard.guent...@gmail.com wrote: I don't think we really want that (machine dependent passes). It seems we cannot get away with it (so we have mdreorg). Allowing (some) flexibility where to put mdreorg is ok, using two different mechanisms

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 4:06 PM, Ian Lance Taylor i...@google.com wrote: On Wed, Aug 8, 2012 at 7:03 AM, Richard Guenther richard.guent...@gmail.com wrote: I don't think we really want that (machine dependent passes). It seems we cannot get away with it (so we have mdreorg). Allowing (some)

[lra] patch to fix a ppc64 gcc testsuite failure

2012-08-08 Thread Vladimir Makarov
The following patch fixes a ppc64 gcc testsuite failure. The patch was successfully bootstrapped on x86/x86-64. Committed as rev. 190207. 2012-08-07 Vladimir Makarov vmaka...@redhat.com * lra-int.h (lra_constraint_iter_after_spill): New. * lra.c (lra): Initialize

Re: [Patch ARM 1/6] Canonicalize neon_vaba and neon_vabal patterns.

2012-08-08 Thread Ramana Radhakrishnan
On 3 August 2012 16:00, Richard Earnshaw rearn...@arm.com wrote: On 30/07/12 12:43, Ramana Radhakrishnan wrote: Patch 1 fixes up the vaba and vabal patterns to use a canonical RTL form with the first operand to the plus being the more complex one. This patch canonicalizes the instruction

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Ian Lance Taylor
On Wed, Aug 8, 2012 at 7:11 AM, Richard Guenther richard.guent...@gmail.com wrote: On Wed, Aug 8, 2012 at 4:06 PM, Ian Lance Taylor i...@google.com wrote: On Wed, Aug 8, 2012 at 7:03 AM, Richard Guenther richard.guent...@gmail.com wrote: I don't think we really want that (machine dependent

Re: PATCH: PR rtl-optimization/54157: [x32] -maddress-mode=long failures

2012-08-08 Thread Richard Sandiford
H.J. Lu hjl.to...@gmail.com writes: On Wed, Aug 8, 2012 at 6:43 AM, Uros Bizjak ubiz...@gmail.com wrote: Probably we need to backport this patch to 4.7, where x32 is -maddress-mode=long by default. It doesn't fail on 4.7 branch since checking mode on PLUS CONST is new on trunk. However, I

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Henderson
On 08/08/2012 07:19 AM, Ian Lance Taylor wrote: I was suggesting to for example register a 2nd mdreorg-like pass and add a 2nd target hook. regstack should get the same treatment. If the mechanism is a proliferation of mdreorg passes in every place we want a target-specific pass, that is

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread DJ Delorie
But we should definitely have a way to register machine dependent passes, and what's wrong with the plugin interface? IIRC I asked about how to schedule that pass when I wrote it, and use the plugin API was the recommendation. Some background... The RL78 devirtualization pass is *not* a

[google] Omit another TARGET_LIB_PATH from RPATH_ENVVAR set on bootstrap builds (issue6446102)

2012-08-08 Thread Simon Baldwin
Omit another TARGET_LIB_PATH from RPATH_ENVVAR set on bootstrap builds. A second occurrence of adding TARGET_LIB_PATH to LD_LIBRARY_PATH on gcc bootstrap builds. This one also needs removing to enable full test coverage. Discussion and rationale at:

Re: [PATCH] Set correct source location for deallocator calls

2012-08-08 Thread Richard Henderson
On 08/07/2012 06:25 AM, Richard Guenther wrote: (is re-setting _every_ stmt location really ok in all cases?) I'm certain that it's not, though you can't tell that from C++. Examine instead a Java test case using try-finally. In Java the contents of the finally would be incorrectly relocated

Re: [google] Omit another TARGET_LIB_PATH from RPATH_ENVVAR set on bootstrap builds (issue6446102)

2012-08-08 Thread Diego Novillo
On 12-08-08 11:49 , Simon Baldwin wrote: Omit another TARGET_LIB_PATH from RPATH_ENVVAR set on bootstrap builds. A second occurrence of adding TARGET_LIB_PATH to LD_LIBRARY_PATH on gcc bootstrap builds. This one also needs removing to enable full test coverage. Discussion and rationale at:

Re: [PATCH] Set correct source location for deallocator calls

2012-08-08 Thread Dehao Chen
On Wed, Aug 8, 2012 at 8:56 AM, Richard Henderson r...@redhat.com wrote: On 08/07/2012 06:25 AM, Richard Guenther wrote: (is re-setting _every_ stmt location really ok in all cases?) I'm certain that it's not, though you can't tell that from C++. Examine instead a Java test case using

Re: [PATCH] Set correct source location for deallocator calls

2012-08-08 Thread Richard Henderson
On 08/08/2012 09:27 AM, Dehao Chen wrote: On Wed, Aug 8, 2012 at 8:56 AM, Richard Henderson r...@redhat.com wrote: On 08/07/2012 06:25 AM, Richard Guenther wrote: (is re-setting _every_ stmt location really ok in all cases?) I'm certain that it's not, though you can't tell that from C++.

Re: [RFH / Patch] PR 54191

2012-08-08 Thread Paolo Carlini
On 08/08/2012 02:47 PM, Paolo Carlini wrote: AFAICS, the most uncertain case is the conditional operator test, otherwise we could split the PR. Turned out to be really trivial: a missing check for error_mark_node in build_conditional_expr_1. I'll send in a separate message a complete

[Patch, Fortran] PR40881 - Add two F95 obsolescence warnings

2012-08-08 Thread Tobias Burnus
This patch implements a warning for the following Fortran 95 (and later) obsolescent features (cf. F2008, B.2 Obsolescent features): (2) Shared DO termination and termination on a statement other than END DO or CONTINUE -- use an END DO or a CONTINUE statement for each DO statement. (6) DATA

Beyond Complex Register Management

2012-08-08 Thread Mike Stump
On Aug 8, 2012, at 8:38 AM, DJ Delorie wrote: The RL78 devirtualization pass is *not* a reorg pass, it has to happen after reload but before debug info is set up. The RL78 does not have a consistent register set or addressing scheme, GCC cannot practically support it. Gosh, we got one of

Re: s390: Avoid CAS boolean output inefficiency

2012-08-08 Thread Ulrich Weigand
Richard Henderson wrote: On 08/07/2012 10:02 AM, Ulrich Weigand wrote: The following patch changes the builtin expander to pass a MEM oldval as-is to the back-end expander, so that the back-end can move the store to before the CC operation. With that patch I'm also seeing all the IPMs

Re: Beyond Complex Register Management

2012-08-08 Thread DJ Delorie
Gosh, we got one of those too, though, I don't know how much worse your machine is than mine, in at all. In the RL78 case, it's basically a modern Z80 clone. It has eight 8-bit registers (er, four banks of those, one active at a time) which can be combined into four 16-bit registers, but for

Re: Beyond Complex Register Management

2012-08-08 Thread Nathan Froyd
On Wed, Aug 08, 2012 at 10:52:28AM -0700, Mike Stump wrote: As we move to C++, I'd love for port maintainers to be able to get together and hoist _up_ code from the port so other ports can use it and thus, have more sharing. We make heavily stylized uses, which could be wrapped into a

Re: [PATCH][Cilkplus] Remove unwanted static chain.

2012-08-08 Thread Aldy Hernandez
Index: gcc/cp/parser.c === --- gcc/cp/parser.c (revision 190195) +++ gcc/cp/parser.c (working copy) @@ -28351,6 +28351,13 @@ FOR_EXPR (statement) = decl; CILK_FOR_GRAIN (statement) = grain; + /* If an initial

RE: [PATCH][Cilkplus] Remove unwanted static chain.

2012-08-08 Thread Iyer, Balaji V
Hello Aldy, The only time we will get into this function (cp_parser_cilk_for) is when the fcilkplus is turned on. Here is the original call for this function (line #9983) : if (!flag_enable_cilk) fatal_error (-fcilkplus must be enabled to use %cilk_for%); else

Re: [PATCH][Cilkplus] Remove unwanted static chain.

2012-08-08 Thread Aldy Hernandez
On 08/08/12 13:27, Iyer, Balaji V wrote: Hello Aldy, The only time we will get into this function (cp_parser_cilk_for) is when the fcilkplus is turned on. Here is the original call for this function (line #9983) : if (!flag_enable_cilk) fatal_error (-fcilkplus must be

Re: [patch] Fix problems with -fdebug-types-section and local types

2012-08-08 Thread Cary Coutant
Index: gcc/testsuite/g++.dg/debug/dwarf2/dwarf4-nested.C === --- gcc/testsuite/g++.dg/debug/dwarf2/dwarf4-nested.C (revision 0) +++ gcc/testsuite/g++.dg/debug/dwarf2/dwarf4-nested.C (revision 0) @@ -0,0 +1,55 @@ +// { dg-do

RE: [PATCH][Cilkplus] Remove unwanted static chain.

2012-08-08 Thread Iyer, Balaji V
Its ok. I am glad you are catching all these, it makes me rethink and recheck. Thanks, Balaji V. Iyer. -Original Message- From: Aldy Hernandez [mailto:al...@redhat.com] Sent: Wednesday, August 08, 2012 2:29 PM To: Iyer, Balaji V Cc: gcc-patches@gcc.gnu.org Subject: Re:

Re: [PATCH, MIPS] 74k madd scheduler tweaks

2012-08-08 Thread Richard Sandiford
Sandra Loosemore san...@codesourcery.com writes: +;; Before reload, all multiplier is registered as imul3 (which has a long +;; latency). We temporary jig the latency such that the macc groups +;; are scheduled closely together during the first scheduler pass. +(define_bypass 1

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Gabriel Dos Reis
hi Diego, just a word on style in the documentation: +templatetypename T +void gt_pch_nx (TPT *tp) +@{ + extern void gt_pch_nx (T); + + /* This marks field 'fld' of type 'T'. */ + gt_pch_nx (tp-fld); +@} 'extern' declaration at local scope if considered an extremely poor style in

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Diego Novillo
On 12-08-08 16:12 , Gabriel Dos Reis wrote: hi Diego, just a word on style in the documentation: +templatetypename T +void gt_pch_nx (TPT *tp) +@{ + extern void gt_pch_nx (T); + + /* This marks field 'fld' of type 'T'. */ + gt_pch_nx (tp-fld); +@} 'extern' declaration at local scope if

[C++ Patch] PR 54191

2012-08-08 Thread Paolo Carlini
Hi, this is a booted and tested patch which handles all the tests submitted as part of the PR besides the first 4, which require finish_decltype_type to use an instantiation_dependent_p along the lines of the work done as part of c++/51222. As I mentioned, I already verified that the latter

Re: Value type of map need not be default copyable

2012-08-08 Thread François Dumont
On 08/08/2012 03:39 PM, Paolo Carlini wrote: On 08/08/2012 03:15 PM, François Dumont wrote: I have also introduce a special std::pair constructor for container usage so that we do not have to include the whole tuple stuff just for associative container implementations. To be clear: sorry,

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Gabriel Dos Reis
On Wed, Aug 8, 2012 at 3:37 PM, Diego Novillo dnovi...@google.com wrote: On 12-08-08 16:12 , Gabriel Dos Reis wrote: hi Diego, just a word on style in the documentation: +templatetypename T +void gt_pch_nx (TPT *tp) +@{ + extern void gt_pch_nx (T); + + /* This marks field 'fld' of

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Diego Novillo
On Wed, Aug 8, 2012 at 4:47 PM, Gabriel Dos Reis g...@integrable-solutions.net wrote: So, if the issue that the function does not exist at the point of the template definition, but will definitely exist at the point where it is instantiated because of inclusion of a header file (later or in a

[SH] PR 50751

2012-08-08 Thread Oleg Endo
Hello, This patch fixes a minor issue related to the displacement addressing patterns, which leads to useless movt exts.* sequences and one of the predicates wrongly accepting non-mem ops. Tested on rev 190151 with make -k check RUNTESTFLAGS=--target_board=sh-sim

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Gabriel Dos Reis
On Wed, Aug 8, 2012 at 3:58 PM, Diego Novillo dnovi...@google.com wrote: On Wed, Aug 8, 2012 at 4:47 PM, Gabriel Dos Reis g...@integrable-solutions.net wrote: So, if the issue that the function does not exist at the point of the template definition, but will definitely exist at the point

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Diego Novillo
On 12-08-08 17:25 , Gabriel Dos Reis wrote: Aha, so it is an ordering issue, e.g. declarations being generated after they have been seen used in an instantiation. We might want to consider including the header file (that contains only the declarations of the marking functions) in the header

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-08 Thread Gabriel Dos Reis
On Wed, Aug 8, 2012 at 4:27 PM, Diego Novillo dnovi...@google.com wrote: On 12-08-08 17:25 , Gabriel Dos Reis wrote: Aha, so it is an ordering issue, e.g. declarations being generated after they have been seen used in an instantiation. We might want to consider including the header file

[SH] PR 51244 - Improve store of floating-point comparison

2012-08-08 Thread Oleg Endo
Hello, This patch mainly improves stores of negated/inverted floating point comparison results in regs and removes a useless zero-extension after storing the negated T bit in a reg. One thing that is annoying is the fact that the '-1' constant is emitted during combine and thus won't get any

[google/gcc-4_7] XFAIL map element_access test

2012-08-08 Thread Ollie Wild
As previously discussed, this patch XFAIL's the new libstdc++ failure caused by http://gcc.gnu.org/viewcvs?revision=190129view=revision. It will be reverted once the issues discussed at http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00141.html have been resolved. Okay to submit to google/gcc-4_7?

Re: [google/gcc-4_7] XFAIL map element_access test

2012-08-08 Thread Diego Novillo
On 12-08-08 17:52 , Ollie Wild wrote: As previously discussed, this patch XFAIL's the new libstdc++ failure caused by http://gcc.gnu.org/viewcvs?revision=190129view=revision. It will be reverted once the issues discussed at http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00141.html have been

Re: Beyond Complex Register Management

2012-08-08 Thread Mike Stump
On Aug 8, 2012, at 11:16 AM, Nathan Froyd wrote: On Wed, Aug 08, 2012 at 10:52:28AM -0700, Mike Stump wrote: As we move to C++, I'd love for port maintainers to be able to get together and hoist _up_ code from the port so other ports can use it and thus, have more sharing. We make heavily

[PATCH, libjava] Use accessor functions to manipulate xmlOutputBuffer

2012-08-08 Thread Dodji Seketeli
Hello, This is a fix to prepare the xmlj_io.c file of gnu classpath to a coming API change in libxml2. Basically, we were previously accessing fields inside the xmlOutputBuffer struct of libxml2. In a coming version of libxml2, that won't be possible anymore. Client code will have to use

Re: [SH] PR 39423

2012-08-08 Thread Oleg Endo
On Mon, 2012-07-30 at 08:28 -0700, Richard Henderson wrote: On 2012-07-29 15:56, Oleg Endo wrote: + can_create_pseudo_p () + [(set (match_dup 5) (ashift:SI (match_dup 1) (match_dup 2))) + (set (match_dup 6) (plus:SI (match_dup 5) (match_dup 3))) + (set (match_dup 0) (mem:SI

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/7/12, Mike Stump mikest...@comcast.net wrote: On Aug 7, 2012, at 11:42 AM, Lawrence Crowl wrote: On 8/7/12, Mike Stump mikest...@comcast.net wrote: On Aug 6, 2012, at 5:35 PM, Lawrence Crowl wrote: Convert double_int from a struct with function into a class with operators and

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/7/12, Richard Henderson r...@redhat.com wrote: On 08/06/2012 05:35 PM, Lawrence Crowl wrote: +inline double_int +double_int::operator ++ () +{ + *this + double_int_one; + return *this; +} + +inline double_int +double_int::operator -- () +{ + *this - double_int_one;

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/7/12, Mike Stump mikest...@comcast.net wrote: On Aug 7, 2012, at 11:38 AM, Lawrence Crowl wrote: Hm. There seems to be significant opinion that there should not be any implicit conversions. I am okay with operations as above, but would like to hear the opinions of others. If there

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread H.J. Lu
On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: Greetings, Thanks for the review of part 2! Here's another chunk of the SLSR code (I feel I owe you a few beers at this point). This performs analysis and replacement on groups of related candidates

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/8/12, Richard Guenther richard.guent...@gmail.com wrote: On Aug 7, 2012 Lawrence Crowl cr...@google.com wrote: We should probably think about naming conventions for mutating operations, as I expect we will want them eventually. Right. In the end I would prefer explicit constructors.

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread Andrew Pinski
On Wed, Aug 8, 2012 at 3:25 PM, H.J. Lu hjl.to...@gmail.com wrote: On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: Greetings, Thanks for the review of part 2! Here's another chunk of the SLSR code (I feel I owe you a few beers at this point). This

Re: Beyond Complex Register Management

2012-08-08 Thread Mike Stump
On Aug 8, 2012, at 11:14 AM, DJ Delorie wrote: It's the weird addressing modes that confuse gcc. Ah, yes... That problem. Sigh, my port is nice and orthogonal and doesn't suffer in this area, so... no solution from me.

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread Mike Stump
On Aug 8, 2012, at 3:25 PM, H.J. Lu wrote: This doesn't work on x32 nor Linux/ia32 since -m32 may not be needed for ILP32. This patch works for me. OK to install? Ok.

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/8/12, Richard Guenther richard.guent...@gmail.com wrote: On Aug 7, 2012 Lawrence Crowl cr...@google.com wrote: On 8/7/12, Richard Guenther richard.guent...@gmail.com wrote: For most parts overloads that take an (unsigned) HOST_WIDE_INT argument would be nice, as well as the ability

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread Janis Johnson
On 08/08/2012 03:27 PM, Andrew Pinski wrote: On Wed, Aug 8, 2012 at 3:25 PM, H.J. Lu hjl.to...@gmail.com wrote: On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: Greetings, Thanks for the review of part 2! Here's another chunk of the SLSR code (I feel I

Re: s390: rearrange temp moves in s390_expand_cs_hqi

2012-08-08 Thread Ulrich Weigand
Richard Henderson wrote: In the same vein as your CAS boolean output patch, if we rearrange the copies here we can get the combined compare-and-branch insn for the z10. I see that the z196 prefers not to use those, but the number of insns in that case remains the same, merely in a different

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/8/12, Richard Guenther richard.guent...@gmail.com wrote: On Aug 8, 2012 Marc Glisse marc.gli...@inria.fr wrote: On Wed, 8 Aug 2012, Richard Guenther wrote: + static double_int make (unsigned HOST_WIDE_INT cst); + static double_int make (HOST_WIDE_INT cst); + static

[google/gcc-4_7] Fix problems with -fdebug-types-section and local types

2012-08-08 Thread Cary Coutant
This patch is for the google/gcc-4_7 branch. It's a backport of an upstream patch at: http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00398.html If approved for trunk, is this OK for google/gcc-4_7? Google ref b/6705530. Original description: With --std=c++11, a template parameter can refer

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/8/12, Gabriel Dos Reis g...@integrable-solutions.net wrote: On Aug 8, 2012 Miles Bader mi...@gnu.org wrote: Richard Guenther richard.guent...@gmail.com writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly

Re: [SH] PR 39423

2012-08-08 Thread Richard Henderson
On 08/08/2012 03:12 PM, Oleg Endo wrote: How about the attached patch? Is that way of dealing with the mems OK? What could be a possible test case for the alias info issue? That looks like the right sort of thing. A test case would have to be for a missed-optimization, where we failed to

Re: [PATCH, libjava] Use accessor functions to manipulate xmlOutputBuffer

2012-08-08 Thread Daniel Veillard
On Thu, Aug 09, 2012 at 12:08:20AM +0200, Dodji Seketeli wrote: Hello, This is a fix to prepare the xmlj_io.c file of gnu classpath to a coming API change in libxml2. Basically, we were previously accessing fields inside the xmlOutputBuffer struct of libxml2. In a coming version of

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Lawrence Crowl
On 8/8/12, Miles Bader mi...@gnu.org wrote: Mike Stump mikest...@comcast.net writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly important for double_int. Show us the difference in timing. Show us the generated code. I

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread William J. Schmidt
On Wed, 2012-08-08 at 15:35 -0700, Janis Johnson wrote: On 08/08/2012 03:27 PM, Andrew Pinski wrote: On Wed, Aug 8, 2012 at 3:25 PM, H.J. Lu hjl.to...@gmail.com wrote: On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: Greetings, Thanks for the

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-08 Thread Janis Johnson
On 08/08/2012 06:41 PM, William J. Schmidt wrote: On Wed, 2012-08-08 at 15:35 -0700, Janis Johnson wrote: On 08/08/2012 03:27 PM, Andrew Pinski wrote: On Wed, Aug 8, 2012 at 3:25 PM, H.J. Lu hjl.to...@gmail.com wrote: On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt

Re: [google] Remove deprecated pfmon-specific functions/structs from pmu-profile.c (issue6442086)

2012-08-08 Thread Teresa Johnson
I have committed this to google/main for Chris (approved by Rong). Chris, please prepare a patch to backport this to google/4_7. Teresa On Tue, Aug 7, 2012 at 3:55 PM, Chris Manghane cm...@google.com wrote: Removes references in libgcov.c to functions and structs removed from pmu-profile.c

RE: [PATCH,i386] fma,fma4 and xop flags

2012-08-08 Thread Gopalasubramanian, Ganesh
Otherwise, what does -mno-fma4 -mxop do? (it should enable both xop and fma4!) what should -mfma4 -mno-xop do (it should disable both xop and fma4!). Yes! that's what GCC does now. Some flags are coupled (atleast for now). For ex, -mno-sse4.2 -mavx enables both sse4.2 and avx whereas -mavx