gcc.git
10 years agomips.c (r10k_needs_protection_p_1): Take an rtx rather than an rtx pointer.
Richard Sandiford [Sun, 26 Oct 2014 10:41:29 +0000 (10:41 +0000)]
mips.c (r10k_needs_protection_p_1): Take an rtx rather than an rtx pointer.

gcc/
* config/mips/mips.c (r10k_needs_protection_p_1): Take an rtx
rather than an rtx pointer.  Change type of insn from "void *"
to its real type.  Return bool rather than int.  Iterate over
all subrtxes here.
(r10k_needs_protection_p_store): Update accordingly.
(r10k_needs_protection_p): Likewise.

From-SVN: r216711

10 years agomips.c (mips16_rewrite_pool_refs_info): Delete.
Richard Sandiford [Sun, 26 Oct 2014 10:41:22 +0000 (10:41 +0000)]
mips.c (mips16_rewrite_pool_refs_info): Delete.

gcc/
* config/mips/mips.c (mips16_rewrite_pool_refs_info): Delete.
(mips16_rewrite_pool_refs): Take the insn and constant pool as
parameters.  Iterate over the instruction's pattern and return void.
(mips16_lay_out_constants): Update accordingly.

From-SVN: r216710

10 years agomips.c (mips_kernel_reg_p): Replace with...
Richard Sandiford [Sun, 26 Oct 2014 10:41:13 +0000 (10:41 +0000)]
mips.c (mips_kernel_reg_p): Replace with...

gcc/
* config/mips/mips.c (mips_kernel_reg_p): Replace with...
(mips_refers_to_kernel_reg_p): ...this new function.
(mips_expand_prologue): Update accordingly.

From-SVN: r216709

10 years agomips.c (mips_rewrite_small_data_1): Take the context as a parameter instead of the...
Richard Sandiford [Sun, 26 Oct 2014 10:41:06 +0000 (10:41 +0000)]
mips.c (mips_rewrite_small_data_1): Take the context as a parameter instead of the containing MEM.

gcc/
* config/mips/mips.c (mips_rewrite_small_data_1): Take the context
as a parameter instead of the containing MEM.  Iterate over all
subrtxes.  Don't return a value.
(mips_rewrite_small_data): Update call accordingly.

From-SVN: r216708

10 years agomips.c: Include rtl-iter.h.
Richard Sandiford [Sun, 26 Oct 2014 10:40:59 +0000 (10:40 +0000)]
mips.c: Include rtl-iter.h.

gcc/
* config/mips/mips.c: Include rtl-iter.h.
(mips_small_data_pattern_1): Take an rtx rather than an rtx pointer.
Take the context as a parameter instead of the containing MEM.
Iterate over all subrtxes.
(mips_small_data_pattern_p): Update call accordingly.

From-SVN: r216707

10 years agomep.c (mep_mul_hilo_bypass_1): Delete.
Richard Sandiford [Sun, 26 Oct 2014 10:40:52 +0000 (10:40 +0000)]
mep.c (mep_mul_hilo_bypass_1): Delete.

gcc/
* config/mep/mep.c (mep_mul_hilo_bypass_1): Delete.
(mep_mul_hilo_bypass_p): Use FOR_EACH_SUBRTX.

From-SVN: r216706

10 years agomep.c (mep_store_find_set): Take a const_rtx and return a bool.
Richard Sandiford [Sun, 26 Oct 2014 10:40:44 +0000 (10:40 +0000)]
mep.c (mep_store_find_set): Take a const_rtx and return a bool.

gcc/
* config/mep/mep.c (mep_store_find_set): Take a const_rtx and
return a bool.  Replace "void *" with specific type.  Iterate
over all subrtxes.
(mep_store_data_bypass_1): Update calls accordingly.

From-SVN: r216705

10 years agomep.c: Include rtl-iter.h.
Richard Sandiford [Sun, 26 Oct 2014 10:40:37 +0000 (10:40 +0000)]
mep.c: Include rtl-iter.h.

gcc/
* config/mep/mep.c: Include rtl-iter.h.
(global_reg_mentioned_p_1): Take a const_rtx and return a bool.
(xtensa_tls_referenced_p): Return a bool.  Use FOR_EACH_SUBRTX.

From-SVN: r216704

10 years agoxtensa.c: Include rtl-iter.h.
Richard Sandiford [Sun, 26 Oct 2014 10:40:29 +0000 (10:40 +0000)]
xtensa.c: Include rtl-iter.h.

gcc/
* config/xtensa/xtensa.c: Include rtl-iter.h.
(xtensa_tls_referenced_p_1): Delete.
(xtensa_tls_referenced_p): Use FOR_EACH_SUBRTX.

From-SVN: r216703

10 years agosh.c (sh_contains_memref_p_1): Delete.
Richard Sandiford [Sun, 26 Oct 2014 10:40:22 +0000 (10:40 +0000)]
sh.c (sh_contains_memref_p_1): Delete.

gcc/
* config/sh/sh.c (sh_contains_memref_p_1): Delete.
(sh_contains_memref_p): Use FOR_EACH_SUBRTX.

From-SVN: r216702

10 years agosh-protos.h (shmedia_cleanup_truncate): Take an rtx as argument and return the number...
Richard Sandiford [Sun, 26 Oct 2014 10:40:15 +0000 (10:40 +0000)]
sh-protos.h (shmedia_cleanup_truncate): Take an rtx as argument and return the number of changes.

gcc/
* config/sh/sh-protos.h (shmedia_cleanup_truncate): Take an
rtx as argument and return the number of changes.
* config/sh/sh.c: Include rtl-iter.h.
(shmedia_cleanup_truncate): Take an rtx as argument and iterate
over all subrtxes.  Return the number of changes made.
* config/sh/sh.md: Update caller accordingly.

From-SVN: r216701

10 years agom68k.c (m68k_tls_reference_p_1): Delete.
Richard Sandiford [Sun, 26 Oct 2014 10:40:05 +0000 (10:40 +0000)]
m68k.c (m68k_tls_reference_p_1): Delete.

gcc/
* config/m68k/m68k.c (m68k_tls_reference_p_1): Delete.
(m68k_tls_reference_p): Use FOR_EACH_SUBRTX_VAR.

From-SVN: r216700

10 years agom68k.c: Include rtl-iter.h.
Richard Sandiford [Sun, 26 Oct 2014 10:39:57 +0000 (10:39 +0000)]
m68k.c: Include rtl-iter.h.

