Re: [CHKP, PATCH] Fix LTO cgraph merge for instrumented functions

2015-04-03 Thread Ilya Enkovich
2015-04-02 20:01 GMT+03:00 Jan Hubicka hubi...@ucw.cz: Ping It would help if you add hubi...@ucw.cz to CC for IPA related patches. 2015-03-19 11:34 GMT+03:00 Ilya Enkovich enkovich@gmail.com: On 12 Mar 13:27, Ilya Enkovich wrote: Hi, Currently cgraph merge has several issues with

Re: [CHKP] Support returned bounds in thunks expand

2015-04-03 Thread Ilya Enkovich
2015-04-02 23:55 GMT+03:00 Jan Hubicka hubi...@ucw.cz: Ping 2015-03-10 13:12 GMT+03:00 Ilya Enkovich enkovich@gmail.com: Hi, Currentl we loose returned bounds when functions are merged. This patch fixes it by adding returne bounds support for cgraph_node::expand_thunk.

[PATCH] Fix PR ipa/65665

2015-04-03 Thread Martin Liška
Hello. Following patch fixes a new issue, ICE has disappeared on aarch64-linux machine and I was able to boostrap on the machine. Moreover, no new regression seen on x86_64-linux-pc. Ready for trunk? Thanks, Martin From b8463b8a7b2f6b652d6d9c3a2ece814ec5554619 Mon Sep 17 00:00:00 2001 From:

Re: [PATCH, CHKP] Fix ipa-comdats for instrumentation thunks

2015-04-03 Thread Ilya Enkovich
2015-04-02 20:04 GMT+03:00 Jan Hubicka hubi...@ucw.cz: Hi, With r221574 (https://gcc.gnu.org/ml/gcc-cvs/2015-03/msg00495.html) thunks don't get comdat groups assigned and this causes a failure in cgraph checker for instrumentation thunks. It happens because instrumentation thunk may

[PING, AArch64] Add long-call attribute and pragma interfaces

2015-04-03 Thread Yangfei (Felix)
Patch ping: https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01148.html Thanks.

Re: [CHKP] Support returned bounds in thunks expand

2015-04-03 Thread Ilya Enkovich
2015-04-02 22:42 GMT+03:00 Jeff Law l...@redhat.com: On 04/02/2015 08:49 AM, Ilya Enkovich wrote: Ping 2015-03-10 13:12 GMT+03:00 Ilya Enkovich enkovich@gmail.com: Hi, Currentl we loose returned bounds when functions are merged. This patch fixes it by adding returne bounds support

[PATCH, i386] PR63211 broken type-punning in avx* tests.

2015-04-03 Thread Ilya Tocar
Hi, I've looked into avx* tests and many of them (even those that don't fail in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63211) use invalid type punning. Properly fixing them looks like a lot of work, so I propose just adding -fno-strict-aliasing to them. This patch was obtained by running

Re: [PATCH, CHKP] Restore transparent alias chains

2015-04-03 Thread Ilya Enkovich
2015-04-02 21:48 GMT+03:00 Jan Hubicka hubi...@ucw.cz: On 03/20/2015 02:20 AM, Ilya Enkovich wrote: Hi, Identifiers read with input_identifier miss IDENTIFIER_TRANSPARENT_ALIAS bit. We always expect it for instrumentation clones, thus restore it input_cgraph_1. Bootstrapped and tested

Re: [CHKP] Never expand instrumentation thunks

2015-04-03 Thread Ilya Enkovich
2015-04-03 0:13 GMT+03:00 Jan Hubicka hubi...@ucw.cz: On 04/02/2015 02:11 PM, Jan Hubicka wrote: 2015-03-18 Ilya Enkovich ilya.enkov...@intel.com * cgraphunit.c (cgraph_node::expand_thunk): Don't expand instrumentation thunks. diff --git a/gcc/cgraphunit.c

Re: [PATCH, i386] PR63211 broken type-punning in avx* tests.

