[PATCH] PPC sqrtf using rsqrtes (PR 68609)

2015-12-04 Thread David Edelsohn
The PowerPC port provides reciprocal sqrt but doesn't implement the extra incantation to utilize it for sqrtf. The current implementation re-associates terms in the N-R iteration to utilize one constant instead of two, but does not provide a pre-computed estimate multiplied by the source, which re

Re: Request permission to delete gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c

2015-12-10 Thread David Edelsohn
On Thu, Dec 10, 2015 at 2:23 PM, Bill Schmidt wrote: > Hi, > > The subject test case has been failing as follows: > > FAIL: gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c > scan-tree-dump-times vect "vectorization not profitable" 1 > > The test has been failing since r223528, which

[COMMITTED] rs6000: Correct logic to disable NO_SUM_IN_TOC and NO_FP_IN_TOC [PR94065]

2020-03-06 Thread David Edelsohn
aix61.h, aix71.h and aix72.h intends to prevent SUM_IN_TOC and FP_IN_TOC when cmodel=large. This patch defines the variables associated with the target options to 1 to _enable_ NO_SUM_IN_TOC and enable NO_FP_IN_TOC. Bootstrapped on powerpc-ibm-aix7.2.0.0 PR target/94065 * config/

Re: [PATCH] PR libstdc++/60555 std::system_category() should recognise POSIX errno values

2018-08-02 Thread David Edelsohn
Jonathan This patch broke AIX bootstrap. /nasfarm/edelsohn/src/src/libstdc++-v3/src/c++11/system_error.cc: In member function 'virtual std::error_condition {anonymous}::system_error_category::default_error_condition(int) const': /nasfarm/edelsohn/src/src/libstdc++-v3/src/c++11/system_error.cc:245

Re: [PATCH] PR libstdc++/60555 std::system_category() should recognise POSIX errno values

2018-08-02 Thread David Edelsohn
On Thu, Aug 2, 2018 at 12:12 PM Jonathan Wakely wrote: > > On 02/08/18 11:32 -0400, David Edelsohn wrote: > >Jonathan > > > >This patch broke AIX bootstrap. > > > >/nasfarm/edelsohn/src/src/libstdc++-v3/src/c++11/system_error.cc: In > >member function &

Re: [PATCH] adjust sprintf range for AIX QNaN output (PR 86571)

2018-08-04 Thread David Edelsohn
On Sat, Aug 4, 2018, 18:19 Martin Sebor wrote: > On 08/02/2018 01:46 PM, Martin Sebor wrote: > > The recently added test gcc.dg/torture/builtin-sprintf.c > > to verify that the sprintf result computed by GCC matches > > libc's for Infinity and NaN has been failing on AIX which > > formats NaN as

[PATCH] Remove AIX 4.x, 5.x configuration