gcc/
* config/m68k/m68k.c: Include rtl-iter.h.
(m68k_final_prescan_insn_1): Delete.
(m68k_final_prescan_insn): Use FOR_EACH_SUBRTX_VAR.

From-SVN: r216699

10 years agoDaily bump.
GCC Administrator [Sun, 26 Oct 2014 00:16:26 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r216696

10 years agore PR tree-optimization/63641 (Invalid shift leads to incorrect code on 32-bit system)
Jakub Jelinek [Sat, 25 Oct 2014 20:21:47 +0000 (22:21 +0200)]
re PR tree-optimization/63641 (Invalid shift leads to incorrect code on 32-bit system)

PR tree-optimization/63641
* tree-ssa-reassoc.c (optimize_range_tests_to_bit_test): Set high
to low + prec - 1 - clz (mask) instead of low + prec - clz (mask).

* gcc.c-torture/execute/pr63641.c: New test.

From-SVN: r216693

10 years agostatus_cxx2011.xml: Update unordered container specific behavior.
François Dumont [Sat, 25 Oct 2014 20:18:19 +0000 (20:18 +0000)]
status_cxx2011.xml: Update unordered container specific behavior.

2014-10-25  François Dumont  <fdumont@gcc.gnu.org>

* doc/xml/manual/status_cxx2011.xml: Update unordered container
specific behavior.

From-SVN: r216692

10 years agoAdd forgotten "configure: regenerate" stanza to last CL entry.
Hans-Peter Nilsson [Sat, 25 Oct 2014 15:36:39 +0000 (15:36 +0000)]
Add forgotten "configure: regenerate" stanza to last CL entry.

From-SVN: r216690

10 years agore PR rtl-optimization/63615 (FAIL: gcc.target/i386/addr-sel-1.c)
Alan Modra [Sat, 25 Oct 2014 06:45:52 +0000 (17:15 +1030)]
re PR rtl-optimization/63615 (FAIL: gcc.target/i386/addr-sel-1.c)

PR rtl-optimization/63615
* simplify-rtx.c (simplify_plus_minus): Set "canonicalized" on
decomposing PLUS or MINUS if operands are not placed adjacent
in the "ops" array.

From-SVN: r216689

10 years agoOnly allow e500 double in SPE_SIMD_REGNO_P registers.
Joseph Myers [Sat, 25 Oct 2014 00:23:17 +0000 (01:23 +0100)]
Only allow e500 double in SPE_SIMD_REGNO_P registers.

rs6000_hard_regno_nregs_internal allows SPE vectors in single
registers satisfying SPE_SIMD_REGNO_P (i.e. register numbers 0 to
31).  However, the corresponding test for e500 double treats all
registers as being able to store a 64-bit value, rather than just
those GPRs.

Logically this inconsistency is wrong; in addition, it causes problems
unwinding from signal handlers.  linux-unwind.h uses
ARG_POINTER_REGNUM as a place to store the return address from a
signal handler, but this logic in rs6000_hard_regno_nregs_internal
results in that being considered an 8-byte register, resulting in
assertion failures.
(<https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02625.html> first
needs to be applied for unwinding to work in general on e500.)  This
patch makes rs6000_hard_regno_nregs_internal handle the e500 double
case consistently with SPE vectors.

Tested with no regressions with cross to powerpc-linux-gnuspe (given
the aforementioned patch applied).  Failures of signal handling
unwinding tests such as gcc.dg/cleanup-{8,9,10,11}.c are fixed by this
patch.

* config/rs6000/rs6000.c (rs6000_hard_regno_nregs_internal): Do
not allow e500 double in registers not satisyfing
SPE_SIMD_REGNO_P.

From-SVN: r216688

10 years agoOptimize powerpc*-*-linux* 32-bit classic hard/soft float hardfp/soft-fp use.
Joseph Myers [Sat, 25 Oct 2014 00:22:02 +0000 (01:22 +0100)]
Optimize powerpc*-*-linux* 32-bit classic hard/soft float hardfp/soft-fp use.

Continuing the cleanups of libgcc soft-fp configuration for
powerpc*-*-linux* in preparation for implementing
TARGET_ATOMIC_ASSIGN_EXPAND_FENV for soft-float and e500, this patch
optimizes the choice of which functions to build for the 32-bit
classic hard-float and soft-float cases.  (e500 will be dealt with in
a separate patch which will need to add new features to t-hardfp and
t-softfp; this patch keeps the status quo for e500.)

For hard-float, while the functions in question are part of the libgcc
ABI there is no need for them to contain software floating point code:
no newly built code should use them, and if anything does use them
it's most efficient (space and speed) for them to pass straight
through to floating-point hardware instructions; this case is made to
use t-hardfp to achieve that.  For soft-float, direct use of soft-fp
functions for operations involving DImode or unsigned integers is more
efficient than using the libgcc2.c versions of those operations to
convert to operations on other types (which then end up calling
soft-fp functions for those other types, possibly more than once);
this case is thus stopped from using t-softfp-excl.  (A future patch
will stop the e500 cases from using t-softfp-excl as well.)

Tested with no regressions for crosses to powerpc-linux-gnu (soft
float and classic hard float); also checked that the same set of
symbols and versions is exported from shared libgcc before and after
the patch.

* configure.ac (ppc_fp_type): Set variable on powerpc*-*-linux*.
* configure: Regenerate.
* config.host (powerpc*-*-linux*): Use $ppc_fp_type to determine
additions to tmake_file.  Use t-hardfp-sfdf and t-hardfp instead
of soft-fp for 32-bit classic hard float.  Do not use
t-softfp-excl for soft float.

From-SVN: r216687

10 years agoDaily bump.
GCC Administrator [Sat, 25 Oct 2014 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r216686

10 years agodwarf2out.c (declare_in_namespace): Only emit external declarations in the local...
Aldy Hernandez [Sat, 25 Oct 2014 00:08:41 +0000 (00:08 +0000)]
dwarf2out.c (declare_in_namespace): Only emit external declarations in the local scope once.

* dwarf2out.c (declare_in_namespace): Only emit external
declarations in the local scope once.

From-SVN: r216683

10 years agoC++11 explicitly forbids macros for bool, true and false.
Jonathan Wakely [Fri, 24 Oct 2014 20:56:40 +0000 (21:56 +0100)]
C++11 explicitly forbids macros for bool, true and false.

gcc:
* ginclude/stdbool.h: Do not define bool, true or false in C++11.

libstdc++-v3:
* testsuite/18_support/headers/cstdbool/macros.cc: New.

From-SVN: r216679

10 years agocheck.c (check_co_collective): Reject coindexed A args.
Tobias Burnus [Fri, 24 Oct 2014 20:52:41 +0000 (22:52 +0200)]
check.c (check_co_collective): Reject coindexed A args.

2014-10-24  Tobias Burnus  <burnus@net-b.de>

gcc/fortran
        * check.c (check_co_collective): Reject coindexed A args.
        (gfc_check_co_reduce): Add OPERATOR checks.
        * gfortran.texi (_gfortran_caf_co_broadcast,
        * _gfortran_caf_co_max,
        _gfortran_caf_co_min, _gfortran_caf_co_sum,
        _gfortran_caf_co_reduce): Add ABI documentation.
        * intrinsic.texi (CO_REDUCE): Document intrinsic.
        (DPROD): Returns double not single precision.
        * trans-decl.c (gfor_fndecl_co_reduce): New global var.
        (gfc_build_builtin_function_decls): Init it.
        * trans.h (gfor_fndecl_co_reduce): Declare it.
        * trans-intrinsic.c (conv_co_collective,
        gfc_conv_intrinsic_subroutine): Handle CO_REDUCE.

gcc/testsuite/
        * gfortran.dg/coarray_collectives_9.f90: Remove dg-error.
        * gfortran.dg/coarray_collectives_13.f90: New.
        * gfortran.dg/coarray_collectives_14.f90: New.
        * gfortran.dg/coarray_collectives_15.f90: New.
        * gfortran.dg/coarray_collectives_16.f90: New.

From-SVN: r216678

10 years agoFix error in earlier ChangeLog entry: s/define/undefine/.
Ian Lance Taylor [Fri, 24 Oct 2014 18:27:04 +0000 (18:27 +0000)]
Fix error in earlier ChangeLog entry: s/define/undefine/.

From-SVN: r216676

10 years ago[ARM] gnu11 cleanup for aapcs testcases
Jiong Wang [Fri, 24 Oct 2014 17:14:02 +0000 (17:14 +0000)]
[ARM] gnu11 cleanup for aapcs testcases

gcc/testsuite/
   * gcc.target/arm/aapcs/abitest.h: Declare memcpy.

From-SVN: r216675

10 years agore PR c/56980 (C pretty-printer does not handle well pointer to typedef of struct)
Marek Polacek [Fri, 24 Oct 2014 16:29:56 +0000 (16:29 +0000)]
re PR c/56980 (C pretty-printer does not handle well pointer to typedef of struct)

PR c/56980
* c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
print "struct"/"union"/"enum" for typedefed names.

* gcc.dg/pr56980.c: New test.

From-SVN: r216674

10 years agofix up changelog format for r216671.
Charles Baylis [Fri, 24 Oct 2014 15:01:49 +0000 (15:01 +0000)]
fix up changelog format for r216671.

From-SVN: r216673

10 years ago[PATCH 2/2] [AARCH64,NEON] Convert arm_neon.h to use new builtins for vld[234](q...
Charles Baylis [Fri, 24 Oct 2014 15:00:20 +0000 (15:00 +0000)]
[PATCH 2/2] [AARCH64,NEON] Convert arm_neon.h to use new builtins for vld[234](q?)_lane_*

2014-10-24  Charles Baylis  <charles.baylis@linaro.org>

* config/aarch64/arm_neon.h (__LD2_LANE_FUNC): Rewrite using builtins,
update uses to use new macro arguments.
(__LD3_LANE_FUNC): Likewise.
(__LD4_LANE_FUNC): Likewise.

From-SVN: r216672

10 years ago[PATCH 1/2] [AARCH64,NEON] Add patterns + builtins for vld[234](q?)_lane_* intrinsics
Charles Baylis [Fri, 24 Oct 2014 14:58:51 +0000 (14:58 +0000)]
[PATCH 1/2] [AARCH64,NEON] Add patterns + builtins for vld[234](q?)_lane_* intrinsics

2014-10-24  Charles Baylis  <charles.baylis@linaro.org>
* config/aarch64/aarch64-builtins.c
(aarch64_types_loadstruct_lane_qualifiers): Define.
* config/aarch64/aarch64-simd-builtins.def (ld2_lane, ld3_lane,
ld4_lane): New builtins.
* config/aarch64/aarch64-simd.md (aarch64_vec_load_lanesoi_lane<mode>):
New pattern.
(aarch64_vec_load_lanesci_lane<mode>): Likewise.
(aarch64_vec_load_lanesxi_lane<mode>): Likewise.
(aarch64_ld2_lane<mode>): New expand.
(aarch64_ld3_lane<mode>): Likewise.
(aarch64_ld4_lane<mode>): Likewise.
* config/aarch64/aarch64.md (define_c_enum "unspec"): Add
UNSPEC_LD2_LANE, UNSPEC_LD3_LANE, UNSPEC_LD4_LANE.

From-SVN: r216671

10 years agoFix bad email last commit
Hans-Peter Nilsson [Fri, 24 Oct 2014 14:31:47 +0000 (14:31 +0000)]
Fix bad email last commit

From-SVN: r216670

10 years agoconfigure.ac (build_configargs): Don't share config.cache between build subdirs.
Hans-Peter Nilsson [Fri, 24 Oct 2014 14:30:35 +0000 (14:30 +0000)]
configure.ac (build_configargs): Don't share config.cache between build subdirs.

* configure.ac (build_configargs): Don't share config.cache between
build subdirs.

From-SVN: r216669

10 years agoavr-protos.h (avr_out_sign_extend): New.
Georg-Johann Lay [Fri, 24 Oct 2014 14:25:10 +0000 (14:25 +0000)]
avr-protos.h (avr_out_sign_extend): New.

* avr-protos.h (avr_out_sign_extend): New.
* avr.c (avr_adjust_insn_length) [ADJUST_LEN_SEXT]: Handle.
(avr_out_sign_extend): New function.
* avr.md (extendqihi2, extendqipsi2, extendqisi2, extendhipsi2)
(extendhisi2, extendpsisi2): Use it.
(adjust_len) [sext]: New.

From-SVN: r216668

10 years agoatomic_base.h: Avoid including <stdbool.h>.
Paolo Carlini [Fri, 24 Oct 2014 12:54:43 +0000 (12:54 +0000)]
atomic_base.h: Avoid including <stdbool.h>.

2014-10-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/atomic_base.h: Avoid including <stdbool.h>.
* include/std/atomic: When __cplusplus < 201103L skip the rest of
the header.
* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Adjust.

From-SVN: r216667

10 years agoconfig.gcc (sparc*-*-*): Accept mcpu=leon3v7 processor.
Daniel Hellstrom [Fri, 24 Oct 2014 12:34:49 +0000 (14:34 +0200)]
config.gcc (sparc*-*-*): Accept mcpu=leon3v7 processor.

2014-10-24  Daniel Hellstrom  <daniel@gaisler.com>

* config.gcc (sparc*-*-*): Accept mcpu=leon3v7 processor.
* doc/invoke.texi (SPARC options): Add mcpu=leon3v7 comment.
* config/sparc/leon.md (leon3_load, leon_store, leon_fp_*): Handle
leon3v7 as leon3.
* config/sparc/sparc-opts.h (enum processor_type): Add LEON3V7.
* config/sparc/sparc.c (sparc_option_override): Add leon3v7 support.
* config/sparc/sparc.h (TARGET_CPU_leon3v7): New define.
* config/sparc/sparc.md (cpu): Add leon3v7.
* config/sparc/sparc.opt (enum processor_type): Add leon3v7.

From-SVN: r216666

10 years ago[ARM] revert changes on check_effective_target_arm_*_ok
Jiong Wang [Fri, 24 Oct 2014 12:06:37 +0000 (12:06 +0000)]
[ARM] revert changes on check_effective_target_arm_*_ok

  gcc/testsuite/
    * lib/target-supports.exp
    (check_effective_target_arm_crypto_ok_nocache): Remove declaration for
    vaeseq_u8.
    (check_effective_target_arm_neon_fp16_ok_nocache): Remove declaration for
    vcvt_f16_f32.
    (check_effective_target_arm_neonv2_ok_nocache): Remove declaration for
    vfma_f32.

From-SVN: r216663

10 years agore PR tree-optimization/63595 (Segmentation faults inside kernel)
Martin Liska [Fri, 24 Oct 2014 11:57:58 +0000 (13:57 +0200)]
re PR tree-optimization/63595 (Segmentation faults inside kernel)

Fix for PR63595

* gcc.dg/ipa/pr63595.c: New test.
* ipa-icf.c (sem_function::compare_phi_node): PHI result comparison

From-SVN: r216662

10 years agovuzp.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:54:30 +0000 (11:54 +0000)]
vuzp.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vuzp.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vzip.c: Likewise.

From-SVN: r216661

10 years agovmul.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:54:06 +0000 (11:54 +0000)]
vmul.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vmul.c: New file.

From-SVN: r216660

10 years agovldX_lane.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:53:29 +0000 (11:53 +0000)]
vldX_lane.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c: New file.