2015-04-03 Thread Uros Bizjak
On Fri, Apr 3, 2015 at 1:02 PM, Ilya Tocar tocarip.in...@gmail.com wrote: I've looked into avx* tests and many of them (even those that don't fail in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63211) use invalid type punning. Properly fixing them looks like a lot of work, so I propose just

Re: [PATCH, stage1][PR65443] Add transform_to_exit_first_loop_alt

2015-04-03 Thread Tom de Vries
On 27-03-15 15:10, Tom de Vries wrote: Hi, this patch fixes PR65443, a todo in the parloops pass for function transform_to_exit_first_loop: ... TODO: the common case is that latch of the loop is empty and immediately follows the loop exit. In this case, it would be better not to copy

Re: [RS6000] Fix 65576 regression

2015-04-03 Thread Alan Modra
On Thu, Apr 02, 2015 at 08:02:57PM -0400, David Edelsohn wrote: If the final alternative cannot occur, it should be removed as well. Alan, would you please test that change also? Tested powerpc64-linux and powerpc-linux no regressions. * config/rs6000/rs6000.md (extenddftf2_internal):

Re: [C++ Patch/RFC] PR 64085

2015-04-03 Thread Jason Merrill
OK. Jason

Re: [PATCH, CHKP] Fix cdtor merge for instrumented functions

2015-04-03 Thread Ilya Enkovich
On 02 Apr 22:21, Jan Hubicka wrote: Hi, This patch doesn't allow instrumentation thunks calls while merging constructors and destructors. Not isntrumented code is not affeceted. Bootstrapped and tested on x86_64-unknown-linux-gnu. OK for trunk? Thanks, Ilya -- gcc/

Re: [debug-early] equate new DIE with DW_AT_specificationto a previous declaration

2015-04-03 Thread Jason Merrill
On 03/18/2015 11:51 AM, Aldy Hernandez wrote: On 03/17/2015 07:12 PM, Jason Merrill wrote: Why are we outlining a DECL_EXTERNAL function? SRA has no restrictions on whether a function is DECL_EXTERNAL. Aha. So it seems that DECL_EXTERNAL is the wrong gate for equate_decl_number_to_die

Re: [debug-early] Handle specification of class scoped static functions

2015-04-03 Thread Jason Merrill
On 03/20/2015 08:11 PM, Aldy Hernandez wrote: + /* For class scoped static functions, the dumped early + version was the declaration, whereas the next time + around with a different context should be the + specification. In this case, avoid reusing

Re: [PATCH, i386] PR63211 broken type-punning in avx* tests.

2015-04-03 Thread Ilya Tocar
On 03 Apr 13:39, Uros Bizjak wrote: On Fri, Apr 3, 2015 at 1:02 PM, Ilya Tocar tocarip.in...@gmail.com wrote: I've looked into avx* tests and many of them (even those that don't fail in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63211) use invalid type punning. Properly fixing them

Re: [PATCH] Fix a test with bogus size_t type

2015-04-03 Thread Jakub Jelinek
On Thu, Apr 02, 2015 at 10:35:35AM +0200, Marek Polacek wrote: We are now more strict when accepting user-defined initializer_lists; in particular, we now require sizetype, not just any integral type. The following test failed with -m32, because it had a bogus type of size_t, with -m32 it

Re: [libstdc++/65033] Give alignment info to libatomic

2015-04-03 Thread Hans-Peter Nilsson
On Thu, 2 Apr 2015, Hans-Peter Nilsson wrote: Why then use __alignof(_M_i) (the object-alignment) instead of _S_alignment (the deduced alas insufficiently increased type-alignment)? (The immediate reason is that _S_alignment wasn't there until a later revision, but the gist of the question

Re: ipa-cp heuristic tweek

2015-04-03 Thread Ilya Enkovich
2015-03-31 15:32 GMT+03:00 Ilya Enkovich enkovich@gmail.com: 2015-03-29 18:43 GMT+03:00 Jan Hubicka hubi...@ucw.cz: +static bool +set_single_call_flag (cgraph_node *node, void *) +{ + cgraph_edge *cs = node-callers; + /* Local thunks can be handled transparently, skip them. */ +