2018-08-13 Thread David Edelsohn
AIX 4.3, 5.1, 5.2, and 5.3 no longer are supported by IBM. This patch removes the GCC config.gcc stanzas and configuration files corresponding to those AIX releases. Thanks, David * config.gcc [rs6000-ibm-aix4.x]: Delete. [rs6000-ibm-aix5.1]: Delete. [rs6000-ibm-aix5.2]: Delete. [rs6000-ibm-aix5

[PATCH] XFAIL 18_support/new_nothrow.cc on AIX

2018-08-20 Thread David Edelsohn
18_support/new_nothrow.cc relies upon overriding operator new. This is not enabled by default in libstdc++ on AIX. This patch XFAILs the testcase. Bootstrapped on powerpc-ibm-aix7.2.0.0 Okay? Thanks, David * testsuite/18_support/new_nothrow.cc: XFAIL on AIX. Index: 18_support/new_nothrow.cc

Re: [PATCH] assume sprintf formatting of wide characters may fail (PR 86853)

2018-08-20 Thread David Edelsohn
builtin-sprintf-warn-1.c, builtin-sprintf-warn-2.c, and builtin-sprintf-11.c now are failing on AIX. I expect that at least part of the reason is 32 bit AIX uses 16 bit wchar_t #ifdef __64BIT__ typedef unsigned intwchar_t; #else typedef unsigned short wchar_t; #endif /* __64BIT__ */ Are the

Re: Async I/O patch with compilation fix

2018-08-22 Thread David Edelsohn
Thomas, This patch broke bootstrap on AIX again. This is completely unacceptable. In file included from */nasfarm/edelsohn/src/src/libgfortran/runtime/error.c:28*: */nasfarm/edelsohn/src/src/libgfortran/io/async.h:333:3:* *error: *unknown type name '*__gthread_cond_t*' 333 | *__gthread_cond_

Re: Async I/O patch with compilation fix

2018-08-23 Thread David Edelsohn
Thomas, After your complaint about bootstrap on gcc119, I tried it again. My bootstrap worked correctly. I used exactly the public instructions. Others have been able to bootstrap on gcc119. The problem is local to you. Does your environment have any special variables? You can see the bootstr

Re: Async I/O patch with compilation fix

2018-08-23 Thread David Edelsohn
Thomas, Once the plural.c file has been re-generated incorrectly using the local Yacc, it must be deleted and checked out again. Did you pull it fresh from the repository in your AIX tree after the incorrect checkout? Thanks, David On Wed, Aug 22, 2018 at 5:30 PM Thomas Koenig wrote: > Hi Da

[PATCH,FORTRAN] Remove OS dependency in definition of ASYNC_IO

2018-08-23 Thread David Edelsohn
The recent fix for Async I/O on systems without Gthread cond support added an explicit test for _AIX. This test is unnecessary because __GTHREAD_HAS_COND is not defined on AIX. Protecting the use of __gthread_cond_t inside in the ASYNC_IO macro for the declaration of struct adv_cond is sufficient

Re: OpenRISC Port Submission

2018-08-23 Thread David Edelsohn
Stafford, Thanks for rewriting and contributing the new OpenRISC port for GCC. I have forwarded your request to the GCC Steering Committee to formally accept the contribution. The port still requires a technical review and approval from a GCC Global Reviewer. You mentioned Richard Henderson as c

Re: [PATCH 01/14] rs6000: Remove TARGET_FPRS

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > Since rs6000 no longer supports SPE, TARGET_FPRS now always is true. > > This makes TARGET_{SF,DF}_SPE always false. Many patterns in spe.md > can now be deleted; which makes it possible to merge e.g. negdd2 with > *negdd2_fpr. > > Fina

Re: [PATCH 02/14] rs6000: Remove TARGET_E500_{SINGLE,DOUBLE}

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > Similarly, TARGET_E500_{SINGLE,DOUBLE} is always false now. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/predicates.md: Replace TARGET_E500_DOUBLE and > TARGET_E500_SINGLE by 0, simplify. > * config/

Re: [PATCH 03/14] rs6000: Remove -mfloat-gprs

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > This deletes -mfloat-gprs and the variables that go with it. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/rs6000.c: Remove everything related to -mfloat-gprs. > * config/rs6000/rs6000.opt: Ditto. > *

Re: [PATCH 04/14] rs6000: Remove rs6000_cbranch_operator

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > rs6000_cbranch_operator now is just comparison_operator, so just use > that directly. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/predicated.md (rs6000_cbranch_operator): Delete. > * config/rs6000/rs6000.md

Re: [PATCH 05/14] rs6000: Remove output_e500_flip_gt_bit

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit): Delete. > * config/rs6000/rs6000.c: Ditto. Okay. Thanks, David

Re: [PATCH 06/14] rs6000: Remove UNSPEC_MV_CR_GT

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): Delete. Okay. Thanks, David