From-SVN: r216659

10 years agovldX.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:53:04 +0000 (11:53 +0000)]
vldX.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vldX.c: New file.

From-SVN: r216658

10 years agovld1_dup.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:52:40 +0000 (11:52 +0000)]
vld1_dup.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vld1_dup.c: New file.

From-SVN: r216657

10 years agovdup-vmov.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:52:16 +0000 (11:52 +0000)]
vdup-vmov.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vdup-vmov.c: New file.

From-SVN: r216656

10 years agovclz.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:51:47 +0000 (11:51 +0000)]
vclz.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vclz.c: New file.

From-SVN: r216655

10 years agovbsl.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:51:19 +0000 (11:51 +0000)]
vbsl.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vbsl.c: New file.

From-SVN: r216654

10 years agovaddw.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:50:51 +0000 (11:50 +0000)]
vaddw.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vaddw.c: New file.

From-SVN: r216653

10 years agovaddl.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:50:24 +0000 (11:50 +0000)]
vaddl.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vaddl.c: New file.

From-SVN: r216652

10 years agovaddhn.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:49:59 +0000 (11:49 +0000)]
vaddhn.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vaddhn.c: New file.

From-SVN: r216651

10 years agovabdl.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:49:10 +0000 (11:49 +0000)]
vabdl.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vabdl.c: New file.

