Re: [PATCH v4 04/20] add configury

2013-10-14 Thread Paolo Bonzini
Il 15/10/2013 00:28, Gerald Pfeifer ha scritto: > - The problem is not actually the set of flags being used. On a >different tester clang is the bootstrap compiler, and this is >also the one invoked for `gmake install`. If anything, shouldn't >the just built compiler be used _if_ an

[Patch, Fortran, committed] PR58652, fix CLASS(*) handling in MOVE_ALLOC

2013-10-14 Thread Tobias Burnus
The reason for the failure was that UNLIMITED_POLY (from_expr) is no longer true after one did a gfc_add_vptr_component (from_expr); As vtab is only NULL for unlimited polymorphic [CLASS(*)], I use it now instead. Build and regtested on x86-64-gnu-linux. Committed as Rev. 203586. Tobias 2013-

[jit] jit.exp: Detect compilation errors

2013-10-14 Thread David Malcolm
Committed to dmalcolm/jit. --- gcc/testsuite/ChangeLog.jit | 5 + gcc/testsuite/jit.dg/jit.exp | 8 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/ChangeLog.jit b/gcc/testsuite/ChangeLog.jit index 3d63d4b..6324e9e 100644 --- a/gcc/testsuite/ChangeLog.j

[jit] libgccjit.map: Sort the symbols alphabetically

2013-10-14 Thread David Malcolm
Committed to dmalcolm/jit. --- gcc/jit/ChangeLog.jit | 4 gcc/jit/libgccjit.map | 61 ++- 2 files changed, 35 insertions(+), 30 deletions(-) diff --git a/gcc/jit/ChangeLog.jit b/gcc/jit/ChangeLog.jit index 5c06a72..d998134 100644 --- a/gcc/ji

[jit] Implement source code location support (API change)

2013-10-14 Thread David Malcolm
I've pushed the following to the "dmalcolm/jit" branch: http://gcc.gnu.org/git/?p=gcc.git;a=commit;h=6cc326e5ad7c269a295fb6108e34b5c885a96b12 This patch implements gcc_jit_location, so that client code can mark the various constructs with an underlying code location. For example, a JIT compiler f

Re: [PATCH, powerpc] Rework#2 VSX scalar floating point support, patch #5

2013-10-14 Thread David Edelsohn
On Mon, Oct 7, 2013 at 7:00 PM, Michael Meissner wrote: > On this patch, I add some infrastructure to say whether a given mode can go in > a general purpose register, floating point register, or altivec register, and > if it can, what kinds of addressing is legal for the mode. In addition, I > h

Re: [PATCH, powerpc] PR target/58673: Fix power8 quad memory/no-vsx-timode interaction (revised)

