Re: [PATCH] SPARC: add mcpu=leon3v7 target

2014-09-01 Thread Sebastian Huber
Hello, what is the status for this patch? -- Sebastian Huber, embedded brains GmbH Address : Dornierstr. 4, D-82178 Puchheim, Germany Phone : +49 89 189 47 41-16 Fax : +49 89 189 47 41-09 E-Mail : sebastian.hu...@embedded-brains.de PGP : Public key available on request. Diese

RE: [PATCH][ARM] Fix -fcall-saved-rX for X 7 with -Os -mthumb

2014-09-01 Thread Thomas Preud'homme
Ping? -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Thomas Preud'homme Sent: Wednesday, August 20, 2014 9:28 AM To: gcc-patches@gcc.gnu.org Subject: [PATCH][ARM] Fix -fcall-saved-rX for X 7 This patch makes

Re: [PATCH] Fix libbacktrace and libiberty tests fail on sanitized GCC due to wrong link options.

2014-09-01 Thread Maxim Ostapenko
On 08/25/2014 07:21 PM, Bernhard Reutner-Fischer wrote: On 25 August 2014 16:23:54 CEST, Yury Gribov y.gri...@samsung.com wrote: On 08/25/2014 11:04 AM, Maxim Ostapenko wrote: This patch adds necessary flags to provide a linkage of these tests in bootstrap-asan case. I think you'll want to

[PATCH][PING] Fix Asan ICEs on unexpected types (PR62140, PR61897)

2014-09-01 Thread Yury Gribov
--- From: Yury Gribov Sent: Friday, August 22, 2014 12:47PM To: GCC Patches Cc: Jakub Jelinek, Marek Polacek, t...@alumni.duke.edu, sabrina...@gmail.com Subject: [PATCH] Fix Asan ICEs on unexpected types (PR62140, PR61897) On 08/22/2014 12:47 PM, Yury

Re: [PATCH][PING] Fix Asan ICEs on unexpected types (PR62140, PR61897)

2014-09-01 Thread Jakub Jelinek
On Mon, Sep 01, 2014 at 11:22:12AM +0400, Yury Gribov wrote: BTW regarding ChangeLog: should I mention both bugs (they are duplicates) or just one of them? You can mention both if you want (on separate lines), or just the one the other has been DUPed to. commit

Re: [PATCH] Fix libbacktrace and libiberty tests fail on sanitized GCC due to wrong link options.