From-SVN: r216650

10 years agovabd.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:48:34 +0000 (11:48 +0000)]
vabd.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vabd.c: New file.

From-SVN: r216649

10 years agovabal.c: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:47:49 +0000 (11:47 +0000)]
vabal.c: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vabal.c: New file.

From-SVN: r216648

10 years agobinary_sat_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:47:21 +0000 (11:47 +0000)]
binary_sat_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.inc: New
file.
* gcc.target/aarch64/advsimd-intrinsics/vqadd.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqsub.c: Likewise.

From-SVN: r216647

10 years agounary_sat_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:46:47 +0000 (11:46 +0000)]
unary_sat_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/unary_sat_op.inc: New
file.
* gcc.target/aarch64/advsimd-intrinsics/vqabs.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqneg.c: Likewise.

From-SVN: r216646

10 years agocmp_fp_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:46:04 +0000 (11:46 +0000)]
cmp_fp_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/cmp_fp_op.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vcage.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcagt.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcale.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcalt.c: Likewise.

From-SVN: r216645

10 years agocmp_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:45:24 +0000 (11:45 +0000)]
cmp_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/cmp_op.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vceq.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcge.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcgt.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcle.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vclt.c: Likewise.

From-SVN: r216644

10 years agobinary_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:44:44 +0000 (11:44 +0000)]
binary_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/binary_op.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vadd.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vand.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vbic.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/veor.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vorn.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vorr.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsub.c: Likewise.

From-SVN: r216643

10 years agounary_op.inc: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:42:09 +0000 (11:42 +0000)]
unary_op.inc: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/unary_op.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vabs.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vneg.c: Likewise.

From-SVN: r216642

10 years agoAdd new files missing from previous commit.
Christophe Lyon [Fri, 24 Oct 2014 11:40:58 +0000 (13:40 +0200)]
Add new files missing from previous commit.

From-SVN: r216641

10 years agoREADME.advsimd-intrinsics: New file.
Christophe Lyon [Fri, 24 Oct 2014 11:38:51 +0000 (13:38 +0200)]
README.advsimd-intrinsics: New file.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/README.advsimd-intrinsics: New file.
* gcc.target/aarch64/advsimd-intrinsics/README: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/compute-ref-data.h:
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp:
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vaba.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vld1.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vshl.c: Likewise.

From-SVN: r216640

