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

2016-02-29 Thread Torvald Riegel
On Fri, 2016-02-26 at 20:10 +0100, 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, 2016 at 8:38 PM, Torvald Riegel > >

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

2016-02-29 Thread Torvald Riegel
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, 2016 at 8:38 PM, Torvald Riegel wrote: > >> > I'd like to know, based on the GCC experience, how impo

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Paul E. McKenney
On Mon, Feb 29, 2016 at 07:17:55PM +0100, Michael Matz wrote: > Hi, > > On Sat, 27 Feb 2016, Paul E. McKenney wrote: > > > But we do already have something very similar with signed integer > > overflow. If the compiler can see a way to generate faster code that > > does not handle the overflow c

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-29 Thread Jason Merrill
On 02/29/2016 10:13 AM, Michael Matz via cfe-commits wrote: Also this insistence that all of "trivially copyable" is already quite nicely specified in the C++ ABI is still not really relevant because C++ _is not the only language out there_. I'm not sure how often I have to repeat this until peo

Re: Compiler support for erasure of sensitive data

2016-02-29 Thread Marcos Diaz
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 function will be correctly cleared before returning. We think in i

Re: [llvm-dev] [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread James Y Knight
No, you really don't need undefined behavior in the standard in order to enable bug-finding. The standard could've (and still could...) make signed integer overflow "implementation-defined" rather than "undefined". Compilers would thus be required to have *some documented meaning* for it (e.g. wra

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Toon Moene
On 02/28/2016 05:13 PM, Linus Torvalds wrote: Yeah, let's just say that the original C designers were better at their job than a gaggle of standards people who were making bad crap up to make some Fortran-style programs go faster. The original C designers were defining a language that would ma

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Lawrence Crowl
On 2/28/16, Linus Torvalds wrote: > The fact is, undefined compiler behavior is never a good idea. Not for > serious projects. Actually, undefined behavior is essential for serious projects, but not for the reasons mentioned. If the language has no undefined behavior, then from the compiler's vi

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Michael Matz
Hi, On Sat, 27 Feb 2016, Paul E. McKenney wrote: > But we do already have something very similar with signed integer > overflow. If the compiler can see a way to generate faster code that > does not handle the overflow case, then the semantics suddenly change > from twos-complement arithmetic to

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Linus Torvalds
On Mon, Feb 29, 2016 at 9:37 AM, Michael Matz wrote: > >The important part is with induction variables controlling > loops: > > short i; for (i = start; i < end; i++) > vs. > unsigned short u; for (u = start; u < end; u++) > > For the former you're allowed to assume that the loop will termina

Re: [isocpp-parallel] Proposal for new memory_order_consume definition

2016-02-29 Thread Michael Matz
Hi, On Sun, 28 Feb 2016, Linus Torvalds wrote: > > So the kernel obviously is already using its own C dialect, that is > > pretty far from standard C. All these options also have a negative > > impact on the performance of the generated code. > > They really don't. They do. > Have you ever s

Re: [WWWDocs] Deprecate support for non-thumb ARM devices

2016-02-29 Thread Joel Sherrill
On 2/29/2016 5:37 AM, Kyrill Tkachov wrote: On 28/02/16 21:34, Joel Sherrill wrote: On February 28, 2016 3:20:24 PM CST, Gerald Pfeifer wrote: On Wed, 24 Feb 2016, Richard Earnshaw (lists) wrote: I propose to commit this patch later this week. + Support for revisions of the ARM arc

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-29 Thread Michael Matz
Hi, On Fri, 26 Feb 2016, H.J. Lu wrote: > >> It is clear to me now. Let's go with > >> > >> --- > >> An empty type is a type where it and all of its subobjects (recursively) > >> are of class, structure, union, or array type. No memory slot nor > >> register should be used to pass or return an

Re: [WWWDocs] Deprecate support for non-thumb ARM devices

2016-02-29 Thread Kyrill Tkachov
On 28/02/16 21:34, Joel Sherrill wrote: On February 28, 2016 3:20:24 PM CST, Gerald Pfeifer wrote: On Wed, 24 Feb 2016, Richard Earnshaw (lists) wrote: I propose to commit this patch later this week. + Support for revisions of the ARM architecture prior to ARMv4t has + been depr

GCC Bugzilla whines broken?

2016-02-29 Thread Alexander Monakov
Hello, Can anyone quickly confirm whether "whining" feature in the GCC Bugzilla is supposed to be functioning at the moment? The lastest thread I could find indicates that it is actually supposed to be working: https://gcc.gnu.org/ml/gcc/2010-09/msg00569.html . However I've tried to setup a whin

Re: Validity of SUBREG+AND-imm transformations

2016-02-29 Thread Kyrill Tkachov
Hi Jeff, On 26/02/16 21:24, Jeff Law wrote: On 02/26/2016 06:40 AM, Kyrill Tkachov wrote: Hi all, I'm looking at a case where some RTL passes create an RTL expression of the form: (subreg:QI (and:SI (reg:SI x1) (const_int 31)) 0) which I'd like to simplify to: (and:QI (subreg:QI