[PATCH 10/13] Testsuite These testcases require disabling hardware vector support on S/390.

2015-05-11 Thread Andreas Krebbel
gcc/testsuite/ * gcc.dg/tree-ssa/gen-vect-11b.c: Disable vector instructions on s390*. * gcc.dg/tree-ssa/gen-vect-11c.c: Likewise. --- gcc/testsuite/gcc.dg/tree-ssa/gen-vect-11b.c |1 + gcc/testsuite/gcc.dg/tree-ssa/gen-vect-11c.c |1 + 2 files changed, 2

[PATCH 11/13] Testsuite S/390 vector types are only 8 byte aligned.

2015-05-11 Thread Andreas Krebbel
gcc/testsuite/ * lib/target-supports.exp: Vector do not always have natural alignment on s390*. --- gcc/testsuite/lib/target-supports.exp |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/lib/target-supports.exp

[PATCH 13/13] S/390 Invalid vector binary ops

2015-05-11 Thread Andreas Krebbel
This is a first try to implement at least some of the requirements regarding the vector bool type documented for IBM XLC. With this patch error messages will be issued for invalid uses of vector bool types in binary operators. vector bool types are being marked opaque in order to prevent the

[PATCH 09/13] S/390 Add zvector testcases.

2015-05-11 Thread Andreas Krebbel
gcc/testsuite/ * gcc.target/s390/zvector/vec-dbl-math-compile-1.c: New test. * gcc.target/s390/zvector/vec-genbytemask-1.c: New test. * gcc.target/s390/zvector/vec-genmask-1.c: New test. * gcc.target/s390/zvector/vec-lcbb-1.c: New test. *

[PATCH 04/13] S/390 Add -march/-mtune=z13 option.

2015-05-11 Thread Andreas Krebbel
gcc/ * common/config/s390/s390-common.c (processor_flags_table): Add z13. * config.gcc: Add z13. * config/s390/s390-opts.h (enum processor_type): Add PROCESSOR_2964_Z13. * config/s390/s390.c (s390_adjust_priority): Check for

[PATCH 08/13] S/390 zvector builtin support.

2015-05-11 Thread Andreas Krebbel
With this patch GCC implements an Altivec style set of builtins to make use of vector instructions in C/C++ code. This is provided for compatibility with the IBM XL compiler. gcc/ * config.gcc: Add vecintrin.h to extra_headers. Add s390-c.o to c_target_objs and cxx_target_objs.

Re: [PATCH 01/13] recog: Increased max number of alternatives.

2015-05-11 Thread Andreas Krebbel
On 05/11/2015 04:01 PM, Segher Boessenkool wrote: On Mon, May 11, 2015 at 03:23:29PM +0200, Andreas Krebbel wrote: With the vector facility support z13 mov patterns have more than 30 alternatives. Wow, that is a lot! --- a/gcc/recog.h +++ b/gcc/recog.h @@ -23,7 +23,7 @@ along with GCC

Re: Patch ping

2015-05-05 Thread Andreas Krebbel
On 05/05/2015 08:52 PM, Jakub Jelinek wrote: Hi! http://gcc.gnu.org/ml/gcc-patches/2015-04/msg01432.html - this got approved for arm and aarch64, but not for s390{,x} Ok for trunk? Yes. Thanks! -Andreas-

Re: [PATCH] S390: Hotpatching fixes.

