[PATCH] S/390: Fix FPR restores with shrink wrapping on 31bit zarch

2014-03-26 Thread Andreas Krebbel
a miscompile of the 433.milc SpecCPU testcase. Bye, -Andreas- 2014-03-26 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c (s390_can_use_return_insn): Check for call-saved FPRs on 31 bit. 2014-03-26 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390

[PATCH] S/390: Don't include 32 bit fp to int routines for 64 bit libgcc

2014-03-27 Thread Andreas Krebbel
regressions: FAIL: gcc.c-torture/execute/pr49218.c compilation, -O0 FAIL: gcc.dg/torture/fp-int-convert-timode.c -O0 (test for excess errors) Bye, -Andreas- 2014-03-27 Andreas Krebbel andreas.kreb...@de.ibm.com * configure.ac: Set host_address for S/390. * configure

Re: [PATCH] S/390: Don't include 32 bit fp to int routines for 64 bit libgcc

2014-03-27 Thread Andreas Krebbel
On 27/03/14 15:15, Jakub Jelinek wrote: Does this fix the: -__fixdfti@@GCC_3.0 FUNC GLOBAL DEFAULT -__fixsfti@@GCC_3.0 FUNC GLOBAL DEFAULT -__fixtfti@@GCC_4.1.0 FUNC GLOBAL DEFAULT -__fixunsdfti@@GCC_3.0 FUNC GLOBAL DEFAULT -__fixunssfti@@GCC_3.0 FUNC GLOBAL DEFAULT -__fixunstfti@@GCC_4.1.0

[PATCH] S/390: Make S/390 a logical_op_short_circuit target

2014-03-28 Thread Andreas Krebbel
^ 1 FAIL: gcc.dg/tree-ssa/forwprop-28.c scan-tree-dump-times forwprop1 Replaced 8 FAIL: gcc.dg/tree-ssa/vrp87.c scan-tree-dump vrp2 Folded into: if.* FAIL: gcc.dg/tree-ssa/vrp87.c scan-tree-dump cddce2 Deleting.*_Bool.*; Bye, -Andreas- 2014-03-28 Andreas Krebbel andreas.kreb...@de.ibm.com

[PATCH] Adjust builtin-bswap-6/7

2014-04-04 Thread Andreas Krebbel
. Ideally we would be able to do the folding also with the math trick but it is probably not that easy since we have already lost the information that in the end all we need is a 0 or a 1. Ok? Bye, -Andreas- 2014-04-04 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/builtin-bswap-6.c

[PATCH] S/390: Add a (not ...) splitter to help combine

2014-04-04 Thread Andreas Krebbel
with the attached patch. Bootstrap and regtest clean on s390x. Bye, -Andreas- 2014-04-04 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md: Add a splitter for NOT rtx. diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md index 7d9d1ad..b17c1fa 100644 --- a/gcc/config

Re: [PATCH] Adjust builtin-bswap-6/7

2014-04-07 Thread Andreas Krebbel
On Mon, Apr 07, 2014 at 04:19:06PM +0200, Richard Biener wrote: The adjusted testcases now fail on x86_64/i?86 at least. See PR60776. They seem to require at least -O2 on x86 with that change. Ok to apply? diff --git a/gcc/testsuite/gcc.dg/builtin-bswap-6.c

Re: [PATCH] Adjust builtin-bswap-6/7

2014-04-08 Thread Andreas Krebbel
On 04/08/2014 10:41 AM, Jakub Jelinek wrote: On Tue, Apr 08, 2014 at 10:26:30AM +0200, Richard Biener wrote: On Mon, Apr 7, 2014 at 6:22 PM, Andreas Krebbel kreb...@linux.vnet.ibm.com wrote: On Mon, Apr 07, 2014 at 04:19:06PM +0200, Richard Biener wrote: The adjusted testcases now fail

Re: [PATCH] Adjust builtin-bswap-6/7

2014-04-08 Thread Andreas Krebbel
On 04/08/2014 11:12 AM, Jakub Jelinek wrote: On Tue, Apr 08, 2014 at 10:53:19AM +0200, Andreas Krebbel wrote: On 04/08/2014 10:41 AM, Jakub Jelinek wrote: On Tue, Apr 08, 2014 at 10:26:30AM +0200, Richard Biener wrote: On Mon, Apr 7, 2014 at 6:22 PM, Andreas Krebbel kreb...@linux.vnet.ibm.com

Re: [PATCH] Adjust builtin-bswap-6/7

2014-04-08 Thread Andreas Krebbel
Hi, what about that one? Tested on x86_64, s390, and s390x. Bye, -Andreas- 2014-04-08 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/builtin-bswap-6.c: Use -mbranch-cost=0 for s390. * gcc.dg/builtin-bswap-7.c: Likewise. Revert 2014-04-04 Andreas

Re: [PATCH] Adjust builtin-bswap-6/7