10 years ago[AArch64] LINK_SPEC changes for Cortex-A53 erratum 835769 workaround
Kyrylo Tkachov [Fri, 24 Oct 2014 11:32:40 +0000 (11:32 +0000)]
[AArch64] LINK_SPEC changes for Cortex-A53 erratum 835769 workaround

     * config/aarch64/aarch64-elf-raw.h (CA53_ERR_835769_SPEC): Define.
     (LINK_SPEC): Include CA53_ERR_835769_SPEC.
     * config/aarch64/aarch64-linux.h (CA53_ERR_835769_SPEC): Define.
     (LINK_SPEC): Include CA53_ERR_835769_SPEC.

From-SVN: r216639

10 years agowrapper.exp ({tool}_maybe_build_wrapper): Clear wrap_compile_flags before setting it.
Christophe Lyon [Fri, 24 Oct 2014 11:32:05 +0000 (11:32 +0000)]
wrapper.exp ({tool}_maybe_build_wrapper): Clear wrap_compile_flags before setting it.

2014-10-24  Christophe Lyon  <christophe.lyon@linaro.org>

* lib/wrapper.exp ({tool}_maybe_build_wrapper): Clear
wrap_compile_flags before setting it.

From-SVN: r216638

10 years ago[AArch64] Cleanup logic around aarch64_final_prescan
Kyrylo Tkachov [Fri, 24 Oct 2014 11:30:42 +0000 (11:30 +0000)]
[AArch64] Cleanup logic around aarch64_final_prescan

* config/aarch64/aarch64.h (ADJUST_INSN_LENGTH): Wrap definition in
do while (0).
* config/aarch64/aarch64.c (is_mem_p): Delete.
(is_memory_op): Rename to...
(has_memory_op): ... This.  Use FOR_EACH_SUBRTX.
(dep_between_memop_and_curr): Assert that the input is a SET.
(aarch64_madd_needs_nop): Add comment.  Do not call
dep_between_memop_and_curr on NULL body.
(aarch64_final_prescan_insn): Add comment.
Include rtl-iter.h.

From-SVN: r216637

10 years agoMakefile.in (BUILD_CPPLIB): Move $(LIBINTL) $(LIBICONV) to genmatch BUILD_LIBS instead.
Richard Biener [Fri, 24 Oct 2014 11:09:30 +0000 (11:09 +0000)]
Makefile.in (BUILD_CPPLIB): Move $(LIBINTL) $(LIBICONV) to genmatch BUILD_LIBS instead.

2014-10-24  Richard Biener  <rguenther@suse.de>

* Makefile.in (BUILD_CPPLIB): Move $(LIBINTL) $(LIBICONV)
to genmatch BUILD_LIBS instead.

From-SVN: r216632

10 years agogenmatch.c (expr::gen_transform): Use fold_buildN_loc and build_call_expr_loc.
Richard Biener [Fri, 24 Oct 2014 11:00:08 +0000 (11:00 +0000)]
genmatch.c (expr::gen_transform): Use fold_buildN_loc and build_call_expr_loc.

2014-10-24  Richard Biener  <rguenther@suse.de>

* genmatch.c (expr::gen_transform): Use fold_buildN_loc
and build_call_expr_loc.
(dt_simplify::gen): Drop non_lvalue for GIMPLE, use
non_lvalue_loc to build it for GENERIC.
(decision_tree::gen_generic): Add location argument to
generic_simplify prototype.
(capture_info): New class.
(capture_info::capture_info): New constructor.
(capture_info::walk_match): New method.
(capture_info::walk_result): New method.
(capture_info::walk_c_expr): New method.
(dt_simplify::gen): Handle preserving side-effects for
GENERIC code generation.
(decision_tree::gen_generic): Do not reject operands
with TREE_SIDE_EFFECTS.
* generic-match.h: New file.
* generic-match-head.c: Include generic-match.h, not gimple-match.h.
* match.pd: Add some constant folding patterns from fold-const.c.
* fold-const.c: Include generic-match.h.
(fold_unary_loc): Dispatch to generic_simplify.
(fold_ternary_loc): Likewise.
(fold_binary_loc): Likewise.  Remove patterns now implemented
by generic_simplify.
* gimple-fold.c (replace_stmt_with_simplification): New function.
(fold_stmt_1): Add valueize parameter, dispatch to gimple_simplify.
(no_follow_ssa_edges): New function.
(fold_stmt): New overload with valueization hook.  Use
no_follow_ssa_edges for the overload without hook.
(fold_stmt_inplace): Likewise.
* gimple-fold.h (no_follow_ssa_edges): Declare.

From-SVN: r216631