2015-03-27 Thread Andreas Krebbel
On 03/26/2015 09:56 PM, Jakub Jelinek wrote: Hi! On Mon, Mar 09, 2015 at 01:19:38PM +0100, Dominik Vogt wrote: @@ -11368,6 +11349,7 @@ static void s390_reorg (void) { bool pool_overflow = false; + int hw_before, hw_after; /* Make sure all splits have been performed; splits

Re: [PATCH] Run DCE after if conversion

2015-03-20 Thread Andreas Krebbel
On 03/18/2015 12:04 PM, Richard Biener wrote: On Tue, Mar 17, 2015 at 7:29 PM, Jeff Law l...@redhat.com wrote: On 03/17/2015 02:17 AM, Andreas Krebbel wrote: Just to have some numbers I did run a -j1 GCC bootstrap twice with and without the patch on x86_64. Best results for both

Re: [PATCH] Run DCE after if conversion

2015-03-17 Thread Andreas Krebbel
On 03/10/2015 11:27 AM, Richard Biener wrote: On Tue, Mar 10, 2015 at 10:19 AM, Andreas Krebbel kreb...@linux.vnet.ibm.com wrote: On 03/10/2015 10:12 AM, Steven Bosscher wrote: On Tue, Mar 10, 2015 at 8:57 AM, Andreas Krebbel wrote: * gcc/ifcvt.c (if_convert): ...yes...? Damn

Re: [PATCH] Run DCE after if conversion

2015-03-10 Thread Andreas Krebbel
On 03/10/2015 11:27 AM, Richard Biener wrote: Is this fixing a regression in some way? Not really. The optimization supposed to fold the bswap in that case is not that old: https://gcc.gnu.org/ml/gcc-patches/2013-05/msg01378.html The underlying problem however is probably visible in one

[PATCH] Run DCE after if conversion

2015-03-10 Thread Andreas Krebbel
this loop is always left with all df solutions being clean. However, dce is only run once, before the first iteration. The attached patch fixes the builtin-bswap-7.c testcase for s390x (-march=z196) but is probably helpful in other situations as well. Ok? Bye, -Andreas- 2015-03-10 Andreas Krebbel

Re: [PATCH] Run DCE after if conversion

2015-03-10 Thread Andreas Krebbel
On 03/10/2015 10:12 AM, Steven Bosscher wrote: On Tue, Mar 10, 2015 at 8:57 AM, Andreas Krebbel wrote: * gcc/ifcvt.c (if_convert): ...yes...? Damn. mklog is still not able to do the complete job for me ;) Tiny nail, huge hammer. This triggers a full re-scan of all insns and a re

[Committed] S/390: var-expand1 use default values for peel/unroll limits

2015-03-05 Thread Andreas Krebbel
Andreas Krebbel kreb...@linux.vnet.ibm.com * gcc.dg/var-expand1.c: Force max-completely-peel-times and max-unroll-times back to defaults for s390. diff --git a/gcc/testsuite/gcc.dg/var-expand1.c b/gcc/testsuite/gcc.dg/var-expand1.c index 7de4cfb..fb039d3 100644 --- a/gcc

[Committed] S/390: xfail ssa-dom-cse-2

2015-03-05 Thread Andreas Krebbel
Hi, the initializer value in that testcase ends up in literal pool. As described in the testcase the optimization does currently not work in that situation. Committed to mainline. Bye, -Andreas- 2015-03-05 Andreas Krebbel kreb...@linux.vnet.ibm.com * gcc.dg/tree-ssa/ssa-dom-cse-2.c

[Committed] S/390: Fix check for builtins valid with -mhtm

2015-03-04 Thread Andreas Krebbel
Committed to mainline. 2015-03-04 Andreas Krebbel kreb...@linux.vnet.ibm.com * gcc/config/s390/s390.c (s390_expand_builtin): Exlude non-htm builtins from checking for -mhtm option. diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index 1924f2a..593c0cc 100644

[Committed] S/390: Remove -m64/-m31 from target specific testcases

2015-02-27 Thread Andreas Krebbel
Hi, the attached patch gets rid of -m64/-m31 uses in our target specific testcases in order to make make check RUNTESTFLAGS='--target_board=unix\{-m31,-m64\}' runs work fine again. Committed to mainline. Bye, -Andreas- 2015-02-27 Andreas Krebbel andreas.kreb...@de.ibm.com

[PATCH 1/3] S/390: Implement TARGET_BUILTIN_DECL

2015-02-24 Thread Andreas Krebbel
Hi, the attached patch defines the TARGET_BUILTIN_DECL macro for S/390 in order to make our target specific builtins to work with lto. I'll commit this to mainline after waiting few days for comments. Bye, -Andreas- 2015-02-24 Andreas Krebbel andreas.kreb...@de.ibm.com * config

[PATCH 2/3] S/390: Implement two new builtins for efpc and sfpc

2015-02-24 Thread Andreas Krebbel
Hi, this patch defines two new S/390 target specific macros: __builtin_s390_efpc __builtin_s390_sfpc for extracting and setting the floating point control register. I'll commit this to mainline after waiting a few days for comments. Bye, -Andreas- 2015-02-24 Andreas Krebbel andreas.kreb

[PATCH 3/3] S/390: Implement TARGET_ATOMIC_ASSIGN_EXPAND_FENV

2015-02-24 Thread Andreas Krebbel
Hi, the attached patch implements the TARGET_ATOMIC_ASSIGN_EXPAND_FENV for S/390 fixing the c11-atomic-exec-5.c testsuite fails. I'll commit this to mainline after waiting a few days for comments. Bye, -Andreas- 2015-02-24 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390

[PATCH] S/390: Cleanup for the hotpatch testcases

2015-02-19 Thread Andreas Krebbel
Hi, the attached patch fixes some minor issues with the recently applied hotpatch testcases. Bye, -Andreas- 2015-02-19 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390/hotpatch-8.c: Add -march=g5. * gcc.target/s390/hotpatch-9.c: Add -march=g5

[PATCH] S/390: Suppress implicit function declaration warning in some testcases

2015-02-19 Thread Andreas Krebbel
Hi, the attached patch add the -Wno-implicit-function-declaration option to the S/390 specific testcases which require it. Bye, -Andreas- 2015-02-19 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.target/s390/20090223-1.c: Add -Wno-implicit-function-declaration option

[PATCH] S/390: Remove --save-temps from testcases not requiring it

2015-02-19 Thread Andreas Krebbel
Hi, the attached patch does some cleanup in the S/390 specific testcases. - The scan-assembler testcases do not need --save-temps. - One of them needs it so with the patch we make sure to cleanup the files. Bye, -Andreas- 2015-02-19 Andreas Krebbel andreas.kreb...@de.ibm.com

[PATCH] Fix hoist-register-pressure testcases for -m31 on s390x

2015-02-19 Thread Andreas Krebbel
Hi, the attached patch makes the hoist-register-pressure testcases to work with -m31 on 64 bit. Ok to apply? Bye, -Andreas- 2015-02-19 Andreas Krebbel andreas.kreb...@de.ibm.com * gcc.dg/hoist-register-pressure-1.c: Make S/390 target check work with -m31 on 64 bit

[PATCH] PR64979: S/390: Fix setup of overflow area pointer in va_start

2015-02-09 Thread Andreas Krebbel
Hi, the attached patch fixes a critical problem in the va_start expansion code in the S/390 backend. The problem exists since GCC 4.0. Ok to commit to 4.9 branch and mainline? Bye, -Andreas- 2015-02-09 Andreas Krebbel andreas.kreb...@de.ibm.com PR target/64979 * config

Re: [PATCH] PR64979: S/390: Fix setup of overflow area pointer in va_start

2015-02-09 Thread Andreas Krebbel
On 02/09/2015 12:29 PM, Jakub Jelinek wrote: On Mon, Feb 09, 2015 at 10:50:34AM +0100, Andreas Krebbel wrote: Hi, the attached patch fixes a critical problem in the va_start expansion code in the S/390 backend. The problem exists since GCC 4.0. Ok to commit to 4.9 branch and mainline

Re: [PATCH] PR64979: S/390: Fix setup of overflow area pointer in va_start

2015-02-09 Thread Andreas Krebbel
On 02/09/2015 01:05 PM, Jakub Jelinek wrote: On Mon, Feb 09, 2015 at 12:40:05PM +0100, Andreas Krebbel wrote: On 02/09/2015 12:29 PM, Jakub Jelinek wrote: On Mon, Feb 09, 2015 at 10:50:34AM +0100, Andreas Krebbel wrote: Hi, the attached patch fixes a critical problem in the va_start

Re: [PATCH] PR64979: S/390: Fix setup of overflow area pointer in va_start

2015-02-09 Thread Andreas Krebbel
On 02/09/2015 01:17 PM, Jakub Jelinek wrote: On Mon, Feb 09, 2015 at 01:05:23PM +0100, Jakub Jelinek wrote: As you can see, the updated testcase fails even on x86_64-linux. Here is an updated patch that succeeds even on i686-linux. Your patch fixes my testcase on s390x. Thanks! -Andreas-

[Committed] S/390: Increase register move costs for FPR-GPR moves

2015-01-27 Thread Andreas Krebbel
Hi, I've committed the attached patch which fixes a 4.8 vs 4.9/5.0 performance regression introduced with the aggressive use of FPRs as spill slots. Committed to mainline and 4.9 branch. Bye, -Andreas- 2015-01-27 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[Committed] S/390: Increase memory access costs

2015-01-27 Thread Andreas Krebbel
Hi, I've committed the attached patch which fixes a 4.8 vs 4.9/5.0 performance regression introduced with the aggressive use of FPRs as spill slots. Committed to mainline and 4.9 branch. Bye, -Andreas- 2015-01-27 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[Committed] S/390: Fix typo in atomic code iterator

2015-01-22 Thread Andreas Krebbel
Hi, I've committed the following bugfix which fixes an obvious typo in the atomic code attribute. Due to this the load and or instructions was not used. Committed to 4.9 branch and mainline. Bye, -Andreas- 2015-01-22 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md

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

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

[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

[PATCH] PR61078 S/390: Fix negdi splitter

2014-08-25 Thread Andreas Krebbel
. No regressions. Bye, -Andreas- 2014-08-25 Andreas Krebbel andreas.kreb...@de.ibm.com PR target/61078 * config/s390/s390.md (*negdi2_31): Add s390_split_ok_p check and add a second splitter to handle the remaining cases. 2014-08-25 Andreas Krebbel andreas.kreb

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] 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: 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

[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

[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

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

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

[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

[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] 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: 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

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: [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] 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

[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: [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

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: [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: [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] 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

[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

[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

[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

[Committed] S/390: Fix BZ 59803.

2014-01-15 Thread Andreas Krebbel
Hi, fix for BZ59803. For more details please see the comment in the patch. Bootstrapped and regtested on s390x with 4.8 and mainline. Committed to 4.8 and mainline. Bye, -Andreas- 2014-01-15 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[Committed] S/390: expand_tbegin remove jump over cc extraction

2014-01-10 Thread Andreas Krebbel
the following testsuite fails: FAIL: gcc.target/s390/htm-nofloat-2.c scan-assembler-not \\tstd\\t FAIL: gcc.target/s390/htm-nofloat-2.c scan-assembler-not \\tld\\t Bootstrapped and regtested on s390 and s390x. Committed to mainline and 4.8 branch. Bye, -Andreas- 2014-01-10 Andreas Krebbel

Re: [PATCH] Fix mips64-linux and s390x-linux builds

2013-12-10 Thread Andreas Krebbel
On 09/12/13 13:07, Maxim Kuvyrkov wrote: On 9/12/2013, at 8:21 am, Maxim Kuvyrkov ma...@kugelworks.com wrote: On 9/12/2013, at 3:24 am, Jan-Benedict Glaw jbg...@lug-owl.de wrote: Hi Maxim! One of your recent libc-android clean-up patches broke the mips64-linux target as a side-effect, see

Re: [PING] 3 patches waiting for approval/review

2013-12-04 Thread Andreas Krebbel
body is what comes between the function prologue and the epilogue. Hence calling mcount *before* the function prologue does not speak against the leafness of a function. What do you think? Bye, -Andreas- On 22/10/13 21:28, Andreas Krebbel wrote: On 16/10/13 22:25, Jeff Law wrote: ... I still

Re: [PATCH] S/390: More htm testcases plus some fixes

2013-11-19 Thread Andreas Krebbel
On 18/11/13 17:09, Peter Bergner wrote: On Mon, 2013-11-18 at 10:05 +0100, Andreas Krebbel wrote: With the patch the htm-nofloat-2 testcase fails. Due to the returns_twice flag on tbegin the optimizers fail to fold the compares of the condition code and the s390_optimize_nonescaping_tx

Re: [PING] 3 patches waiting for approval/review

2013-10-22 Thread Andreas Krebbel
On 16/10/13 22:25, Jeff Law wrote: On 10/11/13 11:23, Andreas Krebbel wrote: On 10/10/13 18:41, Jeff Law wrote: On 10/10/13 04:00, Andreas Krebbel wrote: On 09/10/13 21:46, Jeff Law wrote: On 08/21/13 03:21, Andreas Krebbel wrote: [RFC] Allow functions calling mcount before prologue

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Andreas Krebbel
On 14/10/13 12:14, Jakub Jelinek wrote: On Mon, Oct 14, 2013 at 12:07:00PM +0200, Richard Biener wrote: htm-nofloat-2.c fails with that patch. The returns-twice flag on tbegin prevents several optimizations on the cfg and basically disables the TX optimization in s390_optimize_nonescaping_tx

Re: [PATCH] Transaction fix: New target hook special_function_flags

2013-10-14 Thread Andreas Krebbel
On 14/10/13 13:30, Jakub Jelinek wrote: On Mon, Oct 14, 2013 at 01:26:25PM +0200, Richard Biener wrote: I somehow couldn't get it working with the add_builtin_function parameter. Perhaps because these attrs are supposed to be translated into the respective tree flags (DECL_IS_RETURNS_TWICE)

[PATCH] Transaction fix: New target hook special_function_flags

2013-10-11 Thread Andreas Krebbel
with that patch. The returns-twice flag on tbegin prevents several optimizations on the cfg and basically disables the TX optimization in s390_optimize_nonescaping_tx that way. I'll try to address this with a follow-on patch. Ok for mainline and 4.8? Bye, -Andreas- 2013-10-11 Andreas Krebbel

Re: [PING] 3 patches waiting for approval/review

2013-10-11 Thread Andreas Krebbel
On 10/10/13 18:41, Jeff Law wrote: On 10/10/13 04:00, Andreas Krebbel wrote: On 09/10/13 21:46, Jeff Law wrote: On 08/21/13 03:21, Andreas Krebbel wrote: [RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html I don't

Re: [PING] 3 patches waiting for approval/review

2013-10-10 Thread Andreas Krebbel
On 09/10/13 21:46, Jeff Law wrote: On 08/21/13 03:21, Andreas Krebbel wrote: [RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html I don't think this is necessarily correct for all targets. ISTM the ability

Re: [PING] 3 patches waiting for approval/review

2013-10-10 Thread Andreas Krebbel
On 10/10/13 18:41, Jeff Law wrote: On 10/10/13 04:00, Andreas Krebbel wrote: On 09/10/13 21:46, Jeff Law wrote: On 08/21/13 03:21, Andreas Krebbel wrote: [RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html I don't

[Committed] S/390: Use FPRs as GPR save slots

2013-10-09 Thread Andreas Krebbel
Hi, with the attached patch we use call-clobbered floating point registers as save slots for general purpose registers in leaf functions. Bootstrapped and regtested with various options and -march levels. Committed to mainline. Bye, -Andreas- 2013-10-09 Andreas Krebbel andreas.kreb

[Committed] S/390: Cleanup of s390_frame_info

2013-10-09 Thread Andreas Krebbel
Just a cleanup of the s390_frame_info function. Committed to mainline after regression test was fine. Bye, -Andreas- 2013-10-09 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c (s390_frame_info): Restructure function. --- gcc/config/s390/s390.c | 112

[Committed] S/390: Use fix stack slots for FPRs saved due to stdarg

2013-10-09 Thread Andreas Krebbel
patch we use dedicated slots when saving FPR argument registers and are now able to get rid of unnecessary saves that way. Bootstrapped and regression tested. Committed to mainline. Bye, -Andreas- 2013-10-09 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

[PATCH][4.8] S/390: Transaction optimization fixes

2013-10-04 Thread Andreas Krebbel
by the new testcase. Bootstrapped and regtested on s390 and s390x with --with-arch=zEC12. No regressions. I'm going to apply the patch to 4.8 and mainline after waiting a few days for comments. Bye, -Andreas- 2013-10-04 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.c

Re: [PING] 3 patches waiting for approval/review

2013-10-02 Thread Andreas Krebbel
On 02/10/13 09:10, Paulo Matos wrote: -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On Behalf Of Andreas Krebbel Sent: 01 October 2013 10:18 To: gcc-patches@gcc.gnu.org Subject: [PING] 3 patches waiting for approval/review [RFC

[PATCH][4.8] S/390: Transactional memory fixes

2013-10-02 Thread Andreas Krebbel
and s390x with --with-arch=zEC12. I'll apply the patch to mainline and 4.8 branch after waiting for comments. Bye, -Andreas- 2013-10-02 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390.md (tbegin, tbegin_nofloat, tbegin_retry) (tbegin_retry_nofloat, tend, tabort

[PING] 3 patches waiting for approval/review

2013-10-01 Thread Andreas Krebbel
[RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html [PATCH] PR57377: Fix mnemonic attribute http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01364.html [PATCH] Doc: Add documentation for the mnemonic attribute

[Committed] S/390: Fix PR 58574

2013-10-01 Thread Andreas Krebbel
version and will commit it soon. Bye, -Andreas- 2013-10-01 Jakub Jelinek ja...@redhat.com Andreas Krebbel andreas.kreb...@de.ibm.com PR target/58574 * config/s390/s390.c (s390_split_branches): Modify check for table jump insns. (s390_chunkify_start

[PING] 3 patches waiting for approval/review

2013-09-03 Thread Andreas Krebbel
[RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html [PATCH] PR57377: Fix mnemonic attribute http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01364.html [PATCH] Doc: Add documentation for the mnemonic attribute

[PATCH] S/390: Use fast BCR serialization facility.

2013-09-03 Thread Andreas Krebbel
and later. The bcr variants used for synchronization purposes always go into their own dispatch group. This wasn't correctly implemented for z196 and zEC12 so far. I'll commit the patch after regression tests passed. Bye, -Andreas- 2013-09-03 Andreas Krebbel andreas.kreb...@de.ibm.com

[PATCH] S/390: Add support for the load fp integer instructions

2013-09-03 Thread Andreas Krebbel
functions. The DFP variants are not yet expanded for the standard math function since the necessary GCC builtins are missing so far. I'll commit the patch after waiting for comments and regression test. Bye, -Andreas- 2013-09-03 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/s390

Re: [PATCH] Enable non-complex math builtins from C99 for Bionic

2013-08-22 Thread Andreas Krebbel
On Wed, Aug 21, 2013 at 11:21:32PM +0400, Alexander Ivchenko wrote: I'm sorry for that. The following patch cured my build of those targets; it is also preserving the initial presence of c99. There were plenty of targets that were changed by my patch, I hope this time I didn't miss anything.

[PING] 3 patches waiting for approval/review

2013-08-21 Thread Andreas Krebbel
[RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html [PATCH] PR57377: Fix mnemonic attribute http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01364.html [PATCH] Doc: Add documentation for the mnemonic attribute

Re: [PATCH][4.8 backport] S/390: Transactional Execution support

2013-08-14 Thread Andreas Krebbel
On 14/08/13 15:00, Jakub Jelinek wrote: On Thu, Aug 01, 2013 at 10:55:15AM +0200, Andreas Krebbel wrote: I would like to apply backports of the TX support patches to 4.8 branch. We released 4.8 with EC12 support already but the support is somewhat incomplete without having TX

<    4   5   6   7   8   9   10   11   >