2014-04-08 Thread Andreas Krebbel
the return {1,2} and have -O2. I've just committed the following patch: 2014-04-08 Andreas Krebbel andreas.kreb...@de.ibm.com PR rtl-optimization/60776 * gcc.dg/builtin-bswap-6.c: Use -mbranch-cost=0 for s390. * gcc.dg/builtin-bswap-7.c: Likewise. * gcc.dg/builtin

[PATCH] Adjust hoist-register-pressure* testcases to work for S/390

2014-04-10 Thread Andreas Krebbel
. On 31 bit we are out of luck. The attached patch turns the int types into long for these testcases and disables them for s390 31bit. I've verified that they still succeed on power and x86_64. Ok? Bye, -Andreas- 2014-04-10 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/hoist

[Committed] S/390: Fix htm-builtins-compile-1 for 31 bit

2014-04-10 Thread Andreas Krebbel
Hi, the htm-builtins-compile-1.c fails on 31 bit due to compile warnings. Fixed with the attached patch. Bye, -Andreas- 2014-04-10 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390/htm-builtins-compile-1.c: Replace long long with long. diff --git a/gcc

[Committed] S/390: Fix htm target check

2014-04-11 Thread Andreas Krebbel
Hi, I've just applied the attached patch to mainline and 4.8 branch. The patch makes htm target check to also cover the required assembler support and does some minor cleanup work. Bye, -Andreas- 2014-04-11 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390/htm-nofloat-1

Re: r201440 - in /branches/gcc-4_8-branch: gcc/Chan...

2014-04-14 Thread Andreas Krebbel
it! Bye, -Andreas- 2014-04-14 Andreas Krebbel andreas.kreb...@de.ibm.com * acinclude.m4: Move s390* case from RTM to HTM check. * configure: Regenerate. Index: libitm/configure === --- libitm/configure

[PATCH] New target hook: keep_leaf_when_profiled

2014-04-29 Thread Andreas Krebbel
? Bye, -Andreas- 2014-04-29 Andreas Krebbel andreas.kreb...@de.ibm.com * target.def: Add new target hook. * doc/tm.texi: Regenerate. * targhooks.h (default_keep_leaf_when_profiled): Add prototype. * targhooks.c (default_keep_leaf_when_profiled): New function

Re: [PATCH] New target hook: keep_leaf_when_profiled

2014-04-30 Thread Andreas Krebbel
On Wed, Apr 30, 2014 at 12:18:08PM +0200, Steven Bosscher wrote: On Tue, Apr 29, 2014 at 2:54 PM, Andreas Krebbel wrote: diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index b8ca17e..937c2d5 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -4953,6 +4953,10 @@ Define this macro

[PATCH] longlong.h: Add prototype for udiv_w_sdiv

2014-01-29 Thread Andreas Krebbel
Hi, the attached patch adds a prototype for __udiv_w_sdiv to longlong.h if needed. This fixes tons of build warnings on s390 32 bit in glibc. Ok? Bye, -Andreas- 2014-01-29 Andreas Krebbel andreas.kreb...@de.ibm.com * longlong.h: Add __udiv_w_sdiv prototype. diff --git a/include

[PATCH] S/390: Use the libgcc fp2int routine also in the biarch build

2014-01-30 Thread Andreas Krebbel
Andreas Krebbel andreas.kreb...@de.ibm.com * config.host: Include t-floattodi also for s390x. * config/s390/32/_fixdfdi.c: Omit in 64 bit mode. * config/s390/32/_fixsfdi.c: Likewise. * config/s390/32/_fixtfdi.c: Likewise. * config/s390/32/_fixunsdfdi.c: Likewise

[PATCH] S/390: Throw FE_INVALID exception in the fp2int libgcc routines

2014-01-30 Thread Andreas Krebbel
after waiting a few days for comments. Bye, -Andreas- 2014-01-30 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/32/_fixdfdi.c: Throw invalid exception if number cannot be represented. * config/s390/32/_fixsfdi.c: Likewise. * config/s390/32/_fixtfdi.c

[PING] [PATCH] longlong.h: Add prototype for udiv_w_sdiv

2014-02-04 Thread Andreas Krebbel
On 29/01/14 11:19, Andreas Krebbel wrote: Hi, the attached patch adds a prototype for __udiv_w_sdiv to longlong.h if needed. This fixes tons of build warnings on s390 32 bit in glibc. Ok? Bye, -Andreas- 2014-01-29 Andreas Krebbel andreas.kreb...@de.ibm.com

Re: [PATCH] S/390: Throw FE_INVALID exception in the fp2int libgcc routines

2014-02-06 Thread Andreas Krebbel
Here is a new version of the patch not limited to NaNs and Infs anymore. Bootstrapped and regtested on s390 with various options. -Andreas- 2014-02-06 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/32/_fixdfdi.c: Throw invalid exception if number cannot

Re: [s390] Split out pre-prologue rewrite into separate pass

2014-02-07 Thread Andreas Krebbel
On 04/02/14 12:14, Richard Sandiford wrote: s390_emit_prologue performs some optimisations on the function before emitting the prologue. It also rewrites constant pool accesses to make the base register explicit. Doing this in the prologue pattern makes the interaction with direct returns