Re: ipa-cp heuristic tweek

2015-04-03 Thread Jan Hubicka
2015-03-31 15:32 GMT+03:00 Ilya Enkovich enkovich@gmail.com: 2015-03-29 18:43 GMT+03:00 Jan Hubicka hubi...@ucw.cz: +static bool +set_single_call_flag (cgraph_node *node, void *) +{ + cgraph_edge *cs = node-callers; + /* Local thunks can be handled transparently, skip them. */

Re: [CHKP] Support returned bounds in thunks expand

2015-04-03 Thread Jan Hubicka
Yep, there is such code in place. It is done by insert_bndret_call_after. You are right, I should use the same interface for both these cases. That would be nice indeed. We should separate out and unify the code for porducing a wrapper call next stage1 (as Jeff mentions too). +

Re: [CHKP, PATCH] Fix LTO cgraph merge for instrumented functions

2015-04-03 Thread Jan Hubicka
Assembler name of instrumented function is a transparent alias of original function's name. Alias chains are not taken into account by analysis. Thus we see no conflict between instrumented function's name and a variable name but emit them with the same assembler name. To detect name

Fix ICE in speculative_call_info

2015-04-03 Thread Jan Hubicka
Hi, this patch fixes ordering issue where we try to resolve speculation while we are mid of its duplication. Bootstrapped/regtested x86_64-liinux, will commit it shortly. Honza PR ipa/65655 * ipa-inline-analysis.c (edge_set_predicate): Do not redirect speculative

Re: [PATCH] [ARM] Add support for the Samsung Exynos M1 processor

2015-04-03 Thread Ramana Radhakrishnan
On Fri, Apr 3, 2015 at 5:17 PM, Sebastian Pop seb...@gmail.com wrote: Hi, On Thu, Apr 2, 2015 at 5:51 PM, James Greenhalgh james.greenha...@arm.com wrote: Trunk is currently in Stage 4 development, these patches are fairly low-risk, but they are certainly not regression fixes. I'll defer to

Re: [PATCH, CHKP] Fix static const bounds creation in LTO

2015-04-03 Thread Ilya Enkovich
On 02 Apr 22:45, Jan Hubicka wrote: Hi, Current in LTO static const bounds are created as external symbol. It doesn't work in case original symbols were removed and privatized. This patch introduces a separate comdat symbol to be used in LTO. Bootstrapped and tested on

Re: [PATCH, CHKP] Fix cdtor merge for instrumented functions

2015-04-03 Thread Jan Hubicka
On 02 Apr 22:21, Jan Hubicka wrote: Hi, This patch doesn't allow instrumentation thunks calls while merging constructors and destructors. Not isntrumented code is not affeceted. Bootstrapped and tested on x86_64-unknown-linux-gnu. OK for trunk? Thanks, Ilya --

Re: [PATCH] Fix PR ipa/65665

2015-04-03 Thread Jan Hubicka
Hello. Following patch fixes a new issue, ICE has disappeared on aarch64-linux machine and I was able to boostrap on the machine. Moreover, no new regression seen on x86_64-linux-pc. Ready for trunk? Thanks, Martin From b8463b8a7b2f6b652d6d9c3a2ece814ec5554619 Mon Sep 17 00:00:00

Re: [PATCH, CHKP] Fix static const bounds creation in LTO

2015-04-03 Thread Jan Hubicka
Thanks a lot for looking into it! Seems originally I mostly got problems due to no DECL_WEAK for generated var, make_decl_one_only seems to work for my tests. Will run more testing to make sure it's OK. Here is a new patch version. Is it OK? Good ;) diff --git a/gcc/tree-chkp.c

Re: [PATCH, CHKP] Restore transparent alias chains

2015-04-03 Thread Jan Hubicka
I think this will lead to wrong code. At this time, we may have multple declarations sharing single assembler name (and thus IDENTIFIER_TRANSPARENT_ALIAS link). Think of case where one unit defines static function and other global function of the same name. We may end up renaming the

Re: [PATCH, CHKP] Fix ipa-comdats for instrumentation thunks

2015-04-03 Thread Jan Hubicka
2015-04-02 20:04 GMT+03:00 Jan Hubicka hubi...@ucw.cz: Hi, With r221574 (https://gcc.gnu.org/ml/gcc-cvs/2015-03/msg00495.html) thunks don't get comdat groups assigned and this causes a failure in cgraph checker for instrumentation thunks. It happens because instrumentation thunk

Re: [CHKP] Never expand instrumentation thunks

2015-04-03 Thread Jan Hubicka
2015-04-03 0:13 GMT+03:00 Jan Hubicka hubi...@ucw.cz: On 04/02/2015 02:11 PM, Jan Hubicka wrote: 2015-03-18 Ilya Enkovich ilya.enkov...@intel.com * cgraphunit.c (cgraph_node::expand_thunk): Don't expand instrumentation thunks. diff --git a/gcc/cgraphunit.c

Re: [PATCH] [ARM] Add support for the Samsung Exynos M1 processor

2015-04-03 Thread Sebastian Pop
Hi, On Thu, Apr 2, 2015 at 5:51 PM, James Greenhalgh james.greenha...@arm.com wrote: Trunk is currently in Stage 4 development, these patches are fairly low-risk, but they are certainly not regression fixes. I'll defer to port maintainers and release managers for the final say, but in my

Re: [libstdc++/65033] Give alignment info to libatomic

2015-04-03 Thread Richard Henderson
On 04/03/2015 07:13 AM, Jonathan Wakely wrote: +++ b/libstdc++-v3/include/std/atomic @@ -165,9 +165,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION struct atomic { private: - // Align 1/2/4/8/16-byte types the same as integer types of that size. + // Align 1/2/4/8/16-byte

Re: [PING, AArch64] Add long-call attribute and pragma interfaces

2015-04-03 Thread Sandra Loosemore
On 04/02/2015 11:59 PM, Yangfei (Felix) wrote: Patch ping: https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01148.html This patch needs documentation for the new attributes and pragmas before it can be committed. (Since this is a new feature I think it has to wait until stage 1, too, but

Another tweak of inline badness metric

2015-04-03 Thread Jan Hubicka
Hi, this patch adds combined_size (i.e. size of caller after inlining) to the denominator of the badness metric. This is based on observations in PR 65076. Old metric did use relative time speedup to get into sane range with fixed point math. I removed this after switching to sreals and this

Re: [PATCH, libmpx, i386, PR driver/65444] Pass '-z bndplt' when building dynamic objects with MPX

2015-04-03 Thread Joseph Myers
On Tue, 31 Mar 2015, Ilya Enkovich wrote: +library. It also passes '-z bndplt' to a linker in case it supports this +option (which is checked on libmpx configuration). Note that old versions +of linker may ignore option. Gold linker doesn't support '-z bndplt' +option. With no '-z bndplt'

Work around ICE in PR 65648

2015-04-03 Thread Jan Hubicka
Hi, the dealII compilation ICEs on check that verifies that projected size match the size after inlining. This check suffers from roundoff errors in corner cases and I believe it is what triggers here. Given that I have a reorg of this code to sreals scheduled for next stage1, I think we can just

[PATCH], PR target/65614, Prefer to use LFD on powerpc for constants

2015-04-03 Thread Michael Meissner
In my fix for PR target/65240, I removed the special -ffast-math code that delayed dealing with constants until reload time. In this patch, constants are now pushed to memory earlier, and the compiler uses LFS (load floating point single) to load double precision constants. When you use the LRA

Re: [PATCH], PR target/65614, Prefer to use LFD on powerpc for constants

2015-04-03 Thread David Edelsohn
On Fri, Apr 3, 2015 at 3:07 PM, Michael Meissner meiss...@linux.vnet.ibm.com wrote: In my fix for PR target/65240, I removed the special -ffast-math code that delayed dealing with constants until reload time. In this patch, constants are now pushed to memory earlier, and the compiler uses

Re: [PATCH] [ARM] Add support for the Samsung Exynos M1 processor

2015-04-03 Thread James Greenhalgh
On Fri, Apr 03, 2015 at 07:53:12PM +0100, Ramana Radhakrishnan wrote: On Fri, Apr 3, 2015 at 5:17 PM, Sebastian Pop seb...@gmail.com wrote: Hi, On Thu, Apr 2, 2015 at 5:51 PM, James Greenhalgh james.greenha...@arm.com wrote: Trunk is currently in Stage 4 development, these patches are

Re: [PATCH] [ARM] Add support for the Samsung Exynos M1 processor

2015-04-03 Thread Sebastian Pop
On Fri, Apr 3, 2015 at 4:09 PM, James Greenhalgh james.greenha...@arm.com wrote: On Fri, Apr 03, 2015 at 07:53:12PM +0100, Ramana Radhakrishnan wrote: On Fri, Apr 3, 2015 at 5:17 PM, Sebastian Pop seb...@gmail.com wrote: Hi, On Thu, Apr 2, 2015 at 5:51 PM, James Greenhalgh

Re: [libstdc++/65033] Give alignment info to libatomic

2015-04-03 Thread Jonathan Wakely
On 03/04/15 05:24 -0400, Hans-Peter Nilsson wrote: On Thu, 2 Apr 2015, Hans-Peter Nilsson wrote: Why then use __alignof(_M_i) (the object-alignment) instead of _S_alignment (the deduced alas insufficiently increased type-alignment)? Isn't the object aligned to _S_alignment? (The immediate

Re: [PR64164] drop copyrename, integrate into expand

2015-04-03 Thread Alexandre Oliva
On Mar 31, 2015, Jeff Law l...@redhat.com wrote: - if (var1 != var2) + if (var1 != var2 !optimize) return false; So when when the base variables are different and we are optimizing, this allows coalescing, right? Yeah. What I don't see is a corresponding change to var_map_base_init to

Re: Silence merge warnings on artificial types

2015-04-03 Thread Jakub Jelinek
On Thu, Apr 02, 2015 at 09:05:53PM +0200, Jakub Jelinek wrote: On Thu, Apr 02, 2015 at 09:23:03PM +0300, Ilya Verbin wrote: Hmm, libgomp.c++/target-3.C still fails. Here is what I see in need_assembler_name_p: Guess we should make the .omp_data_s.* types TYPE_ARTIFICIAL too. Will take

Re: [PR64164] drop copyrename, integrate into expand

2015-04-03 Thread Alexandre Oliva
On Mar 31, 2015, Richard Biener richard.guent...@gmail.com wrote: + || !(SSA_NAME_IS_DEFAULT_DEF (var) + || (param_defaults + bitmap_bit_p (param_defaults, part This looks somewhat awkward to me ;) Is it really

Re: [RS6000] Fix 65576 regression

2015-04-03 Thread David Edelsohn
On Fri, Apr 3, 2015 at 8:51 AM, Alan Modra amo...@gmail.com wrote: On Thu, Apr 02, 2015 at 08:02:57PM -0400, David Edelsohn wrote: If the final alternative cannot occur, it should be removed as well. Alan, would you please test that change also? Tested powerpc64-linux and powerpc-linux no

Re: [libcpp] Fix ICE with conditional macros (PR preprocessor/61977)

2015-04-03 Thread Jason Merrill
OK. Jason