gcc.git
9 years agore PR middle-end/65984 (ICE: definition in block 4 does not dominate use in block...
Jakub Jelinek [Mon, 4 May 2015 19:52:33 +0000 (21:52 +0200)]
re PR middle-end/65984 (ICE: definition in block 4 does not dominate use in block 2 with -fnon-call-exceptions -fsanitize=enum)

PR tree-optimization/65984
* ubsan.c: Include tree-cfg.h.
(instrument_bool_enum_load): Use stmt_ends_bb_p instead of
stmt_could_throw_p test, rename can_throw variable to ends_bb.

* c-c++-common/ubsan/pr65984.c: New test.

From-SVN: r222775

9 years agoi386.c: Change GET_CODE (...) == CONST_DOUBLE check to CONST_DOUBLE_P predicate.
Uros Bizjak [Mon, 4 May 2015 19:50:51 +0000 (21:50 +0200)]
i386.c: Change GET_CODE (...) == CONST_DOUBLE check to CONST_DOUBLE_P predicate.

* config/i386/i386.c: Change GET_CODE (...) == CONST_DOUBLE check
to CONST_DOUBLE_P predicate.
(standard_sse_constant_p): Return 0 for !TARGET_SSE.
(ix86_legitimate_constant_p) <case CONST_WIDE_INT>: For 32bit targets,
allow only operands that satisfy standard_sse_constant_p predicate.
* config/i386/i386.md: Change GET_CODE (...) == CONST_DOUBLE check
to CONST_DOUBLE_P predicate.

From-SVN: r222774

9 years agomatch.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to...
Jeff Law [Mon, 4 May 2015 17:21:56 +0000 (11:21 -0600)]
match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to narrow arithmetic.

* match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New
simplifier to narrow arithmetic.
* generic-match-head.c: (types_match, single_use): New functions.
* gimple-match-head.c: (types_match, single_use): New functions.

* gcc.dg/tree-ssa/shorten-1.c: New test.

From-SVN: r222771

9 years agoarm.c: Restore bootstrap.
Andreas Tobler [Mon, 4 May 2015 15:33:28 +0000 (17:33 +0200)]
arm.c: Restore bootstrap.

2015-05-04  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/arm/arm.c: Restore bootstrap.

From-SVN: r222768

9 years agoi386.h (TARGET_SUPPORTS_WIDE_INT): New define.
Uros Bizjak [Mon, 4 May 2015 15:05:11 +0000 (17:05 +0200)]
i386.h (TARGET_SUPPORTS_WIDE_INT): New define.

* config/i386/i386.h (TARGET_SUPPORTS_WIDE_INT): New define.
* config/i386/i386.c (ix86_legitimate_constant_p): Handle TImode
as CONST_WIDE_INT, not CONST_DOUBLE.
(ix86_cannot_force_const_mem): Handle CONST_WIDE_INT.
(output_pic_addr_const): Do not handle VOIDmode CONST_DOUBLEs.
(ix86_find_base_term): Do not check for CONST_DOUBLE.
(ix86_print_operand): Do not handle non-FPmode CONST_DOUBLEs.
(ix86_build_signbit_mask): Rewrite using wide ints.
(ix86_split_to_parts) [HOST_BITS_PER_WIDE_INT < 64]: Remove.
(ix86_rtx_costs): Handle CONST_WIDE_INT.
(find_constant): Ditto.
* config/i386/i386.md (bts, btr, btc peepholes): Rewrite
using gen_int_mode.
* config/i386/predicates.md (x86_64_immediate_operand)
<case CONST_INT>: Remove HOST_BITS_PER_WIDE_INT == 32 code.
(x86_64_zext_immediate_operand): Remove CONST_DOUBLE handling.
<case CONST_INT>: Remove HOST_BITS_PER_WIDE_INT == 32 code.
(const0_operand): Also match const_wide_int.
(constm1_operand): Ditto.
(const1_operand): Ditto.

From-SVN: r222767

9 years agore PR fortran/44735 (ICE on FORALL with character array pointer)
Francois-Xavier Coudert [Mon, 4 May 2015 14:27:14 +0000 (14:27 +0000)]
re PR fortran/44735 (ICE on FORALL with character array pointer)

PR fortran/44735
* gfortran.dg/pr44735.f90: New test.

From-SVN: r222766

9 years agore PR middle-end/65965 (Straight-line memcpy/memset not vectorized when equivalent...
Richard Biener [Mon, 4 May 2015 14:24:49 +0000 (14:24 +0000)]
re PR middle-end/65965 (Straight-line memcpy/memset not vectorized when equivalent loop is)

2015-05-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65965
* tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Split
store groups at gaps.

* gcc.dg/vect/bb-slp-33.c: New testcase.

From-SVN: r222765

9 years agore PR tree-optimization/65935 (433.milc in SPEC CPU 2006 is miscompiled)
Richard Biener [Mon, 4 May 2015 13:31:02 +0000 (13:31 +0000)]
re PR tree-optimization/65935 (433.milc in SPEC CPU 2006 is miscompiled)

2015-05-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65935
* tree-vect-slp.c (vect_build_slp_tree): If we swapped operands
then make sure to apply that swapping to the IL.

* gcc.dg/vect/bb-slp-pr65935.c: New testcase.

From-SVN: r222764

9 years agoMakefile.in (PATCHLEVEL_c): New variable.
Jakub Jelinek [Mon, 4 May 2015 10:39:16 +0000 (12:39 +0200)]
Makefile.in (PATCHLEVEL_c): New variable.

* Makefile.in (PATCHLEVEL_c): New variable.
(DATESTAMP_s, REVISION_s): If PATCHLEVEL_c is not 0,
expand the same way as if DEVPHASE_c was non-empty.

From-SVN: r222762

9 years agoFix typo "with"
Kai Tietz [Mon, 4 May 2015 10:18:23 +0000 (12:18 +0200)]
Fix typo "with"

From-SVN: r222760

9 years agore PR lto/65559 (lto1.exe: internal compiler error: in read_cgraph_and_symbols, at...
Kai Tietz [Mon, 4 May 2015 10:16:23 +0000 (12:16 +0200)]
re PR lto/65559 (lto1.exe: internal compiler error: in read_cgraph_and_symbols, at lto/lto.c:2947)

        PR target/65559
        * lto-wrapper.c (run_gcc): Open filename
        with in binary-mode.

From-SVN: r222759

9 years agoextend.texi (Variable Attributes, [...]): Move sections up in file, to immediately...
Sandra Loosemore [Mon, 4 May 2015 02:41:10 +0000 (22:41 -0400)]
extend.texi (Variable Attributes, [...]): Move sections up in file, to immediately after the Function Attributes section.

2015-05-03  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi (Variable Attributes, Type Attributes):  Move
sections up in file, to immediately after the Function Attributes
section.

From-SVN: r222758

9 years agoDaily bump.
GCC Administrator [Mon, 4 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222757

9 years ago* tree.c (verify_type): Check various uses of TYPE_MINVAL.
Jan Hubicka [Mon, 4 May 2015 00:14:47 +0000 (02:14 +0200)]
* tree.c (verify_type): Check various uses of TYPE_MINVAL.

From-SVN: r222753

9 years ago[ARM,AArch64][testsuite] AdvSIMD intrinsics tests cleanup: remove useless expected...
Christophe Lyon [Sun, 3 May 2015 20:53:17 +0000 (20:53 +0000)]
[ARM,AArch64][testsuite] AdvSIMD intrinsics tests cleanup: remove useless expected values.

2015-05-03  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/binary_op.inc: Call CHECK
for each supported variant instead of CHECK_RESULTS.
* gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/unary_op.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vXXXl.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vXXXw.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsXi_n.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vaba.c: Remove dummy
expected results for unsupported variants.  Call CHECK for each
supported variant instead of CHECK_RESULTS.
* gcc.target/aarch64/advsimd-intrinsics/vabal.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vabd.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vabdl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcls.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vclz.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcnt.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcombine.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vcreate.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vget_high.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vget_low.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vmul.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vshl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsli_n.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsri_n.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vabs.c: Remove dummy
expected results for unsupported variants.
* gcc.target/aarch64/advsimd-intrinsics/vadd.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vand.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vbic.c: Likewise.
* 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.
* 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.
* gcc.target/aarch64/advsimd-intrinsics/veor.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vneg.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vorn.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vorr.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqabs.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqadd.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqneg.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqsub.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsub.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsubl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vsubw.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vtrn.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vuzp.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vzip.c: Likewise.

From-SVN: r222752

9 years agore PR fortran/37131 (inline matmul for small matrix sizes)
Thomas Koenig [Sun, 3 May 2015 18:09:57 +0000 (18:09 +0000)]
re PR fortran/37131 (inline matmul for small matrix sizes)

2015-05-03  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/37131
* gfortran.dg/bound_9.f90:  Add pointer assignment.

From-SVN: r222751

9 years agoconfigure.ac: Match $host configured with triplets.
Matthias Klose [Sun, 3 May 2015 17:31:26 +0000 (17:31 +0000)]
configure.ac: Match $host configured with triplets.

2015-05-03  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Match $host configured with triplets.
        * configure: Regenerate.

From-SVN: r222750

9 years agoDaily bump.
GCC Administrator [Sun, 3 May 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222746

9 years agomake emit_partition_copy return a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:07:15 +0000 (21:07 +0000)]
make emit_partition_copy return a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* tree-outof-ssa.c (emit_partition_copy): Return rtx_insn *.
(insert_partition_copy_on_edge): Adjust.
(insert_rtx_to_part_on_edge): Likewise.
(insert_part_to_rtx_on_edge): Likewise.

From-SVN: r222742

9 years agomake set_return_jump_label take an rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:06:59 +0000 (21:06 +0000)]
make set_return_jump_label take an rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* function.c (set_return_jump_label): Change type of argument to
rtx_insn *.
* function.h (set_return_jump_label): Adjust.

From-SVN: r222741

9 years agotype reg_equiv_init as rtx_insn_list
Trevor Saunders [Sat, 2 May 2015 21:06:43 +0000 (21:06 +0000)]
type reg_equiv_init as rtx_insn_list

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* reload.h (struct reg_equivs_t): Change type of init to
rtx_insn *.
* ira.c (fix_reg_equiv_init): Adjust.
* reload1.c (eliminate_regs_1): Likewise.
(init_eliminable_invariants): Likewise.

From-SVN: r222740

9 years agomake fp_setter_insn take a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:06:27 +0000 (21:06 +0000)]
make fp_setter_insn take a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* cselib.c (fp_setter_insn): Take a rtx_insn *.
* cselib.h (fp_setter_insn): Adjust.

From-SVN: r222739

9 years agomake validate_replace_src_group take a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:06:09 +0000 (21:06 +0000)]
make validate_replace_src_group take a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* recog.c (struct validate_replace_src_data): Change type of
insn field to rtx_insn *.
(validate_replace_src_group): Change type of argument to rtx_insn *.
* recog.h (validate_replace_src_group): Adjust.

From-SVN: r222738

9 years agomake several functions in the scheduler take rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:05:54 +0000 (21:05 +0000)]
make several functions in the scheduler take rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* haifa-sched.c: Change the type of some variables to rtx_insn *.
* sched-deps.c: Likewise.
* sched-int.h: Likewise.
* sched-rgn.c: Likewise.
* sel-sched.c: Likewise.