Re: [s390] Fix some epilogue CFA notes

2014-02-07 Thread Andreas Krebbel
On 04/02/14 12:19, Richard Sandiford wrote: This patch fixes the CFA notes used when an epilogue restores a GPR from an FPR. It also makes sure that s390_optimize_prologue preserves the CFA information. Tested in the same way as the previous patch. OK to install? Thanks, Richard

Re: [s390] Add return and simple_return patterns

2014-02-07 Thread Andreas Krebbel
On 04/02/14 12:27, Richard Sandiford wrote: This patch adds return and simple_return patterns to the s390 backend, which eanbles shrink-wrapping and conditional returns to be used. Perhaps the only subtle thing is the handling of call-clobbered base registers. The idea is to emit the

[PATCH] optabs: Allow CAS expanders to fail

2014-02-07 Thread Andreas Krebbel
into maybe_expand_insn to allow other alternatives to be chosen when the expander fails. The patch is required to fix many c11-atomic* testcases on S/390. gcc.dg/atomic/c11-atomic-exec-5.c still fails since TARGET_ATOMIC_ASSIGN_EXPAND_FENV is not defined yet. Ok for mainline? 2014-02-07 Andreas Krebbel

[PATCH] S/390: Reject misaligned operands in atomic expanders

2014-02-07 Thread Andreas Krebbel
to be case for the compare and swap code. Fixed with a separate patch. I'll commit the patch after the optab fix is in. This fixes 45 atomic fails in the testsuite on s390x. Bye, -Andreas- 2014-02-07 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md (atomic_loadmode

[PATCH] sync builtin testcase: Add alignment attribute on TImode variable

2014-02-07 Thread Andreas Krebbel
from the beginning in order to enable our atomic hardware instructions. Does that sound reasonable? Ok for mainline? Bye, -Andreas- 2014-02-07 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/gcc-have-sync-compare-and-swap.c: Align the 16 byte variable used for atomic

Re: [PATCH] PR60092 - lower posix_memalign to make align-info accessible