2013-10-14 Thread David Edelsohn
> [gcc] > 2013-10-11 Michael Meissner > > PR target/58673 > * config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only > restrict TImode addresses to single indirect registers if both > -mquad-memory and -mvsx-timode are used. > (rs6000_output_move_128bi

Re: [PATCH] Relax the requirement of reduction pattern in GCC vectorizer.

2013-10-14 Thread Cong Hou
Ping... thanks, Cong On Wed, Oct 2, 2013 at 11:18 AM, Cong Hou wrote: > Ping.. Any comment on this patch? > > > thanks, > Cong > > > On Sat, Sep 28, 2013 at 9:34 AM, Xinliang David Li wrote: >> You can also add a test case of this form: >> >> int foo( int t, int n, int *dst) >> { >>int j

Re: [PATCH] Fix PR54702 and LTO bootstrap (for me)

2013-10-14 Thread Mike Stump
On Sep 25, 2012, at 8:00 AM, Richard Guenther wrote: > 2012-09-25 Richard Guenther > > PR lto/54625 > * lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Do not merge > cgraph nodes for builtins. > > * gcc.dg/lto/pr54702_0.c: New testcase. > * gcc.dg/lto/pr54702_1.

Re: [PATCH, PR 53001] Re: Patch to split out new warning flag for floating point conversion

2013-10-14 Thread Joseph S. Myers
On Mon, 14 Oct 2013, Dodji Seketeli wrote: > > This patch has passes the existing -Wconversion testcases. It modifies > > Wconversion-real.c, Wconversion-real-integer.c and pr35635.c to be more > > specific > > If the patch passes existing tests, I'd be inclined to leave them > tests alone and a

Re: [PATCH] Hoist loop invariant statements containing data refs with zero-step during loop-versioning in vectorization.

2013-10-14 Thread Cong Hou
Any comment on this patch? thanks, Cong On Thu, Oct 3, 2013 at 3:59 PM, Cong Hou wrote: > During loop versioning in vectorization, the alias check guarantees > that any load of a data reference with zero-step is a loop invariant, > which can be hoisted outside of the loop. After hoisting the l

Go patch committed: Use backend interface for descriptors

2013-10-14 Thread Ian Lance Taylor
This patch from Chris Manghane changes the Go frontend to use the backend interface for map and type descriptors. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian 2013-10-14 Chris Manghane * go-gcc.cc (Gcc_backend::address_expression): New f

Fwd: [PATCH] Reducing number of alias checks in vectorization.

2013-10-14 Thread Cong Hou
Sorry for forgetting using plain-text mode. Resend it. -- Forwarded message -- From: Cong Hou Date: Mon, Oct 14, 2013 at 3:29 PM Subject: Re: [PATCH] Reducing number of alias checks in vectorization. To: Richard Biener , GCC Patches Cc: Jakub Jelinek I have made a new patch f

Re: [PATCH v4 04/20] add configury

2013-10-14 Thread Gerald Pfeifer
On Fri, 27 Sep 2013, Tom Tromey wrote: > Look a little further down in the patch: > > .cc.o .c.o: > - $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $< $(OUTPUT_OPTION) > + $(COMPILE) $< > + $(POSTCOMPILE) > > ... that is, the patches didn't change this part. ALL_COMPILERFLAGS

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
On Mon, Oct 14, 2013 at 2:50 PM, Jan Hubicka wrote: >> For my test case, the entire inline instance is optimized away, so >> there is no info about it in the profile. I can do some fixup in the >> rebuild_cgraph_edge though. > > Yep, I understand that. In this case we should turn PROFILE_READ to

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
On Mon, Oct 14, 2013 at 3:04 PM, Xinliang David Li wrote: > On Mon, Oct 14, 2013 at 2:34 PM, Dehao Chen wrote: >> For my test case, the entire inline instance is optimized away, > > do you mean there is no out of line instance for the target function > in the profile binary? Yes, and there is no

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Xinliang David Li
On Mon, Oct 14, 2013 at 2:34 PM, Dehao Chen wrote: > For my test case, the entire inline instance is optimized away, do you mean there is no out of line instance for the target function in the profile binary? David > so > there is no info about it in the profile. I can do some fixup in the > re

Re: [google gcc-4_8] LIPO: insert static vars to varpool.

2013-10-14 Thread Xinliang David Li
ok. David On Mon, Oct 14, 2013 at 2:58 PM, Rong Xu wrote: > Hi, > > For google gcc-4_8 branch only. > > This is fixes the NULL pointer dereference in copy_tree_r due to empty > varpool_node returned. > > Passed the ICE compilation. Other tests are ongoing. > > Thanks, > > -Rong > > > 2013-10-14

[google gcc-4_8] LIPO: insert static vars to varpool

2013-10-14 Thread Rong Xu
Hi, For google gcc-4_8 branch only. This is fixes the NULL pointer dereference in copy_tree_r due to empty varpool_node returned. Passed the ICE compilation. Other tests are ongoing. Thanks, -Rong 2013-10-14 Rong Xu * cp/semantics.c (finish_compound_literal): Put static var to

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Jan Hubicka
> For my test case, the entire inline instance is optimized away, so > there is no info about it in the profile. I can do some fixup in the > rebuild_cgraph_edge though. Yep, I understand that. In this case we should turn PROFILE_READ to PROFILE_GUESSED and guess the profile when we detect this

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
For my test case, the entire inline instance is optimized away, so there is no info about it in the profile. I can do some fixup in the rebuild_cgraph_edge though. Dehao On Mon, Oct 14, 2013 at 2:27 PM, Xinliang David Li wrote: > Is it possible to update the callee node summary after profile > a

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Xinliang David Li
Is it possible to update the callee node summary after profile annotate (using information from inline instances which are not inlined in early inline)? David On Mon, Oct 14, 2013 at 2:18 PM, Dehao Chen wrote: > On Mon, Oct 14, 2013 at 12:49 PM, Jan Hubicka wrote: >>> Not for instrumented FDO (

Go testsuite updated to 1.1.2 testsuite

2013-10-14 Thread Ian Lance Taylor
I've committed a patch to update the Go testsuite to a copy of the Go 1.1.2 testsuite. I added some local changes to match gccgo error messages. Some of those changes were already made in Go mainline, thanks to Rémy Oudompheng. I made some others, and I will commit them to Go mainline, but proba

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
On Mon, Oct 14, 2013 at 12:49 PM, Jan Hubicka wrote: >> Not for instrumented FDO (not as I know of). But for AutoFDO, this >> could be a potential risk because some callee is marked unlikely >> executed simply because they are inlined and eliminated in the O2 >> binary. But in ipa-inline it will n

Re: [PATCH] Move effective target check after other directives in c-c++-common/cpp/openmp-define-3.c

2013-10-14 Thread Mike Stump
On Oct 14, 2013, at 3:26 AM, Kyrill Tkachov wrote: > This minuscule patch moves the dg-require-effective-target fopenmp line after > the other directives in the c-c++-common/cpp/openmp-define-3.c test. > Otherwise dejagnu still proceeds to add -fopenmp to the options which fails > on bare metal

Re: [PATCH] Fix comment in tree-prof.exp

2013-10-14 Thread Mike Stump
On Oct 14, 2013, at 2:35 AM, Paulo Matos wrote: >> -Original Message- >> From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On >> Behalf Of Paulo Matos >> Sent: 14 October 2013 10:31 >> To: gcc-patches@gcc.gnu.org >> Subject: [PATCH] Fix comment in tree-prof.exp >>

libgo patch committed: Don't clobber context when catching signal

2013-10-14 Thread Ian Lance Taylor
This patch to libgo fixes a dumb bug in which catching a signal via the os/signal package could clobber the saved split-stack context, leading to disaster if the signal arrived at the wrong time. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Will commit to

Re: [PATCH i386 3/8] [AVX512] [18/n] Add AVX-512 patterns: various RCPs and SQRTs.

2013-10-14 Thread Richard Henderson
On 10/09/2013 03:31 AM, Kirill Yukhin wrote: > +(define_mode_attr ssefixupmode > + [(V16SF "V16SI") (V4SF "V4SI") (V8DF "V8DI") (V2DF "V2DI")]) > + Oh, I forgot. How is this different from sseintvecmode? r~

Re: [PATCH i386 3/8] [AVX512] [18/n] Add AVX-512 patterns: various RCPs and SQRTs.

2013-10-14 Thread Richard Henderson
On 10/09/2013 03:31 AM, Kirill Yukhin wrote: > Hello, > >> This patch is still far too large. >> >> I think you should split it up based on every single mode iterator that >> you need to add or change. > > Here's 18th subpatch. It introduces various new insns. Ok. r~

Re: [PATCH i386 3/8] [AVX512] [17/n] Add AVX-512 patterns: V8FI and V16FI iterators.

2013-10-14 Thread Richard Henderson
On 10/09/2013 03:30 AM, Kirill Yukhin wrote: > Hello, > >> This patch is still far too large. >> >> I think you should split it up based on every single mode iterator that >> you need to add or change. > > Here's 17th subpatch. It introduces V8FI and V16FI iterators. Ok. r~

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Jan Hubicka
> Not for instrumented FDO (not as I know of). But for AutoFDO, this > could be a potential risk because some callee is marked unlikely > executed simply because they are inlined and eliminated in the O2 > binary. But in ipa-inline it will not get inlined because the edge is > not hot from cgraph_m

Re: [PATCH] Fix PR58682

2013-10-14 Thread Mike Stump
On Oct 14, 2013, at 3:43 AM, Kyrill Tkachov wrote: > On 14/10/13 11:23, Paulo Matos wrote: >>> -Original Message- >>> From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] >>> On >>> Behalf Of Paulo Matos >>> Sent: 14 October 2013 11:22 >>> To: Kyrill Tkachov >>> Cc:

Re: [PATCH][LTO] Move canonical type stuff out-of-GC land

2013-10-14 Thread Tobias Burnus
Pilot error: rm -rf & doesn't delete the build directory. With a really empty directory works. Sorry for the noise! (Besides, the correct patch would have been http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00939.html ) Tobias

Re: [libiberty] xmalloc cannot return NULL

2013-10-14 Thread Mike Frysinger
On Monday 14 October 2013 13:59:16 Marc Glisse wrote: > libiberty provides a function xmalloc that never returns NULL. However, > there are some hints that it might be ok if someone wants to supply their > own xmalloc that can return NULL (though that would break a lot of things, > including in lib

Re: [PATCH][LTO] Move canonical type stuff out-of-GC land

2013-10-14 Thread Tobias Burnus
Richard Biener wrote: This replaces the tree -> int hashtable caching hash values by a pointer_map and moves it out-of-GC. Likewise it moves the actual type hashtable out-of-GC. LTO bootstrapped and tested on x86_64-unknown-linux-gnu, applied. I think it's due to this patch that bootstrappi

[libiberty] xmalloc cannot return NULL

2013-10-14 Thread Marc Glisse
Hello, libiberty provides a function xmalloc that never returns NULL. However, there are some hints that it might be ok if someone wants to supply their own xmalloc that can return NULL (though that would break a lot of things, including in libiberty itself). I would like to remove that free

Re: [PATCH] Introduce gcc::dump_manager class

2013-10-14 Thread David Malcolm
On Mon, 2013-10-14 at 12:13 +0200, Richard Biener wrote: > On Sat, Oct 12, 2013 at 3:31 AM, David Malcolm wrote: > > When repeatedly compiling within one process, the dumpfile numbering > > doesn't reset, leading to dumpfiles after the initial ones having > > unpredictable numbers like here (-fdum

Re: Apply attribute returns_nonnull in libiberty

2013-10-14 Thread Tom Tromey
DJ> I don't think there's an official list, but if you ask gdb, binutils, DJ> newlib, and sid (I think), you've probably got it covered. Basically, DJ> everything in the src/ repository. FWIW, gdb doesn't mind. While gdb does override xmalloc, it does so in a way that avoids NULL returns. Tom

[PING][PATCH] Cilk Keywords (_Cilk_spawn and _Cilk_sync) for C (and C++)

2013-10-14 Thread Iyer, Balaji V
Hello Everyone, I submitted this patch ~1 months ago. Did anyone get a chance to look into this patch? Thanks, Balaji V. Iyer. > -Original Message- > From: Iyer, Balaji V > Sent: Wednesday, September 11, 2013 2:18 PM > To: r...@redhat.com; Jason Merrill (ja...@redhat.com); Jeff

Re: Apply attribute returns_nonnull in libiberty

2013-10-14 Thread DJ Delorie
I don't think there's an official list, but if you ask gdb, binutils, newlib, and sid (I think), you've probably got it covered. Basically, everything in the src/ repository.

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
Not for instrumented FDO (not as I know of). But for AutoFDO, this could be a potential risk because some callee is marked unlikely executed simply because they are inlined and eliminated in the O2 binary. But in ipa-inline it will not get inlined because the edge is not hot from cgraph_maybe_hot_e

Re: [PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Xinliang David Li
Looks like there is some inconsistency between edge hotness and callee frequency? David On Mon, Oct 14, 2013 at 9:08 AM, Dehao Chen wrote: > This patch forces to use profile info to check if an edge is hot when > profile is available. > > Bootstrapped and passed regression tests. > > OK for trun

Re: [PATCH] tree_code_name wrapper

2013-10-14 Thread Paolo Carlini
Hi On 10/14/2013 05:43 PM, Paulo Matos wrote: * cp/error.c (code_to_string): Use new wrapper get_tree_code_name. * cp/cxx-pretty-print.c (pp_cxx_assignment_operator): Use new wrapper get_tree_code_name. * cp/pt.c (tsubst): Use new wrapper get_tree_code_name. * cp

[PATCH] decide edge's hotness when there is profile info

2013-10-14 Thread Dehao Chen
This patch forces to use profile info to check if an edge is hot when profile is available. Bootstrapped and passed regression tests. OK for trunk? Thanks, Dehao gcc/ChangeLog: 2013-10-14 Dehao Chen * predict.c(cgraph_maybe_hot_edge_p): Decide edge's hotness from profile. Index: gcc/predict

RE: [PATCH] tree_code_name wrapper

2013-10-14 Thread Paulo Matos
> -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On > Behalf Of Paulo Matos > Sent: 14 October 2013 16:43 > To: gcc-patches@gcc.gnu.org > Subject: [PATCH] tree_code_name wrapper > > Hi, > > Find attached the patch for trunk that creates a w

[PATCH] tree_code_name wrapper

2013-10-14 Thread Paulo Matos
Hi, Find attached the patch for trunk that creates a wrapper for tree_code_name to ensure that no invalid tree code is passed on to tree_code_name. All occurrences of tree_code_name use now use get_tree_code_name. Touched mep, frv, rs6000, iq2000 backends. Comments? Ok to submit? 2013-10-14

Re: [patch] Fix altivec-7.C testsuite failure due to vector name mangling.

2013-10-14 Thread Aldy Hernandez
On 10/11/13 13:55, Brooks Moses wrote: Hi, all - We recently built a compiler with a default -fabi-version value that's different from the 2 that's used as default on trunk. The result of this was a test failure in g++.dg/ext/altivec-7.C, which compiles a bunch of empty functions with vector ar

Re: [Patch ARM] Add support for a set of multilibs to be built for A profile cores.

2013-10-14 Thread Richard Earnshaw
On 10/10/13 10:39, Ramana Radhakrishnan wrote: > Hi, > > One of our internal patches is a multilib patch that helps in testing > bare-metal toolchains for v7-a and above. > > It's a bit brute force but this is something that we use internally > every night to build a set of base libraries

[PATCH][LTO] Move canonical type stuff out-of-GC land

2013-10-14 Thread Richard Biener
This replaces the tree -> int hashtable caching hash values by a pointer_map and moves it out-of-GC. Likewise it moves the actual type hashtable out-of-GC. LTO bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2013-10-14 Richard Biener lto/ * lto.c (gi

Re: RFA: Switch on LRA on ARM (AArch32)

2013-10-14 Thread Richard Biener
On Mon, Oct 14, 2013 at 4:08 PM, Richard Earnshaw wrote: > On 14/10/13 08:27, Yvan Roux wrote: >> Hi, >> >> The status of LRA support for AArch32 is the sequel : >> - there is some regressions in the testsuite (gcc/g++, libstdc++ and >> fortran) in ARM mode, all due to the same neon legitimate add

Re: RFA: Switch on LRA on ARM (AArch32)

2013-10-14 Thread Richard Earnshaw
On 14/10/13 08:27, Yvan Roux wrote: > Hi, > > The status of LRA support for AArch32 is the sequel : > - there is some regressions in the testsuite (gcc/g++, libstdc++ and > fortran) in ARM mode, all due to the same neon legitimate address > issue (tested in hard and softfp mode). > - the compiler

Re: [PATCH] Workaround errata for the PMC-Sierra RM7000 cpu.

2013-10-14 Thread Maciej W. Rozycki
On Thu, 10 Oct 2013, Richard Sandiford wrote: > Ideally opcodes/mips*.c would have a flag to mark load instructions, > but all we have at the moment are flags to mark load delays, which means > that LD and some other load instructions don't have them. So I can think > of three options: > > (1) T

[Ada] Initialize choice exception parameter in gigi

2013-10-14 Thread Arnaud Charlet
The code to initialize the exception parameter is now emitted in gigi rather than in the front-end. This applies only in the ZCX case. This is slightly more efficient and will future implementation of intefacing with C++ exceptions. No functional change. Tested on x86_64-pc-linux-gnu, committed on

[Ada] Legality of null dependence items

2013-10-14 Thread Arnaud Charlet
This patch catches two syntax errors related to the use of null items in aspect or pragma [Refined_]Depends. The patch also streamlines the error messages of various aspects or pragmas that deal with null and non-null items. -- Source -- -- depends_illegal.ads package

Re: [Ada] Imported C++ exceptions

2013-10-14 Thread Duncan Sands
Hi Arnaud, On 14/10/13 15:29, Arnaud Charlet wrote: It is now possible to import C++ exceptions and to handle it. ... Index: exp_prag.adb === --- exp_prag.adb(revision 203544) +++ exp_prag.adb(working copy) @@ -575

[Ada] Aspect Initial_Condition

2013-10-14 Thread Arnaud Charlet
This patch provides the initial implementation of aspect/pragma Initial_Condition. This construct is intended for formal verification proofs. The construct has the following syntax: pragma Initial_Condition (boolean_EXPRESSION); The construct has the following semantic rules: The Initial_Con

[Ada] Missing errors in the body of a protected function

2013-10-14 Thread Arnaud Charlet
In the body of a protected function, the protected object itself is a constant (not just its components). Compiling p.adb must yield: p.adb:12:20: actual for "It" must be a variable p.adb:18:17: actual for "It" must be a variable procedure P is protected type Prot is function F re

[Ada] Imported C++ exceptions

2013-10-14 Thread Arnaud Charlet
It is now possible to import C++ exceptions and to handle it. The following program will display: Got Cpp exception It can be built using the following project file: project except is for Languages use ("Ada", "C++"); for Main use ("main.adb"); end except; package Cppexcept is Cpp_Int_Exce

[Ada] State refinement constituent uninstall

2013-10-14 Thread Arnaud Charlet
This patch hides the refinement constituents of all abstract states with visible refinement at the end of the package body declarations. Tested on x86_64-pc-linux-gnu, committed on trunk 2013-10-14 Hristian Kirtchev * einfo.adb: Flag 263 is now known as Has_Visible_Refinement.

[Ada] Library_Level attribute now applies to an entity name

2013-10-14 Thread Arnaud Charlet
The prefix of the Library_Level must now be an entity name, and the attribute indicates if the entity is declarated at the library level. Note that within a generic instantition, the name of the generic unit denotes the instance, which means that this attribute can be used to test if a generic is i

[Ada] Comparaison of symbols to integers in preprocessing

2013-10-14 Thread Arnaud Charlet
When preprocessing a source, it is now possible to use comparaison of symbols with integers, using operators =, <, <=, > or >=, as in: #if symbol = 3 #if symbol <= 20 Tested on x86_64-pc-linux-gnu, committed on trunk 2013-10-14 Vincent Celier * prep.adb (Expression): Accept terms of

[Ada] Overlapping parameter is error not warning in Ada 2012 mode

2013-10-14 Thread Arnaud Charlet
This patch implements the required incompatible change in Ada 2012 that makes overlap of elementary parameters passed as OUT or IN OUT an error (rather than a warning situation). It also implements the debug flag -gnatd.E that converts this back to a warning. The following program compiled in Ada

[Ada] Better handling of controlled objects in conditional expressions

2013-10-14 Thread Arnaud Charlet
A call to a function that returns a controlled object generates finalization actions that must be placed in the code immediately after use of the object. This patch fixes a bug in the handling of these actions when the context of the function call is a generated if-expression. Executing: gnat

[Ada] Makes the exception type a little bit more general

2013-10-14 Thread Arnaud Charlet
The OpenVMS specific component Import_Code is replaced by Foreign_Data. Although the size of the component is not the same, due to alignment constraint of the component before and after, the size of the record doesn't change. Furthermore, this component is never used by the code generated for gnat1

[Ada] Option to ignore unrecognized style/warning/validity switches

2013-10-14 Thread Arnaud Charlet
This implements the -gnateu switch which causes subsequent unrecognized style (-gnaty), warning (-gnatw), and validity (-gnatV) switches to be ignored generating a warning message only. This is useful when compiling a set of sources developed with a later version of the compiler using an earlier ve

[Ada] Path names of preprocessing data files with spaces

2013-10-14 Thread Arnaud Charlet
When a source is compiled with automated preprocessing specified by switch -gnatep= with the full path of the preprocessing data file and the path name includes spaces, the ALI file is detected as incorrect. This patch fixes that: path names that include spaces are now quoted in ALI files. Tested

[Ada] Full views of private subtypes with unknown discriminants.

2013-10-14 Thread Arnaud Charlet
A private subtype with unknown discriminants may have a full view that is a constrained discriminated subtype. The Is_Constrained flag must be properly set for this full view, to prevent spurious errors when the subtype is used in an object declaration with a dynamically tagged expression. The exe

[Ada] Display executable load address before traceback

2013-10-14 Thread Arnaud Charlet
This is useful for post-mortem traceback analysis on PIE platforms. No new test, as this is platform specific. Tested on x86_64-pc-linux-gnu, committed on trunk 2013-10-14 Tristan Gingold * adaint.c, adaint.h (__gnat_get_executable_load_address): New function. * a-exex

[Ada] Implement new attribute Library_Level

2013-10-14 Thread Arnaud Charlet
This implements a new attribute Standard'Library_Level (Standard is the only allowed prefix), which returns a Boolean value which is True if the attribute is evaluated at the library level (e.g. with a package declaration), and false if evaluated elsewhere (e.g. within a subprogram body). In the ca

[Ada] Handle initialization of array aggregate with <> component

2013-10-14 Thread Arnaud Charlet
This patch makes sure that initialization of components corresponding to a <> component clause is handled correctly. There are two cases. If there is a Default_Component_Value aspect for the array, then this value is used, otherwise normal default initialization takes place (including in particular

[Ada] Fix debug info for renaming of dereferenced return value

2013-10-14 Thread Arnaud Charlet
This fixes the debugging information generated for a variable renaming the dereference of the return value of a function returning an access type. The compiler was both materializing the renaming object and generating the special debug renaming variable for it, without generating debugging informa

[Ada] Handling of null refinements in aspect/pragma Refined_Global

2013-10-14 Thread Arnaud Charlet
This patch updates the analysis of aspect/pragma Refined_Global to accept legal global refinements of states with null visible refinements. -- Source -- -- global_null.ads package Global_Null with Abstract_State => ((In_State with External, Input_Only),

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Richard Biener
On Mon, Oct 14, 2013 at 2:20 PM, Andreas Krebbel wrote: > On 14/10/13 13:30, Jakub Jelinek wrote: >> On Mon, Oct 14, 2013 at 01:26:25PM +0200, Richard Biener wrote: I somehow couldn't get it working with the add_builtin_function parameter. Perhaps because these attrs are supposed t

Re: [testsuite] Fix gcc.dg/torture/pr58670.c for Solaris 9/x86 assembler

2013-10-14 Thread Jakub Jelinek
On Mon, Oct 14, 2013 at 02:35:53PM +0200, Rainer Orth wrote: > The new gcc.dg/torture/pr58670.c testcase FAILs on Solaris 9/x86 with > the Sun assembler: > > FAIL: gcc.dg/torture/pr58670.c -O0 (test for excess errors) > Excess errors: > Assembler: pr58670.c > "/var/tmp//cceOnFp7.s", line

[Ada] Implement pragmas Type_Invariant[_Class]

2013-10-14 Thread Arnaud Charlet
This implements two new pragmas, whose names, syntax, and semantics match the corresponding aspects Type_Invariant and Type_Invariant'Class as closely as possible. For Type_Invariant'Class the pragma is named Type_Invariant_Class, since the attribute form of the name is not legal for a pragma name.

[Ada] Update documentation of debug switches

2013-10-14 Thread Arnaud Charlet
This patch removes the documentation of debug switches that are not used anymore by gnat2why, and are thus free for other uses. In frontend.adb, there was a now obsolete reference to -gnatd.H, which is also removed. Tested on x86_64-pc-linux-gnu, committed on trunk 2013-10-14 Johannes Kanig

[Ada] Use of non-static constants in aspect Global

2013-10-14 Thread Arnaud Charlet
This patch updates the legality checks of aspect/pragma Global to allow references to enclosing formal parameters. -- Source -- -- formal_references.adb procedure Formal_References (In_Formal : Integer; In_Out_Formal : in out Integer; Out_Formal: out In

[testsuite] Fix gcc.dg/torture/pr58670.c for Solaris 9/x86 assembler

2013-10-14 Thread Rainer Orth
The new gcc.dg/torture/pr58670.c testcase FAILs on Solaris 9/x86 with the Sun assembler: FAIL: gcc.dg/torture/pr58670.c -O0 (test for excess errors) Excess errors: Assembler: pr58670.c "/var/tmp//cceOnFp7.s", line 18 : Illegal mnemonic "/var/tmp//cceOnFp7.s", line 18 : Syntax err

[C++ PATCH] Fix PR58705

2013-10-14 Thread Marek Polacek
We were ICEing on the attached testcase, because in check_narrowing, for = {{}}, we wanted to check recursively the CONSTRUCTOR_ELTs, even though init in this case has 0 CONSTRUCTOR_NELTS. So I added the check for CONSTRUCTOR_NELTS > 0. Moreover, since empty scalar initializers are forbidden in C

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Andreas Krebbel
On 14/10/13 13:30, Jakub Jelinek wrote: > On Mon, Oct 14, 2013 at 01:26:25PM +0200, Richard Biener wrote: >>> I somehow couldn't get it working with the add_builtin_function parameter. >>> Perhaps because these >>> attrs are supposed to be translated into the respective tree flags >>> (DECL_IS_RE

[PATCH][LTO] Finally remove old merging code

2013-10-14 Thread Richard Biener
Totally forgot about it - noticed now when moving the canonical type stuff. So I do not forget before we release 4.9 the following removes the old merging code now. This should speedup -flto-report[-wpa] quite a bit (and reduce it's memory usage). LTO bootstrap running on x86_64-unknown-linux-g

Re: libsanitizer merge from upstream r191666

2013-10-14 Thread Konstantin Serebryany
Thanks! (I still need more suggestions/review :) On Mon, Oct 14, 2013 at 3:48 PM, Marek Polacek wrote: >> >> I tested this change like this on x86_64 Linux Ubuntu 12.04: >> >> rm -rf */{*/,}libsanitizer && make -j 50 && make -C gcc >> >> check-g{cc,++} RUNTESTFLAGS='--target_board=unix\{-m32,-m

Re: libsanitizer merge from upstream r191666

2013-10-14 Thread Marek Polacek
> >> I tested this change like this on x86_64 Linux Ubuntu 12.04: > >> rm -rf */{*/,}libsanitizer && make -j 50 && make -C gcc > >> check-g{cc,++} RUNTESTFLAGS='--target_board=unix\{-m32,-m64\} > >> asan.exp' > >> > >> Since the change also pulls minor changes in ubsan, please suggest me > >> how

[PATCH] Move LTO canonical type merging code to the LTO frontend

2013-10-14 Thread Richard Biener
$subject, no other changes (yet). LTO bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2013-10-14 Richard Biener * gimple.c (gimple_canonical_types, canonical_type_hash_cache, iterative_hash_canonical_type, gimple_canonical_type_hash, gimple_ca

Re: libsanitizer merge from upstream r191666

2013-10-14 Thread Konstantin Serebryany
+dnovillo, davidxl Any suggestions? On Wed, Oct 2, 2013 at 12:54 PM, Konstantin Serebryany wrote: > > > > > On Wed, Oct 2, 2013 at 12:51 PM, Konstantin Serebryany > wrote: >> Hi, >> >> I'd like to start a review for libsanitizer merge from upstream. >> This is the first full merge since 2013-02

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Jakub Jelinek
On Mon, Oct 14, 2013 at 01:26:25PM +0200, Richard Biener wrote: > > I somehow couldn't get it working with the add_builtin_function parameter. > > Perhaps because these > > attrs are supposed to be translated into the respective tree flags > > (DECL_IS_RETURNS_TWICE) at that > > point already?! >

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Richard Biener
On Mon, Oct 14, 2013 at 1:21 PM, Andreas Krebbel wrote: > On 14/10/13 12:14, Jakub Jelinek wrote: >> On Mon, Oct 14, 2013 at 12:07:00PM +0200, Richard Biener wrote: htm-nofloat-2.c fails with that patch. The returns-twice flag on tbegin prevents several optimizations on the cfg and basi

RE: [PATCH] Fix PR58682

2013-10-14 Thread Paulo Matos
> -Original Message- > From: Kyrill Tkachov [mailto:kyrylo.tkac...@arm.com] > Sent: 14 October 2013 11:44 > To: Paulo Matos > Cc: gcc-patches@gcc.gnu.org; mikest...@comcast.net > Subject: Re: [PATCH] Fix PR58682 > > I'd think there would be legal issues adding coremark to the testsuite but

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Andreas Krebbel
On 14/10/13 12:14, Jakub Jelinek wrote: > On Mon, Oct 14, 2013 at 12:07:00PM +0200, Richard Biener wrote: >>> htm-nofloat-2.c fails with that patch. The returns-twice flag on >>> tbegin prevents several optimizations on the cfg and basically >>> disables the TX optimization in s390_optimize_nonesc

Re: [PATCH] Fix PR58682

2013-10-14 Thread Kyrill Tkachov
On 14/10/13 11:23, Paulo Matos wrote: -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On Behalf Of Paulo Matos Sent: 14 October 2013 11:22 To: Kyrill Tkachov Cc: gcc-patches@gcc.gnu.org Subject: RE: [PATCH] Fix PR58682 OK, testcase generated

Re: lto-plugin: mismatch between ld's architecture and GCC's configure --host

2013-10-14 Thread Thomas Schwinge
Hi! On Sat, 12 Oct 2013 12:20:19 +0200, I wrote: > This is a bit of a weird scenario -- but it is supposed to work fine in > my opinion (but doesn't). > > I have a GNU toolchain as 32-bit x86 GNU/Linux executables, configured to > to generate code for 32-bit x86 by default, and using -m64 for x86

[PATCH] Move effective target check after other directives in c-c++-common/cpp/openmp-define-3.c

2013-10-14 Thread Kyrill Tkachov
Hi all, This minuscule patch moves the dg-require-effective-target fopenmp line after the other directives in the c-c++-common/cpp/openmp-define-3.c test. Otherwise dejagnu still proceeds to add -fopenmp to the options which fails on bare metal arm and aarch64 targets. [cc'ing Thomas because

Re: [Patch, Fortran] PR58658 - add missing pointer-assign check for CLASS(*)

2013-10-14 Thread Mikael Morin
Le 07/10/2013 23:31, Tobias Burnus a écrit : > The patch is rather obvious. The question is just why was the check > there at the first place. > > Build and regtested on x86-64-gnu-linux. > OK for the trunk? > OK. Thanks. Mikael

RE: [PATCH] Fix PR58682

2013-10-14 Thread Paulo Matos
> -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On > Behalf Of Paulo Matos > Sent: 11 October 2013 08:55 > To: Kyrill Tkachov > Cc: gcc-patches@gcc.gnu.org > Subject: RE: [PATCH] Fix PR58682 > > > Thanks, fixed patch attached. > Working on

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Jakub Jelinek
On Mon, Oct 14, 2013 at 12:07:00PM +0200, Richard Biener wrote: > > htm-nofloat-2.c fails with that patch. The returns-twice flag on > > tbegin prevents several optimizations on the cfg and basically > > disables the TX optimization in s390_optimize_nonescaping_tx that way. > > I'll try to address

Fix PR bootstrap/58509 (take 2)

2013-10-14 Thread Eric Botcazou
Hi, this fixes the ICE during the build of the Ada runtime on the SPARC, a fallout of the recent inliner changes: http://gcc.gnu.org/ml/gcc-patches/2013-09/msg01033.html The ICE is triggered because the ldd peephole merges an MEM with MEM_NOTRAP_P and a contiguous MEM without MEM_NOTRAP_P, ke

Re: [PATCH] Introduce gcc::dump_manager class

2013-10-14 Thread Richard Biener
On Sat, Oct 12, 2013 at 3:31 AM, David Malcolm wrote: > When repeatedly compiling within one process, the dumpfile numbering > doesn't reset, leading to dumpfiles after the initial ones having > unpredictable numbers like here (-fdump-tree-all at -O0): > > fake.c.000i.cgraph > fake.c.0

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Richard Biener
On Fri, Oct 11, 2013 at 7:02 PM, Andreas Krebbel wrote: > Hi, > > the attached patch introduces a new target hook > (targetm.calls.special_function_flags) which can be used by a backend > to add specific call properties to builtins. > > On S/390 this is used for the *tbegin* and *tabort builtins w

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-14 Thread Richard Biener
On Fri, Oct 11, 2013 at 3:27 PM, Richard Sandiford wrote: > Richard Biener writes: >> On Fri, Oct 11, 2013 at 12:48 PM, Richard Sandiford >> wrote: >>> Richard Biener writes: On Fri, Oct 11, 2013 at 11:43 AM, Richard Sandiford wrote: > Jakub Jelinek writes: >> On Fri, Oct 11

Re: [PATCH] FIx pr58640

2013-10-14 Thread Richard Biener
On Fri, Oct 11, 2013 at 10:31 PM, Jeff Law wrote: > > The problem shown by pr58640 is the more aggressive jump threading is > recording a jump threading opportunity that crosses through two loop > headers. > > The updating code is not prepared to update the CFG and loop structures in > that situat

  1   2   >