Re: [PATCH, doc]: Fix a bunch of warnings in *.texi files

2014-05-18 Thread Uros Bizjak
On Sun, May 18, 2014 at 7:17 AM, David Wohlferd wrote: > My bad. My version of makeinfo wasn't reporting these errors. > > However, this isn't right either. There are two subsections that are now > under "Size of an asm" that should be under "Variables in Specified > Registers." How about this

[PATCH, doc]: Fix "POD document had syntax errors at /usr/bin/pod2man line 69." error

2014-05-18 Thread Uros Bizjak
Hello! Attached patch fixes following errors in .pod document sources: gfdl.pod around line 53: Expected text after =item, not a number gfdl.pod around line 147: Expected text after =item, not a number gfdl.pod around line 165: Expected text after =item, not a number gfdl.pod around line 205: Exp

[PING^2] [PATCH, wwwdocs, AArch64] Document issues with singleton vector types

2014-05-18 Thread Yufeng Zhang
Ping^2 Thanks, Yufeng On 05/08/14 17:38, Yufeng Zhang wrote: Ping~ Originally posted here: http://gcc.gnu.org/ml/gcc-patches/2014-05/msg00019.html Thanks, Yufeng On 05/01/14 17:57, Yufeng Zhang wrote: Hi, This patch documents issues with singleton vector types in the 4.9 AArch64 backend.

Re: [PATCH, libgomp doc]: Fix all libgomp.texi warnings

2014-05-18 Thread Jakub Jelinek
On Sat, May 17, 2014 at 03:43:53PM +0200, Uros Bizjak wrote: > 2014-05-17 Uros Bizjak > > * libgomp.texi (Runitme Library Routines): Remove multiple @menu. > (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node > texts according to their @menu entry positions. > Tested

[wwwdocs] Buildstat update for 4.9

2014-05-18 Thread Tom G. Christensen
Latest results for 4.9.x -tgc Testresults for 4.9.0: arm-unknown-linux-gnueabi hppa-unknown-linux-gnu i386-pc-solaris2.9 (2) i386-pc-solaris2.10 i386-pc-solaris2.11 i686-unknown-linux-gnu mips-unknown-linux-gnu mipsel-unknown-linux-gnu powerpc-apple-darwin8.11.0 powerpc-unknow

[PATCH] Fix PR middle-end/61141

2014-05-18 Thread John David Anglin
The attached change appears to fix PR middle-end/61141. On PA, we can get deleted insn notes in call sequences. The attached change checks to make sure we have a valid insn before calling reset_insn_used_flags and verify_insn_sharing. Tested on hppa-unknown-linux-gnu, hppa2.0w-hp-hpux11.1

[C++ Patch] Use inform in 2 places

2014-05-18 Thread Paolo Carlini
Hi, while working on c++/58664 I noticed a couple of places where, IMHO, we should use inform. Tested x86_64-linux. Thanks! Paolo. /// /cp 2014-05-18 Paolo Carlini * typeck2.c (cxx_incomplete_type_diagnostic): Use inform. * parser.c (cp_parser_enum

[Ada] Fix wrong code generated for superflat array

2014-05-18 Thread Eric Botcazou
This is a regression present on the mainline and 4.9 branch for a corner case: a superflat array indexed by an enumeration type with representation clause. Tested on x86_64-suse-linux, applied on the mainline and 4.9 branch. 2014-05-18 Eric Botcazou * gcc-interface/decl.c (gnat_to_g

[Ada] Minor cleanup

2014-05-18 Thread Eric Botcazou
This replaces an explicit test for private types by Underlying_Type, which does the test automatically. Tested on x86_64-suse-linux, applied on the mainline. 2014-05-18 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity): Use Underlying_Type in lieu of more verbose con

[C++ patch] Enable constructor decloning by default

2014-05-18 Thread Jan Hubicka
Hi, this patch enables -fdeclone-ctor-dtor by default: I believe it is up to the optimizers to decide when the actual worker body should be inlined into the thunks. Bootstrapped/regtested x86_64-linux, OK? Honza * c-family/c.opt: Enable declonning by default. * c-family/c-opts.c:

Re: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-05-18 Thread Richard Sandiford
Richard Sandiford writes: > I think a cleaner way of doing it would be to have helper functions > that switch in and out of the eliminated form, storing the old form > in fields of a new structure (either separate from address_info, > or a local inheritance of it). We probably also want to have a

Use resolution info to get rid of weak symbols

2014-05-18 Thread Jan Hubicka
Hi, this patch makes GCC to use resolution info to turn COMDAT and WEAK symbols into regular symbols based on feedback given by linker plugin. If resolution says that given symbol is prevailing, it is possible to turn them into normal symbols, while when resolution says it is prevailed, it is possi

Re: Eliminate write-only variables

2014-05-18 Thread Sandra Loosemore
On 05/16/2014 11:25 AM, Jan Hubicka wrote: Hi, this patch adds code to remove write only static variables. While analyzing effectivity of LTO on firefox, I noticed that surprisingly large part of binary's data segment is occupied by these. Fixed thus. (this is quite trivial transformation, I ju

[Ada] Minor cleanup #2

2014-05-18 Thread Eric Botcazou
This exports End_Location from sinfo and uses it in gigi, instead of redoing the computation locally. Tested on x86_64-suse-linux, applied on the mainline. 2014-05-18 Eric Botcazou * fe.h (Set_Present_Expr): Move around. (End_Location): New macro. * gcc-interface/tra

Re: [PATCH][MIPS] Implement O32 FPXX ABI (GCC)

2014-05-18 Thread Richard Sandiford
Matthew Fortune writes: > *) Dwarf debug for 64-bit values in floating point values for FPXX can't >be strictly correct for both 32-bit and 64-bit registers but opts to >describe one 64-bit register as that is what the FPXX ABI is emulating. >I have not yet checked what exactly happens