2014-02-12 Thread Andreas Krebbel
On 07/02/14 10:33, Richard Biener wrote: + static void + lower_builtin_posix_memalign (gimple_stmt_iterator *gsi) + { + gimple stmt = gsi_stmt (*gsi); + tree pptr = gimple_call_arg (stmt, 0); + tree align = gimple_call_arg (stmt, 1); + tree ptr = create_tmp_reg (ptr_type_node,

Re: [PATCH] S390: Add test for hotpatching of nested functions

2014-02-13 Thread Andreas Krebbel
2014-02-13 Dominik Vogt v...@linux.vnet.ibm.com * gcc.target/s390/hotpatch-compile-8.c: New test Ok committed. Thanks! -Andreas-

Re: [PATCH] (gcc-4.8) S390: Fix crash with -mhotpatch and gfortran

2014-02-13 Thread Andreas Krebbel
2014-02-12 Dominik Vogt v...@linux.vnet.ibm.com * config/s390/s390.c (s390_asm_output_function_label): fix crash caused by bad second argument to warning_at() with -mhotpatch and nested functions (e.g. with gfortran) Applied. Thanks! -Andreas-

Re: [PATCH] S390: Fix crash with -mhotpatch and gfortran

2014-02-13 Thread Andreas Krebbel
2014-02-12 Dominik Vogt v...@linux.vnet.ibm.com * config/s390/s390.c (s390_asm_output_function_label): fix crash caused by bad second argument to warning_at() with -mhotpatch and nested functions (e.g. with gfortran) Applied. Thanks! -Andreas-

Re: [S390] Fix scheduling performance regression from my shrink-wrap patches

2014-02-20 Thread Andreas Krebbel
On 19/02/14 16:35, Richard Sandiford wrote: gcc/ * config/s390/s390.c (s390_mainpool_start): Emit the main_pool instruction at the start of the function if the base register is call-clobbered. Revert 2014-02-07 change. (s390_early_mach): Don't initialize the base

[PATCH] BZ60501: Add addptr optab

2014-03-13 Thread Andreas Krebbel
Hi, fixes the LRA problems described in: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60501 and http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57604 Bootstrapped and regtested on s390, s390x, and x86_64. Ok? Bye, -Andreas- 2014-03-13 Andreas Krebbel andreas.kreb...@de.ibm.com PR rtl

Re: [PATCH] BZ60501: Add addptr optab

2014-03-14 Thread Andreas Krebbel
On 14/03/14 11:02, Eric Botcazou wrote: This would suggest that you can use the pattern also for performing a normal add in case the condition code is not needed afterwards but this isn't correct for s390 31 bit where an address calculation is actually something different. Then you should

Re: [PATCH] BZ60501: Add addptr optab

2014-03-24 Thread Andreas Krebbel
Andreas Krebbel andreas.kreb...@de.ibm.com PR rtl-optimization/60501 * optabs.def (addptr3_optab): New optab. * optabs.c (gen_addptr3_insn, have_addptr3_insn): New function. * doc/md.texi (addptrm3): Document new RTL standard expander. * expr.h (gen_addptr3_insn

Re: [PATCH] Correct typos in gccint.texi.

2014-03-25 Thread Andreas Krebbel
On Thu, Mar 20, 2014 at 06:52:13AM +0100, Dominik Vogt wrote: 2014-03-20 Dominik Vogt v...@linux.vnet.ibm.com * doc/generic.texi: Correct typos. Applied. Thanks! -Andreas-

Re: [s390] RFA: Use new rtl iterators in s390_loop_unroll_adjust

2014-10-27 Thread Andreas Krebbel
On 10/25/2014 12:10 PM, Richard Sandiford wrote: This is part of a series to remove uses of for_each_rtx from the ports. I think we only want to consider MEMs in patterns here, not MEMs in notes etc. (Not sure why I fixed it for s390 but not for x86...) Tested by making sure there were no

[PATCH] S/390: Implement SD-TD conversions

2014-09-10 Thread Andreas Krebbel
Hi, on S/390 we have DFP conversions for SD-DD and DD-TD but miss SD-TD. The attached patch expands the missing patterns to SD-DD-TD and TD-DD-SD to avoid library calls being emitted. No regressions on s390 and s390x. Bye, -Andreas- 2014-09-10 Andreas Krebbel andreas.kreb...@de.ibm.com

[PATCH] S/390: PR62662 Fix r14 restore optimization

2014-09-10 Thread Andreas Krebbel
Hi, this fixes a problem with the prologue optimization in machine dependent reorg. For more details please see PR62662. No regressions on s390 and s390x. -Andreas- 2014-09-10 Andreas Krebbel andreas.kreb...@de.ibm.com PR target/62662 * config/s390/s390.c

Re: [Patch sh] Fixup use of constraints in define_split

2014-09-19 Thread Andreas Krebbel
On 09/19/2014 02:59 PM, James Greenhalgh wrote: Hi, After https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01615.html we error on the use of constraints in define_splits, define_expands and define_peephole2s. These are never looked at by the compiler, and so have no reason to be set. I

[Committed] S/390: Enable CCAmode for more adds on z9

2012-12-04 Thread Andreas Krebbel
Hi, I've committed the attached patch which enables the CC of x+constant instructions to be used in more situations on z9 or higher. No regressions on s390 and s390x (--with-arch=z196). Bye, -Andreas- 2012-12-04 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[PATCH] Bugfix: Additional parameter for canonicalize comparison

2012-12-06 Thread Andreas Krebbel
for their approval. Ok for mainline? Bye, -Andreas- 2012-12-06 Andreas Krebbel andreas.kreb...@de.ibm.com * target.def: Define canonicalize_comparison hook. * targhooks.h (default_canonicalize_comparison): New prototype. * targhooks.c (default_canonicalize_comparison): New

[PATCH] SPU: Fix build failure on 64 bit hosts

2012-12-10 Thread Andreas Krebbel
. Interpreting the term operands as condition fails when it is evaluated on a 64 bit host. Turning it into a comparison fixes this for me. Ok to apply? Bye, -Andreas- 2012-12-10 Andreas Krebbel andreas.kreb...@de.ibm.com * config/spu/spu.md: Replace operands with operands != NULL

[Committed] S/390: Check execute target patterns for validity

2012-12-11 Thread Andreas Krebbel
from it and checks the insn for validity. Bootstrapped and regtested on s390 and s390x. Comitted to mainline. Bye, -Andreas- 2012-12-11 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/predicates.md (execute_operation): New predicate. * config/s390/s390.md (*execute_rl

Re: [PATCH] Bugfix: Additional parameter for canonicalize comparison

2012-12-11 Thread Andreas Krebbel
On 11/12/12 00:12, Kaz Kojima wrote: Andreas Krebbel kreb...@linux.vnet.ibm.com wrote: Index: gcc/config/sh/sh.c === *** gcc/config/sh/sh.c.orig --- gcc/config/sh/sh.c [snop] ! static void sh_canonicalize_comparison (enum

Re: [PATCH] Bugfix: Additional parameter for canonicalize comparison

2012-12-11 Thread Andreas Krebbel
On 11/12/12 10:16, Kaz Kojima wrote: Andreas Krebbel kreb...@linux.vnet.ibm.com wrote: urgs - I'll fix this. Is the patch ok with that change for sh? Yes, the sh portion is OK with that change, though it would be better to fix the users of sh_canonicalize_comparison instead of its wrapper

[PATCH] Bugfix: Additional parameter for canonicalize comparison

2012-12-12 Thread Andreas Krebbel
Hi Richard, is the attached patch ok for ARM? Bye, -Andreas- 2012-12-12 Andreas Krebbel andreas.kreb...@de.ibm.com * target.def: Define canonicalize_comparison hook. * targhooks.h (default_canonicalize_comparison): New prototype. * targhooks.c

Re: [PATCH 4/7] s390: Add mode attribute for mode bitsize

2012-12-14 Thread Andreas Krebbel
On Thu, Aug 09, 2012 at 07:31:58PM -0700, Richard Henderson wrote: Constant fold, and less typing than, GET_MODE_BITSIZE with another mode substitution. I did just a minor change in order to avoid a warning in the last hunk. Tested on s390 and s390x with different arch flags. Please apply to

Re: [PATCH 5/7] s390: Implement extzv for z10

2012-12-14 Thread Andreas Krebbel
I've changed the s390_extzv_shift_ok function and have added extzv patterns for zEC12. I also tried to implement an extzvsi expander but ran into some issues which need to be fixed first. Tested on s390 and s390x with z196 and zEC12. Please apply to mainline. Thanks! Bye, -Andreas-

Re: [PATCH 7/7] s390: Generate rnsbg

2012-12-14 Thread Andreas Krebbel
I did the change suggested by Uli in the *insv_rnsbg_srl pattern. Tested on s390 and s390x with z196 and zEC12. Please apply to mainline. Thanks! Bye, -Andreas- gcc/config/s390/s390.md | 55 1 file changed, 55 insertions(+) Index:

[PING] Bugfix: Additional parameter for canonicalize comparison

2012-12-19 Thread Andreas Krebbel
Hi, are the ARM parts of the patch below ok for mainline? I did a compile test with a cross. Bye, -Andreas- Original Message Subject: [PATCH] Bugfix: Additional parameter for canonicalize comparison Date: Wed, 12 Dec 2012 12:23:14 +0100 From: Andreas Krebbel kreb

[Committed] S/390: Fix PR55718: Handle GOTENT + constant for pic addresses

2013-01-10 Thread Andreas Krebbel
Hi, I've committed the attached patch which fixes PR 55718 by adding support for GOTENT + constant to legitimize_pic_address in the S/390 backend. The patch also does some rearrangements of the whole function in order to avoid some duplicate code. Bye, -Andreas- 2013-01-10 Andreas Krebbel

[Committed] S/390: Fix problems with literal pools refs

2011-03-04 Thread Andreas Krebbel
references as addresses in order to prevent that. Bootstrapped on s390 and s390x. This together with [PATCH] recog.c: Fix RTX unsharing in change groups http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00187.html fixes 54 testcases on s390. Committed to mainline. Bye, -Andreas- 2011-03-04 Andreas

Re: [PATCH] Fix s390_delegitimize_address (PR debug/48043)

2011-03-10 Thread Andreas Krebbel
On 03/10/2011 04:11 PM, Jakub Jelinek wrote: Ok for trunk? 2011-03-09 Jakub Jelinek ja...@redhat.com PR debug/48043 * config/s390/s390.c (s390_delegitimize_address): Make sure the result mode

[Committed] S/390: Use define_c_enum for the unspec constants

2011-03-18 Thread Andreas Krebbel
Hi, the attached patch uses define_c_enum for defining the unspec constant as it recently has been changed for other targets as well. Committed to mainline. Bye, -Andreas- 2011-03-18 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md: Use define_c_enum for the unspec

[PING] 3 patches waiting for review

2011-03-18 Thread Andreas Krebbel
A problem causing wrong code to be generated for decimal floating point programs: [PATCH] Fix PR46399 - missing mode promotion for libcall args - updated http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00141.html To my understandig this is a testcase bug. Probably the warning is expected in that

[Committed] S/390: Don't split litpool between call and call_arg_location note

2011-03-18 Thread Andreas Krebbel
at such a location. With the patch java bootstrap gets a bit further and then fails due to delegitimize_address still returning UNSPECs :( but that's a different story. Committed to mainline. Bye, -Andreas- 2011-03-18 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[Committed] S/390: Handle GOTOFF unspecs in delegitimize_address

2011-03-18 Thread Andreas Krebbel
Hi, the attached patch adds handling for GOTOFF unspecs to delegitimize_address. A lot of note: non-delegitimized UNSPEC 112 messages disappear with this. However not all of them. Committed to mainline. Bye, -Andreas- 2011-03-18 Andreas Krebbel andreas.kreb...@de.ibm.com

Re: [PATCH] Fix s390 delegitimize_address ICE (PR target/48213)

2011-03-21 Thread Andreas Krebbel
On 03/20/2011 08:48 PM, Jakub Jelinek wrote: Ok for trunk/4.6? 2011-03-20 Jakub Jelinek ja...@redhat.com PR target/48213 * config/s390/s390.c (s390_delegitimize_address): Don't call lowpart_subreg if orig_x has BLKmode. * gcc.dg/pr48213.c: New test. Ok.

[PATCH] dwarf2out: Print the name of the unspec as part of the warning

2011-03-21 Thread Andreas Krebbel
Hi, with the attached patch dwarf2out tries to print the name of the unspec together with the numeric value in case the back end uses define_c_enum for the unspec constants. Ok for mainline? Bye, -Andreas- 2011-03-21 Andreas Krebbel andreas.kreb...@de.ibm.com * dwarf2out.c

Re: [4.7] Avoid global state in s390_handle_option

2011-03-23 Thread Andreas Krebbel
things could be simplified. - I've also fixed two more warning statements using HOST_WIDE_INT_PRINT_DEC. Tested on s390x. What do you think? Bye, -Andreas- 2011-03-23 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/2084.md: Enable all insn reservations also for z9_ec

[PATCH] reload: Avoid superfluous reloads after find_reloads_subreg_address

2011-03-23 Thread Andreas Krebbel
will anyway be able to fix up the invalid address. But since it avoids pointless reloads I think its a good thing to do and will help to improve performance. Bootstrapped and regtested on x86_64, s390 and s390x. Ok for mainline? Bye, -Andreas- 2011-03-23 Andreas Krebbel andreas.kreb

Re: [PING] Fix PR46399 - missing mode promotion for libcall args

2011-04-13 Thread Andreas Krebbel
On 04/13/2011 03:31 PM, Ian Lance Taylor wrote: Andreas Krebbel kreb...@linux.vnet.ibm.com writes: This fixes a wrong code generation bug for sw DFP: http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00141.html Why do we need a new target hook just for libcalls? Why not just use the existing

[PATCH] PR50325 store_bit_field: Fix for big endian targets

2011-09-21 Thread Andreas Krebbel
targets. This fixes 74 failures on s390x and ppc64. All 22_locale/* failures are fixed on powerpc-apple-darwin9. Bootstrapped on s390x-linux and ppc64-linux. Dominique bootstrapped the patch on powerpc-apple-darwin9 and x86_64-apple-darwin10. Ok for mainline? Bye, -Andreas- 2011-09-21 Andreas

[Committed] S/390: longlong.h fix for zarch

2011-10-04 Thread Andreas Krebbel
Andreas Krebbel andreas.kreb...@de.ibm.com * longlong.h (smul_ppmm, sdiv_qrnnd): Add underscores to the local variables. Fix second operand of DR. Swap inputs for sdiv_qrnnd. Index: gcc/longlong.h === *** gcc

[PING] PR50325 store_bit_field: Fix for big endian targets

2011-10-05 Thread Andreas Krebbel
This fixes many C++ tests on s390x and PPC64: http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01220.html

[PATCH] Use widening_optab_handler when expanding highpart mults

2011-10-05 Thread Andreas Krebbel
Hi, the optab_handler uses in expand_mult_highpart_optab haven't been replaced with the widening_optab_handler yet. Fixed with attached patch. Tested on s390x and x86_64. Bye, -Andreas- 2011-10-05 Andreas Krebbel andreas.kreb...@de.ibm.com * expmed.c (expand_mult_highpart_optab

[Committed] s390 bootstrap: last_bb_active set but not used

2011-10-06 Thread Andreas Krebbel
Hi, this fixes a bootstrap problem on s390. s390 doesn't have return nor simple_return expanders so the last_bb_active variable stays unused in thread_prologue_and_epilogue_insns. Committed to mainline as obvious. Bye, -Andreas- 2011-10-06 Andreas Krebbel andreas.kreb...@de.ibm.com

[Committed] S/390: Add umulditi pattern

2011-10-07 Thread Andreas Krebbel
-07 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md (DWH, dwh): New mode macros. (umulsidi3): Extend to support umulditi3 as well. Index: gcc/config/s390/s390.md === *** gcc/config/s390/s390.md.orig

[Committed] S/390: Make TLS work without -fpic

2011-10-07 Thread Andreas Krebbel
- 2011-10-07 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c (s390_emit_tls_call_insn): Remove assertion. Load GOT pointer for non-pic builds. (s390_load_got): Replace pic_offset_table_rtx with hardcoded r12. (s390_emit_call): Likewise. Index: gcc

[Committed] S/390: Add -Wno-attributes to testcase options

2011-10-11 Thread Andreas Krebbel
. Bye, -Andreas- 2011-10-11 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390/20090223-1.c: Add -Wno-attributes. Index: gcc/testsuite/gcc.target/s390/20090223-1.c === *** gcc/testsuite/gcc.target/s390/20090223-1

[Committed] S/390: Add -mbackchain for a __builtin_return_address testcase

2011-10-11 Thread Andreas Krebbel
Hi, on s390 we need a backchain in order to implement __builtin_return_address for arguments other than 0. Committed to mainline. Bye, -Andreas- 2011-10-11 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/pr49994-3.c: Add -mbackchain for s390 and s390x. Index: gcc/testsuite

strlen optimization of decompose strcat?!

2011-10-21 Thread Andreas Krebbel
Hi, on s390 a strcat is already decomposed by fold_builtin_strcat into a strlen and a strcpy. Due to that 3 strlenopt testcases currently fail: strlenopt-17g.c, strlenopt-4.c, strlenopt-4g.c. For strlenopt-4.c no optimization is expected anyway (stpcpy disabled). So this can easily be fixed by

[PATCH] strlenopt improvements

2011-10-24 Thread Andreas Krebbel
'); strcpy (r, q); l1 = strlen (p); strcpy (r, 567); l2 = strlen (p); return l1 + l2; } Perhaps this could be fixed by putting a stmt_addend value into the strinfo structs. Bootstrapped on x86_64 and s390x. No regressions. Ok for mainline? Bye, -Andreas- 2011-10-24 Andreas Krebbel

Re: [PATCH] strlenopt improvements

2011-10-24 Thread Andreas Krebbel
Can you please explain this stmt_set_p stuff? dont_invalidate should be only set on strinfos that will be seen by the immediately following maybe_invalidate call (at the end of handle_builtin_strcpy caller - strlen_optimize_stmt). If you set it on which unshare_strinfo is called, if there

[PATCH] recog: Record also added clobbers in insn_invalid_p

2012-04-20 Thread Andreas Krebbel
-04-20 Andreas Krebbel andreas.kreb...@de.ibm.com * recog.c (insn_invalid_p): Add IN_GROUP parameter and use validate_change to add clobbers if IN_GROUP is nonzero. (verify_changes): Set IN_GROUP parameter to true. * recog.h (insn_invalid_p): Add IN_GROUP parameter

Re: [tpf] update for latest build system

2012-04-23 Thread Andreas Krebbel
On Thu, Mar 22, 2012 at 08:38:41PM -0400, DJ Delorie wrote: Per request from IBM... * config/s390/s390.h (LINK_SPEC): Remove, no longer needed. (LIBSTDCXX): Change to CPP2. Ok. Bye, -Andreas-

[PING] reload: Try alternative with swapped operands before going to the next

2012-04-23 Thread Andreas Krebbel
Hi, I've re-tested the patch from: http://gcc.gnu.org/ml/gcc-patches/2011-11/msg01819.html on s390x and x86_64. Ok for mainline? Bye, -Andreas-

Re: [PATCH] libatomic, v2

2012-05-02 Thread Andreas Krebbel
On 05/01/2012 05:53 PM, Richard Henderson wrote: On 04/27/2012 12:26 PM, Richard Henderson wrote: I think the library is ready for merge back to mainline, but I will wait until at least Monday for feedback and proximity to my desk to deal with potential fallout. Now committed. With that

Re: [PATCH] libatomic, v2

2012-05-02 Thread Andreas Krebbel
On 05/02/2012 03:14 PM, Richard Henderson wrote: On 05/02/2012 05:48 AM, Andreas Krebbel wrote: configure.ac:26: error: Please use exactly Autoconf 2.64 instead of 2.65. ../config/override.m4:12: _GCC_AUTOCONF_VERSION_CHECK is expanded from... configure.ac:26: the top level autom4te: m4

[Committed] S/390: Fix insn conditions of memory op patterns

2012-05-04 Thread Andreas Krebbel
into the match_scratch statement. Committed to mainline. Bye, -Andreas- 2012-05-04 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md (*movmem_short, *clrmem_short) (*cmpmem_short): Move the mode check from the insn condition to the match_scratch

Re: Patches to enable -ftrack-macro-expansion by default

2012-05-08 Thread Andreas Krebbel
On 04/30/2012 01:46 PM, Dodji Seketeli wrote: Dodji Seketeli do...@redhat.com writes: I am proposing a series of patches which is supposed to address the remaining issues (I am aware of) preventing us from enabling the -ftrack-macro-expansion by default. The idea is to address each issue I

[Committed] S/390: Use load relative to access GOT slots

2012-09-03 Thread Andreas Krebbel
Hi, so far we were missing to use load relative when accessing GOT slots. Fixed with the attached patch. Committed to mainline after tested on s390 and s390x. Bye, -Andreas- 2012-09-03 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c (s390_loadrelative_operand_p

[PATCH] Extra invariant motion step after ivopt

2011-07-11 Thread Andreas Krebbel
? Bye, -Andreas- 2011-07-11 Andreas Krebbel andreas.kreb...@de.ibm.com * passes.c (init_optimization_passes): Add invariant motion pass after induction variable optimization. Index: gcc/passes.c === *** gcc

[PATCH] widening_mul: Do cost check when propagating mult into plus/minus expressions

2011-07-13 Thread Andreas Krebbel
and s390x. Bye, -Andreas- 2011-07-13 Andreas Krebbel andreas.kreb...@de.ibm.com * tree-ssa-math-opts.c (compute_costs): New function. (convert_mult_to_fma): Take costs into account when propagating multiplications into several additions. * config/s390/s390.c

Re: [PATCH] widening_mul: Do cost check when propagating mult into plus/minus expressions

2011-07-14 Thread Andreas Krebbel
On 07/13/2011 04:34 PM, Richard Guenther wrote: On Wed, Jul 13, 2011 at 3:13 PM, Andreas Krebbel kreb...@linux.vnet.ibm.com wrote: Hi, the widening_mul pass might increase the number of multiplications in the code by transforming a = b * c d = a + 2 e = a + 3 into: d = b * c + 2 e

Re: [PATCH] widening_mul: Do cost check when propagating mult into plus/minus expressions

2011-07-14 Thread Andreas Krebbel
On 07/13/2011 06:58 PM, Richard Henderson wrote: Why the force_operand? You've got register inputs. Either the target is going to support the operation or it isn't. Seems to me you can check the availability of the operation in the optab and pass that gen_rtx_fmt_ee result to rtx_cost

Re: [PATCH] widening_mul: Do cost check when propagating mult into plus/minus expressions

2011-07-14 Thread Andreas Krebbel
it without seeing a clear reason for it. So I've removed it now. Saving cost data dependent on speed, which is non-constant. You probably need to make this a two dimensional array. Fixed. Here is an updated version. Bye, -Andreas- 2011-07-14 Andreas Krebbel andreas.kreb...@de.ibm.com

Re: [PATCH] widening_mul: Do cost check when propagating mult into plus/minus expressions

2011-07-15 Thread Andreas Krebbel
On 07/14/2011 11:40 AM, Richard Guenther wrote: (look how the vectorizer for example uses new target hooks instead of generating vectorized RTL and then using rtx_cost). But wouldn't we then end up with just a bunch of special purpose tree_cost functions again?! Then we would again be doomed

[Committed] S/390: Fix return type of s390_class_max_nregs

2011-07-20 Thread Andreas Krebbel
Hi, this fixes a bug which has been revealed by compiling the back-end with g++ now. Committed to mainline and 4.6. Bye, -Andreas- 2011-07-20 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c (s390_class_max_nregs): Fix return type. * config/s390/s390

Re: [s390] [committed]: fix call to store_bit_field()

2011-08-05 Thread Andreas Krebbel
On Fri, Aug 05, 2011 at 08:32:39AM -0500, Aldy Hernandez wrote: Target could not build due to missing new arguments. Tested by building cc1. Committed as obvious. * config/s390/s390.c (s390_expand_cs_hqi): Add new arguments to store_bit_field. (s390_expand_atomic):

[Committed] S/390: Enable ifunc function attribute by default

2012-07-05 Thread Andreas Krebbel
Hi, the attached patch enables the ifunc function attribute by default on s390 and s390x. Committed to mainline. Bye, -Andreas- 2012-07-05 Andreas Krebbel andreas.kreb...@de.ibm.com * config.gcc: Enable ifunc attribute by default on s390 and s390x. --- gcc/config.gcc |2 ++ 1

[Committed] S/390: Use the tuned glibc versions of memcpy and memcmp

2012-07-05 Thread Andreas Krebbel
-05 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390-protos.h (s390_expand_movmem) (s390_expand_cmpmem): Add return value. * config/s390/s390.c (s390_expand_movmem, s390_expand_cmpmem): Return FALSE to use the library function in some cases

Re: [PATCH 4/6] Thread pointer built-in functions, s390

2012-07-18 Thread Andreas Krebbel
On 07/12/2012 08:52 AM, Chung-Lin Tang wrote: * config/s390/s390.c (s390_builtin,code_for_builtin_64, code_for_builtin_31,s390_init_builtins,s390_expand_builtin): Remove. (s390_expand_builtin_thread_pointer): Add hook function for

Re: CFT: [build] Move crtstuff support to toplevel libgcc

2011-11-04 Thread Andreas Krebbel
On 11/02/2011 01:37 PM, Rainer Orth wrote: 2011-07-15 Rainer Orth r...@cebitec.uni-bielefeld.de gcc: * config.gcc (extra_parts): Remove. (*-*-freebsd*): Remove extra_parts. (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*,

Re: CFT: [build] Move crtstuff support to toplevel libgcc

2011-11-04 Thread Andreas Krebbel
On 11/04/2011 02:17 PM, Andreas Krebbel wrote: This appears to break bootstrap on s390x: /home/andreas/regtest/gcc-bisect-build/./gcc/crtbeginS.o: In function `__do_global_dtors_aux': crtstuff.c:(.text+0x28): relocation truncated to fit: R_390_GOT12 against symbol `__cxa_finalize

[Committed] S/390: libgcc: Add -fPIC in t-crtstuff

2011-11-04 Thread Andreas Krebbel
Hi, I've committed the attached patch to fix the current bootstrap failure on s390 as described in: http://gcc.gnu.org/ml/gcc-patches/2011-11/msg00546.html Bye, -Andreas- 2011-11-04 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/t-crtstuff: Add -fPIC

[PATCH] postreload: Invalidate reg_state info at barrier/volatile insns

2011-11-14 Thread Andreas Krebbel
? Bye, -Andreas- 2011-11-14 Andreas Krebbel andreas.kreb...@de.ibm.com * postreload.c (reload_combine): Mark reg_state as invalid at a barrier if there has been a use already. Index: gcc/postreload.c === *** gcc

[PING] PR50325: store_bit_field: Fix for big endian targets

2011-11-15 Thread Andreas Krebbel
This fixes many C++ tests on s390x and PPC64: http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01220.html Bye, -Andreas-

  1   2   3   4   5   6   7   8   9   10   >