10 years agore PR target/63173 (performance problem with simd intrinsics vld2_dup_* on aarch64...
Felix Yang [Fri, 24 Oct 2014 10:53:08 +0000 (10:53 +0000)]
re PR target/63173 (performance problem with simd intrinsics vld2_dup_* on aarch64-none-elf)

        PR target/63173
        * config/aarch64/arm_neon.h (__LD2R_FUNC): Remove macro.
        (__LD3R_FUNC): Ditto.
        (__LD4R_FUNC): Ditto.
        (vld2_dup_s8, vld2_dup_s16, vld2_dup_s32, vld2_dup_f32, vld2_dup_f64,
         vld2_dup_u8, vld2_dup_u16, vld2_dup_u32, vld2_dup_p8, vld2_dup_p16
         vld2_dup_s64, vld2_dup_u64, vld2q_dup_s8, vld2q_dup_p8,
         vld2q_dup_s16, vld2q_dup_p16, vld2q_dup_s32, vld2q_dup_s64,
         vld2q_dup_u8, vld2q_dup_u16, vld2q_dup_u32, vld2q_dup_u64
         vld2q_dup_f32, vld2q_dup_f64): Rewrite using builtin functions.
        (vld3_dup_s64, vld3_dup_u64, vld3_dup_f64, vld3_dup_s8
         vld3_dup_p8, vld3_dup_s16, vld3_dup_p16, vld3_dup_s32
         vld3_dup_u8, vld3_dup_u16, vld3_dup_u32, vld3_dup_f32
         vld3q_dup_s8, vld3q_dup_p8, vld3q_dup_s16, vld3q_dup_p16
         vld3q_dup_s32, vld3q_dup_s64, vld3q_dup_u8, vld3q_dup_u16
         vld3q_dup_u32, vld3q_dup_u64, vld3q_dup_f32, vld3q_dup_f64): Likewise.
        (vld4_dup_s64, vld4_dup_u64, vld4_dup_f64, vld4_dup_s8
         vld4_dup_p8, vld4_dup_s16, vld4_dup_p16, vld4_dup_s32
         vld4_dup_u8, vld4_dup_u16, vld4_dup_u32, vld4_dup_f32
         vld4q_dup_s8, vld4q_dup_p8, vld4q_dup_s16, vld4q_dup_p16
         vld4q_dup_s32, vld4q_dup_s64, vld4q_dup_u8, vld4q_dup_u16
         vld4q_dup_u32, vld4q_dup_u64, vld4q_dup_f32, vld4q_dup_f64): Likewise.
        * config/aarch64/aarch64.md (define_c_enum "unspec"): Add
        UNSPEC_LD2_DUP, UNSPEC_LD3_DUP, UNSPEC_LD4_DUP.
        * config/aarch64/aarch64-simd-builtins.def (ld2r, ld3r, ld4r): New
        builtins.
        * config/aarch64/aarch64-simd.md (aarch64_simd_ld2r<mode>): New pattern.
        (aarch64_simd_ld3r<mode>): Likewise.
        (aarch64_simd_ld4r<mode>): Likewise.
        (aarch64_ld2r<mode>): New expand.
        (aarch64_ld3r<mode>): Likewise.
        (aarch64_ld4r<mode>): Likewise.

Co-Authored-By: Jiji Jiang <jiangjiji@huawei.com>
From-SVN: r216630

10 years agoFix gcc.dg/pr63594-1.c execution on Solaris/x86
Rainer Orth [Fri, 24 Oct 2014 09:09:43 +0000 (09:09 +0000)]
Fix gcc.dg/pr63594-1.c execution on Solaris/x86

        * gcc.dg/pr63594-1.c: Apply -mno-mmx to all i?86-*-* and x86_64-*-*
        targets.
        * gcc.dg/pr63594-2.c: Likewise.

From-SVN: r216629

10 years ago980217-1.c (main): Fix implicit int.
Uros Bizjak [Fri, 24 Oct 2014 08:58:42 +0000 (10:58 +0200)]
980217-1.c (main): Fix implicit int.

* gcc.target/alpha/980217-1.c (main): Fix implicit int.
* gcc.target/alpha/pr19518.c (_mm_setzero_si64): New function.

From-SVN: r216627

10 years agoMAINTAINERS (write-after-approval): Add myself.
Daniel Hellstrom [Fri, 24 Oct 2014 08:52:20 +0000 (10:52 +0200)]
MAINTAINERS (write-after-approval): Add myself.

2014-10-24  Daniel Hellstrom  <daniel@gaisler.com>

* MAINTAINERS (write-after-approval): Add myself.

From-SVN: r216626

10 years agoHandle SCRATCH in decompose_address
Maxim Kuvyrkov [Fri, 24 Oct 2014 08:23:01 +0000 (08:23 +0000)]
Handle SCRATCH in decompose_address

* rtlanal.c (get_base_term): Handle SCRATCH.

From-SVN: r216624

10 years agoDisable max_issue when scheduling for register pressure
Maxim Kuvyrkov [Fri, 24 Oct 2014 08:22:49 +0000 (08:22 +0000)]
Disable max_issue when scheduling for register pressure

* haifa-sched.c (sched_init): Disable max_issue when scheduling for
register pressure.

From-SVN: r216623

10 years agoRemove cached_first_cycle_multipass_dfa_lookahead and cached_issue_rate
Maxim Kuvyrkov [Fri, 24 Oct 2014 08:22:37 +0000 (08:22 +0000)]
Remove cached_first_cycle_multipass_dfa_lookahead and cached_issue_rate

* haifa-sched.c (cached_first_cycle_multipass_dfa_lookahead,)
(cached_issue_rate): Remove.  Use dfa_lookahead and issue_rate instead.
(max_issue, choose_ready, sched_init): Update.

From-SVN: r216622

10 years agoImprove scheduler dumps of ready list
Maxim Kuvyrkov [Fri, 24 Oct 2014 08:22:24 +0000 (08:22 +0000)]
Improve scheduler dumps of ready list

* sched-int.h (struct _haifa_insn_data:last_rfs_win): New field.
* haifa-sched.c (INSN_LAST_RFS_WIN): New access macro.
(rfs_result): Set INSN_LAST_RFS_WIN.  Update signature.
(rank_for_schedule): Update calls to rfs_result to pass new parameters.
(print_rank_for_schedule_stats): Print out elements of ready list that
ended up on their respective places due to each of the sorting
heuristics.
(ready_sort): Update.
(debug_ready_list_1): Improve printout for SCHED_PRESSURE_MODEL.
(schedule_block): Update.

From-SVN: r216621

10 years agoAccount for prologue spills in reg_pressure scheduling
Maxim Kuvyrkov [Fri, 24 Oct 2014 08:22:12 +0000 (08:22 +0000)]
Account for prologue spills in reg_pressure scheduling

* haifa-sched.c (sched_class_regs_num, call_used_regs_num): New static
arrays.  Use sched_class_regs_num instead of ira_class_hard_regs_num.
(print_curr_reg_pressure, setup_insn_reg_pressure_info,)
(model_update_pressure, model_spill_cost): Use sched_class_regs_num.
(model_start_schedule): Update.
(sched_pressure_start_bb): New static function.  Calculate
sched_class_regs_num.
(schedule_block): Use it.
(alloc_global_sched_pressure_data): Calculate call_used_regs_num.

From-SVN: r216620

10 years agoMakefile.in (BUILD_CPPLIB): When in stage2+ use the host library and make sure to...
Richard Biener [Fri, 24 Oct 2014 08:04:25 +0000 (08:04 +0000)]
Makefile.in (BUILD_CPPLIB): When in stage2+ use the host library and make sure to pull in the required...

2014-10-24  Richard Biener  <rguenther@suse.de>

* Makefile.in (BUILD_CPPLIB): When in stage2+ use the
host library and make sure to pull in the required libintl
and libiconv dependencies.

From-SVN: r216619

10 years agofold-const.c (fold_binary_loc): Fix copy-and-pasto.
Richard Biener [Fri, 24 Oct 2014 07:57:51 +0000 (07:57 +0000)]
fold-const.c (fold_binary_loc): Fix copy-and-pasto.

2014-10-24  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_binary_loc): Fix copy-and-pasto.

From-SVN: r216617