2014-09-01 Thread Jakub Jelinek
On Mon, Sep 01, 2014 at 11:19:07AM +0400, Maxim Ostapenko wrote: libiberty/ChangeLog: 2014-09-01 Max Ostapenko m.ostape...@partner.samsung.com * testsuite/Makefile.in(LIBCFLAGS): Add LDFLAGS. Space before (. # Flags to pass down to makes which are built with the target

RE: [PATCH, ira] Miss checks in split_live_ranges_for_shrink_wrap

2014-09-01 Thread Zhenqiang Chen
-Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Jeff Law Sent: Saturday, August 30, 2014 4:54 AM To: Zhenqiang Chen; gcc-patches@gcc.gnu.org Subject: Re: [PATCH, ira] Miss checks in split_live_ranges_for_shrink_wrap On

Re: [PATCH, Cilk+] CIlk_for enabling in the compiler

2014-09-01 Thread Jakub Jelinek
On Fri, Aug 29, 2014 at 02:36:17PM +, Zamyatin, Igor wrote: Hi! The patch is another attempt to enable Cilk_for (see eg https://www.cilkplus.org/sites/default/files/open_specifications/Intel_Cilk_plus_lang_spec_1.2.htm) in the GCC compiler. Bootstrapped and regtested on x86_64. Is

Re: [PATCH] Fix libbacktrace and libiberty tests fail on sanitized GCC due to wrong link options.

2014-09-01 Thread Maxim Ostapenko
On 09/01/2014 11:29 AM, Jakub Jelinek wrote: On Mon, Sep 01, 2014 at 11:19:07AM +0400, Maxim Ostapenko wrote: libiberty/ChangeLog: 2014-09-01 Max Ostapenko m.ostape...@partner.samsung.com * testsuite/Makefile.in(LIBCFLAGS): Add LDFLAGS. Space before (. Ugh, sorry. # Flags to

Re: [PATCH] Fix byte size confusion in bswap pass

2014-09-01 Thread Jakub Jelinek
On Fri, Aug 29, 2014 at 02:51:57PM +0800, Thomas Preud'homme wrote: 2014-08-29 Thomas Preud'homme thomas.preudho...@arm.com * tree-ssa-math-opts.c (struct symbolic_number): Clarify comment about the size of byte markers. (do_shift_rotate): Fix confusion between host,

Re: [PATCH] libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc: Avoid writing '\0' out of string's border

2014-09-01 Thread Jakub Jelinek
On Thu, Aug 28, 2014 at 06:43:02AM +0800, Chen Gang wrote: 'max_len' is the maximized length of 'name', so for writing '\0' to name[max_len], it is out of string's border, need use max_len - 1 instead of. Depends on how the function's API is defined. And, at least in GCC sources that function

Re: [patch] propagate INSTALL Makefile variables down from gcc/

2014-09-01 Thread Olivier Hainque
On Aug 30, 2014, at 8:36 AM, Jeff Law wrote: * Makefile.in (FLAGS_TO_PASS): Propagate INSTALL, INSTALL_DATA, INSTALL_SCRIPT and INSTALL_PROGRAM as well. OK. Checked-in, Thanks :)

Re: [PATCH 2/2] Enable elimination of zext/sext

2014-09-01 Thread Jakub Jelinek
On Wed, Aug 27, 2014 at 12:25:14PM +0200, Uros Bizjak wrote: Something like following (untested) patch that also fixes the testcase perhaps? -- cut here-- Index: cfgexpand.c === --- cfgexpand.c (revision 214445) +++

Re: [PATCH] libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc: Avoid writing '\0' out of string's border

2014-09-01 Thread Chen Gang
On 9/1/14 16:41, Jakub Jelinek wrote: On Thu, Aug 28, 2014 at 06:43:02AM +0800, Chen Gang wrote: 'max_len' is the maximized length of 'name', so for writing '\0' to name[max_len], it is out of string's border, need use max_len - 1 instead of. Depends on how the function's API is defined.

Re: [PATCH 2/2] Enable elimination of zext/sext

2014-09-01 Thread Uros Bizjak
On Mon, Sep 1, 2014 at 10:47 AM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 27, 2014 at 12:25:14PM +0200, Uros Bizjak wrote: Something like following (untested) patch that also fixes the testcase perhaps? -- cut here-- Index: cfgexpand.c

Re: [PATCH] Fix find_inc in the scheduler (PR target/62025)

2014-09-01 Thread Jakub Jelinek
On Thu, Aug 14, 2014 at 05:59:56PM +0200, Bernd Schmidt wrote: On 08/14/2014 05:50 PM, Jakub Jelinek wrote: I hope the scheduler doesn't attempt to swap sp += 24 with flags setter because of the sp += 16 vs. flags setter dependency and sp += 24 vs. sp += 16 dependency, but I feel kind of

Re: [PATCH] SPARC: add mcpu=leon3v7 target

2014-09-01 Thread Daniel Hellstrom
Hello, I have not received any comments on the patch yet. Eric, do you have any thoughts? Best Regards, Daniel Hellstrom Software Section Head Aeroflex Gaisler AB Aeroflex Microelectronic Solutions – HiRel Kungsgatan 12 SE-411 19 Gothenburg, Sweden Phone: +46 31 7758657 dan...@gaisler.com

[PING][PATCH] Fix environment variables restoring in GCC testsuite.

2014-09-01 Thread Maxim Ostapenko
Ping. -Maxim Original Message Subject:[PATCH] Fix environment variables restoring in GCC testsuite. Date: Fri, 22 Aug 2014 14:39:16 +0400 From: Maxim Ostapenko m.ostape...@partner.samsung.com To: GCC Patches gcc-patches@gcc.gnu.org CC: Yury Gribov

Re: [PATCH] Move -fbuiltin from c.opt to common.opt and change it to common group

2014-09-01 Thread Richard Biener
On Sat, 30 Aug 2014, Kito Cheng wrote: Hi Richard: -fno-builtin is seem not only for the c family front-end, but also used in LTO now, so move it to common.opt and change it to `Common`. Please leave it in c-family and just add LTO to the set of supported languages.

Re: [PATCH] Fix find_inc in the scheduler (PR target/62025)

2014-09-01 Thread Bernd Schmidt
On 09/01/2014 11:03 AM, Jakub Jelinek wrote: On Thu, Aug 14, 2014 at 05:59:56PM +0200, Bernd Schmidt wrote: On 08/14/2014 05:50 PM, Jakub Jelinek wrote: I hope the scheduler doesn't attempt to swap sp += 24 with flags setter because of the sp += 16 vs. flags setter dependency and sp += 24 vs.

Re: [PATCH] fix hardreg_cprop to honor HARD_REGNO_MODE_OK.

2014-09-01 Thread Ilya Tocar
AVX512 added new 16 xmm registers (xmm16-xmm31). Those registers require evex encoding. Only 512-bit wide versions of instructions have evex encoding with avx512f, but all versions have it with avx512vl. Most instructions have same macroized pattern for 128/256/512 vector length. They all

Re: Fix libgomp crash without TLS (PR42616)

2014-09-01 Thread Varvara Rainchik
I've checked several tests, I see that for all tests failure occurs in function gomp_icv (). E.g.: icv-2: #0 gomp_icv (write=true) at ../../../libgomp/libgomp.h:494 #1 omp_set_num_threads (n=6) at ../../../libgomp/env.c:1282 #2 0x00404014 in tf () #3 0x0040d063 in start_thread

[PATCH] PR62120

2014-09-01 Thread Ilya Tocar
Hi, this patch adds checks for registers availability, when alternative/numeric name is used. Bootstraps/passes make-check on x86-64. Ok for trunk? ChangeLog: gcc/ 2014-09-01 Ilya Tocar ilya.to...@intel.com * varasm.c (decode_reg_name_and_count): Check availability for

Re: Fix libgomp crash without TLS (PR42616)

2014-09-01 Thread Jakub Jelinek
On Fri, Aug 29, 2014 at 10:40:57AM -0700, Richard Henderson wrote: On 08/06/2014 03:05 AM, Varvara Rainchik wrote: * libgomp.h (gomp_thread): For non TLS case create thread data. * team.c (create_non_tls_thread_data): New function. --- diff --git a/libgomp/libgomp.h

Re: [PATCH] PR62120

2014-09-01 Thread Jakub Jelinek
On Mon, Sep 01, 2014 at 02:43:14PM +0400, Ilya Tocar wrote: Hi, this patch adds checks for registers availability, when alternative/numeric name is used. Bootstraps/passes make-check on x86-64. Ok for trunk? ChangeLog: gcc/ 2014-09-01 Ilya Tocar ilya.to...@intel.com *

[PATCH] Avoid redundant work in SCCVN

2014-09-01 Thread Richard Biener
The following patch avoids doing tail-merging work when not in PRE. It also avoids dumping the shared_lookup_references vector and avoids reallocating when visiting calls. It also hides APIs of SCCVN that are not used outside. I'd like to get rid of the tail-merging - SCCVN interaction for GCC

Re: [PATCH 1/2] Add -B support to gcc-ar/ranlib/nm

2014-09-01 Thread Richard Biener
On Sun, Aug 31, 2014 at 4:51 PM, Andi Kleen a...@firstfloor.org wrote: From: Andi Kleen a...@linux.intel.com To use gcc-{ar,ranlib} for boot strap we need to add a -B option to the tool. Since ar has weird and unusual argument conventions implement the code by hand instead of using any

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Segher Boessenkool
On Mon, Sep 01, 2014 at 11:36:07AM +0800, Bin.Cheng wrote: In the testcase (and comment in the proposed patch), why is combine combining four insns at all? That means it rejected combining just the first three. Why did it do that? It is explicitly reject by below code in can_combine_p.

Re: [PATCH 2/2] Support slim LTO bootstrap

2014-09-01 Thread Richard Biener
On Sun, Aug 31, 2014 at 4:51 PM, Andi Kleen a...@firstfloor.org wrote: From: Andi Kleen a...@linux.intel.com Change the bootstrap-lto config file to use slim (non fat) LTO.. Speeds up the LTO bootstrap by ~18% on a 4 core system. This requires using gcc-ar/ranlib in post stage 1 builds, so

[patch] fix VXWORKSAE_TARGET_DIR not to designate a hardcoded /home subdir

2014-09-01 Thread Olivier Hainque
Hello, VxWorks environments all provide a few environment variables that help locate components such as header files or libraries. WIND_BASE typically designates an installation root and the regular VxWorks ports leverage this with: gcc/confg/vxworks.h: #define VXWORKS_ADDITIONAL_CPP_SPEC

Re: [patch] fix VXWORKSAE_TARGET_DIR not to designate a hardcoded /home subdir

2014-09-01 Thread Nathan Sidwell
On 09/01/14 08:34, Olivier Hainque wrote: We have been using a variant of this for years in our gcc 4.7 based compiler series, checked that the patch works fine with gcc-4.9 and that it applies as-is on the current mainline. OK to commit ? Yes, thanks -- Nathan Sidwell

[testsuite, i386] Fix typo in gcc.c-torture/execute/20010129-1.c

2014-09-01 Thread Rainer Orth
The dg conversion of gcc.c-torture/execute (thanks alot for tackling this, by the way) broke gcc.c-torture/execute/20010129-1.c on 32-bit x86: FAIL: gcc.c-torture/execute/20010129-1.c -O0 (test for excess errors) WARNING: gcc.c-torture/execute/20010129-1.c -O0 compilation failed to produce

Re: [patch] fix VXWORKSAE_TARGET_DIR not to designate a hardcoded /home subdir

2014-09-01 Thread Olivier Hainque
On Sep 1, 2014, at 2:45 PM, Nathan Sidwell wrote: OK to commit ? Yes, thanks Done. Thanks for your super prompt feedback. Olivier

[FORTRAN PATCH] Quash two -Wlogical-not-parentheses warnings

2014-09-01 Thread Marek Polacek
These two issues are the last ones blocking moving -Wlogical-not-parentheses to -Wall. I tried to fix them, but my attempts failed, so I opened PR62270. I hope we could for now go with the following; it only quiets the warning, but otherwise does not change the code. Hopefully someone familiar

Re: [FORTRAN PATCH] Quash two -Wlogical-not-parentheses warnings

2014-09-01 Thread Steven Bosscher
On Mon, Sep 1, 2014 at 3:23 PM, Marek Polacek wrote: diff --git gcc/fortran/interface.c gcc/fortran/interface.c index b210d18..68d8545 100644 --- gcc/fortran/interface.c +++ gcc/fortran/interface.c @@ -2014,7 +2014,7 @@ compare_parameter (gfc_symbol *formal, gfc_expr *actual, if

[PATCH] Speedup PRE

2014-09-01 Thread Richard Biener
This removes redundant folding code from reference phi-translation and it avoids allocating the translated operands vector if it is identical to the original one. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2014-09-01 Richard Biener rguent...@suse.de

[PATCH] Avoid small mallocs in PTA

2014-09-01 Thread Richard Biener
The following avoids the usually 1-element size vectors during constraint generation to be allocated on the heap. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-09-01 Richard Biener rguent...@suse.de * tree-ssa-struct-aliases.c

Re: [FORTRAN PATCH] Quash two -Wlogical-not-parentheses warnings

2014-09-01 Thread Marek Polacek
On Mon, Sep 01, 2014 at 03:28:42PM +0200, Steven Bosscher wrote: On Mon, Sep 1, 2014 at 3:23 PM, Marek Polacek wrote: diff --git gcc/fortran/interface.c gcc/fortran/interface.c index b210d18..68d8545 100644 --- gcc/fortran/interface.c +++ gcc/fortran/interface.c @@ -2014,7 +2014,7 @@

[C++ Patch] PR 58102 aka DR 1405

2014-09-01 Thread Paolo Carlini
Hi, I think that in order to implement the resolution we simply have to remove the check. Tested x86_64-linux. Thanks, Paolo. // /cp 2014-09-01 Paolo Carlini paolo.carl...@oracle.com DR 1405 PR c++/58102 * semantics.c

[PATCH] Avoid inserting dead code in PRE, do less work

2014-09-01 Thread Richard Biener
The following patch tries to work towards fixing PR62291 by moving NEW_SETS/AVAIL_OUT adding strictly to insert_into_preds_of_block and the value / expression we wanted to insert. If doing that for other unrelated expressions this may cause fake partial redundancies to be detected and dead code

Re: [C/C++ PATCH] Allow __atomic_always_lock_free in a static assert (PR c/62024)

2014-09-01 Thread Marek Polacek
On Wed, Aug 27, 2014 at 05:59:17PM +, Joseph S. Myers wrote: On Mon, 25 Aug 2014, Marek Polacek wrote: PR62024 reports that we can't use __atomic_always_lock_free in a static assert, as the FEs say it's not a constant expression. Yet the docs say that the result of

Re: [PATCH] Fix thinko in handle_alias_pairs (PR c/61271)

2014-09-01 Thread Marek Polacek
On Tue, Aug 19, 2014 at 01:50:41PM +0200, Marek Polacek wrote: Sure, especially in the cgraph code... I'll wait until next week or so, thanks. I've backported to 4.8/4.9 now. Marek

Re: [PATCH] Fix condition in is_aligning_offset (PR c/61271)

2014-09-01 Thread Marek Polacek
On Tue, Aug 26, 2014 at 10:04:36AM +0200, Richard Biener wrote: Should I backport this to 4.9/4.8 after a while? Yes please. Done. Marek

[PATCH] Power/GCC: Fix e500 vs non-e500 register save slot issue

2014-09-01 Thread Maciej W. Rozycki
Hi, This fixes an issue with the mode used for register save slots on the stack where e500 processor support is enabled along non-e500 multilibs. In that case the HARD_REGNO_CALLER_SAVE_MODE macro definition from gcc/config/rs6000/e500.h overrides one in gcc/config/rs6000/rs6000.h even for

Re: [PATCH] genemit: Print name of splitter to dumpfile

2014-09-01 Thread Segher Boessenkool
On Wed, Aug 27, 2014 at 03:29:40PM -0600, Jeff Law wrote: OK once you add a ChangeLog entry. Thanks. Erm, yes. Committed with this ChangeLog: 2014-09-01 Segher Boessenkool seg...@kernel.crashing.org * genemit.c: Include dumpfile.h. (gen_split): Print name of splitter

Re: [PATCH] PR62120

2014-09-01 Thread Ilya Tocar
Please mention the PR in the ChangeLog entry and add some testcases (can be gcc.target/i386/, but we should have it tested). Does this change anything on say register short sil __asm (sil); in 32-bit mode (when it IMHO should be rejected too?)? Do we support sil at all? In i386.h i see: /*

Re: [PATCH] GCC/test: Don't try ARM cortex-M check on non-ARM

2014-09-01 Thread Maciej W. Rozycki
On Mon, 1 Sep 2014, Mike Stump wrote: Executing on host: powerpc-linux-gnu-gcc arm_cortex_m25641.c -fno-diagnostics-show-caret -fdiagnostics-color=never -mthumb -S -o arm_cortex_m25641.s(timeout = 300) OK to apply? Ok. Applied, thanks. Maciej

Re: [PATCH 2/2] Support slim LTO bootstrap

2014-09-01 Thread Andi Kleen
-ffat-lto-objects is automatically active for hosts not supporting the linker plugin. Is gcc-ar$(exeext) unconditionally built and found on such hosts? Will gcc-ar work without finding a linker plugin on such hosts? Currently it errors out. I suppose that could be turned into a warning I

[patch] define CROSS = @CROSS in gcc/Makefile.in

2014-09-01 Thread Olivier Hainque
Hello, This patch is necessary for proper operation of a piece of the Ada Makefile fragment which tests the value of $(CROSS). @ substitutions aren't performed for the language specific Makefile fragments so using @CROSS directly isn't an option there. We have been using this for years and

[PATCH] Enable support for init/fini_array on cross compilers if glibc = 2.4

2014-09-01 Thread Tulio Magno Quites Machado Filho
Support for .preinit_array/.init_array/.fini_array has been available in glibc since version 2.4. [gcc] 2014-08-27 Tulio Magno Quites Machado Filho tul...@linux.vnet.ibm.com * acinclude.m4: Automatically detect if glibc supports .preinit_array/.init_array/.fini_array on cross

Re: [PATCH] GCC/test: Disable loop-19.c for classic FPU Power

2014-09-01 Thread Maciej W. Rozycki
On Sat, 30 Aug 2014, David Edelsohn wrote: 2014-08-30 Maciej W. Rozycki ma...@codesourcery.com * gcc.dg/tree-ssa/loop-19.c: Exclude classic FPU Power targets. Maciej gcc-test-power-loop-19.diff Index: gcc-fsf-trunk-quilt/gcc/testsuite/gcc.dg/tree-ssa/loop-19.c

[PINGv2][PATCH] Fix for PR 61875

2014-09-01 Thread Marat Zakirov
On 08/26/2014 12:47 PM, Marat Zakirov wrote: On 08/18/2014 07:37 PM, Marat Zakirov wrote: Hi there! I have a fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61875. This situation occurs when somebody decides to build GCC with -fexeptions and -frtti which are forbidden for libsanitizer.

Re: [PATCH] Add header guard to several header files.

2014-09-01 Thread Joseph S. Myers
On Mon, 1 Sep 2014, Kito Cheng wrote: gsyslimits.h: Likewise. This is incorrect. This is a very special header file, installed as part of the implementation of limits.h; it certainly can't use any user-namespace identifiers, and it's probably not safe for it to have header guards at

Re: [PINGv2][PATCH] Fix for PR 61875

2014-09-01 Thread Jakub Jelinek
On Mon, Sep 01, 2014 at 07:55:52PM +0400, Marat Zakirov wrote: I have a fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61875. This situation occurs when somebody decides to build GCC with -fexeptions and -frtti which are forbidden for libsanitizer. They get strange error (see bug above)

Re: [PATCH 1/2] Add -B support to gcc-ar/ranlib/nm

2014-09-01 Thread Andi Kleen
On Mon, Sep 01, 2014 at 01:34:17PM +0200, Richard Biener wrote: On Sun, Aug 31, 2014 at 4:51 PM, Andi Kleen a...@firstfloor.org wrote: From: Andi Kleen a...@linux.intel.com To use gcc-{ar,ranlib} for boot strap we need to add a -B option to the tool. Since ar has weird and unusual

[PATCH] gcc-ar: Turn plugin not found case into a warning

2014-09-01 Thread Andi Kleen
From: Andi Kleen a...@linux.intel.com Only give a warning when gcc-ar/nm/ranlib cannot find the plugin. In this case do not pass a plugin argument to the wrapped program. This should make it work on non linker plugin systems, so that the build system can use it unconditionally. gcc/:

Re: [PATCH] Add header guard to several header files.

2014-09-01 Thread Kito Cheng
Hi Joseph: Thanks for your review, I've reverted the part of gsyslimits.h, here is updated patch and ChangeLog :) bootstrap ok for x86_64 2014-09-01 Kito Cheng k...@0xlab.org except.h: Fix header guard. addresses.h: Add missing header guard. cfghooks.h: Likewise.

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-09-01 Thread Ulrich Weigand
Tom de Vries wrote: * ira-costs.c (ira_tune_allocno_costs): Use ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS to adjust costs. In debugging PR 53864 on s390x-linux, I ran into a weird change in behavior that occurs when the following part of this patch was checked in: - if

Re: [IRA] some code improvement and s390 support

2014-09-01 Thread Ulrich Weigand
Vladmir Makarov wrote: * config/s390/s390.h (IRA_COVER_CLASSES, IRA_HARD_REGNO_ADD_COST_MULTIPLIER(regno)): Define. In debugging PR 53854 I noticed a strange behavior in IRA costs that seems to trace back to the very first definition of the IRA_HARD_REGNO_ADD_COST_MULTIPLIER on

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Jeff Law
On 09/01/14 05:38, Segher Boessenkool wrote: On Mon, Sep 01, 2014 at 11:36:07AM +0800, Bin.Cheng wrote: In the testcase (and comment in the proposed patch), why is combine combining four insns at all? That means it rejected combining just the first three. Why did it do that? It is explicitly

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Jeff Law
On 08/31/14 06:18, Segher Boessenkool wrote: On Fri, Aug 29, 2014 at 11:58:37PM -0600, Jeff Law wrote: One could argue that this mess is a result of trying to optimize a reg that is set more than once.Though I guess that might be a bit of a big hammer. It works fine in other cases, and is

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Segher Boessenkool
On Mon, Sep 01, 2014 at 10:39:10AM -0600, Jeff Law wrote: On 09/01/14 05:38, Segher Boessenkool wrote: On Mon, Sep 01, 2014 at 11:36:07AM +0800, Bin.Cheng wrote: In the testcase (and comment in the proposed patch), why is combine combining four insns at all? That means it rejected combining

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Segher Boessenkool
On Mon, Sep 01, 2014 at 10:41:43AM -0600, Jeff Law wrote: On 08/31/14 06:18, Segher Boessenkool wrote: On Fri, Aug 29, 2014 at 11:58:37PM -0600, Jeff Law wrote: One could argue that this mess is a result of trying to optimize a reg that is set more than once.Though I guess that might be a

[PATCH 1/4] rs6000: Merge mulsi3 and muldi3

2014-09-01 Thread Segher Boessenkool
Nothing noteworthy in this patch, sorry. Tested as usual (powerpc64-linux, -m64,-m32,-m32/-mpowerpc64), no regressions. Is this okay to apply? Segher 2014-09-01 Segher Boessenkool seg...@kernel.crashing.org gcc/ * config/rs6000/rs6000.md (mulsi3, *mulsi3_internal1,

[PATCH 2/4] rs6000: Merge and improve highpart and widening muls

2014-09-01 Thread Segher Boessenkool
This is a little more complex. The highpart muls generate a truncate lshiftrt pattern that is not canonical when widening to two registers, so this doesn't optimise well with combine. This patch changes it to use the canonical subreg patterns instead, which means we need separate patterns for LE

[PATCH 3/4] rs6000: Merge zero_extend*si2 and zero_extend*di2

2014-09-01 Thread Segher Boessenkool
Don't group the insns based on extended size; use source size instead. Use the andi. insn rather than rldicl. and friends if possible. The instructions guarded by TARGET_LFIWZX do not need that guard: the constraints already guarantee the (correct!) condition. Tested as usual; no regressions.

[PATCH 4/4] rs6000: Merge extend*si2 and extend*di2

2014-09-01 Thread Segher Boessenkool
Mostly like zero_extend, with two twists. First, this patch allows to set dot on insn type exts. Now we are almost ready to remove insn type compare. Second, this makes lwa_operand reject memory if avoiding Cell microcode. That way we can easily merge the various extendsidi2 patterns (two had

[PATCH] Add -fno-instrument-function

2014-09-01 Thread Andi Kleen
From: Andi Kleen a...@linux.intel.com [This was an old patch of mine that has been posted before, but never made it in] This adds a new C/C++ option to force __attribute__((no_instrument_function)) on every function compiled. This is useful together with LTO. You may want to have the whole

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-09-01 Thread Joseph S. Myers
On Mon, 25 Aug 2014, DJ Delorie wrote: + for (i = 0; i NUM_INT_N_ENTS; i ++) +if (int_n_enabled_p[i]) + { + char buf[35+20+20]; + + /* These are used to configure the C++ library. */ + + if (!flag_iso || int_n_data[i].bitsize == POINTER_SIZE) + { +

[SH][committed] Fix PR 62312

2014-09-01 Thread Oleg Endo
Hi, The attached patch fixes PR 62312. It's actually obvious. Tested with 'make all-gcc' and checking that the added test case fails without the patch and passes with the patch. Committed to trunk as r214804 and to 4.9 as r214805. Cheers, Oleg gcc/ChangeLog: PR target/62312 *

Re: [PATCH, libcpp] SD-6 feature macros

2014-09-01 Thread Thiago Macieira
On Monday 18 August 2014 14:32:04 Thiago Macieira wrote: Hello The SD-6 [1] document keeps a list of built-in #defines that allow application and library writers know when certain language and library features have been implemented by the compiler. They are optional, since a compliant

Re: [PATCH 1/4] rs6000: Merge mulsi3 and muldi3

2014-09-01 Thread David Edelsohn
On Mon, Sep 1, 2014 at 3:49 PM, Segher Boessenkool seg...@kernel.crashing.org wrote: Nothing noteworthy in this patch, sorry. Tested as usual (powerpc64-linux, -m64,-m32,-m32/-mpowerpc64), no regressions. Is this okay to apply? Segher 2014-09-01 Segher Boessenkool

Re: [PATCH 2/4] rs6000: Merge and improve highpart and widening muls

2014-09-01 Thread David Edelsohn
On Mon, Sep 1, 2014 at 3:49 PM, Segher Boessenkool seg...@kernel.crashing.org wrote: This is a little more complex. The highpart muls generate a truncate lshiftrt pattern that is not canonical when widening to two registers, so this doesn't optimise well with combine. This patch changes it to

Re: [PATCH 3/4] rs6000: Merge zero_extend*si2 and zero_extend*di2

2014-09-01 Thread David Edelsohn
On Mon, Sep 1, 2014 at 3:49 PM, Segher Boessenkool seg...@kernel.crashing.org wrote: Don't group the insns based on extended size; use source size instead. Use the andi. insn rather than rldicl. and friends if possible. The instructions guarded by TARGET_LFIWZX do not need that guard: the

Re: [PATCH 4/4] rs6000: Merge extend*si2 and extend*di2

2014-09-01 Thread David Edelsohn
On Mon, Sep 1, 2014 at 3:49 PM, Segher Boessenkool seg...@kernel.crashing.org wrote: Mostly like zero_extend, with two twists. First, this patch allows to set dot on insn type exts. Now we are almost ready to remove insn type compare. Second, this makes lwa_operand reject memory if avoiding

[PATCH C++] - SD-6 Implementation Part 1 - __has_include.

2014-09-01 Thread Ed Smith-Rowland
Greetings, I am finally getting back to my SD-6 C++ features test work. This first part adds a __has_include__ built-in that will return true if a header exists. I also added __has_include_next__ as an extension. Clang has this extension. Both these built-ins will be wrapped in function

[PATCH C++] - SD-6 Implementation Part 2 - __has_include macro and C++ language feature macros.

2014-09-01 Thread Ed Smith-Rowland
Greetings, I am finally getting back to my SD-6 C++ features test work. This second part adds a __has_include function-like macro that will return true if a header exists. I also added a __has_include_next function-like macro as an extension. Clang has this extension. These macros just wrap

[PATCH C++] - SD-6 Implementation Part 3 - .

2014-09-01 Thread Ed Smith-Rowland
Greetings, I am finally getting back to my SD-6 C++ features test work. This adds feature macros to various libstdc++ components. The new version of SD-6 cleans up the shared_mutex noise. Some libraries that were moved to different tSen are still given macros as they are in the SD-6 draft.

[PATCH] support ggc hash_map and hash_set

2014-09-01 Thread tsaunders
From: Trevor Saunders tsaund...@mozilla.com Hi, There are still some issues to make this work really nicely, but this part is probably good enough its worth reviewing. For one thing you can't use ggc hash_map or set in front ends with some types or gengtype will decide to put the overloads of

[PATCH C++] - SD-6 Implementation

2014-09-01 Thread Ed Smith-Rowland
The Fourth installment, testing and other oddments will be sent tomorrow. The implementation of __has_cpp_attribute is underway and will come in a few days as a Fifth installment (modulo bugs this should be all). I have it working in C++. I feel though that it would be welcome as it is in

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Bin.Cheng
On Tue, Sep 2, 2014 at 1:50 AM, Segher Boessenkool seg...@kernel.crashing.org wrote: On Mon, Sep 01, 2014 at 10:39:10AM -0600, Jeff Law wrote: On 09/01/14 05:38, Segher Boessenkool wrote: On Mon, Sep 01, 2014 at 11:36:07AM +0800, Bin.Cheng wrote: In the testcase (and comment in the proposed

Re: [PATCH C++] - SD-6 Implementation

2014-09-01 Thread Thiago Macieira
On Monday 01 September 2014 21:58:47 Ed Smith-Rowland wrote: The Fourth installment, testing and other oddments will be sent tomorrow. The implementation of __has_cpp_attribute is underway and will come in a few days as a Fifth installment (modulo bugs this should be all). I have it working

[PATCH] Add direct support for Linux kernel __fentry__ patching

2014-09-01 Thread Andi Kleen
From: Andi Kleen a...@linux.intel.com The Linux kernel dynamically patches in __fentry__ calls in and out at runtime. This allows using function tracing for debugging in production kernels without (significant) performance penalty. For this it needs a table pointing to each __fentry__ call. The

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Jeff Law
On 09/01/14 13:15, Segher Boessenkool wrote: On Mon, Sep 01, 2014 at 10:41:43AM -0600, Jeff Law wrote: On 08/31/14 06:18, Segher Boessenkool wrote: On Fri, Aug 29, 2014 at 11:58:37PM -0600, Jeff Law wrote: One could argue that this mess is a result of trying to optimize a reg that is set more

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Jeff Law
On 09/01/14 11:50, Segher Boessenkool wrote: Another question is why is r84 set twice in the first place? Various transformations can set that kind of situation up. Sure -- but also lazy expanders can reuse a register instead of doing gen_reg_rtx. Which is why I asked :-) Which comes back

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Jeff Law
On 08/31/14 22:18, Bin.Cheng wrote: Note that i0..i4 need not be consecutive insns, so you'd have to walk the chain from the location with the death note to the proposed death note site. If between those locations there's another set of the same pseudo, then drop the note. Since this may be an

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Bin.Cheng
On Tue, Sep 2, 2014 at 11:40 AM, Jeff Law l...@redhat.com wrote: On 08/31/14 22:18, Bin.Cheng wrote: Note that i0..i4 need not be consecutive insns, so you'd have to walk the chain from the location with the death note to the proposed death note site. If between those locations there's

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-01 Thread Bin.Cheng
On Tue, Sep 2, 2014 at 11:28 AM, Jeff Law l...@redhat.com wrote: On 09/01/14 13:15, Segher Boessenkool wrote: On Mon, Sep 01, 2014 at 10:41:43AM -0600, Jeff Law wrote: On 08/31/14 06:18, Segher Boessenkool wrote: On Fri, Aug 29, 2014 at 11:58:37PM -0600, Jeff Law wrote: One could argue

Re: [PATCH C++] - SD-6 Implementation Part 1 - __has_include.

2014-09-01 Thread Mike Stump
On Sep 1, 2014, at 6:34 PM, Ed Smith-Rowland 3dw...@verizon.net wrote: (I sort of wonder why this wasn't added to the actual preprocessor 20 years ago.) :-) So can you hack the system at template expansion time yet? :-) std::shell“/bin/sh -c …” maybe?