[RFC] Delayed folding, match-and-simplify and early GIMPLE

2015-12-18 Thread Richard Biener
an't do with SSA temps (like for gimplifying COND_EXPRs into control-flow). After all the gimplifier wouldn't create PHI nodes (we don't have a CFG). The gimplifier also wouldn't set up SSA operands so this is only about having SSA_NAME_DEF_STMT ready. Any comment

Re: [RFC] Delayed folding, match-and-simplify and early GIMPLE

2015-12-18 Thread Richard Biener
On Fri, 18 Dec 2015, Richard Biener wrote: > > The following tries to address the issue that with delayed folding > and the general attempt to do folding on GIMPLE we have "unfolded" > trees up to the point where we go into SSA (as otherwise the > match-and-simplify mach

Re: Clarification required about bitfields

2015-12-23 Thread Richard Biener
On December 23, 2015 9:28:32 AM GMT+01:00, Konstantin Vladimirov wrote: >Hi, > >Now LLVM and GCC essentially disagrees on simple test (minimized from >one of dejagnu tests): > >#include > >struct s { > unsigned long long u33: 33; > unsigned long long u40: 40; > unsigned long long u41: 41; >};

Re: Should bootstrap-O3 be the default for building/testing GCC?

2016-01-08 Thread Richard Biener
On Thu, Dec 24, 2015 at 3:40 PM, Gary Funck wrote: > > Currently, the default optimization level when building, > bootstrapping GCC is -O2. > > We routinely build with --with-build-config='bootstrap-debug bootstrap-O3' > because we want to verify that our UPC changes don't affect the > compiler wh

Re: ivopts vs. garbage collection

2016-01-08 Thread Richard Biener
On Wed, Jan 6, 2016 at 4:26 PM, Jeff Law wrote: > On 01/06/2016 08:17 AM, Ian Lance Taylor wrote: >> >> The bug report https://golang.org/issue/13662 describes a case in >> which ivopts appears to be breaking garbage collection for the Go >> compiler. There is an array allocated in memory, and th

Re: GNU C library's libmvec and the GNU Compiler *Collection*.

2016-01-08 Thread Richard Biener
On Thu, Jan 7, 2016 at 7:41 PM, Toon Moene wrote: > On 01/06/2016 07:46 PM, Toon Moene wrote: > >> Would it be possible to add an option -mveclibabi=glibc to cater for >> this *for all languages*; or is this too low level (after all, the glibc >> libmvec has code for multiple architectures). If so

Re: __builtin_memcpy and alignment assumptions

2016-01-08 Thread Richard Biener
On Thu, Jan 7, 2016 at 9:05 PM, Steve Ellcey wrote: > I have a question about __builtin_memcpy and alignment. While working on > MIPS I noticed that this program: > > void foo(int *a, int *b) > { > __builtin_memcpy (a, b, 8); > } > > Is generating the following MIPS code (allowing for any

Re: __builtin_memcpy and alignment assumptions

2016-01-08 Thread Richard Biener
On Fri, Jan 8, 2016 at 12:24 PM, Eric Botcazou wrote: >> See some existing PR. The GCC middle-end cannot assume that pointers >> are aligned according to their type (while at least the C language would >> support that notion). > > Only on x86. It could (and used to) do it on strict-alignment arc

Re: __builtin_memcpy and alignment assumptions

2016-01-08 Thread Richard Biener
On Fri, Jan 8, 2016 at 12:40 PM, Eric Botcazou wrote: >> I think we only assume it if the pointer is actually dereferenced, otherwise >> it just breaks too much code in the wild. And while memcpy dereferences, >> it dereferences it through a char * cast, and thus only the minimum >> alignment is

Re: Prototype implementation: Improving effectiveness and generality of auto-vectorization

2016-01-11 Thread Richard Biener
On Fri, Jan 8, 2016 at 5:11 PM, Alan Lawrence wrote: > On Tues, Oct 27, 2015 at 2:39 PM, Richard Biener > wrote: >> >> On Mon, Oct 26, 2015 at 6:59 AM, sameera >> wrote: >>> >>> >>> Richard, we have defined the input language for convenience i

Re: __builtin_memcpy and alignment assumptions

2016-01-11 Thread Richard Biener
On Fri, Jan 8, 2016 at 7:36 PM, Steve Ellcey wrote: > On Fri, 2016-01-08 at 12:56 +0100, Richard Biener wrote: >> On Fri, Jan 8, 2016 at 12:40 PM, Eric Botcazou >> wrote: >> >> I think we only assume it if the pointer is actually dereferenced, >> >> other

Re: ipa vrp implementation in gcc

2016-01-11 Thread Richard Biener
On Mon, Jan 11, 2016 at 1:38 AM, Kugan wrote: > Hi All, > > I am looking at implementing a ipa vrp pass. Jan Hubicka also talks > about this in 2013 GNU Cauldron as one of the optimization he would like > to see in gcc. So my question is, is any one implementing it. If not we > would like to do th

Re: ivopts vs. garbage collection

2016-01-11 Thread Richard Biener
On January 11, 2016 8:35:25 PM GMT+01:00, Michael Matz wrote: >Hi, > >On Mon, 11 Jan 2016, Ian Lance Taylor wrote: > >> > Well, that's a hack. A solution is to design something that works >> > generally for garbage collected languages with such requirements >> > instead of arbitrarily limiting

Re: Remove sel-sched?

2016-01-15 Thread Richard Biener
On Fri, Jan 15, 2016 at 10:48 AM, Andrey Belevantsev wrote: > On 14.01.2016 20:26, Jeff Law wrote: >> >> On 01/14/2016 12:07 AM, Andrey Belevantsev wrote: >>> >>> Hello Bernd, >>> >>> On 13.01.2016 21:25, Bernd Schmidt wrote: There are a few open PRs involving sel-sched, and I'd like to

Re: help with PR69133

2016-01-18 Thread Richard Biener
On Mon, Jan 18, 2016 at 10:28 AM, Prathamesh Kulkarni wrote: > On 17 January 2016 at 14:56, Prathamesh Kulkarni > wrote: >> Hi, >> I was having a look at PR69133. >> It appears that with -flto-partition=none, >> cgraph_node::get_untransformed_body () >> is called twice for node with asm_name _ZTh

Re: ipa vrp implementation in gcc

2016-01-18 Thread Richard Biener
On Mon, Jan 18, 2016 at 12:00 AM, Kugan wrote: > Hi, > >> Another potential use of value ranges is the profile estimation. >> http://www.lighterra.com/papers/valuerangeprop/Patterson1995-ValueRangeProp.pdf >> It seems to me that we may want to have something that can feed sane loop >> bounds for p

GCC 6 Status Report (2016-01-20), Stage 3 ended

2016-01-20 Thread Richard Biener
Status == Stage 3 has now officially ended and trunk is in regression and documentation fixes stage now. This means any new features or fixes for bugs that are not regressions have to wait for GCC 7 now. Please help analyze unconfirmed bugs in the list of serious regressions and work toward

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-25 Thread Richard Biener
On January 25, 2016 10:47:10 PM GMT+01:00, Michael Karcher wrote: >Hello gcc developers, > >as discussed in https://ghc.haskell.org/trac/ghc/ticket/11395 (and >forwarded as PR c/69221), ghc generates non-compliant C code that is >not >compiled as intended on m68k. This is because its internal Cmm

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-26 Thread Richard Biener
On January 26, 2016 8:25:50 AM GMT+01:00, Jeff Law wrote: >On 01/26/2016 12:01 AM, Richard Biener wrote: >> On January 25, 2016 10:47:10 PM GMT+01:00, Michael Karcher > wrote: >>> Hello gcc developers, >>> >>> as discussed in https://ghc.haskell.org/trac/gh

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-26 Thread Richard Biener
On Tue, Jan 26, 2016 at 10:21 AM, John Paul Adrian Glaubitz wrote: > Hi Richard! > > On 01/26/2016 08:01 AM, Richard Biener wrote: >>> I developed a gcc patch that does not change the code generation for >>> conforming programs but fixes this non-conforming use-ca

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-26 Thread Richard Biener
On January 26, 2016 8:03:35 PM GMT+01:00, Michael Karcher wrote: >On 26.01.2016 16:40, Richard Biener wrote: >> No, the patch looks somewhat broken to me. A complete fix would >replace >> the target macro FUNCTION_VALUE implementation by implementing the >> function_val

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-27 Thread Richard Biener
On Tue, Jan 26, 2016 at 9:54 PM, Michael Karcher wrote: > On 26.01.2016 21:47, Richard Biener wrote: >>>> So, hookize and change to >>>> >>>> if (outgoing && POINTER_TYPE_P (TREE_TYPE (TREE_TYPE (func >>>> ... >&

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-27 Thread Richard Biener
first?) > > Conclusion: IMHO, If ghc fetches the return value from the wrong register, > then ghc is broken, not gcc. We are trying to support t.c --- void *foo(); int bar() { return ((int (*)())foo) (); } t2.c - int foo () { return 0; } thus doing a direct call to a function with a

Re: RFC: Support non-standard extension (call via casted function pointer)

2016-01-28 Thread Richard Biener
On Thu, Jan 28, 2016 at 11:11 AM, Florian Weimer wrote: > On 01/27/2016 04:17 PM, Richard Biener wrote: > >> We are trying to support >> >> t.c >> --- >> void *foo(); >> >> int bar() >> { >> return ((int (*)())foo) (); >> }

Re: [RFC PR43721] Optimize a/b and a%b to single divmod call

2016-01-28 Thread Richard Biener
On Wed, 27 Jan 2016, Prathamesh Kulkarni wrote: > On 11 November 2015 at 19:04, Richard Biener wrote: > > On Wed, 11 Nov 2015, Prathamesh Kulkarni wrote: > > > >> On 11 November 2015 at 16:03, Richard Biener wrote: > >> > On Wed, 11 Nov 2015, Prathamesh

Re: [RFC PR43721] Optimize a/b and a%b to single divmod call

2016-01-29 Thread Richard Biener
On Thu, 28 Jan 2016, Jim Wilson wrote: > On Thu, Jan 28, 2016 at 5:37 AM, Richard Biener wrote: > >> To workaround this, I defined a new hook expand_divmod_libfunc, which > >> targets must override for expanding call to target-specific dimovd. &g

Re: Early inlining and function references from static const struct (bug?)

2016-02-05 Thread Richard Biener
On Thu, Feb 4, 2016 at 9:10 PM, Carlos Pita wrote: > PS 2 (last one, I swear): I've isolated what I think is the root of > the problem. When einline expands g, there is plenty of call sites for > f.call, so the full redundancy elimination pass replaces sum for > f.call, making things easy for the

Re: Early inlining and function references from static const struct (bug?)

2016-02-05 Thread Richard Biener
rly inlining is not supposed to catch this case but IPA inlining. it shouldn't need to inline g early to end up inlining the calls to sq. IPA CP should clone g for the case of it calling sq and then inlining should just do its job. Richard. > Cheers > -- > Carlos > > On Fri

Re: Early inlining and function references from static const struct (bug?)

2016-02-05 Thread Richard Biener
On February 5, 2016 3:27:17 PM GMT+01:00, Carlos Pita wrote: >> I was saying that early inlining is not supposed to catch this case >> but IPA inlining. >> it shouldn't need to inline g early to end up inlining the calls to >sq. IPA CP >> should clone g for the case of it calling sq and then inl

Re: Helper for replaceAllUses in gcc gimple

2016-02-11 Thread Richard Biener
On February 11, 2016 6:39:02 PM GMT+01:00, Cristina Georgiana Opriceana wrote: >Hello, > >Is there any implementation for replacing all uses of a variable with >another variable in gimple? > >If I want to replace the uses of a variable with another one, do I >have to do this by hand, investigate

Re: gengtype: conditional GTY ? (to add before GCC 6 release)

2016-02-12 Thread Richard Biener
On Fri, Feb 12, 2016 at 1:23 PM, Basile Starynkevitch wrote: > Hello All, > > This is motivated by MELT, but I believe it would be useful to every GCC > plugin which tries to be > compilable both for GCC 5 & GCC 6. > > The technical issue described in > https://gcc.gnu.org/ml/gcc/2016-02/msg00149.

Re: gengtype: conditional GTY ? (to add before GCC 6 release)

2016-02-12 Thread Richard Biener
On February 12, 2016 3:55:33 PM GMT+01:00, Mikhail Maltsev wrote: > >On 02/12/2016 04:38 PM, Richard Biener wrote: > >> Sorry, no. The plugin API was never considered stable and thus >plugins have to >> deal with incompatibilites as they arise. >> >>

Re: stable plugin introspection API ... Where?

2016-02-15 Thread Richard Biener
On Sun, Feb 14, 2016 at 3:50 PM, Basile Starynkevitch wrote: > Dear all > > In https://gcc.gnu.org/ml/gcc/2016-02/msg00157.html > > Richard Biener (richard dot guenther at gmail dot com) is mentioning: > >> Help with picking up the partially completed work on a stable

Switch to ISL 0.16.1

2016-02-15 Thread Richard Biener
Hi, the following patch switches download_prerequesites to use ISL 0.16.1 (just put that into infrastructure/). I've verified it works for me (on the gcc-5 branch and trunk). Ok? Thanks, Richard. Index: contrib/download_prerequisites ===

Re: ipa vrp implementation in gcc

2016-02-15 Thread Richard Biener
On Wed, Feb 10, 2016 at 11:00 AM, Bin.Cheng wrote: > On Mon, Jan 18, 2016 at 5:10 PM, Jan Hubicka wrote: >>> On Mon, Jan 18, 2016 at 12:00 AM, Kugan >>> wrote: >>> > Hi, >>> > >>> >> Another potential use of value ranges is the profile estimation. >>> >> http://www.lighterra.com/papers/valuerang

Re: gengtype: conditional GTY ? (to add before GCC 6 release)

2016-02-15 Thread Richard Biener
On February 15, 2016 4:34:48 PM GMT+01:00, Michael Matz wrote: >Hi, > >On Fri, 12 Feb 2016, Richard Biener wrote: > >> >What do you think about refactoring iterators in GCC 7? >> >> I think refactoring towards STL style iterators would be welcome. It >

Re: Help with building MEM_REF node

2016-02-18 Thread Richard Biener
On Wed, Feb 17, 2016 at 5:27 PM, Cristina Georgiana Opriceana wrote: > Hello, > > I inserted a new local var decl in gimple, a pointer which is > malloc'ed and now I am trying to read/write in that memory. > > int *mumu; > mumu = malloc ( 40 * sizeof (int)); > mumu[1] = 10; > > The following state

Re: Manipulating bit fields is behaving inconsistently

2016-02-19 Thread Richard Biener
On Thu, Feb 18, 2016 at 5:31 PM, Wink Saville wrote: > You've convinced me that this isn't a bug, but I assume you'd agree > its weird at best. I tested it with clang and it works as I'd expect: > > $ make > clang -x c -m64 -O3 -Wall -o test.o -c test.c > objdump -d test.o > test.txt > clang -m64

Re: How to efficiently unpack 8 bytes from a 64-bit integer?

2016-02-19 Thread Richard Biener
On Fri, Feb 19, 2016 at 7:24 AM, Phil Ruffwind wrote: > Hello all, > > I am trying to analyze the optimized results of following code. The > intent is to unpack a 64-bit integer into a struct containing eight > 8-bit integers. The optimized result was very promising at first, but > I then discov

Re: How to efficiently unpack 8 bytes from a 64-bit integer?

2016-02-19 Thread Richard Biener
On Fri, Feb 19, 2016 at 10:44 AM, Phil Ruffwind wrote: > I tried to look for a workaround for this. It seemed that using a > union instead of memcpy was enough to convince GCC to optimize into a > single "mov". > > struct alpha unpack(uint64_t x) > { > union { > struct

Re: Manipulating bit fields is behaving inconsistently

2016-02-19 Thread Richard Biener
I remember when fixing bugs that it was pointed out how the standard does not say those types promote. Of course those types don't exist in the standard. Richard. > > On Fri, Feb 19, 2016, 12:37 AM Richard Biener > wrote: >> >> On Thu, Feb 18, 2016 at 5:31 PM, Wink Saville

Re: Manipulating bit fields is behaving inconsistently

2016-02-19 Thread Richard Biener
On Fri, Feb 19, 2016 at 12:43 PM, Wink Saville wrote: > What is the process for a patch with a new option to allow a different > behavior? Write one (with testcases), test it and then post it here for review. Richard.

Re: increase alignment of global structs in increase_alignment pass

2016-02-22 Thread Richard Biener
On Mon, 22 Feb 2016, Prathamesh Kulkarni wrote: > Hi Richard, > As discussed in private mail, this version of patch attempts to > increase alignment > of global struct decl if it contains an an array field(s) and array's > offset is a multiple of the alignment of vector type corresponding to > it'

Re: Transformation of relational expression

2016-02-23 Thread Richard Biener
On Tue, Feb 23, 2016 at 11:39 AM, Dmytro Sheyko wrote: > Hello, > > I am compiling code like this: > > int test(int x, int eq, int lt, int gt) { > return x < 2000 ? lt : x > 2000 ? gt : eq; > } > > and expect that compiler would generate one CMP instruction for both > comparisons:

Re: increase alignment of global structs in increase_alignment pass

2016-02-23 Thread Richard Biener
On Tue, 23 Feb 2016, Prathamesh Kulkarni wrote: > On 22 February 2016 at 17:36, Richard Biener wrote: > > On Mon, 22 Feb 2016, Prathamesh Kulkarni wrote: > > > >> Hi Richard, > >> As discussed in private mail, this version of patch attempts to > >> inc

Re: Importance of transformations that turn data dependencies into control dependencies?

2016-02-24 Thread Richard Biener
On Tue, Feb 23, 2016 at 8:38 PM, Torvald Riegel wrote: > I'd like to know, based on the GCC experience, how important we consider > optimizations that may turn data dependencies of pointers into control > dependencies. I'm thinking about all optimizations or transformations > that guess that a po

Re: Importance of transformations that turn data dependencies into control dependencies?

2016-02-26 Thread Richard Biener
On Thu, Feb 25, 2016 at 6:33 PM, Torvald Riegel wrote: > On Wed, 2016-02-24 at 13:14 +0100, Richard Biener wrote: >> On Tue, Feb 23, 2016 at 8:38 PM, Torvald Riegel wrote: >> > I'd like to know, based on the GCC experience, how important we consider >> >

Re: Compiler support for erasure of sensitive data

2016-03-01 Thread Richard Biener
On Mon, Feb 29, 2016 at 10:14 PM, Marcos Diaz wrote: > Hi, we are facing the same issue. This bugzilla was opened: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69976 > > We were thinking on making a function attribute that ensures that non > necessary registers, or stack frames used by the func

Re: Importance of transformations that turn data dependencies into control dependencies?

2016-03-01 Thread Richard Biener
On Fri, Feb 26, 2016 at 8:10 PM, Torvald Riegel wrote: > On Fri, 2016-02-26 at 11:49 +0100, Richard Biener wrote: >> On Thu, Feb 25, 2016 at 6:33 PM, Torvald Riegel wrote: >> > On Wed, 2016-02-24 at 13:14 +0100, Richard Biener wrote: >> >> On Tue, Feb 23, 2

Re: Validity of SUBREG+AND-imm transformations

2016-03-04 Thread Richard Biener
On March 4, 2016 3:48:21 PM GMT+01:00, Kyrill Tkachov wrote: > >On 04/03/16 14:41, Kyrill Tkachov wrote: >> >> On 04/03/16 11:59, Segher Boessenkool wrote: >>> On Mon, Feb 29, 2016 at 10:51:24AM +, Kyrill Tkachov wrote: So I'm trying to create a define_insn to match something like:

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-06 Thread Richard Biener
On March 6, 2016 3:45:37 PM GMT+01:00, Diego Novillo wrote: >On Sun, Mar 6, 2016 at 6:03 AM, Prasad Ghangal > wrote: >> Hi! >> >> On stackoverflow >> http://stackoverflow.com/questions/21660563/can-gcc-compile-gimple, >> they said GIMPLE FE project is dead. Please let me know if I can work >> on

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-07 Thread Richard Biener
On Mon, Mar 7, 2016 at 7:27 AM, Prasad Ghangal wrote: > On 6 March 2016 at 21:13, Richard Biener wrote: >> >> I'll be willing to mentor this. Though I'd rather have us starting from >> scratch and look at having a C-like input language, even piggy-back

Re: Bootstrapping is currently broken

2016-03-07 Thread Richard Biener
On Mon, Mar 7, 2016 at 2:12 PM, Dominik Vogt wrote: > A recent patch has broken bootstrapping (s390x) in stage3. The > failure creeped into trunk between friday and today: > > -- snip -- > g++ -std=gnu++98 -g -O2 -DIN_GCC -fno-exceptions -fno-rtti > -fasynchronous-unwind-tables -W -Wall -W

Re: Bootstrapping is currently broken

2016-03-07 Thread Richard Biener
On Mon, Mar 7, 2016 at 3:12 PM, Dominik Vogt wrote: > On Mon, Mar 07, 2016 at 03:00:03PM +0100, Richard Biener wrote: >> On Mon, Mar 7, 2016 at 2:12 PM, Dominik Vogt wrote: >> > A recent patch has broken bootstrapping (s390x) in stage3. The >> > failure creeped in

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-08 Thread Richard Biener
On March 8, 2016 4:42:41 PM GMT+01:00, "Manuel López-Ibáñez" wrote: >On 08/03/16 00:24, Trevor Saunders wrote: >>> ...which suggests that we'd want to use gimple dumps as the input >>> format to a test framework - which leads naturally to the idea of a >>> gimple frontend. >> >> Assuming you mean

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-09 Thread Richard Biener
On Wed, Mar 9, 2016 at 3:27 PM, Andrew MacLeod wrote: > On 03/07/2016 11:33 AM, David Malcolm wrote: >>> >>> >>> >>> >>> >>> So for testing specific passes, I'd much rather have an input format >>> for testing individual passes that: >>>* can be easily generated by GCC from real test cases >>>

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-09 Thread Richard Biener
On Wed, Mar 9, 2016 at 5:07 PM, Diego Novillo wrote: > On Wed, Mar 9, 2016 at 10:47 AM, Richard Biener > wrote: > >> About using the LLVM IR - similar issue I think, plus it is probably >> too far away >> from GCC so that what we'll end up will only look like LL

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-10 Thread Richard Biener
On Wed, Mar 9, 2016 at 8:45 PM, Manuel López-Ibáñez wrote: > On 9 March 2016 at 02:50, Trevor Saunders wrote: >> On Tue, Mar 08, 2016 at 05:12:56PM -0500, Diego Novillo wrote: >>> This way, implementing a library that supports dealing with GIMPLE >>> becomes much simpler. This provides a nice fo

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-10 Thread Richard Biener
On Thu, Mar 10, 2016 at 11:46 AM, Richard Biener wrote: > On Wed, Mar 9, 2016 at 8:45 PM, Manuel López-Ibáñez > wrote: >> On 9 March 2016 at 02:50, Trevor Saunders wrote: >>> On Tue, Mar 08, 2016 at 05:12:56PM -0500, Diego Novillo wrote: >>>> This way, imp

GCC 6 Status Report (2016-03-10)

2016-03-10 Thread Richard Biener
Status == GCC trunk is still in regression and documentation fixes stage. We're now half-way through our usual period of shaking out regressions before a new release which would be released mid April if we can trust past years experience. The number of serious regressions has decreased sign

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-10 Thread Richard Biener
On Thu, Mar 10, 2016 at 1:48 PM, H.J. Lu wrote: > convert_scalars_to_vector in i386.c calls > > calculate_dominance_info (CDI_DOMINATORS); > > Shouldn't it call > > free_dominance_info (CDI_DOMINATORS); > > after it is done like other places where calculate_dominance_info is used? Only if it inva

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-10 Thread Richard Biener
On Thu, Mar 10, 2016 at 2:16 PM, H.J. Lu wrote: > On Thu, Mar 10, 2016 at 5:01 AM, Richard Biener > wrote: >> On Thu, Mar 10, 2016 at 1:48 PM, H.J. Lu wrote: >>> convert_scalars_to_vector in i386.c calls >>> >>> calculate_dominance_info (CDI

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-10 Thread Richard Biener
On March 10, 2016 6:02:58 PM GMT+01:00, "H.J. Lu" wrote: >On Thu, Mar 10, 2016 at 6:57 AM, H.J. Lu wrote: >> On Thu, Mar 10, 2016 at 5:49 AM, Jakub Jelinek >wrote: >>> On Thu, Mar 10, 2016 at 05:43:27AM -0800, H.J. Lu wrote: > free_dominance_info (CDI_DOMINATORS); Since convert_sc

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-11 Thread Richard Biener
Jeff Law wrote: >>>>> >>>>> On 03/10/2016 01:18 PM, Richard Biener wrote: >>>>>> >>>>>> >>>>>> On March 10, 2016 6:02:58 PM GMT+01:00, "H.J. Lu" >>>>>> wrote: >>>&g

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-11 Thread Richard Biener
On Fri, Mar 11, 2016 at 1:47 PM, H.J. Lu wrote: > On Fri, Mar 11, 2016 at 2:06 AM, Richard Biener > wrote: >> On Fri, Mar 11, 2016 at 4:10 AM, H.J. Lu wrote: >>> On Thu, Mar 10, 2016 at 7:03 PM, Jeff Law wrote: >>>> On 03/10/2016 08:00 PM, H.J. Lu wrote: >

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-11 Thread Richard Biener
On Fri, Mar 11, 2016 at 2:02 PM, H.J. Lu wrote: > On Fri, Mar 11, 2016 at 4:58 AM, Richard Biener > wrote: >> On Fri, Mar 11, 2016 at 1:47 PM, H.J. Lu wrote: >>> On Fri, Mar 11, 2016 at 2:06 AM, Richard Biener >>> wrote: >>>> On Fri, Mar 11, 2016 at

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?

2016-03-11 Thread Richard Biener
On Fri, Mar 11, 2016 at 3:01 PM, H.J. Lu wrote: > On Fri, Mar 11, 2016 at 5:50 AM, H.J. Lu wrote: >> On Fri, Mar 11, 2016 at 5:19 AM, Richard Biener >> wrote: >>> On Fri, Mar 11, 2016 at 2:02 PM, H.J. Lu wrote: >>>> On Fri, Mar 11, 2016 at 4:58 AM, Richard B

Re: [PATCH] Free dominance info if any edges are eliminated

2016-03-14 Thread Richard Biener
On Fri, Mar 11, 2016 at 6:46 PM, H.J. Lu wrote: > On Fri, Mar 11, 2016 at 6:45 AM, H.J. Lu wrote: >> On Fri, Mar 11, 2016 at 6:03 AM, Richard Biener >> wrote: >>> On Fri, Mar 11, 2016 at 3:01 PM, H.J. Lu wrote: >>>> On Fri, Mar 11, 2016 at 5:50 AM, H.J. Lu

Re: Is test case with 700k lines of code a valid test case?

2016-03-14 Thread Richard Biener
On March 14, 2016 4:31:57 PM GMT+01:00, Andrey Tarasevich wrote: >Hi, > >I have a source file with 700k lines of code 99% of which are printf() >statements. Compiling this test case crashes GCC 5.3.0 with >segmentation fault. >Can such test case be considered valid or source files of size 35 MB

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-15 Thread Richard Biener
On Mon, Mar 14, 2016 at 7:27 PM, Michael Matz wrote: > Hi, > > On Thu, 10 Mar 2016, Richard Biener wrote: > >> Then I'd like to be able to re-construct SSA without jumping through >> hoops (usually you can get close but if you require copies propagated in >> a

Re: Aggressive load in gcc when accessing escaped pointer?

2016-03-18 Thread Richard Biener
= (PB*)(ptr-8); >>return t; >> } >> >> Does this volatile C99 standard rule >> (http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf): >> >>6.5.16 Assignment operators >> >>"3. ... The side effect of updating the stored value o

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-19 Thread Richard Biener
On Fri, Mar 18, 2016 at 6:55 AM, Prathamesh Kulkarni wrote: > On 15 March 2016 at 20:46, Richard Biener wrote: >> On Mon, Mar 14, 2016 at 7:27 PM, Michael Matz wrote: >>> Hi, >>> >>> On Thu, 10 Mar 2016, Richard Biener wrote: >>> >>>> The

Re: 4.9 backport request

2016-03-21 Thread Richard Biener
On March 22, 2016 2:07:10 AM GMT+01:00, NightStrike wrote: >https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64709 >https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 > >Would anyone mind backporting these two dependent bug fixes to 4.9? Both are not regressions there so no appropriate at this stage

Re: Leaking bitmap data in ree.c?

2016-03-22 Thread Richard Biener
On Mon, Mar 21, 2016 at 6:19 PM, Jeff Law wrote: > On 03/21/2016 11:16 AM, David Malcolm wrote: >> >> On Mon, 2016-03-21 at 11:13 -0600, Jeff Law wrote: >>> >>> On 03/21/2016 11:15 AM, Trevor Saunders wrote: > I'll resist the urge for now to apply RAII principles in this > code,

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-22 Thread Richard Biener
#x27;d think you'd want to change the duping of this some to make it easier > to tell from struct.some.member. it's just the way we name clones, yes. Similar for the parameter name btw. >> Please correct me if I am wrong. Also point out if I am missing anything > > I th

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-22 Thread Richard Biener
;> >>> *openmp functions like >>> main._omp_fn.0 (void * .omp_data_i) >> >> I'd think you'd want to change the duping of this some to make it easier >> to tell from struct.some.member. >> >>> Please correct me if I am wrong. A

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-22 Thread Richard Biener
On Tue, Mar 22, 2016 at 2:45 PM, Prathamesh Kulkarni wrote: > On 22 March 2016 at 16:26, Richard Biener wrote: >> On Tue, Mar 22, 2016 at 12:08 AM, Prasad Ghangal >> wrote: >>> Hi! >>> >>> How exactly can we achieve start stop compilation on spec

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-24 Thread Richard Biener
stcases manually. I realize that the student application deadline is tomorrow. Richard. > > Thanks and Regards, > Prasad Ghangal > > > > > > On 22 March 2016 at 19:23, Richard Biener wrote: >> On Tue, Mar 22, 2016 at 2:45 PM, Prathamesh Kulkarni >> wrot

Re: [gimplefe] [gsoc16] Gimple Front End Project

2016-03-24 Thread Richard Biener
On March 24, 2016 6:30:29 PM GMT+01:00, David Malcolm wrote: >On Thu, 2016-03-24 at 14:31 +0100, Richard Biener wrote: >> On Thu, Mar 24, 2016 at 12:27 AM, Prasad Ghangal >> wrote: >> > Hi! >> > >> > I have attached my gsoc proposal, please review it.

Re: Compute all gimple statements in which a var is used

2016-03-28 Thread Richard Biener
On March 28, 2016 7:23:26 PM GMT+02:00, Cristina Georgiana Opriceana wrote: >Hello, > >In order to compute all the statements where a variable is used, is it >enough to rely on the SSA analysis? I tried to do something like this: > >FOR_EACH_LOCAL_DECL (cfun, i, var) { >for (unsigned int

Re: Compute all gimple statements in which a var is used

2016-04-05 Thread Richard Biener
On April 5, 2016 5:03:54 PM GMT+02:00, Jeff Law wrote: >On 04/05/2016 08:59 AM, Cristina Georgiana Opriceana wrote: >> On Mon, Mar 28, 2016 at 10:55 PM, Richard Biener >> wrote: >>> On March 28, 2016 7:23:26 PM GMT+02:00, Cristina Georgiana Opriceana > wrote: >&g

Re: Unnecessary check on phi node in tree if-conversion?

2016-04-07 Thread Richard Biener
On April 6, 2016 8:21:35 PM GMT+02:00, "Bin.Cheng" wrote: >On Wed, Apr 6, 2016 at 5:07 PM, Bin.Cheng >wrote: >> Hi, >> Function if_convertible_phi_p has below check on virtual PHI nodes: >> >> >> if (any_mask_load_store) >> return true; >> >> /* When there were no if-convertible stores,

Re: Some aliasing questions

2016-04-08 Thread Richard Biener
On April 8, 2016 8:10:16 PM GMT+02:00, Bill Schmidt wrote: >Hi, > >I ran into a couple of aliasing issues with a project I'm working on, >and have some questions. > >The first is an issue with TOC-relative addresses on PowerPC. These >are >symbolic addresses that are to be loaded from a fixed sl

Re: Unnecessary check on phi node in tree if-conversion?

2016-04-08 Thread Richard Biener
On April 8, 2016 4:55:59 PM GMT+02:00, "Bin.Cheng" wrote: >On Thu, Apr 7, 2016 at 10:30 AM, Richard Biener > wrote: >> On April 6, 2016 8:21:35 PM GMT+02:00, "Bin.Cheng" > wrote: >>>On Wed, Apr 6, 2016 at 5:07 PM, Bin.Cheng >>>wrote: >&g

Re: Some aliasing questions

2016-04-12 Thread Richard Biener
On April 12, 2016 5:11:45 PM GMT+02:00, Richard Henderson wrote: >On 04/11/2016 05:30 PM, Alan Modra wrote: >> Either way, when we split to >> set (reg tmp) (high (const (minus ((symbol_ref) (reg 2) >> .. mem (lo_sum (reg tmp) (const (minus ((symbol_ref) (reg 2) >> both high and

Re: How to check if two symbols are from same source unit during WPA ?

2016-04-12 Thread Richard Biener
On April 12, 2016 3:47:19 PM GMT+02:00, Prathamesh Kulkarni wrote: >Hi, >How to check if two symbols are from same source file during WPA ? >Is symbol1->lto_file_data == symbol2->lto_file_data true if symbol1 >and symbol2 are from same >source files ? Would that be a sufficient condition or do I

Re: How to check if two symbols are from same source unit during WPA ?

2016-04-14 Thread Richard Biener
On Thu, 14 Apr 2016, Prathamesh Kulkarni wrote: > On 12 April 2016 at 22:41, Richard Biener wrote: > > On April 12, 2016 3:47:19 PM GMT+02:00, Prathamesh Kulkarni > > wrote: > >>Hi, > >>How to check if two symbols are from same source file during WPA ? > &g

Re: [IMPORTANT] slots assigned

2016-04-14 Thread Richard Biener
On Thu, 14 Apr 2016, Giuseppe Scrivano wrote: > Hi everyone, > > We got 18 slots from Google. > > It is less than we expected so not everyone is going to be satisfied by > the split below. > > We have time until next week (deadline April 20, 2016 at 20:59 CEST) > to assign mentors to each proje

Re: How to check if two symbols are from same source unit during WPA ?

2016-04-14 Thread Richard Biener
On Thu, 14 Apr 2016, Prathamesh Kulkarni wrote: > On 14 April 2016 at 13:56, Richard Biener wrote: > > On Thu, 14 Apr 2016, Prathamesh Kulkarni wrote: > > > >> On 12 April 2016 at 22:41, Richard Biener wrote: > >> > On April 12, 2016 3:47:19 PM GMT+02:00

Re: How to check if two symbols are from same source unit during WPA ?

2016-04-14 Thread Richard Biener
On Thu, 14 Apr 2016, Ramana Radhakrishnan wrote: > > > > > What happens in practice? GCC doesn't put functions in random > > partitions. > > > > The data goes into a separate partition AFAIU - it means that all data > accesses are as though they are extern references which means there's > n

Re: Preventing preemption of 'protected' symbols in GNU ld 2.26 [aka should we revert the fix for 65248]

2016-04-18 Thread Richard Biener
On Fri, Apr 15, 2016 at 11:56 PM, H.J. Lu wrote: > On Fri, Apr 15, 2016 at 2:49 PM, Jeff Law wrote: >> >> So in the immediate term, if we drop the problem 65248 patch, we're back in >> a state where the DSO and the executable can have two different views of >> certain objects. In which case we r

Re: Vector registers on MIPS arch

2016-04-18 Thread Richard Biener
On Mon, Apr 11, 2016 at 1:54 PM, Ilya Enkovich wrote: > 2016-04-10 3:34 GMT+03:00 David Guillen Fandos : >> On 07/04/16 09:09, Ilya Enkovich wrote: >>> 2016-04-07 0:49 GMT+03:00 David Guillen Fandos : Thanks a lot Ilya! I managed to get it working. There were some bugs regardin

Re: Preventing preemption of 'protected' symbols in GNU ld 2.26 [aka should we revert the fix for 65248]

2016-04-19 Thread Richard Biener
On Tue, Apr 19, 2016 at 7:08 AM, Alan Modra wrote: > On Mon, Apr 18, 2016 at 07:59:50AM -0700, H.J. Lu wrote: >> On Mon, Apr 18, 2016 at 7:49 AM, Alan Modra wrote: >> > On Mon, Apr 18, 2016 at 11:01:48AM +0200, Richard Biener wrote: >> >> To summarize: there is cur

Re: Re: Why does gcc generate const local array on stack?

2016-04-21 Thread Richard Biener
On Thu, Apr 21, 2016 at 11:39 AM, Jonathan Wakely wrote: > On 21 April 2016 at 03:41, lh_mouse wrote: >> See this example: http://coliru.stacked-crooked.com/a/048b4aa5046da11b >> >> In this example the function is called recursively. > > See the original email you replied to: > > "I understand if

Re: GCC 6 symbol poisoning and c++ header usage is fragile

2016-04-21 Thread Richard Biener
On Thu, Apr 21, 2016 at 1:11 PM, Szabolcs Nagy wrote: > building gcc6 using musl based gcc6 fails with symbol poisoning error > (details at the end of the mail). > > the root cause is c++: c++ headers include random libc headers with > _GNU_SOURCE ftm so all sorts of unexpected symbols are defined

Re: internal_reference_types

2016-04-25 Thread Richard Biener
On Sat, Apr 23, 2016 at 1:23 PM, Eric Botcazou wrote: >> The function internal_reference_types appears to have been introduced >> exclusively for the Ada frontend. It is responsible for PR70759 (ada >> rts doesn't build with -mabi=ilp32). What purpose does it serve and >> what breaks when it is

Re: internal_reference_types

2016-04-25 Thread Richard Biener
On Mon, Apr 25, 2016 at 12:19 PM, Eric Botcazou wrote: >> What (Ada!) targets would it make a difference on? As it affects TYPE_SIZE >> it also affects layout (obviously), so I wonder how this can be an >> optimization (I assume it was intended to be one - likely for Adas fat >> pointer represent

Re: Bug maintenance

2016-04-28 Thread Richard Biener
On Thu, Apr 28, 2016 at 9:35 AM, David Wohlferd wrote: > As part of the work I've done on inline asm, I've been looking thru the bugs > for it. There appear to be a number that have been fixed or overtaken by > events over the years, but the bug is still open. > > Is closing some of these old bug

Re: Debugging offload compiler ICEs

2016-05-03 Thread Richard Biener
On Tue, May 3, 2016 at 12:47 PM, Thomas Schwinge wrote: > Hi! > > It is currently difficult to debug offloading compiler invocations. > These are actually lto1 front ends invoked from the target compilation's > collect2 process, via the respective offloading toolchain's mkoffload. > To the best of

Re: determining reassociation width

2016-05-03 Thread Richard Biener
On Mon, May 2, 2016 at 8:49 PM, Aaron Sawdey wrote: > So, my first cut at the function to select reassociation width for > power was modeled after what I saw i386 and aarch64 doing, which is to > return something based on the number of that kind of op we can do at > the same time: > > static int >

<    1   2   3   4   5   6   7   8   9   10   >