10 years agoFix bootstrap/PR63632
Markus Trippelsdorf [Fri, 24 Oct 2014 06:39:24 +0000 (06:39 +0000)]
Fix bootstrap/PR63632

r216566 (r216568 for 4.9 branch) added %{fno-lto} to LINK_COMMAND_SPEC.
However the linker doesn't understand -fno-lto and errors out.
This causes an LTO/PGO bootstrap failure, because -fno-lto is used
during STAGEprofile.
Fixed by filtering out -fno-lto in collect2.c.

From-SVN: r216613

10 years agoipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes): Guard division by zero...
Martin Liska [Fri, 24 Oct 2014 06:06:20 +0000 (08:06 +0200)]
ipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes): Guard division by zero in dumps.

* ipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes): Guard
division by zero in dumps.
(sem_item_optimizer::merge_classes): Ditto.

From-SVN: r216612

10 years agocompiler: Use MPC library for complex numbers.
Ian Lance Taylor [Fri, 24 Oct 2014 05:01:50 +0000 (05:01 +0000)]
compiler: Use MPC library for complex numbers.

* go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
mpc_t parameter instead of two mpfr_t parameters.

From-SVN: r216611

10 years agocompiler: Simplify making integer expressions.
Ian Lance Taylor [Fri, 24 Oct 2014 01:49:23 +0000 (01:49 +0000)]
compiler: Simplify making integer expressions.

Instead of always needing an mpz_t, add helper functions to
create an integer functions from signed or unsigned long
values.

From-SVN: r216610

10 years agoDaily bump.
GCC Administrator [Fri, 24 Oct 2014 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r216609

10 years agopa.c (pa_can_combine_p): Fix typo in last change.
John David Anglin [Thu, 23 Oct 2014 23:33:34 +0000 (23:33 +0000)]
pa.c (pa_can_combine_p): Fix typo in last change.

* config/pa/pa.c (pa_can_combine_p): Fix typo in last change.

From-SVN: r216606

10 years ago* tree-vrp.c (extract_range_from_assert): Fix typo in comment.
Ian Lance Taylor [Thu, 23 Oct 2014 22:48:40 +0000 (22:48 +0000)]
* tree-vrp.c (extract_range_from_assert): Fix typo in comment.

From-SVN: r216605

10 years ago* config/mep/mep.h (TARGET_HAS_F_SETLKW): Don't define.
Ian Lance Taylor [Thu, 23 Oct 2014 22:46:49 +0000 (22:46 +0000)]
* config/mep/mep.h (TARGET_HAS_F_SETLKW): Don't define.

From-SVN: r216604

10 years agointernal.h (backtrace_atomic_load_pointer): Fix to return void *.
Ian Lance Taylor [Thu, 23 Oct 2014 22:40:37 +0000 (22:40 +0000)]
internal.h (backtrace_atomic_load_pointer): Fix to return void *.

* internal.h (backtrace_atomic_load_pointer) [no atomic or sync]:
Fix to return void *.

From-SVN: r216603

10 years agoconfigure.ac: Disable the Go frontend on systems where it is known to not work.
Ian Lance Taylor [Thu, 23 Oct 2014 22:36:20 +0000 (22:36 +0000)]
configure.ac: Disable the Go frontend on systems where it is known to not work.

* configure.ac: Disable the Go frontend on systems where it is known
to not work.
* configure: Regenerate.

From-SVN: r216602

10 years agocomplexity.cc: Add missing test variable.
François Dumont [Thu, 23 Oct 2014 22:03:49 +0000 (22:03 +0000)]
complexity.cc: Add missing test variable.

2014-10-23  François Dumont  <fdumont@gcc.gnu.org>

* testsuite/25_algorithms/make_heap/complexity.cc: Add missing test
variable.
* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise and use
log2. Now require cmath support.
* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise and require
normal mode.
* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.

From-SVN: r216601

10 years agore PR debug/63623 (Lots of functions get -fvar-tracking silently turned off unnecessa...
Jakub Jelinek [Thu, 23 Oct 2014 21:58:41 +0000 (23:58 +0200)]
re PR debug/63623 (Lots of functions get -fvar-tracking silently turned off unnecessarily)

PR debug/63623
* var-tracking.c (stack_adjust_offset_pre_post_cb): New function.
(stack_adjust_offset_pre_post): Use it through for_each_inc_dec,
instead of only handling autoinc in dest if it is a MEM.
(vt_stack_adjustments): Fix up formatting.

From-SVN: r216600

10 years agore PR c++/63619 (warning: deleting ‘void*’ is undefined has no -W flag)
Jonathan Wakely [Thu, 23 Oct 2014 21:07:49 +0000 (22:07 +0100)]
re PR c++/63619 (warning: deleting ‘void*’ is undefined has no -W flag)

PR c++/63619

gcc/cp:
PR c++/63619
* decl2.c (delete_sanity): Use OPT_Wdelete_incomplete in warning.

gcc/testsuite:
PR c++/63619
* g++.dg/warn/Wdelete-incomplete-3.C: New.
* g++.dg/warn/Wdelete-incomplete-4.C: New.

From-SVN: r216599

10 years agomsp430.c (msp430_print_operand): 'x' modifier is independend of -mlarge.
DJ Delorie [Thu, 23 Oct 2014 19:02:48 +0000 (15:02 -0400)]
msp430.c (msp430_print_operand): 'x' modifier is independend of -mlarge.

* config/msp430/msp430.c (msp430_print_operand): 'x' modifier is
independend of -mlarge.
* config/msp430/constraints.md (Ys): Update comment.

From-SVN: r216598

10 years agostatus_cxx2011.xml: Update status.
Jonathan Wakely [Thu, 23 Oct 2014 16:55:23 +0000 (17:55 +0100)]
status_cxx2011.xml: Update status.

* doc/xml/manual/status_cxx2011.xml: Update status.
* doc/xml/manual/status_cxx2014.xml: Update TS status.

From-SVN: r216597

10 years agore PR target/63534 (Bootstrap failure on x86_64/i686-linux)
Evgeny Stupachenko [Thu, 23 Oct 2014 16:52:11 +0000 (16:52 +0000)]
re PR target/63534 (Bootstrap failure on x86_64/i686-linux)

PR target/63534
PR target/63618
gcc/
* cse.c (delete_trivially_dead_insns): Consider PIC register is used
while it is pseudo.
* dse.c (deletable_insn_p): Likewise.
gcc/testsuite/
* gcc.target/i386/pr63618.c: New test.

From-SVN: r216596

10 years agore PR c/63626 (Warning "inline function declared but never defined" output twice)
Marek Polacek [Thu, 23 Oct 2014 16:46:44 +0000 (16:46 +0000)]
re PR c/63626 (Warning "inline function declared but never defined" output twice)

PR c/63626
* c-decl.c (pop_scope): Don't print warning in external_scope.

* gcc.dg/pr63626.c: New test.

From-SVN: r216595

10 years agoc-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR in unsigned type.
Marek Polacek [Thu, 23 Oct 2014 13:02:02 +0000 (13:02 +0000)]
c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR in unsigned type.

* c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
in unsigned type.

* c-c++-common/ubsan/undefined-2.c: New test.

From-SVN: r216593

10 years agoavr.c: Fix GNU coding rules and typos.
Georg-Johann Lay [Thu, 23 Oct 2014 12:22:16 +0000 (12:22 +0000)]
avr.c: Fix GNU coding rules and typos.

* config/avr/avr.c: Fix GNU coding rules and typos.
* config/avr/avr.h: Dito.
* config/avr/avr-c.c: Dito.
* config/avr/avr.md: Dito.

From-SVN: r216592

10 years agoAVX. Fix block absq emit for non AVX-512 targets.
Kirill Yukhin [Thu, 23 Oct 2014 11:50:19 +0000 (11:50 +0000)]
AVX. Fix block absq emit for non AVX-512 targets.

gcc/
* config/i386/sse.md (define_mode_iterator VI1248_AVX512VL_AVX512BW):
New.
(define_insn "*abs<mode>2"): Use VI1248_AVX512VL_AVX512BW mode
iterator.
(define_expand "abs<mode>2"): Ditto.

gcc/testsuite/
* gcc.target/i386/pr63600.c: New.

From-SVN: r216591

10 years agoAVX-512. 81.1/n. Extend `function_code' field `tree_var_decl' structure.
Kirill Yukhin [Thu, 23 Oct 2014 11:44:12 +0000 (11:44 +0000)]
AVX-512. 81.1/n. Extend `function_code' field `tree_var_decl' structure.

gcc/
* tree-core.h (tree_var_decl): Extend `function_code' field
by one bit, move `regdecl_flag' field to ...
(tree_decl_with_vis): Here.
* tree.h (DECL_STATIC_CHAIN): Update struct name.

From-SVN: r216590

10 years agoFix gcc.dg/ipa/ipa-icf-21.c on 32-bit Linux/x86.
Rainer Orth [Thu, 23 Oct 2014 11:32:55 +0000 (11:32 +0000)]
Fix gcc.dg/ipa/ipa-icf-21.c on 32-bit Linux/x86.

* gcc.dg/ipa/ipa-icf-21.c: Add -msse2 to dg-options.

From-SVN: r216589

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Oct 2014 10:45:48 +0000 (12:45 +0200)]
[multiple changes]

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* sem_eval.adb (Check_Non_Static_Context): Do not set
Is_Machine_Number on a literal of a fixed-point type.

2014-10-23  Robert Dewar  <dewar@adacore.com>

* mlib-prj.adb, sem_ch4.adb, exp_ch3.adb: Minor reformatting.

2014-10-23  Pierre-Marie Derodat  <derodat@adacore.com>

* exp_dbug.ads: Update ___XA parallel type specification.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Copy_Array_Subtype_Attributes): Inherit the rep
chain of the source type.
* sem_ch13.adb (Analyze_Aspect_Specifications): Minor
reformatting of an error message.
* sem_util.adb (Inherit_Rep_Item_Chain): Do not inherit a rep
chain that has been inherited already.