From-SVN: r222737

9 years agomake some functions in config/ take a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:05:37 +0000 (21:05 +0000)]
make some functions in config/ take a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

to rtx_insn *.
* config/i386/i386.c: Change the type of some arguments to
rtx_insn *.
* config/arm/arm.c: Likewise.

From-SVN: r222736

9 years agomake some functions in lra-constraints.c take rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:05:20 +0000 (21:05 +0000)]
make some functions in lra-constraints.c take rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* lra-constraints.c: Change type of some arguments to rtx_insn *.

From-SVN: r222735

9 years agokill_autoinc_value can take a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:05:04 +0000 (21:05 +0000)]
kill_autoinc_value can take a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* regcprop.c (kill_autoinc_value): Change type of argument to
rtx_insn *.

From-SVN: r222734

9 years agorecog_data::insn can be a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:04:47 +0000 (21:04 +0000)]
recog_data::insn can be a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* genrecog.c (print_subroutine): Adjust.
* recog.c (get_bool_attr_mask_uncached): Likewise.
* recog.h (struct recog_data_d): Change the type of insn to
rtx_insn *.

From-SVN: r222733

9 years agoadd_cfi_insn can be a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:04:31 +0000 (21:04 +0000)]
add_cfi_insn can be a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* dwarf2cfi.c (add_cfi_insn): Change type to rtx_insn *.

From-SVN: r222732

9 years agodf_set_note can take a rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:04:13 +0000 (21:04 +0000)]
df_set_note can take a rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* df-problems.c (df_set_note): Change type of argument to
rtx_insn *.

From-SVN: r222731