Re: Eliminate write-only variables

2014-05-18 Thread Jan Hubicka
Sandra, > This patch seems quite similar in purpose to the > remove_local_statics optimization that Mentor has proposed, although > the implementation is quite different. Here is the last version of > our patch, prepared by Bernd Schmidt last year: > > https://gcc.gnu.org/ml/gcc-patches/2013-06/m

[Ada] Fix ICE on volatile unconstrained array parameter

2014-05-18 Thread Eric Botcazou
The compiler aborts on a subprogram which takes a parameter with a volatile unconstrained array type. This has apparently never worked. Tested on x86_64-suse-linux, applied on the mainline. 2014-05-18 Eric Botcazou * gcc-interface/decl.c (change_qualified_type): New static function

[Ada] Fix -feliminate-unused-debug-types

2014-05-18 Thread Eric Botcazou
This was broken in Ada by recent callgraph/varpool changes. Tested on x86_64-suse-linux, applied on the mainline and 4.9 branch. 2014-05-18 Eric Botcazou * utils.c (gnat_write_global_declarations): Adjust the flags put on dummy_global. -- Eric BotcazouIndex: gcc-interface/

[Ada] Set function_start_locus in gigi

2014-05-18 Thread Eric Botcazou
gimple_expand_cfg contains these lines: /* Eventually, all FEs should explicitly set function_start_locus. */ if (cfun->function_start_locus == UNKNOWN_LOCATION) set_curr_insn_source_location (DECL_SOURCE_LOCATION (current_function_decl)); else set_curr_in

Replace REG_CROSSING_JUMP with an rtx flag