From-SVN: r216588

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Oct 2014 10:39:50 +0000 (12:39 +0200)]
[multiple changes]

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): Simplify analysis
in generic context, and generate body in this case as well,
to simplify ASIS traversals on the construct.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Complete_Object_Operation): Indicate that the
scope of the operation (s) is referenced, to prevent spurious
warnings about unused units.

2014-10-23  Johannes Kanig  <kanig@adacore.com>

* errout.adb (Error_Msg_Internal): Copy check flag, increment
check msg count.
* erroutc.adb (Delete_Msg) adjust check msg count.
(Output_Msg_Text) handle check msg case (do nothing).
(Prescan_Message) recognize check messages with severity prefixes.
* errutil.adb (Error_Msg) handle check flag, adjust counter.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* sem_eval.adb (Subtypes_Statically_Match): For a generic actual
type, check for the presence of discriminants in its parent type,
against the presence of discriminants in the context type.

2014-10-23  Tristan Gingold  <gingold@adacore.com>

* adaint.c: __gnat_get_file_names_case_sensitive: Default is
true on arm-darwin.

2014-10-23  Arnaud Charlet  <charlet@adacore.com>

* pprint.adb (Expression_Image): Add handling of quantifiers.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* exp_pakd.adb (Expand_Packed_Element_Reference): If the
prefix is a source entity, generate a reference to it before
transformation, because rewritten node might not generate a
proper reference, leading to spurious warnings.

2014-10-23  Tristan Gingold  <gingold@adacore.com>

* init.c: Fix thinko in previous patch.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Decimal_Fixed_Point_Type_Declaration):
Inherit the rep chain of the implicit base type.
(Floating_Point_Type_Declaration): Inherit the rep chain of the
implicit base type.
(Ordinary_Fixed_Point_Type_Declaration): Inherit the rep chain of the
implicit base type.
(Signed_Integer_Type_Declaration): Inherit the rep chain of the
implicit base type.
* sem_util.ads, sem_util.adb (Inherit_Rep_Item_Chain): New routine.

2014-10-23  Pascal Obry  <obry@adacore.com>

* g-regist.adb, g-regist.ads: Add support for reading 32bit or 64bit
view of the registry.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): If type is abstract,
return without expanding expression, to prevent subsequent crash.
* freeze.adb: better error message for illegal declaration.

From-SVN: r216587

10 years agosysdep.c (__gnat_localtime_tzoff): Properly delimit the substring which represents...
Hristian Kirtchev [Thu, 23 Oct 2014 10:33:06 +0000 (10:33 +0000)]
sysdep.c (__gnat_localtime_tzoff): Properly delimit the substring which represents the time zone on VxWorks.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

* sysdep.c (__gnat_localtime_tzoff): Properly delimit the
substring which represents the time zone on VxWorks.

From-SVN: r216586