9 years agochange local vars to rtx_insn *
Trevor Saunders [Sat, 2 May 2015 21:03:53 +0000 (21:03 +0000)]
change local vars to rtx_insn *

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* builtins.c (expand_builtin_trap): Change type of local
variable to rtx_insn *.
* config/arc/arc.md: Likewise.
* config/arm/arm.c (arm_barrier_cost): Likewise.
* config/avr/avr.c (avr_reorg): Likewise.
* config/bfin/bfin.c (workaround_speculation): Likewise.
(add_sched_insns_for_speculation): Likewise.
* config/i386/i386.c (ix86_init_pic_reg): Likewise.
(ix86_emit_save_regs): Likewise.
(get_scratch_register_on_entry): Likewise.
(ix86_emit_restore_reg_using_pop): Likewise.
(ix86_emit_leave): Likewise.
(ix86_emit_restore_regs_using_mov): Likewise.
(ix86_expand_epilogue): Likewise.
* config/rl78/rl78.c (rl78_alloc_physical_registers_cmp):
Likewise.
(rl78_alloc_physical_registers_umul): Likewise.
* config/sh/sh.md: Likewise.
* cselib.c (discard_useless_locs): Likewise.
(cselib_invalidate_regno): Likewise.
(cselib_invalidate_mem): Likewise.
* function.c (expand_function_start): Likewise.
(emit_use_return_register_into_block): Likewise.
* gcse.c: Likewise.
* haifa-sched.c (ok_for_early_queue_removal): Likewise.
* ifcvt.c (noce_get_alt_condition): Likewise.
* loop-doloop.c (doloop_condition_get): Likewise.
* lra-constraints.c (inherit_in_ebb): Likewise.
* modulo-sched.c (sms_schedule_by_order): Likewise.
* recog.c (next_insn_tests_no_inequality): Likewise.
* reorg.c (emit_delay_sequence): Likewise.
(update_reg_dead_notes): Likewise.
(fix_reg_dead_note): Likewise.
(fill_slots_from_thread): Likewise.
(delete_computation): Likewise.

From-SVN: r222730

9 years agoany (any::_Storage): Fix alignment of buffer.
Jonathan Wakely [Sat, 2 May 2015 18:19:39 +0000 (19:19 +0100)]
any (any::_Storage): Fix alignment of buffer.

* include/experimental/any (any::_Storage): Fix alignment of buffer.
(any::_Internal): Check alignment of type.
* testsuite/experimental/any/cons/aligned.cc: New.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

From-SVN: r222729

9 years agoiterator (ostream_joiner): Simplify by using the injected-class-name and the ostream_...
Jonathan Wakely [Sat, 2 May 2015 18:03:20 +0000 (19:03 +0100)]
iterator (ostream_joiner): Simplify by using the injected-class-name and the ostream_type typedef.

* include/experimental/iterator (ostream_joiner): Simplify by using
the injected-class-name and the ostream_type typedef.

From-SVN: r222728

9 years agoiterator: New.
Jonathan Wakely [Sat, 2 May 2015 17:14:25 +0000 (18:14 +0100)]
iterator: New.

* include/experimental/iterator: New. Define ostream_joiner.
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* testsuite/experimental/iterator/make_ostream_joiner.cc: New.
* testsuite/experimental/iterator/ostream_joiner.cc: New.
* testsuite/experimental/iterator/requirements.cc: New.
* doc/xml/manual/status_cxx2017.xml: Update status.
* doc/html/manual/status.html: Regenerate.

From-SVN: r222727