Re: [PATCH 07/14] rs6000: Remove TARGET_SPE and TARGET_SPE_ABI and friends

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > * config/rs6000/rs6000-common.c (rs6000_handle_option): Remove > SPE ABI handling. > * config/rs6000/paired.md (paired_negv2sf2): Rename to negv2sf2. > (paired_absv2sf2

Re: [PATCH 08/14] rs6000: Remove -mspe options

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > * config/rs6000/rs6000.c (rs6000_option_override_internal): Delete > handling of SPE flags. > * config/rs6000/rs6000.opt (-mspe, -mspe=no, -mspe=yes): Delete. Okay. Thanks, D

Re: [PATCH 09/14] rs6000: Remove reg_or_none500mem_operand

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > * config/rs6000/predicates.md (reg_or_mem_operand): Reformat. > (reg_or_none500mem_operand): Delete. > * config/rs6000/rs6000.md (extendsfdf2): Use reg_or_mem_operand >

Re: [PATCH 10/14] rs6000: Remove spe.md, spe.h, linuxspe.h

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > 2017-06-06 Segher Boessenkool > > * config.gcc (powerpc*-*-*): Don't add spe.h to extra_headers. > (powerpc*-linux*spe*): Use ${cpu_type} instead of rs6000. > * config/rs6000/linuxspe.h: Delete file. >

Re: [PATCH 11/14] rs6000: Remove type attribute "brinc"

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > Nothing uses it anymore. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/8540.md (ppc8540_brinc): Delete. > * config/rs6000/e500mc.md (e500mc_brinc): Delete. > * config/rs6000/e500mc64.md (e500mc64_brin

Re: [PATCH 12/14] rs6000: Remove SPE high registers

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > Now we can remove the SPE high registers. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/darwin.h (REGISTER_NAMES): Delete the SPE high > registers. > * config/rs6000/rs6000.c (rs6000_reg_names, alt_re

Re: [PATCH 13/14] rs6000: Remove spe_acc and spefscr

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > We can also remove the two other SPE registers. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/darwin.h (REGISTER_NAMES): Delete the SPE_ACC and > SPEFSCR registers. > * config/rs6000/rs6000.c (rs6000_

Re: [PATCH 14/14] rs6000: Remove rs6000_nonimmediate_operand

2017-06-06 Thread David Edelsohn
On Tue, Jun 6, 2017 at 11:56 AM, Segher Boessenkool wrote: > Now rs6000_nonimmediate_operand is just nonimmediate_operand. > > > 2017-06-06 Segher Boessenkool > > * config/rs6000/predicates.md (rs6000_nonimmediate_operand): Delete. > * config/rs6000/rs6000.md (*movsi_internal1,

Re: [PATCH,AIX] Enable libiberty to read AIX XCOFF

2017-06-06 Thread David Edelsohn
Tony, This patch generally looks good to me -- it clearly is an incremental improvement. One of the libiberty maintainers, such as Ian, needs to approve the patch. https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01181.html + if (strcmp (name, ".text") == 0) +textptr = scnptr; The ab

Re: [PATCH,AIX] Enable XCOFF in libbacktrace on AIX

2017-06-06 Thread David Edelsohn
Tony, This patch seems like a reasonable start for the minimal libbacktrace framework needed by GCC Go. The libbacktrace maintainer, Ian, needs to approve the patch. https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01186.html I'll defer to Ian on the style of the fileline.c changes. Thanks, David

Re: [PATCH,AIX] Enable libiberty to read AIX XCOFF

2017-06-07 Thread David Edelsohn
On Wed, Jun 7, 2017 at 10:22 AM, REIX, Tony wrote: > Hi David, > > I'll fix the code incorrectly indented. I already have fixed the indentation in my copy. > > About your comment about our code looking for TEXT section by looking at > string ".text" , please note that our patch fixes a file ca

Re: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.

2017-06-08 Thread David Edelsohn
Tamar, This patch has caused a large number of new failures on AIX, including compiler ICEs. Thanks, David

Re: [PATCH 1/9] rs6000: Sanitize vector modes

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > This removes the vector modes that were only used by SPE. It also > rearranges things so it is easier to see what is there, and for what. > > > 2017-06-13 Segher Boessenkool > > * config/rs6000/rs6000-modes.def: Remove all 8-

Re: [PATCH 2/9] rs6000: Remove SPE_CONST_OFFSET_OK

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/rs6000.c (SPE_CONST_OFFSET_OK): Delete. > (rs6000_legitimate_offset_address_p): Return false for anything in > V2SImode or V2SFmode. Okay. Thanks, David

Re: [PATCH 3/9] rs6000: Remove t-spe

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/t-spe: Delete file. Okay. Thanks, David

Re: [PATCH 4/9] rs6000: Remove eabispe.h

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/eabispe.h: Delete file. Okay. Thanks, David

Re: [PATCH 5/9] rs6000: Updates to t-linux

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/t-linux: Don't handle SPE. Okay. Thanks, David

Re: [PATCH 6/9] rs6000: Updates to t-rtems

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/t-rtems: Don't handle SPE. Okay. Thanks, David

Re: [PATCH 7/9] rs6000: Remove FIXED_SCRATCH

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/rs6000.h (FIXED_SCRATCH): Delete. Okay. Thanks, david

Re: [PATCH 8/9] rs6000: Remove VECTOR_SPE

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/rs6000-opts.h (enum rs6000_vector): Delete VECTOR_SPE. > * config/rs6000/rs6000.c (rs6000_debug_vector_unit): Delete > VECTOR_SPE. Okay. Thanks, David

Re: [PATCH 9/9] rs6000: Comment fixes + some leftovers

2017-06-13 Thread David Edelsohn
On Tue, Jun 13, 2017 at 8:53 AM, Segher Boessenkool wrote: > 2017-06-13 Segher Boessenkool > > * config/rs6000/rs6000.c: Update all comments that mentioned SPE. > (rs6000_expand_builtin): Remove RS6000_BTC_EVSEL. > * config/rs6000/rs6000.h (RS6000_BTC_EVSEL): Delete. >

Re: [PATCH,AIX] Enable XCOFF in libbacktrace on AIX

2017-06-15 Thread David Edelsohn
Ping. https://gcc.gnu.org/ml/gcc-patches/2017-06/msg00383.html https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01186.html Thanks, David

[PATCH] rs6000 branch probability changes

2017-06-30 Thread David Edelsohn
Convert the rs6000 port to use the new API for branch probabilities. Okay? Thanks, David * config/rs6000/rs6000.c (emit_unlikely_jump): Adjust to new branch probability data type. Index: rs6000.c === --- rs6000.c (revision 249839)

Re: [PATCH] rs6000 branch probability changes

2017-07-01 Thread David Edelsohn
On Fri, Jun 30, 2017 at 7:18 PM, Segher Boessenkool wrote: > On Fri, Jun 30, 2017 at 10:36:27PM +0100, Ramana Radhakrishnan wrote: >> On Fri, Jun 30, 2017 at 2:36 PM, David Edelsohn wrote: >> > Convert the rs6000 port to use the new API for branch probabilities. >> >

Re: [PATCH] rs6000 branch probability changes

2017-07-01 Thread David Edelsohn
On Sat, Jul 1, 2017 at 9:06 AM, Jan Hubicka wrote: >> >> > * config/rs6000/rs6000.c (emit_unlikely_jump): Adjust to new branch >> >> > probability data type. >> >> > >> >> > Index: rs6000.c >> >> > === >> >> > --- rs6000.c (revision 2

Re: [PATCH #2], make Float128 built-in functions work with -mabi=ieeelongdouble

2017-11-16 Thread David Edelsohn
On Thu, Nov 16, 2017 at 12:48 PM, Michael Meissner wrote: > On Thu, Nov 16, 2017 at 04:48:18AM -0600, Segher Boessenkool wrote: >> On Wed, Nov 15, 2017 at 04:56:10PM -0500, Michael Meissner wrote: >> > David tells me that the patch to enable float128 built-in functions to work >> > with the -mabi=

Re: [PATCH libstdc++/66689] comp_ellint_3 and ellint_3 return garbage values

2017-11-20 Thread David Edelsohn
This patch has introduced new regressions on at least PowerPC and AArch64. FAIL: ext/special_functions/hyperg/check_value.cc execution test FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc execution test Thanks, David

Re: [PATCH] rs6000: Set rs6000_cpu correctly (PR43871)

2017-12-02 Thread David Edelsohn
On Sat, Dec 2, 2017 at 1:56 PM, Andreas Schwab wrote: > configured by ../configure, generated by GNU Autoconf 2.64, > with options " '--prefix=/usr' '--build=powerpc64-suse-linux' > '--enable-checking=release' '--enable-shared' 'CFLAGS=-O2 -g' 'CXXFLAGS=-O2 > -g' '--with-cpu-64=power4' '--enab

Re: [PATCH libstdc++/66689] comp_ellint_3 and ellint_3 return garbage values

2017-12-05 Thread David Edelsohn
On Mon, Nov 20, 2017 at 4:51 PM, Jonathan Wakely wrote: > On 20/11/17 21:07 +, Jonathan Wakely wrote: >> >> On 20/11/17 21:01 +, Jonathan Wakely wrote: >>> >>> On 20/11/17 21:43 +0100, Christophe Lyon wrote: >>>> >>>> On 20 Novemb

Re: [PATCH 1/3] rs6000: Split rs6000_cpu

2017-12-06 Thread David Edelsohn
On Wed, Dec 6, 2017 at 6:42 AM, Segher Boessenkool wrote: > This splits rs6000_cpu into rs6000_cpu and rs6000_tune. Both are still > initialised identically, so there is no behaviour change. > > Now rs6000_cpu should be set by -mcpu=, and rs6000_tune by -mtune= (but > both still are set by -mtune

Re: [PATCH 2/3] rs6000: Don't use rs6000_cpu_attr directly

2017-12-06 Thread David Edelsohn
On Wed, Dec 6, 2017 at 6:42 AM, Segher Boessenkool wrote: > In some places in the code we currently use rs6000_cpu_attr, although > that is a cast from rs6000_tune. This patch changes things to be more > regular and clearer. Now rs6000_cpu_attr is only used to define the > > > Segher > > > 2017-

[PATCH,libstdc++ testsuite] Fix hyperg failures

2017-12-07 Thread David Edelsohn
When the testcases were regenerated due to PR libstdc++/PR66689, -ffp-contract=off was omitted from (at least) the hyperg check_value.cc testcases, causing runtime regression. This patch restores the dg-options directive. This returns the libstdc++ testsuite to all passing on AIX. Bootstrapped o

[SFN] Bootstrap broken

2017-12-12 Thread David Edelsohn
Something in this series broke bootstrap on AIX, probably Power in general. - David /nasfarm/edelsohn/src/src/gcc/gimple-pretty-print.c: In function 'void pp_gimple_stmt_1(pretty_printer*, gimple*, int, dump_flags_t)': /nasfarm/edelsohn/src/src/gcc/gimple-pretty-print.c:2645:1: error: invalid rtl

Re: [SFN] Bootstrap broken

2017-12-12 Thread David Edelsohn
Rainer, PR83396 opened. you can add Solaris to the list of targets. - David On Tue, Dec 12, 2017 at 1:49 PM, Rainer Orth wrote: > Hi David, > >> Something in this series broke bootstrap on AIX, probably Power in general. > > I'm seeing the same in a sparc-sun-solaris2.11 bootstrap. > >

libgcov-driver-system bootstrap failure

2018-06-05 Thread David Edelsohn
Martin, With your recent patch, I receive the following failure building libgcov-driver-system.c In file included from /nasfarm/edelsohn/src/src/gcc/../libgcc/libgcov-driver.c:322:0: /nasfarm/edelsohn/src/src/gcc/../libgcc/libgcov-driver-system.c: In function 'char* replace_filename_variables(cha

Re: libgcov-driver-system bootstrap failure

2018-06-05 Thread David Edelsohn
ot;cs_all" #if !GCOV_LOCKED all = &all_prg->ctrs[t_ix]; and all_prg no longer has some of the members. Was the !GCOV_LOCKED path not tested for the recent changes? Thanks, David On Tue, Jun 5, 2018 at 8:28 PM David Edelsohn wrote: > > Martin, > > With your recent

Re: libgcov-driver-system bootstrap failure

2018-06-06 Thread David Edelsohn
Hi, Martin Thanks for both patches. GCC bootstrap on AIX is progressing much better with the patches installed. Thanks, David On Wed, Jun 6, 2018 at 5:05 AM Martin Liška wrote: > > On 06/06/2018 03:09 AM, David Edelsohn wrote: > > Also, there seems to be a find-and-replace mistak

Re: [PATCH] PPC: remove usage of cgraph_node::instrumentation_clone and cgraph_node::instrumented_version.

2018-06-08 Thread David Edelsohn
On Fri, Jun 8, 2018 at 9:24 AM Martin Liška wrote: > > Hi. > > This is MPX removal follow-up. The code is dead for PPC and was always false. > > I'll install that after some PPC maintainer will approve that. > Thanks, > Martin > > gcc/ChangeLog: > > 2018-06-08 Martin Liska > > * config/

[PATCH] Protect rs6000_passes_ieee128 declaration

2018-06-08 Thread David Edelsohn
The new variable rs6000_passes_ieee128 is not referenced on non-ELF paths. This patch protects the definition to avoid unused variable warnings. Thanks, David * config/rs6000/rs6000.c (rs6000_passes_ieee128): Protect with #if TARGET_ELF. Index: rs6000.c ==

Re: [PATCH] add support for strnlen (PR 81384)

2018-06-19 Thread David Edelsohn
Martin, Does attr-nonstring-3.c assume a 64 bit environment? I'm seeing new errors on the rs6000 port FAIL: gcc.dg/attr-nonstring-3.c (internal compiler error) /nasfarm/edelsohn/src/src/gcc/testsuite/gcc.dg/attr-nonstring-3.c:73:1: error: could not split insn (insn 3244 3245 3246 (set (reg:SI 5

Re: Invert sense of NO_IMPLICIT_EXTERN_C

2018-06-25 Thread David Edelsohn
On Mon, Jun 25, 2018 at 12:48 PM Nathan Sidwell wrote: > > NO_IMPLICIT_EXTERN_C was introduced to tell the compiler that it didn't > need to fake up 'extern "C" { ... }' around system header files. Over > the years more and more system headers have become C++-aware, leading to > more targets defi

[PATCH] libstdc++/testsuite/experimental/algorithm link errors

2018-06-26 Thread David Edelsohn
The recent addition of testsuite/experimental/algorithm/sample-2.cc testsuite/experimental/algorithm/shuffle.cc introduced link errors on AIX. AIX (and Solaris) require additional options for TLS in some situations. This patch adds the dejagnu TLS directives. Was this dependency intended? Is

Re: [PATCH] rs6000: Remove -mstring

2018-01-12 Thread David Edelsohn
On Fri, Jan 12, 2018 at 11:22 AM, Segher Boessenkool wrote: > -mstring is only enabled by default on 601, and with -Os on some > configurations. It is almost always slower (than not using it) and > does not very often lead to smaller code. > > This patch disables it. If a user uses -mstring he g

Re: [PATCH,AIX] Optimize parsing of include files.

2018-01-19 Thread David Edelsohn
On Thu, Jan 18, 2018 at 9:56 AM, REIX, Tony wrote: > > Description: > * This patch optimizes the time required for parsing the include files. > > Tests: > * AIX: Build: SUCCESS >- build made by means of gmake on AIX. > > ChangeLog: > * xcoff.c: Optimize parsing of include files. Hi, Tony

Re: [PATCH v2, rs6000] Implement 32- and 64-bit BE handling for -mno-speculate-indirect-jumps

2018-01-19 Thread David Edelsohn
This patch is incorrect for AIX. Which also means that the backport to GCC 7 branch is incorrect for AIX and must be corrected before the release. AIX assembler does not accept "." (period) as the current address. "b ." is incorrect. And testing for "b ." is incorrect. I am going to try testin

Re: [PATCH, rs6000] Use $ instead of . for PC

2018-01-19 Thread David Edelsohn
On Fri, Jan 19, 2018 at 3:58 PM, Bill Schmidt wrote: > Hi, > > My recent patches to trunk and gcc-7-branch for avoiding speculation of > indirect branches has a flaw, pointed out by David. Usage of "." to > represent the program counter is not portable across all POWER > assemblers, particularly

Re: [PATCH, rs6000] Skip safe-indirect-jump-8.c for AIX

2018-01-21 Thread David Edelsohn
On Sun, Jan 21, 2018 at 8:46 AM, Bill Schmidt wrote: > Hi, > > Segher discovered that one of the new safe-indirect-jump tests fails on AIX > because of a difference between AIX_V4 and AIX_ABI for 32-bit code. The > former generates sibcalls for nonlocal function calls, but the latter does > not.

[PATCH] Document PowerPC 'native' cpu type

2018-01-25 Thread David Edelsohn
The PowerPC port(s) of GCC have included auto-detection of host cpu type through the "native" option, but it had not been documented. This patch adds the documentation to the GCC Manual. * doc/invoke.texi (PowerPC Options): Document 'native' cpu type. Thanks, David Index: invoke.texi ===

Re: [PATCH] Document PowerPC 'native' cpu type

2018-01-25 Thread David Edelsohn
On Thu, Jan 25, 2018 at 1:44 PM, Segher Boessenkool wrote: > Hi! > > On Thu, Jan 25, 2018 at 01:24:56PM -0500, David Edelsohn wrote: >> +Specifying @samp{native} as cpu type detects and selects the >> +architecture option that corresponds to the host processor of the >

Re: [PATCH] rs6000: Fix safe-indirect-jump-[18].c

2018-01-26 Thread David Edelsohn
On Fri, Jan 26, 2018 at 2:27 PM, Segher Boessenkool wrote: > Thist patch merges the safe-indirect-jump-1.c and -8.c testcases, > since they do the same thing. On the 64-bit and AIX ABIs the indirect > call is not a sibcall, since there is code generated after the call > (the restore of r2). On t

Re: [PATCH, rs6000] Fix PR83926, ICE using __builtin_vsx_{div,udiv,mul}_2di builtins

2018-02-05 Thread David Edelsohn
Peter, Why can't you place the tests into the final condition of the pattern so that the pattern fails and the normal GCC fallback machinery is used instead of manually implementing the fallback emulation? The GPR iterator only defines DI for TARGET_POWERPC64, so how does GCC get into the muldi3

Re: [PATCH, rs6000] Fix PR83926, ICE using __builtin_vsx_{div,udiv,mul}_2di builtins

2018-02-05 Thread David Edelsohn
On Mon, Feb 5, 2018 at 9:43 PM, Peter Bergner wrote: > On 2/5/18 7:32 PM, David Edelsohn wrote: >> Peter, >> >> Why can't you place the tests into the final condition of the pattern >> so that the pattern fails and the normal GCC fallback machinery is >> use

Re: [PATCH, rs6000] Fix PR83926, ICE using __builtin_vsx_{div,udiv,mul}_2di builtins

2018-02-06 Thread David Edelsohn
On Tue, Feb 6, 2018 at 10:43 AM, Peter Bergner wrote: > On 2/6/18 6:42 AM, Peter Bergner wrote: >> On 2/5/18 10:48 PM, David Edelsohn wrote: >>> On Mon, Feb 5, 2018 at 9:43 PM, Peter Bergner wrote: >>>> I did also try calling expand_divmod() here which did generate

Re: [committed] Fix overload15.C testcase (PR c++/79064)

2018-02-19 Thread David Edelsohn
This testcase continues to fail for -m32 on powerpc64-linux-gnu and on AIX. Excess errors: /nasfarm/edelsohn/src/src/gcc/testsuite/g++.dg/template/overload15.C:14:10: error: call of overloaded 'f<0>(char (*)[1])' is ambiguous /nasfarm/edelsohn/src/src/gcc/testsuite/g++.dg/template/overload15.C:15:

Re: [committed] Fix overload15.C testcase (PR c++/79064)

2018-02-19 Thread David Edelsohn
++98 (test for excess errors) - David On Mon, Feb 19, 2018 at 3:28 PM, Jakub Jelinek wrote: > On Mon, Feb 19, 2018 at 03:20:25PM -0500, David Edelsohn wrote: >> This testcase continues to fail for -m32 on powerpc64-linux-gnu and on AIX. >> >> Excess errors: >> /n

Re: [committed] Fix overload15.C testcase (PR c++/79064)

2018-02-19 Thread David Edelsohn
On Mon, Feb 19, 2018 at 3:35 PM, Jakub Jelinek wrote: > On Mon, Feb 19, 2018 at 03:31:13PM -0500, David Edelsohn wrote: >> https://gcc.gnu.org/ml/gcc-testresults/2018-02/msg01247.html >> >> === g++ tests === >> >> >> Running target unix/-m32 >> ...

[PATCH,AIX] Fixincludes for vec_malloc, vec_calloc

2018-02-22 Thread David Edelsohn
AIX stdlib.h header decides to redefine malloc and calloc when __VEC__ is defined. Hilarity ensues, such as when GCC uses __attribute__(("malloc")). Fixed with the appended fixincludes patch. Thanks, David * inclhack.def (aix_stdlib_vec_malloc): New. (aix_stdlib_vec_calloc): New. * fixincl.x:

[PATCH,AIX] aix71.h Increase ISA default

2018-02-23 Thread David Edelsohn
AIX 7.1 minimum hardware is Power6. This patch changes TARGET_DEFAULT to ISA 2.05. Thanks, David * config/rs6000/aix71.h (TARGET_DEFAULT): Change to ISA_2_5_MASKS_EMBEDDED. Index: aix71.h === --- aix71.h (revision 257941) +++ a

Re: [PATCH,AIX] aix71.h Increase ISA default

2018-02-24 Thread David Edelsohn
On Sat, Feb 24, 2018 at 6:19 PM, Segher Boessenkool wrote: > Hi David, > > On Fri, Feb 23, 2018 at 02:13:52PM -0500, David Edelsohn wrote: >> AIX 7.1 minimum hardware is Power6. This patch changes TARGET_DEFAULT >> to ISA 2.05. > >> #undef TARGET_DEFA

Re: [RFC PATCH] avoid applying attributes to explicit specializations (PR 83871)

2018-02-27 Thread David Edelsohn
Martin, This patch broke bootstrap. diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 42fd872..9c2e5e6 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -24,6 +24,7 @@ along with GCC; see the file COPYING3. If not see all methods must be provided in header files; can't use a source file that

[PATCH] Fix pt.c bootstrap breakage

2018-02-27 Thread David Edelsohn
The recent change to pt.c broke bootstrap by including C++ header file directly and including it first. This patch changes to the necessary method which includes the header file via system.h. Okay? Thanks, David * pt.c: Don't include string. Define INCLUDE_STRING before system.h. Index: pt.c

[PATCH] pr84014 testcase fix

2018-02-28 Thread David Edelsohn
The powerpc-specific testcase should test ilp32 and not invoke -m32 explicitly. Thanks, David Index: pr84014.c === --- pr84014.c (revision 258076) +++ pr84014.c (working copy) @@ -1,5 +1,5 @@ -/* { dg-do compile { target powerpc*

[PATCH] AIX 7.1 and 7.2 configure support

2018-02-28 Thread David Edelsohn
AIX 7.1 continues to support Power4 as the minimum ISA level, so this reverts the recent patch to aix71.h. AIX 7.2 requires Power7 as the minimum ISA level. The second part of this patch adds a new aix72.h file and updates config.gcc. Thanks, David * config.gcc (powerpc-ibm-aix7.1.*): New stanz

Re: Deprecate not defining NO_IMPLICIT_EXTERN_C

2018-03-21 Thread David Edelsohn
AIX still requires implicit extern C. I previously have tried to disable the feature on AIX and it failed miserably. Thanks, David On Wed, Mar 21, 2018 at 8:15 AM, Nathan Sidwell wrote: > Port maintainers CC'd, apologies if I've missed you. > > NO_IMPLICIT_EXTERN_C is a target machine define t

Re: [PATCH] rs6000: Enable -fasynchronous-unwind-tables by default

2018-04-05 Thread David Edelsohn
On Thu, Apr 5, 2018 at 5:50 AM, Jakub Jelinek wrote: > On Thu, Apr 05, 2018 at 09:45:54AM +, Segher Boessenkool wrote: >> To find out where on-entry register values live at any point in a >> program, GDB currently tries to parse to parse the executable code. >> This does not work very well, fo

[PATCH, testsuite] memchr-1.c wide char and AIX

2018-10-05 Thread David Edelsohn
memchr-1.c tests for char (test_narrow) and wchar (test_wide). The wide character test assumes 32 bit wide character, while 32 bit AIX uses 16 bit wide character. This assumption causes the wide character part of the test to fail in 32 bit mode on AIX (it succeeds on 64 bit AIX). The testcase al

Re: [PATCH, testsuite] memchr-1.c wide char and AIX

2018-10-06 Thread David Edelsohn
On Fri, Oct 5, 2018 at 5:47 PM Martin Sebor wrote: > > David, > > Attached is a patch to conditionalize the memchr-1.c test > to pass even with 2-byte wchar_t's. It also adds a compile > only test to verify memchr with -fnarrow-wchar. I verified > the changes on LE x86_64-linux and BE powerpc64-

GCC 8.1 RC1 Bootstrap comparison failure on AIX

2018-04-25 Thread David Edelsohn
Jakub and Richi, GCC 8.1 is experiencing the same bootstrap failure with GCC 8.1 RC1 as we saw previously. Bootstrap comparison failure! gcc/function-tests.o differs And the same reason: unique, static symbol that includes a random timestamp. 1949c1949 < [1936]m 0x0060 1

Re: [PATCH] Fix loop-header copying do-while loop detection (PR85116)

2018-04-26 Thread David Edelsohn
Hi, Richi This patches causes a boostrap failure on AIX. Everything miscompares. The code itself is the same, but the DWARF debug information contains many differences. - David

Re: [PATCH] Fix loop-header copying do-while loop detection (PR85116)

2018-04-28 Thread David Edelsohn
08 AM Richard Biener wrote: > On Sat, 28 Apr 2018, Richard Biener wrote: > > On Fri, 27 Apr 2018, Richard Biener wrote: > > > > > On Fri, 27 Apr 2018, David Edelsohn wrote: > > > > > > > Hi, Richi > > > > > > > > This patches c

Re: [PATCH] Fix loop-header copying do-while loop detection (PR85116)

2018-04-30 Thread David Edelsohn
On Mon, Apr 30, 2018 at 3:50 AM Richard Biener wrote > On Sun, 29 Apr 2018, Richard Biener wrote: > > On April 29, 2018 1:06:47 AM GMT+02:00, David Edelsohn < dje@gmail.com> wrote: > > >Hi, Richi > > > > > >I had been using two source trees to s

Re: patch to fix a wrong code generation with LRA when SDmode is used on ppc.

2014-08-08 Thread David Edelsohn
Hi, Vlad Why does rs6000_emit_move need special support for SDmode with LRA and not with reload? In other words, why is this a specific fix for rs6000 instead of a general improvement for reload? SDmode has some bizarre restrictions on PPC, but one of the historical advantages of GCC was reload'

Re: [PATCH powerpc64] Add a new constraint to insn movdi_internal64

2014-08-08 Thread David Edelsohn
On Fri, Aug 8, 2014 at 1:50 PM, Carrot Wei wrote: > Thank you for the comment, I've updated the patch. > > OK for trunk and 4.9 branch? > > > 2014-08-08 Guozhi Wei > > * config/rs6000/rs6000.md (*movdi_internal64): Add a new constraint. > > > On Wed, Aug 6, 2014 at 7:28 PM, Segher Boess

Re: [PATCH], rs6000 cleanup, make constraints tighter

2014-08-08 Thread David Edelsohn
On Thu, Aug 7, 2014 at 2:41 PM, Michael Meissner wrote: > I'm starting to look at updating my old address branch with an eye towards > getting the changes committed in GCC 4.10. The address branch is meant to > rewrite handling of addresses in the rs6000 backend, to generalize the > addresses bef

Re: patch to fix a wrong code generation with LRA when SDmode is used on ppc.

2014-08-09 Thread David Edelsohn
Hi, Vlad Thanks for the explanation. The patch is okay. Thanks, David On Fri, Aug 8, 2014 at 5:26 PM, Vladimir Makarov wrote: > On 2014-08-08, 2:53 PM, David Edelsohn wrote: >> >> Hi, Vlad >> >> Why does rs6000_emit_move need special support for SDmode with

Re: [PATCH 0/4] rs6000: Merge most logical SI and DI patterns

2014-08-17 Thread David Edelsohn
I wish that this patch did not need to use up another one of the primary constraint letters, but I guess there is no easy way around that. - David On Fri, Aug 15, 2014 at 8:50 PM, Segher Boessenkool wrote: > All patches were bootstrapped and regression checked separately, on > powerpc64-linux -m

Re: [PATCH,rs6000] Add pass to optimize away xxpermdi's from vector computations

2014-08-17 Thread David Edelsohn
On Wed, Aug 13, 2014 at 7:14 PM, Bill Schmidt wrote: > Hi, > > This patch adds a PowerPC-specific pass just prior to the first cse RTL > pass. The pass runs only when generating little-endian code for Power8 > with VSX enabled, and for -O1 and up. For this particular subtarget, > the use of the

Re: [PATCH 2/4] rs6000: Merge boolcsi3 and boolcdi3

2014-08-17 Thread David Edelsohn
On Fri, Aug 15, 2014 at 8:50 PM, Segher Boessenkool wrote: > 2014-08-15 Segher Boessenkool > > gcc/ > * config/rs6000/rs6000.md (*boolcsi3_internal1, *boolcsi3_internal2 > and split, *boolcsi3_internal3 and split): Delete. > (*boolcdi3_internal1, *boolcdi3_internal2 and

Re: [PATCH 1/4] rs6000: Merge boolsi3 and booldi3

2014-08-17 Thread David Edelsohn
On Fri, Aug 15, 2014 at 8:50 PM, Segher Boessenkool wrote: > This adds a new output modifier "e" that prints an 's' for things like > xoris, and changes "u" to work for both xoris and xori. With that, both > SI and DI can simply use an "n" constraint, where previously they needed > "K,L" resp. "K

Re: [PATCH 3/4] rs6000: Merge boolccsi3 and boolccdi3

2014-08-17 Thread David Edelsohn
On Fri, Aug 15, 2014 at 8:50 PM, Segher Boessenkool wrote: > 2014-08-15 Segher Boessenkool > > gcc/ > * config/rs6000/rs6000.md (*boolccsi3_internal1, *boolccsi3_internal2 > and split, *boolccsi3_internal3 and split): Delete. > (*boolccdi3_internal1, *boolccdi3_internal2

<    1   2   3   4   5   6   7   8   9   10   >