2014-05-18 Thread Richard Sandiford
find_reg_note showed up in the profile of a -O2 compile of an oldish fold-const.ii. The main hot call was: /* If we are partitioning hot/cold basic_blocks, we don't want to mess up jumps that cross between hot/cold sections. Basic block partitioning may result in some jum

Re: Replace REG_CROSSING_JUMP with an rtx flag

2014-05-18 Thread Eric Botcazou
> A 3-pointer reg note seems a bit heavyweight for a boolean anyway. > JUMP_INSNs have a quite a few unused rtx header flags (including "jump", > ironically) so this patch records the information there instead. > > This reduces the compile time by about ~0.5%. Not a huge amount, > but maybe it co

[PATCH, PR61219]: Fix sNaN handling in ARM float to double conversion

2014-05-18 Thread Aurelien Jarno
On ARM soft-float, the float to double conversion doesn't convert a sNaN to qNaN as the IEEE Std 754 standard mandates: "Under default exception handling, any operation signaling an invalid operation exception and for which a floating-point result is to be delivered shall deliver a quiet NaN." Gi

Re: Eliminate write-only variables

2014-05-18 Thread Martin Jambor
Hi, On Fri, May 16, 2014 at 07:25:59PM +0200, Jan Hubicka wrote: > ... > > * varpool.c (dump_varpool_node): Dump write-only flag. > * lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Stream > write-only flag. > * tree-cfg.c (execute_fixup_cfg): Remove statem

Fix remove_unreachable_nodes wrt comdat locals

2014-05-18 Thread Jan Hubicka
Hi, this patch fixes ICE seen when compiling libreoffice with LTO at 4.9 release tree. The problem is that we now use comdat locals for decloned constructors and symtab_remove_unreachable_nodes sometimes remove their bodies but keeps their nodes around. In this case the nodes needs to be brought

Re: add dbgcnt and opt-info support for devirtualization

2014-05-18 Thread Xinliang David Li
There is no test regression. Ok with this patch? David On Fri, May 16, 2014 at 2:19 PM, Xinliang David Li wrote: > Modified the patch according to yours and Richard's feedback. PTAL. > > thanks, > > David > > On Fri, May 16, 2014 at 9:03 AM, Jan Hubicka wrote: >>> Hi, debugging runtime bugs due

Re: Add a new test

2014-05-18 Thread Xinliang David Li
Ok to check in the test? David On Fri, May 16, 2014 at 4:58 PM, Xinliang David Li wrote: > This test makes sure compiler does not wrongly devirtualize virtual > calls into __cxa_pure_virtual or __buitlin_unreachable. > > Ok to checkin? > > David

Re: Add a new test

2014-05-18 Thread Jan Hubicka
> Ok to check in the test? OK, Honza > > David > > On Fri, May 16, 2014 at 4:58 PM, Xinliang David Li wrote: > > This test makes sure compiler does not wrongly devirtualize virtual > > calls into __cxa_pure_virtual or __buitlin_unreachable. > > > > Ok to checkin? > > > > David

Re: Eliminate write-only variables

2014-05-18 Thread Jan Hubicka
> > + if (!address_taken) > > { > > - if (dump_file) > > + if (TREE_ADDRESSABLE (vnode->decl) && dump_file) > > fprintf (dump_file, " %s (addressable)", vnode->name ()); > > I know it is technically not a part of the patch... but surely this is > supposed to dump not

Localize symbols used only from comdat groups

2014-05-18 Thread Jan Hubicka
Hi, this patch adds simple IPA pass that brings symbols used only from comdat groups into the groups. This prevents dead code in cases where the comdat group is replaced by a copy from different unit. The patch saves about 0.5% of libreoffice binary and about 1% of firefox binary with section GC

Re: Eliminate write-only variables

2014-05-18 Thread Sandra Loosemore
On 05/18/2014 02:59 PM, Jan Hubicka wrote: Sandra, This patch seems quite similar in purpose to the remove_local_statics optimization that Mentor has proposed, although the implementation is quite different. Here is the last version of our patch, prepared by Bernd Schmidt last year: https://gc

RE: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-18 Thread Thomas Preud'homme
> From: Richard Biener [mailto:richard.guent...@gmail.com] > On Fri, May 16, 2014 at 12:07 PM, Thomas Preud'homme > wrote: > > Ping? > > Sorry ... > > Thanks and sorry again for the delay. > No need to be sorry, it was really not meant as a complaint. I understand very well that patches somet

Re: we are starting the wide int merge

2014-05-18 Thread Gerald Pfeifer
ald/20140518230801-31619-208275/gcc410-4.10.0.s20140518.log In file included from .././../gcc-4.10-20140518/gcc/xcoffout.c:29: .././../gcc-4.10-20140518/gcc/tree.h:4576:3: warning: extraneous template parameter list in template specialization template <> ^~~ .././../gcc-4.10-20140518

Re: Eliminate write-only variables

2014-05-18 Thread Jan Hubicka
> > H, I'm guessing this was some concern about invalid code motion > around a setjmp. Our original analysis document lists "F does not > call setjmp" as a requirement for the optimization, so this was > probably a case where we were being excessively conservative. I suppose it was because y

[DOC Patch] Label attributes

2014-05-18 Thread David Wohlferd
I have a release on file with the FSF, but don't have SVN write access. Problem description: The docs in (Attribute Syntax) say "The only attribute it makes sense to use after a label is 'unused'." However, there are two others: hot and cold. The reason it looks like there is only one is that

Re: [Patch, avr] Propagate -mrelax gcc driver flag to assembler

2014-05-18 Thread Denis Chertykov
2014-05-16 14:02 GMT+04:00 Georg-Johann Lay : > Am 05/15/2014 09:55 AM, schrieb Senthil Kumar Selvaraj: > >> On Wed, May 14, 2014 at 12:56:54PM +0200, Rainer Orth wrote: >>> >>> Georg-Johann Lay writes: >>> Or what about simply that, which works for me: Index: config/avr/avr.h

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-05-18 Thread Jan Hubicka
> > Thanks for the pointer, there is indeed the recommendation in > > optimization manual [1], section 3.6.4, where it is said: > > > > --quote-- > > Misaligned data access can incur significant performance penalties. > > This is particularly true for cache line > > splits. The size of a cache line

Re: [Patch, avr] Propagate -mrelax gcc driver flag to assembler

2014-05-18 Thread Senthil Kumar Selvaraj
On Fri, May 16, 2014 at 12:02:12PM +0200, Georg-Johann Lay wrote: > Am 05/15/2014 09:55 AM, schrieb Senthil Kumar Selvaraj: > >On Wed, May 14, 2014 at 12:56:54PM +0200, Rainer Orth wrote: > >>Georg-Johann Lay writes: > >> > >>>Or what about simply that, which works for me: > >>> > >>> > >>>Index:

Re: [PATCH, PR61219]: Fix sNaN handling in ARM float to double conversion

2014-05-18 Thread Joey Ye
If f2d need fix, then please fix d2f too as current implementation for both behave similarly. - Joey On Mon, May 19, 2014 at 5:23 AM, Aurelien Jarno wrote: > On ARM soft-float, the float to double conversion doesn't convert a sNaN > to qNaN as the IEEE Std 754 standard mandates: > > "Under defau

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-18 Thread Bin.Cheng
On Sat, May 17, 2014 at 12:52 AM, Mike Stump wrote: > On May 16, 2014, at 3:07 AM, Bin.Cheng wrote: >> >>> I don't see how regrename will help resolve [base+offset] false >>> dependencies. Can you explain? I'd expect effects from >>> hardreg-copyprop "commoning" a base register. >> It's the regis

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-18 Thread Bin.Cheng
On Sat, May 17, 2014 at 12:32 AM, Jeff Law wrote: > On 05/16/14 04:07, Bin.Cheng wrote: > >> Yes, I think this one does have a good reason. The target independent >> pass just makes sure that two consecutive memory access instructions >> are free of data-dependency with each other, then feeds it

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-18 Thread Bin.Cheng
On Sat, May 17, 2014 at 12:18 AM, Jeff Law wrote: > On 05/16/14 04:07, Bin.Cheng wrote: >> >> On Fri, May 16, 2014 at 1:13 AM, Jeff Law wrote: >>> >>> On 05/15/14 10:51, Mike Stump wrote: On May 15, 2014, at 12:26 AM, bin.cheng wrote: > > > Here comes up with a new GCC

Re: [PATCH ARM] Improve ARM memset inlining

2014-05-18 Thread Bin.Cheng
Ping^2 Thanks, bin On Mon, May 12, 2014 at 11:17 AM, Bin.Cheng wrote: > Ping. > > Thanks, > bin > > On Tue, May 6, 2014 at 12:59 PM, bin.cheng wrote: >> >> >> Precisely, I configured gcc with options "--with-arch=armv7-a >> --with-cpu|--with-tune=cortex-a9". >> I read gcc documents and realize

Re: we are starting the wide int merge

2014-05-18 Thread Richard Sandiford
518.log Do you get exactly the same comparison failures using clang and GCC 4.2 as the stage1 compiler? That would rule out the system compiler miscompiling stage1. > In file included from .././../gcc-4.10-20140518/gcc/xcoffout.c:29: > .././../gcc-4.10-20140518/gcc/tree.h:4576:3: warning: extrane

Re: [PATCH, PR61219]: Fix sNaN handling in ARM float to double conversion

2014-05-18 Thread Aurelien Jarno
On Mon, May 19, 2014 at 02:08:06PM +0800, Joey Ye wrote: > If f2d need fix, then please fix d2f too as current implementation for > both behave similarly. I have done some tests with double to float conversion, and the NaN behaviour is correct. This is due to specific code handling that in d2f: 3