9 years agore PR fortran/65976 (gfortran man-page lists the -fno-fixed-form flag but does not...
Steven G. Kargl [Sat, 2 May 2015 16:37:35 +0000 (16:37 +0000)]
re PR fortran/65976 (gfortran man-page lists the -fno-fixed-form flag but does not define it, and it doesn't work)

2015-05-02  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/65976
* invoke.texi:  Remove 'no-' in '-fno-fixed-form'

From-SVN: r222725

9 years agonumeric: New.
Jonathan Wakely [Sat, 2 May 2015 15:18:36 +0000 (16:18 +0100)]
numeric: New.

* include/experimental/numeric: New. Define gcd and lcm.
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* testsuite/experimental/numeric/gcd.cc: New.
* testsuite/experimental/numeric/lcm.cc: New.
* doc/xml/manual/status_cxx2017.xml: Update status.
* doc/html/manual/status.html: Regenerate.

From-SVN: r222724

9 years agoRevert addition of feature macros from other headers per latest SD-6.
Edward Smith-Rowland [Sat, 2 May 2015 12:48:32 +0000 (12:48 +0000)]
Revert addition of feature macros from other headers per latest SD-6.

2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Revert addition of feature macros from other headers per latest SD-6.
        * include/experimental/deque: Remove feature-test macro.
        * include/experimental/forward_list: Ditto.
        * include/experimental/list: Ditto.
        * include/experimental/map: Ditto.
        * include/experimental/set: Ditto.
        * include/experimental/string: Ditto.
        * include/experimental/unordered_map: Ditto.
        * include/experimental/unordered_set: Ditto.

From-SVN: r222722

9 years agoany (any::_Storage): Make non-copyable.
Jonathan Wakely [Sat, 2 May 2015 12:38:44 +0000 (13:38 +0100)]
any (any::_Storage): Make non-copyable.

* include/experimental/any (any::_Storage): Make non-copyable.
(any::any): Do not copy _Storage object.
(any::operator=): Implement more efficiently than swapping.
(any::swap): Use new _Op_xfer operation.
(any::_Op::_Op_xfer): New enumerator.
(_Manager_internal::_S_alloc): Remove unused function.
(_Manager_internal::_S_create, _Manager_external::_S_create): Use out
parameter instead of returning a _Storage object.
(_Manager_internal::_S_manage, _Manager_external::_S_manage): Add
_Op_xfer operation for moving and swapping.
* testsuite/experimental/any/cons/nontrivial.cc: New.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

From-SVN: r222721

9 years agofs_path.h (filesystem_error::~filesystem_error): Declare.
Jonathan Wakely [Sat, 2 May 2015 11:36:55 +0000 (12:36 +0100)]
fs_path.h (filesystem_error::~filesystem_error): Declare.

* include/experimental/fs_path.h (filesystem_error::~filesystem_error):
Declare.
* src/filesystem/path.cc (filesystem_error::~filesystem_error):
Define.

From-SVN: r222720

9 years agore PR libstdc++/65978 (missing constexpr on std::forward_as_tuple and std::tie (LWG...
Jonathan Wakely [Sat, 2 May 2015 11:20:03 +0000 (12:20 +0100)]
re PR libstdc++/65978 (missing constexpr on std::forward_as_tuple and std::tie (LWG issues 2275 and 2301))

PR libstdc++/65978
* include/std/tuple (forward_as_tuple, tie): Add constexpr.
* testsuite/20_util/tuple/creation_functions/constexpr.cc: Uncomment
and fix tests for forward_as_tuple and tie.

From-SVN: r222719

9 years agoops.cc (last_write_time): Set timespec members explicitly instead of with a braced...
Jonathan Wakely [Sat, 2 May 2015 09:51:49 +0000 (10:51 +0100)]
ops.cc (last_write_time): Set timespec members explicitly instead of with a braced-init-list.

* src/filesystem/ops.cc (last_write_time) [_GLIBCXX_USE_UTIMENSAT]:
Set timespec members explicitly instead of with a braced-init-list.
[_GLIBCXX_HAVE_UTIME_H]: Use lambda to handle st_atime being a macro.

From-SVN: r222718

9 years agoupdate ChangeLogs for previous commit
Trevor Saunders [Sat, 2 May 2015 04:27:29 +0000 (04:27 +0000)]
update ChangeLogs for previous commit

From-SVN: r222716

9 years agofixup libobjc usage of PCC_BITFIELD_TYPE_MATTERS
Trevor Saunders [Sat, 2 May 2015 04:11:07 +0000 (04:11 +0000)]
fixup libobjc usage of PCC_BITFIELD_TYPE_MATTERS

libobjc/ChangeLog:

2015-05-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* acinclude.m4: Include bitfields.m4.
* config.h.in: Regenerate.
* configure: Likewise.
* configure.ac: Invoke gt_BITFIELD_TYPE_MATTERS.
* encoding.c: Check HAVE_BITFIELD_TYPE_MATTERS.

config/ChangeLog:

2015-05-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* bitfields.m4: New file.

From-SVN: r222715

9 years agoextend.texi (Variable Attributes): Add menu and proper @nodes to subsections.
Sandra Loosemore [Sat, 2 May 2015 03:30:37 +0000 (23:30 -0400)]
extend.texi (Variable Attributes): Add menu and proper @nodes to subsections.

2015-05-01  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi (Variable Attributes): Add menu and proper
@nodes to subsections.  Move Microsoft Windows attributes to
their own subsection.
(Type Attributes): Reorganize introduction to remove duplicate
list of attributes.  Add menu and proper @nodes to subsections.
Alphabetize the main table of common attributes.

From-SVN: r222714

9 years agodeque: Add feature-test macro.
Edward Smith-Rowland [Sat, 2 May 2015 02:01:35 +0000 (02:01 +0000)]
deque: Add feature-test macro.

2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>

* include/experimental/deque: Add feature-test macro.
* include/experimental/forward_list: Ditto.
* include/experimental/list: Ditto.
* include/experimental/map: Ditto.
* include/experimental/set: Ditto.
* include/experimental/string: Ditto.
* include/experimental/unordered_map: Ditto.
* include/experimental/unordered_set: Ditto.

From-SVN: r222713

9 years agoDaily bump.
GCC Administrator [Sat, 2 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222712

9 years ago* include/experimental/memory: Correct feature-test macro.
Jonathan Wakely [Fri, 1 May 2015 21:26:24 +0000 (22:26 +0100)]
* include/experimental/memory: Correct feature-test macro.

From-SVN: r222708

9 years agomemory: Add feature-test macro.
Jonathan Wakely [Fri, 1 May 2015 21:01:17 +0000 (22:01 +0100)]
memory: Add feature-test macro.

* include/experimental/memory: Add feature-test macro.
* include/experimental/vector: Likewise.
* doc/xml/manual/status_cxx2017.xml: Update status.
* doc/html/manual/status.html: Regenerate.

From-SVN: r222707

9 years agoImplement observer_ptr.
Ville Voutilainen [Fri, 1 May 2015 21:01:11 +0000 (00:01 +0300)]
Implement observer_ptr.

2015-05-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement observer_ptr.
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* include/experimental/memory: New.
* testsuite/experimental/memory/observer_ptr/assignment/assign.cc: New.
* testsuite/experimental/memory/observer_ptr/cons/cons.cc: New.
* testsuite/experimental/memory/observer_ptr/hash/hash.cc: New.
* testsuite/experimental/memory/observer_ptr/make_observer.cc: New.
* testsuite/experimental/memory/observer_ptr/relops/relops.cc: New.
* testsuite/experimental/memory/observer_ptr/requirements.cc: New.
* testsuite/experimental/memory/observer_ptr/swap/swap.cc: New.
* testsuite/experimental/memory/observer_ptr/typedefs.cc: New.

From-SVN: r222706

9 years ago* src/filesystem/path.cc (path::compare): Do not copy strings.
Jonathan Wakely [Fri, 1 May 2015 20:05:42 +0000 (21:05 +0100)]
* src/filesystem/path.cc (path::compare): Do not copy strings.

From-SVN: r222704

9 years agoacinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h> is not available.
Jonathan Wakely [Fri, 1 May 2015 19:48:00 +0000 (20:48 +0100)]
acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h> is not available.

* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h>
is not available.
(GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmodat.
* configure: Regenerate.
* config.h.in: Regenerate.
* configure.ac: Check for utime.h
* include/experimental/fs_path.h (path::string<>)
[_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove stray typename keyword.
* src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H] (DIR, opendir,
closedir, dirent, readdir_r): Replace dummy functions with #error.
(native_readdir, _Dir::advance): Use readdir when readdir_r is missing.
* src/filesystem/ops.cc (do_stat, is_set): Make inline.
(last_write_time) [!_GLIBCXX_USE_UTIMENSAT]: Use utime.
(permissions) [!_GLIBCXX_USE_FCHMODAT]: Use chmod.
(space, temp_directory_path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Set
error_code.

From-SVN: r222703

9 years agofs_path.h (path::_List): Use vector instead of list.
Jonathan Wakely [Fri, 1 May 2015 19:47:55 +0000 (20:47 +0100)]
fs_path.h (path::_List): Use vector instead of list.

* include/experimental/fs_path.h (path::_List): Use vector instead of
list.
* python/libstdcxx/v6/printers.py (StdExpPathPrinter): Adapt.
* src/filesystem/path.cc: Use std::prev instead of decrementing
rvalues. Fix whitespace.
* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
Do not decrement iterators before begin.

From-SVN: r222702

9 years agoWnarrowing4.C: Rename to Wnarrowing3.C.
Paolo Carlini [Fri, 1 May 2015 18:53:51 +0000 (18:53 +0000)]
Wnarrowing4.C: Rename to Wnarrowing3.C.

2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/Wnarrowing4.C: Rename to Wnarrowing3.C.

Co-Authored-By: Prathamesh Kulharni <prathamesh.kulkarni@linaro.org>
From-SVN: r222701

9 years agore PR c++/65858 (ICE in varpool_node::get_constructor during chromium build on arm...
Paolo Carlini [Fri, 1 May 2015 18:43:40 +0000 (18:43 +0000)]
re PR c++/65858 (ICE in varpool_node::get_constructor during chromium build on arm-linux-gnueabihf with LTO during LINK chrome)

/cp
2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
    Prathamesh Kulharni  <prathamesh.kulkarni@linaro.org>

PR c++/65858
* typeck2.c (check_narrowing): Set ok = true when pedwarn returns
false.

/testsuite
2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
    Prathamesh Kulharni  <prathamesh.kulkarni@linaro.org>

PR c++/65858
* g++.dg/cpp0x/Wnarrowing4.C: New.

Co-Authored-By: Prathamesh Kulharni <prathamesh.kulkarni@linaro.org>
From-SVN: r222699

9 years agomatch.pd: New simplification patterns.
Rasmus Villemoes [Fri, 1 May 2015 18:25:12 +0000 (20:25 +0200)]
match.pd: New simplification patterns.

* match.pd: New simplification patterns.
(x + (x & 1))  -> ((x + 1) & ~1)
(x & ~(x & y)) -> ((x & ~y))
(x | ~(x | y)) -> ((x | ~y))

* gcc.dg/20150120-1.c: New test.
* gcc.dg/20150120-2.c: New test.
* gcc.dg/20150120-3.c: New test.

From-SVN: r222697

9 years ago* gcc.dg/debug/pr65771.c: Add "dg-add-options tls".
David Edelsohn [Fri, 1 May 2015 18:23:30 +0000 (18:23 +0000)]
* gcc.dg/debug/pr65771.c: Add "dg-add-options tls".

From-SVN: r222696

9 years agofs_dir.h: Fix use of non-reserved names.
Jonathan Wakely [Fri, 1 May 2015 17:55:33 +0000 (18:55 +0100)]
fs_dir.h: Fix use of non-reserved names.

* include/experimental/fs_dir.h: Fix use of non-reserved names.
* include/experimental/fs_ops.h: Likewise.
* include/experimental/fs_path.h: Likewise.
* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Use
C++11 when checking for support.

From-SVN: r222695

9 years agolocale_classes.h (locale::facet): Delete copy operations in C++11 mode.
Jonathan Wakely [Fri, 1 May 2015 16:50:31 +0000 (17:50 +0100)]
locale_classes.h (locale::facet): Delete copy operations in C++11 mode.

* include/bits/locale_classes.h (locale::facet): Delete copy
operations in C++11 mode.

From-SVN: r222694

9 years ago* sv.po: Update.
Joseph Myers [Fri, 1 May 2015 16:23:49 +0000 (17:23 +0100)]
* sv.po: Update.

From-SVN: r222692

9 years ago* de.po: Update.
Joseph Myers [Fri, 1 May 2015 16:19:00 +0000 (17:19 +0100)]
* de.po: Update.

From-SVN: r222690

9 years ago[doc] Update definition location of attribute_spec in documentation
Kyrylo Tkachov [Fri, 1 May 2015 15:35:15 +0000 (15:35 +0000)]
[doc] Update definition location of attribute_spec in documentation

* target.def (attribute_table): Mention that struct attribute_spec
is defined in tree-core.h rather than tree.h
* doc/tm.texi: Regenerate.

From-SVN: r222688

9 years ago[PATCH] add sync_int_long target selector to gcc.dg/pr65345-2.c
Renlin Li [Fri, 1 May 2015 15:28:22 +0000 (15:28 +0000)]
[PATCH] add sync_int_long target selector to gcc.dg/pr65345-2.c

gcc/testsuite/

2015-05-01  Renlin Li  <renlin.li@arm.com>

* gcc.dg/pr65345-2.c: Add sync_int_long target selector.

From-SVN: r222687

9 years ago* include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
Jonathan Wakely [Fri, 1 May 2015 15:22:49 +0000 (16:22 +0100)]
* include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.

From-SVN: r222686

9 years agoacinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
Jonathan Wakely [Fri, 1 May 2015 15:11:05 +0000 (16:11 +0100)]
acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.

* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
* configure: Regenerate.

From-SVN: r222685

9 years agoInline one-line erasure dispatch functions.
Edward Smith-Rowland [Fri, 1 May 2015 15:00:46 +0000 (15:00 +0000)]
Inline one-line erasure dispatch functions.

2015-05-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

Inline one-line erasure dispatch functions.
* include/experimental/forward_list (erase_if(), erase()): Inline.
* include/experimental/list (erase_if(), erase()): Inline.
* include/experimental/map (erase_if(*)): Inline.
* include/experimental/set (erase_if(*)): Inline.
* include/experimental/string (erase_if(), erase()): Inline.
* include/experimental/unordered_map (erase_if(*)): Inline.
* include/experimental/unordered_set (erase_if(*)): Inline.

From-SVN: r222684

9 years agogenrecog.c (test): Rename to rtx_test.
Richard Sandiford [Fri, 1 May 2015 14:26:55 +0000 (14:26 +0000)]
genrecog.c (test): Rename to rtx_test.

gcc/
* genrecog.c (test): Rename to rtx_test.  Update rest of file
accordingly.

From-SVN: r222683

9 years agoSummary: Mark help string in DEFPARAM as no-c-format
Andreas Schwab [Fri, 1 May 2015 14:07:51 +0000 (14:07 +0000)]
Summary: Mark help string in DEFPARAM as no-c-format

PR translation/65959
* params.h (DEFPARAM): Rename msgid to nocmsgid.

From-SVN: r222682

9 years agoAllow bound simplification of array subreferences.
Mikael Morin [Fri, 1 May 2015 13:32:42 +0000 (13:32 +0000)]
Allow bound simplification of array subreferences.

gcc/fortran/
* simplify.c (simplify_bound_dim): Tighten the check for array fullness
by also checking for absence of subreference.
(simplify_bound): Don't skip simplification if the array
has subreferences.
(simplify_cobound): Same.
gcc/testsuite/
* gfortran.dg/bound_simplification_4.f90: New.

From-SVN: r222681

9 years ago[AArch64] Make aarch64_min_divisions_for_recip_mul configurable
Wilco Dijkstra [Fri, 1 May 2015 13:19:34 +0000 (13:19 +0000)]
[AArch64] Make aarch64_min_divisions_for_recip_mul configurable

On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

* gcc/config/aarch64/aarch64-protos.h (tune_params):
Add min_div_recip_mul_sf and min_div_recip_mul_df fields.
* gcc/config/aarch64/aarch64.c (aarch64_min_divisions_for_recip_mul):
Return value depending on target.
(generic_tunings): Initialize new target settings.
(cortexa53_tunings): Likewise.
(cortexa57_tunings): Likewise.
(thunderx_tunings): Likewise.
(xgene1_tunings): Likewise.

From-SVN: r222679

9 years ago[AArch64] Fix Cortex-A53 shift costs
Wilco Dijkstra [Fri, 1 May 2015 13:09:25 +0000 (13:09 +0000)]
[AArch64] Fix Cortex-A53 shift costs

On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

* gcc/config/arm/aarch-cost-tables.h (cortexa53_extra_costs):
Make Cortex-A53 shift costs more accurate.

From-SVN: r222678

9 years ago[AArch64] Handle FLOAT and UNSIGNED_FLOAT in rtx costs
Kyrylo Tkachov [Fri, 1 May 2015 12:54:22 +0000 (12:54 +0000)]
[AArch64] Handle FLOAT and UNSIGNED_FLOAT in rtx costs

* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle FLOAT and
UNSIGNED_FLOAT.

From-SVN: r222677

9 years ago[AArch64] Fix aarch64_rtx_costs of PLUS/MINUS
Wilco Dijkstra [Fri, 1 May 2015 12:52:34 +0000 (12:52 +0000)]
[AArch64] Fix aarch64_rtx_costs of PLUS/MINUS

On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

* gcc/config/aarch64/aarch64.c (aarch64_rtx_costs):
Calculate cost of op0 and op1 in PLUS and MINUS cases.

From-SVN: r222676

9 years agointro.xml: Link to new status_cxx2017.xml file.
Jonathan Wakely [Fri, 1 May 2015 11:02:24 +0000 (12:02 +0100)]
intro.xml: Link to new status_cxx2017.xml file.

* doc/xml/manual/intro.xml: Link to new status_cxx2017.xml file.
* doc/xml/manual/status_cxx2011.xml: Update status tables.
* doc/xml/manual/status_cxx2014.xml: Likewise.
* doc/xml/manual/status_cxx2017.xml: New.
* doc/xml/manual/using.xml: Fix typo.
* doc/html/*: Regenerate.

From-SVN: r222675

9 years agomemory (pointer_safety, [...]): Define.
Jonathan Wakely [Fri, 1 May 2015 11:02:18 +0000 (12:02 +0100)]
memory (pointer_safety, [...]): Define.

* include/std/memory (pointer_safety, declare_reachable,
undeclare_reachable, declare_no_pointers, undeclare_no_pointers,
get_pointer_safety): Define.
* testsuite/20_util/pointer_safety/1.cc: New.

From-SVN: r222674

9 years ago[AArch64] Remember to cost operand 0 in FP compare-with-0.0 case
Kyrylo Tkachov [Fri, 1 May 2015 08:58:34 +0000 (08:58 +0000)]
[AArch64] Remember to cost operand 0 in FP compare-with-0.0 case

* config/aarch64/aarch64.c (aarch64_rtx_costs, COMPARE case):
Add cost of op0 in the compare-with-fpzero case.

From-SVN: r222673

9 years agoDaily bump.
GCC Administrator [Fri, 1 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222669

9 years agocrypto-builtin-2.c: Replace powerpc_vsx_ok with powerpc_p8vector_ok.
Bill Schmidt [Thu, 30 Apr 2015 23:59:16 +0000 (23:59 +0000)]
crypto-builtin-2.c: Replace powerpc_vsx_ok with powerpc_p8vector_ok.

2015-04-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/crypto-builtin-2.c: Replace powerpc_vsx_ok
with powerpc_p8vector_ok.

From-SVN: r222664

9 years agore PR fortran/37131 (inline matmul for small matrix sizes)
Thomas Koenig [Thu, 30 Apr 2015 22:12:31 +0000 (22:12 +0000)]
re PR fortran/37131 (inline matmul for small matrix sizes)

2015-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/37131
* simplify.c (simplify_bound): Get constant lower bounds of one
from array spec for assumed and explicit shape shape arrays if
the lower bounds are indeed one.

2015-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/37131
* gfortran.dg/coarray_lib_this_image_2.f90:  Adjust
scan pattern.
* gfortran.dg/bound_9.f90:  New test case.

From-SVN: r222661

9 years agoFix spurious semicolons
David Malcolm [Thu, 30 Apr 2015 21:07:45 +0000 (21:07 +0000)]
Fix spurious semicolons

gcc/ChangeLog:
* builtins.c (fold_builtin_1): Remove spurious second
semicolon.
* cgraph.h (symtab_node::get_availability): Likewise.
* opts.c (common_handle_option): Remove spurious second semicolon.
* tree-ssa-loop-ivopts.c (extract_cond_operands): Likewise.
* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.

gcc/cp/ChangeLog:
* cp-tree.h (ARGUMENT_PACK_SELECT_ARG): Remove spurious
trailing semicolon.

gcc/fortran/ChangeLog:
* options.c (gfc_init_options): Remove spurious second
semicolon.
* trans-stmt.c (gfc_trans_allocate): Likewise.

From-SVN: r222658

9 years agocompiler: Use backend interface for stack allocation.
Chris Manghane [Thu, 30 Apr 2015 20:44:03 +0000 (20:44 +0000)]
compiler: Use backend interface for stack allocation.

Stack allocation was being done by making a temporary variable and
taking its address.  This does not work when allocating in a loop
because every allocated variable will refer to the same address.
The backend now provides a way to safely allocate in a loop.

* go-gcc.cc (Gcc_backend::stack_allocation_expression): New
method.

From-SVN: r222657

9 years agodevirt-28a.C: Require LTO effective target.
Uros Bizjak [Thu, 30 Apr 2015 20:22:51 +0000 (22:22 +0200)]
devirt-28a.C: Require LTO effective target.

* g++.dg/ipa/devirt-28a.C: Require LTO effective target.
* g++.dg/ext/sync-4.C (dg-additional-options): Use -march=pentium
for 32bit x86 targets.
* gcc.dg/pr36504.c (dg-additional-options): Use -march=i686 -msse
for 32bit x86 targets.
* gcc.dg/pr39455.c (dg-additional-options): Ditto.
* gcc.dg/pr45352-1.c (dg-additional-options): Ditto.
* gcc.dg/pr63914.c (dg-additional-options): Use -msse
for 32bit x86 targets.

From-SVN: r222656

9 years agotm.texi: Regenerate.
Caroline Tice [Thu, 30 Apr 2015 19:35:34 +0000 (12:35 -0700)]
tm.texi: Regenerate.

* doc/tm.texi: Regenerate.

From-SVN: r222655

9 years agoImplement N4100 File System TS
Jonathan Wakely [Thu, 30 Apr 2015 19:11:52 +0000 (20:11 +0100)]
Implement N4100 File System TS

* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Define.
(GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac: Enable filesystem TS and check its dependencies.
* include/Makefile.am: Add new headers.
* include/Makefile.in: Regenerate.
* include/bits/locale_conv.h (__do_str_code_cvt, __str_codecvt_in,
__str_codecvt_out): Move code conversion logic from wstring_convert
into new global functions.
(wstring_convert::to_bytes, wstring_convert::from_bytes): Use new
functions.
(wstring_convert::_M_conv): Remove.
* include/bits/quoted_string.h (_Quoted_string): Split out of iomanip.
* include/experimental/filesystem: New.
* include/experimental/fs_dir.h: New.
* include/experimental/fs_fwd.h: New.
* include/experimental/fs_ops.h: New.
* include/experimental/fs_path.h: New.
* include/std/iomanip (_Quoted_string): Move to bits/quoted_string.h.
* python/libstdcxx/v6/printers.py (StdExpPathPrinter): Add.
* src/Makefile.am (SUBDIRS): Add filesystem.
* src/Makefile.in: Regenerate.
* src/filesystem/Makefile.am: New.
* src/filesystem/Makefile.in: New.
* src/filesystem/dir.cc: New.
* src/filesystem/ops.cc: New.
* src/filesystem/path.cc: New.
* testsuite/experimental/filesystem/operations/absolute.cc: New.
* testsuite/experimental/filesystem/operations/copy.cc: New.
* testsuite/experimental/filesystem/operations/current_path.cc: New.
* testsuite/experimental/filesystem/path/append/path.cc: New.
* testsuite/experimental/filesystem/path/assign/assign.cc: New.
* testsuite/experimental/filesystem/path/assign/copy.cc: New.
* testsuite/experimental/filesystem/path/compare/compare.cc: New.
* testsuite/experimental/filesystem/path/compare/path.cc: New.
* testsuite/experimental/filesystem/path/compare/strings.cc: New.
* testsuite/experimental/filesystem/path/concat/path.cc: New.
* testsuite/experimental/filesystem/path/concat/strings.cc: New.
* testsuite/experimental/filesystem/path/construct/copy.cc: New.
* testsuite/experimental/filesystem/path/construct/default.cc: New.
* testsuite/experimental/filesystem/path/construct/locale.cc: New.
* testsuite/experimental/filesystem/path/construct/range.cc: New.
* testsuite/experimental/filesystem/path/decompose/extension.cc: New.
* testsuite/experimental/filesystem/path/decompose/filename.cc: New.
* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
New.
* testsuite/experimental/filesystem/path/decompose/relative_path.cc:
New.
* testsuite/experimental/filesystem/path/decompose/root_directory.cc:
New.
* testsuite/experimental/filesystem/path/decompose/root_name.cc:
New.
* testsuite/experimental/filesystem/path/decompose/root_path.cc:
New.
* testsuite/experimental/filesystem/path/decompose/stem.cc: New.
* testsuite/experimental/filesystem/path/generic/generic_string.cc:
New.
* testsuite/experimental/filesystem/path/itr/traversal.cc: New.
* testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
* testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
New.
* testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
New.
* testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
New.
* testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
New.
* testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
* testsuite/experimental/filesystem/path/nonmember/hash_value.cc: New.
* testsuite/experimental/filesystem/path/query/empty.cc: New.
* testsuite/experimental/filesystem/path/query/has_extension.cc: New.
* testsuite/experimental/filesystem/path/query/has_filename.cc: New.
* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
New.
* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
New.
* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
New.
* testsuite/experimental/filesystem/path/query/has_root_name.cc:
New.
* testsuite/experimental/filesystem/path/query/has_root_path.cc:
New.
* testsuite/experimental/filesystem/path/query/has_stem.cc: New.
* testsuite/experimental/filesystem/path/query/is_relative.cc: New.
* testsuite/util/testsuite_fs.h: New.

From-SVN: r222654

9 years agore PR tree-optimization/63551 (wrong code (segfaults) at -Os on x86_64-linux-gnu)
Marek Polacek [Thu, 30 Apr 2015 18:01:07 +0000 (18:01 +0000)]
re PR tree-optimization/63551 (wrong code (segfaults) at -Os on x86_64-linux-gnu)

PR tree-optimization/63551
     * g++.dg/ipa/pr63551.C: New test.

From-SVN: r222650

9 years agoCorrect ChangeLog entry date.
Joseph Myers [Thu, 30 Apr 2015 17:55:31 +0000 (18:55 +0100)]
Correct ChangeLog entry date.

From-SVN: r222648

9 years agobe.po, [...]: Update.
Joseph Myers [Thu, 30 Apr 2015 17:54:41 +0000 (18:54 +0100)]
be.po, [...]: Update.

* be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, fi.po, fr.po,
id.po, ja.po, nl.po, pr_BR.po, ru.po, sr.po, sv.po, tr.po, uk.po,
vi.po, zh_CN.po, zh_TW.po: Update.

From-SVN: r222646

9 years agobe.po, [...]: Update.
Joseph Myers [Thu, 30 Apr 2015 17:52:24 +0000 (18:52 +0100)]
be.po, [...]: Update.

* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
zh_TW.po: Update.

From-SVN: r222644

9 years agoDefine & use special macros to record the name & size of cold partitions.
Caroline Tice [Thu, 30 Apr 2015 17:49:02 +0000 (10:49 -0700)]
Define & use special macros to record the name & size of cold partitions.

Define & use special macros to record the name & size of cold
partitions.  (Fix PR 65929).

gcc/ChangeLog

PR 65929
* config/elfos.h (ASM_DECLARE_COLD_FUNCTION_NAME): New macro definition.
(ASM_DECLARE_COLD_FUNCTION_SIZE): New macro definition.
* doc/tm.texi.in (ASM_DECLARE_COLD_FUNCTION_NAME): Document new macro.
(ASM_DECLARE_COLD_FUNCTION_SIZE): Document new macro.
* final.c (final_scan_insn):  Use ASM_DECLARE_COLD_FUNCTION_NAME
instead of ASM_DECLARE_FUNCTION_NAME for cold partition name.
* varasm.c (assemble_end_function):  Use ASM_DECLARE_COLD_FUNCTION_SIZE
instead of ASM_DECLARE_FUNCTION_SIZE for cold partition size.

gcc/testsuite/ChangeLog:

PR  65929
* gcc.dg/tree-prof/cold_partition_label.c:  Only check for cold
partition size on certain targets.

From-SVN: r222643

9 years agoescape: Analyze function values and conversions.
Ian Lance Taylor [Thu, 30 Apr 2015 17:44:10 +0000 (17:44 +0000)]
escape: Analyze function values and conversions.

The analysis for variables defined as function literals did not
properly analyze the underlying function literal when it was converted
to a function type.  Also, when analyzing composite literals with
function literals as arguments, the connection between the composite
literal and the function literal was ignored.

From-SVN: r222642

9 years ago* varasm.c (handle_cache_entry): Fix logic.
Marek Polacek [Thu, 30 Apr 2015 17:25:55 +0000 (17:25 +0000)]
* varasm.c (handle_cache_entry): Fix logic.

From-SVN: r222641

9 years agocompiler: Mark non-escaping variables that aren't addressed.
Ian Lance Taylor [Thu, 30 Apr 2015 17:21:29 +0000 (17:21 +0000)]
compiler: Mark non-escaping variables that aren't addressed.

When optimizing allocations, only variables that had their address
taken somewhere in the program were marked as non-escaping.
There are several cases where non-addressed variables might cause
extra allocations.

From-SVN: r222640

9 years ago[AArch64] Add alternative 'extr' pattern, calculate rtx cost properly
Kyrylo Tkachov [Thu, 30 Apr 2015 17:03:26 +0000 (17:03 +0000)]
[AArch64] Add alternative 'extr' pattern, calculate rtx cost properly

* config/aarch64/aarch64.md (*extr<mode>5_insn_alt): New pattern.
(*extrsi5_insn_uxtw_alt): Likewise.
* config/aarch64/aarch64.c (aarch64_extr_rtx_p): New function.
(aarch64_rtx_costs, IOR case): Use above to properly cost extr
operations.

From-SVN: r222639

9 years ago[AArch64] Properly cost FABD pattern
Kyrylo Tkachov [Thu, 30 Apr 2015 17:01:34 +0000 (17:01 +0000)]
[AArch64] Properly cost FABD pattern

* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle pattern for
fabd in ABS case.

From-SVN: r222638

9 years ago[AArch64] Properly handle mvn-register and add EON+shift pattern and cost appropriately
Kyrylo Tkachov [Thu, 30 Apr 2015 16:59:50 +0000 (16:59 +0000)]
[AArch64] Properly handle mvn-register and add EON+shift pattern and cost appropriately

* config/aarch64/aarch64.md
(*eor_one_cmpl_<SHIFT:optab><mode>3_alt): New pattern.
(*eor_one_cmpl_<SHIFT:optab>sidi3_alt_ze): Likewise.
* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle MVN-shift
appropriately.  Handle alternative EON form.

From-SVN: r222637

9 years ago[PATCH][AARCH64]Define vec_shr as an unspec, use shl for big-endian.
Renlin Li [Thu, 30 Apr 2015 15:52:24 +0000 (15:52 +0000)]
[PATCH][AARCH64]Define vec_shr as an unspec, use shl for big-endian.

gcc/

2015-04-30  Renlin Li  <renlin.li@arm.com>

* config/aarch64/aarch64-simd.md (vec_shr): Defined as an unspec.
* config/aarch64/iterators.md (unspec): Add UNSPEC_VEC_SHR.

gcc/testsuite/

2015-04-30  Renlin Li  <renlin.li@arm.com>
    Alan Lawrence  <alan.lawrence@arm.com>

* gcc.target/aarch64/vect-reduc-or_1.c: New.

From-SVN: r222635

9 years agore PR ipa/65873 (Failure to inline always_inline memcpy)
Jan Hubicka [Thu, 30 Apr 2015 15:09:19 +0000 (17:09 +0200)]
re PR ipa/65873 (Failure to inline always_inline memcpy)

PR ipa/65873
* ipa-inline.c (can_inline_edge_p): It is safe to inline across
-fstrict-aliasing boundaries.

From-SVN: r222634

9 years agoAdd missing PR middle-end/64729 reference.
Rainer Orth [Thu, 30 Apr 2015 14:50:26 +0000 (14:50 +0000)]
Add missing PR middle-end/64729 reference.

From-SVN: r222631

9 years agoAdd fundamentals TR container erasure.
Edward Smith-Rowland [Thu, 30 Apr 2015 14:43:19 +0000 (14:43 +0000)]
Add fundamentals TR container erasure.

2015-04-30  Edward Smith-Rowland  <3dw4rd@verizon.net>

Add fundamentals TR container erasure.
* include/Makefile.am: Add new headers.
* include/Makefile.in: Add new headers.
* include/experimental/array: New.
* include/experimental/deque: New.
* include/experimental/erase_if.tcc: New.
* include/experimental/forward_list: New.
* include/experimental/list: New.
* include/experimental/map: New.
* include/experimental/set: New.
* include/experimental/string: New.
* include/experimental/unordered_map: New.
* include/experimental/unordered_set: New.
* include/experimental/vector: New.
* testsuite/experimental/deque/erasure.cc: New.
* testsuite/experimental/forward_list/erasure.cc: New.
* testsuite/experimental/list/erasure.cc: New.
* testsuite/experimental/map/erasure.cc: New.
* testsuite/experimental/set/erasure.cc: New.
* testsuite/experimental/string/erasure.cc: New.
* testsuite/experimental/unordered_map/erasure.cc: New.
* testsuite/experimental/unordered_set/erasure.cc: New.
* testsuite/experimental/vector/erasure.cc: New.

From-SVN: r222630

9 years ago[AArch64] Properly cost MNEG/[SU]MNEGL patterns
Kyrylo Tkachov [Thu, 30 Apr 2015 13:36:22 +0000 (13:36 +0000)]
[AArch64] Properly cost MNEG/[SU]MNEGL patterns

* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Handle MNEG
and [SU]MNEGL patterns.

From-SVN: r222627

9 years agoc-typeck.c (c_build_va_arg): Clarify the error message.
Marek Polacek [Thu, 30 Apr 2015 13:35:44 +0000 (13:35 +0000)]
c-typeck.c (c_build_va_arg): Clarify the error message.

* c-typeck.c (c_build_va_arg): Clarify the error message.

* gcc.dg/pr65901.c (foo): Adjust dg-error.
* gcc.c-torture/compile/pr48767.c (foo): Likewise.

From-SVN: r222626