platform/upstream/linaro-gcc.git
9 years ago2014-11-03 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 3 Nov 2014 10:47:04 +0000 (10:47 +0000)]
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/60770
gcc/
* tree-into-ssa.c (rewrite_update_stmt): Return whether the
statement should be removed.
(maybe_register_def): Likewise. Replace clobbers with default
definitions.
(rewrite_dom_walker::before_dom_children): Remove statement if
rewrite_update_stmt says so.
* tree-ssa-live.c: Include tree-ssa.h.
(set_var_live_on_entry): Do not mark undefined variables as live.
(verify_live_on_entry): Do not check undefined variables.
* tree-ssa.h (ssa_undefined_value_p): New parameter for the case
of partially undefined variables.
* tree-ssa.c (ssa_undefined_value_p): Likewise.
(execute_update_addresses_taken): Do not drop clobbers.

gcc/testsuite/
* gcc.dg/tree-ssa/pr60770-1.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217034 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-11-03 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 3 Nov 2014 10:36:35 +0000 (10:36 +0000)]
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/63666
* fold-const.c: Include "optabs.h".
(fold_ternary_loc) <VEC_PERM_EXPR>: Avoid canonicalizing a
can_vec_perm_p permutation to one that is not.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217033 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agox86: extend vect-args testcase to AVX flavors
jbeulich [Mon, 3 Nov 2014 09:18:51 +0000 (09:18 +0000)]
x86: extend vect-args testcase to AVX flavors

gcc/testsuite:
2014-11-03  Jan Beulich  <jbeulich@suse.com>

* gcc.target/i386/i386.exp: Extend option set to test
vect-args.c with to include -mavx, -mavx2, and -mavx512f.
* gcc.target/i386/vect-args.c: Add AVX* modes and tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217032 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.c-torture/execute/20010129-1.c: Compile with -mtune=i686
uros [Mon, 3 Nov 2014 08:30:21 +0000 (08:30 +0000)]
* gcc.c-torture/execute/20010129-1.c: Compile with -mtune=i686
for ia32 targets only.
* g++.dg/ext/attrib42.C: Compile for ia32 targets only.
* g++.dg/tree-ssa/pr29902.C: Ditto.
* g++.dg/cpp0x/gen-attrs-42.C: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217030 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoChangeLog:
zqchen [Mon, 3 Nov 2014 06:36:11 +0000 (06:36 +0000)]
ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* ifcvt.c (noce_try_store_flag_mask): Check rtx cost.

testsuite/ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* gcc.target/arm/ifcvt-size-check.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217029 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Andrew Pinski <apinski@cavium.com>
naveenh [Mon, 3 Nov 2014 05:13:43 +0000 (05:13 +0000)]
2014-10-31  Andrew Pinski  <apinski@cavium.com>

* config/mips/mips-cpus.def (octeon3): New cpu.
* config/mips/mips.c (mips_rtx_cost_data): Add octeon3.
(mips_print_operand <case 'T', case 't'>): Fix a bug as the mode
of the comparison no longer matches mode of the operands.
(mips_issue_rate): Handle PROCESSOR_OCTEON3.
* config/mips/mips.h (TARGET_OCTEON):  Add Octeon3.
(TARGET_OCTEON2): Likewise.
(TUNE_OCTEON): Add Octeon3.
* config/mips/mips.md (processor): Add octeon3.
* config/mips/octeon.md (octeon_fpu): New automaton and cpu_unit.
(octeon_arith): Add octeon3.
(octeon_condmove): Remove.
(octeon_condmove_o1): New reservation.
(octeon_condmove_o2): New reservation.
(octeon_condmove_o3_int_on_cc): New reservation.
(octeon_load_o2): Add octeon3.
(octeon_cop_o2): Likewise.
(octeon_store): Likewise.
(octeon_brj_o2): Likewise.
(octeon_imul3_o2): Likewise.
(octeon_imul_o2): Likewise.
(octeon_mfhilo_o2): Likewise.
(octeon_imadd_o2): Likewise.
(octeon_idiv_o2_si): Likewise.
(octeon_idiv_o2_di): Likewise.
(octeon_fpu): Add to the automaton.
(octeon_fpu): New cpu unit.
(octeon_condmove_o2): Check for non floating point modes.
(octeon_load_o2): Add prefetchx.
(octeon_cop_o2): Don't check for octeon3.
(octeon3_faddsubcvt): New reservation.
(octeon3_fmul): Likewise.
(octeon3_fmadd): Likewise.
(octeon3_div_sf): Likewise.
(octeon3_div_df): Likewise.
(octeon3_sqrt_sf): Likewise.
(octeon3_sqrt_df): Likewise.
(octeon3_rsqrt_sf): Likewise.
(octeon3_rsqrt_df): Likewise.
(octeon3_fabsnegmov): Likewise.
(octeon_fcond): Likewise.
(octeon_fcondmov): Likewise.
(octeon_fpmtc1): Likewise.
(octeon_fpmfc1): Likewise.
(octeon_fpload): Likewise.
(octeon_fpstore): Likewise.
* config/mips/mips-tables.opt: Regenerate.
* doc/invoke.texi (-march=@var{arch}): Add octeon3.

2014-10-31  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* gcc.target/mips/octeon3-pipe-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217028 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-11-03 Zhenqiang Chen <zhenqiang.chen@arm.com>
zqchen [Mon, 3 Nov 2014 03:20:30 +0000 (03:20 +0000)]
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* ifcvt.c (noce_emit_cmove, noce_get_alt_condition, noce_get_condition):
Allow CC mode if HAVE_cbranchcc4.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217026 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoCheck number of arguments in bind expressions.
redi [Mon, 3 Nov 2014 02:55:36 +0000 (02:55 +0000)]
Check number of arguments in bind expressions.

* include/std/functional (_Mem_fn_traits_base::__arity): New typedef.
(_Mem_fn_base::_Arity): New typedef.
(_Bind_check_arity): New class template.
(_Bind_helper, _Bindres_helper, _Bind_simple_helper): Check arity.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217025 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd support for ref-qualified functions to std::mem_fn
redi [Mon, 3 Nov 2014 02:55:32 +0000 (02:55 +0000)]
Add support for ref-qualified functions to std::mem_fn

PR libstdc++/57898
* include/std/functional (_Mem_fn_traits_base): New class template.
(_Mem_fn_traits): New class template with specializations for every
combination of cv-qualified and ref-qualified member function.
(_Mem_fn_base): New class template for all pointer to member function
types and partial specialization for pointer to member object types.
(_Mem_fn): Inherit from _Mem_fn_base.
* testsuite/20_util/function_objects/mem_fn/refqual.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217024 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Mon, 3 Nov 2014 00:16:29 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217023 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * g++.dg/cpp0x/gen-attrs-42.C: Add x86_64-*-* target.
uros [Sun, 2 Nov 2014 21:32:54 +0000 (21:32 +0000)]
* g++.dg/cpp0x/gen-attrs-42.C: Add x86_64-*-* target.
* g++.dg/ext/attrib42.C: Ditto.
* g++.dg/torture/pr51344.C: Ditto.
* g++.dg/tree-ssa/pr29902.C: Ditto.
* gcc.c-torture/execute/20010129-1.c: Ditto.
* gcc.dg/combine_ashiftrt_2.c: Ditto.
* gcc.dg/march-generic.c: Ditto.
* gcc.dg/torture/pr17526.c: Ditto.
* gcc.dg/union-4.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217020 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 2 Nov 2014 20:00:25 +0000 (20:00 +0000)]
gcc/
* config/arc/arc.c (write_ext_corereg_1): Delete.
(arc_write_ext_corereg): Use FOR_EACH_SUBRTX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217019 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 2 Nov 2014 20:00:19 +0000 (20:00 +0000)]
gcc/
* config/arc/arc.c (arc600_corereg_hazard_1): Delete.
(arc600_corereg_hazard): Use FOR_EACH_SUBRTX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217018 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 2 Nov 2014 20:00:12 +0000 (20:00 +0000)]
gcc/
* config/arc/arc.c (arc_rewrite_small_data_p): Constify argument.
(small_data_pattern_1): Delete.
(small_data_pattern): Use FOR_EACH_SUBRTX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217017 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 2 Nov 2014 20:00:05 +0000 (20:00 +0000)]
gcc/
* config/arc/arc.c: Include rtl-iter.h.
(arc_rewrite_small_data_1): Delete.
(arc_rewrite_small_data): Use FOR_EACH_SUBRTX_PTR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217016 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * c-c++-common/ubsan/float-cast-overflow-6.c: Add i?86-*-* target.
uros [Sun, 2 Nov 2014 19:27:06 +0000 (19:27 +0000)]
* c-c++-common/ubsan/float-cast-overflow-6.c: Add i?86-*-* target.
* g++.dg/abi/no-weak1.C: Ditto.
* g++.dg/opt/pr44919.C: Ditto.
* g++.dg/opt/pr46640.C: Ditto.
* g++.dg/opt/pr46649.C: Ditto.
* g++.dg/opt/pr47036.C: Ditto.
* g++.dg/opt/pr48273.C: Ditto.
* g++.dg/opt/pr48302.C: Ditto.
* g++.dg/opt/pr45788.C: Ditto.
* g++.dg/opt/pr57662.C: Ditto.
* gcc.dg/20031102-1.c: Ditto.
* gcc.dg/builtin-bswap-7.c: Ditto.
* gcc.dg/builtin-bswap-7a.c: Ditto.
* gcc.dg/builtin-bswap-9.c: Ditto.
* gcc.dg/combine_ashiftrt_1.c: Ditto.
* gcc.dg/guality/bswaptest.c: Ditto.
* gcc.dg/guality/clztest.c: Ditto.
* gcc.dg/guality/ctztest.c: Ditto.
* gcc.dg/guality/pr45003-1.c: Ditto.
* gcc.dg/guality/pr45003-2.c: Ditto.
* gcc.dg/guality/pr45003-3.c: Ditto.
* gcc.dg/guality/pr58791-4.c: Ditto.
* gcc.dg/guality/rotatetest.c:Ditto.
* gcc.dg/ifcvt-fabs-1.c: Ditto.
* gcc.dg/ira-loop-pressure.c: Ditto.
* gcc.dg/ira-shrinkwrap-prep-1.c: Ditto.
* gcc.dg/ira-shrinkwrap-prep-2.c: Ditto.
* gcc.dg/lto/pr47259_0.c: Ditto.
* gcc.dg/memcpy-5.c: Ditto.
* gcc.dg/pr10474.c: Ditto.
* gcc.dg/pr37438.c: Ditto.
* gcc.dg/pr39453.c: Ditto.
* gcc.dg/pr40501.c: Ditto.
* gcc.dg/pr42245-2.c: Ditto.
* gcc.dg/pr42245.c: Ditto.
* gcc.dg/pr42246.c: Ditto.
* gcc.dg/pr42249.c: Ditto.
* gcc.dg/pr42388.c: Ditto.
* gcc.dg/pr42389.c: Ditto.
* gcc.dg/pr45352-1.c: Ditto.
* gcc.dg/pr45352-2.c: Ditto.
* gcc.dg/pr45352-3.c: Ditto.
* gcc.dg/pr45352.c: Ditto.
* gcc.dg/pr45472.c: Ditto.
* gcc.dg/pr45652.c: Ditto.
* gcc.dg/pr46212.c: Ditto.
* gcc.dg/pr46521.c: Ditto.
* gcc.dg/pr46522.c: Ditto.
* gcc.dg/pr46875.c: Ditto.
* gcc.dg/pr48374.c: Ditto.
* gcc.dg/pr50251.c: Ditto.
* gcc.dg/pr54472.c: Ditto.
* gcc.dg/pr55702.c: Ditto.
* gcc.dg/pr56990.c: Ditto.
* gcc.dg/pr57104.c: Ditto.
* gcc.dg/pr57662.c: Ditto.
* gcc.dg/pr60866.c: Ditto.
* gcc.dg/shrink-wrap-loop.c: Ditto.
* gcc.dg/tm/memopt-15.c: Ditto.
* gcc.dg/torture/pr52720.c: Ditto.
* gcc.dg/torture/pr56778.c: Ditto.
* gcc.dg/tree-prof/pr45354.c: Ditto.
* gcc.dg/tree-prof/pr50907.c: Ditto.
* gcc.dg/tree-ssa/loop-16.c: Ditto.
* gcc.dg/tree-ssa/loop-18.c: Ditto.
* gcc.dg/tree-ssa/pr44423.c: Ditto.
* gcc.dg/misc-tests/godump-1.c: Ditto.
* gfortran.dg/PR24188.f: Ditto.
* gfortran.dg/errnocheck_1.f90: Ditto.
* gfortran.dg/g77/20010216-1.f: Ditto.
* gfortran.dg/pr42246-2.f: Ditto.
* gfortran.dg/pr42294.f: Ditto.
* gfortran.dg/pr44691.f: Ditto.
* gfortran.dg/vect/pr45714-a.f: Ditto.
* gcc.c-torture/execute/ieee/ieee.exp: Ditto.
* gcc.misc-tests/linkage.exp: Ditto.
* lib/target-supports.exp: Reformat x86 tagets.
(check_effective_target_whole_vector_shift): Add i?86-*-* target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217015 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] Fix CLZ_DEFINED_VALUE_AT_ZERO for vector modes
clyon [Sun, 2 Nov 2014 18:00:59 +0000 (18:00 +0000)]
[ARM] Fix CLZ_DEFINED_VALUE_AT_ZERO for vector modes

2014-11-02  Michael Collison  <michael.collison@linaro.org>

* config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO) : Update
to support vector modes.
(CTZ_DEFINED_VALUE_AT_ZERO): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217014 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-11-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 2 Nov 2014 09:31:12 +0000 (09:31 +0000)]
2014-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57694
* g++.dg/cpp0x/constexpr-ctor15.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217013 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agotestsuite/
emsr [Sun, 2 Nov 2014 02:51:41 +0000 (02:51 +0000)]
testsuite/

2014-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

* g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
* g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
Commentary and rearrangement of tests.
* g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
Commentary and rearrangement of tests.
* g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
* g++.dg/cpp1y/feat-cxx98.C: Commentary.

c-family/

2014-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

* c-cppbuiltin.c: Define __cpp_aggregate_nsdmi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217012 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sun, 2 Nov 2014 00:16:26 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217010 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-11-01 Andrew MacLeod <amacleod@redhat,com>
amacleod [Sat, 1 Nov 2014 13:34:15 +0000 (13:34 +0000)]
2014-11-01  Andrew MacLeod  <amacleod@redhat,com>

* optabs.h: Flatten insn-codes.h to source files.  Move some prototypes
and structs to genopinit.c.  Adjust protyoptypes to match optabs.c.
* genopinit.c (main): Emit prototypes and structs into insn-opinit.h.
* optabs.c: (gen_move_insn): Move to expr.c.
* expr.h: Move protypes and enums to optabs.h.
* expr.c: (gen_move_insn): Relocate from optabs.c.
* genemit.c (main): Include insn-codes.h.
* gengtype.c (open_base_files): Include insn-codes.h.
* asan.c: Include insn-codes.h.
* bb-reorder.c: Ditto.
* builtins.c: Ditto.
* calls.c: Ditto.
* cfgexpand.c: Ditto.
* cilk-common.c: Ditto.
* combine.c: Ditto.
* dojump.c: Ditto.
* dse.c: Ditto.
* except.c: Ditto.
* explow.c: Ditto.
* expmed.c: Ditto.
* function.c: Ditto.
* ifcvt.c: Ditto.
* internal-fn.c: Ditto.
* loop-unroll.c: Ditto.
* lra.c: Ditto.
* modulo-sched.c: Ditto.
* omp-low.c: Ditto.
* postreload.c: Ditto.
* ree.c: Ditto.
* reload.c: Ditto.
* reload1.c: Ditto.
* shrink-wrap.c: Ditto.
* simplify-rtx.c: Ditto.
* stmt.c: Ditto.
* target-globals.c: Ditto.
* targhooks.c: Ditto.
* toplev.c: Ditto.
* tree-if-conv.c: Ditto.
* tree-ssa-forwprop.c: Ditto.
* tree-ssa-loop-prefetch.c: Ditto.
* tree-ssa-math-opts.c: Ditto.
* tree-ssa-phiopt.c: Ditto.
* tree-ssa-reassoc.c: Ditto.
* tree-switch-conversion.c: Ditto.
* tree-vect-data-refs.c: Ditto.
* tree-vect-generic.c: Ditto.
* tree-vect-loop.c: Ditto.
* tree-vect-patterns.c: Ditto.
* tree-vect-slp.c: Ditto.
* tree-vect-stmts.c: Ditto.
* tree-vrp.c: Ditto.
* value-prof.c: Ditto.
* config/aarch64/aarch64-builtins.c: Ditto.
* config/alpha/alpha.c: Ditto.
* config/arm/arm.c: Ditto.
* config/cris/cris.c: Ditto.
* config/epiphany/epiphany.c: Ditto.
* config/frv/frv.c: Ditto.
* config/h8300/h8300.c: Ditto.
* config/ia64/ia64.c: Ditto.
* config/iq2000/iq2000.c: Ditto.
* config/m32c/m32c.c: Ditto.
* config/mep/mep.c: Ditto.
* config/microblaze/microblaze.c: Ditto.
* config/mips/mips.c: Ditto.
* config/mn10300/mn10300.c: Ditto.
* config/moxie/moxie.c: Ditto.
* config/msp430/msp430.c: Ditto.
* config/nios2/nios2.c: Ditto.
* config/pa/pa.c: Ditto.
* config/rl78/rl78.c: Ditto.
* config/rs6000/rs6000.c: Ditto.
* config/rx/rx.c: Ditto.
* config/s390/s390.c: Ditto.
* config/sh/sh.c: Ditto.
* config/sh/sh_treg_combine.cc: Ditto.
* config/spu/spu.c: Ditto.
* config/stormy16/stormy16.c: Ditto.
* config/tilegx/mul-tables.c: Ditto.
* config/tilegx/tilegx.c: Ditto.
* config/tilepro/mul-tables.c: Ditto.
* config/tilepro/tilepro.c: Ditto.
* config/vax/vax.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217005 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 7/7] Remove *_BY_PIECES_P
jgreenhalgh [Sat, 1 Nov 2014 10:38:42 +0000 (10:38 +0000)]
[Patch 7/7] Remove *_BY_PIECES_P

gcc/

* doc/tm.texi.in (MOVE_BY_PIECES_P): Remove.
(CLEAR_BY_PIECES_P): Likewise.
(SET_BY_PIECES_P): Likewise.
(STORE_BY_PIECES_P): Likewise.
* doc/tm.texi: Regenerate.
* system.h: Poison MOVE_BY_PIECES_P, CLEAR_BY_PIECES_P,
SET_BY_PIECES_P, STORE_BY_PIECES_P.
* expr.c (MOVE_BY_PIECES_P): Remove.
(CLEAR_BY_PIECES_P): Likewise.
(SET_BY_PIECES_P): Likewise.
(STORE_BY_PIECES_P): Likewise.
(can_move_by_pieces): Rewrite in terms of
targetm.use_by_pieces_infrastructure_p.
(emit_block_move_hints): Likewise.
(can_store_by_pieces): Likewise.
(store_by_pieces): Likewise.
(clear_storage_hints): Likewise.
(emit_push_insn): Likewise.
(expand_constructor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217004 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 6/7 AArch64] Deprecate *_BY_PIECES_P, move to hookized version
jgreenhalgh [Sat, 1 Nov 2014 10:15:51 +0000 (10:15 +0000)]
[Patch 6/7 AArch64] Deprecate *_BY_PIECES_P, move to hookized version

gcc/

* config/aarch64/aarch64.c
(aarch64_use_by_pieces_infrastructre_p): New.
(TARGET_USE_BY_PIECES_INFRASTRUCTURE): Likewise.
* config/aarch64/aarch64.h (STORE_BY_PIECES_P): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217003 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 5/7 mips] Deprecate *_BY_PIECES_P, move to hookized version
jgreenhalgh [Sat, 1 Nov 2014 10:14:08 +0000 (10:14 +0000)]
[Patch 5/7 mips] Deprecate *_BY_PIECES_P, move to hookized version

gcc/

* config/mips/mips.h (MOVE_BY_PIECES_P): Remove.
(STORE_BY_PIECES_P): Likewise.
* config/mips/mips.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
(mips_move_by_pieces_p): Rename to...
(mips_use_by_pieces_infrastructure_p): ...this, use new hook
parameters, use the default hook implementation as a
fall-back.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217002 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 4/7 sh] Deprecate *_BY_PIECES_P, move to hookized version
jgreenhalgh [Sat, 1 Nov 2014 10:12:24 +0000 (10:12 +0000)]
[Patch 4/7 sh] Deprecate *_BY_PIECES_P, move to hookized version

gcc/

* config/sh/sh.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
(sh_use_by_pieces_infrastructure_p): Likewise.
* config/sh/sh.h (MOVE_BY_PIECES_P): Remove.
(STORE_BY_PIECES_P): Likewise.
(SET_BY_PIECES_P): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217001 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 3/7 arc] Deprecate *_BY_PIECES_P, move to hookized version
jgreenhalgh [Sat, 1 Nov 2014 08:44:39 +0000 (08:44 +0000)]
[Patch 3/7 arc] Deprecate *_BY_PIECES_P, move to hookized version

gcc/

* config/arc/arc.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
(arc_use_by_pieces_infrastructure_p): Likewise.
* confir/arc/arc.h (MOVE_BY_PIECES_P): Delete.
(CAN_MOVE_BY_PIECES): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216999 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 2/7 s390] Deprecate *_BY_PIECES_P, move to hookized version
jgreenhalgh [Sat, 1 Nov 2014 08:38:36 +0000 (08:38 +0000)]
[Patch 2/7 s390] Deprecate *_BY_PIECES_P, move to hookized version

gcc/

* config/s390/s390.c (s390_use_by_pieces_infrastructure_p): New.
(TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): Likewise.
* config/s390/s390.h (MOVE_BY_PIECES_P): Remove.
(CLEAR_BY_PIECES): Likewise.
(SET_BY_PIECES): Likewise.
(STORE_BY_PIECES): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216998 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch 1/7] Hookize *_BY_PIECES_P
jgreenhalgh [Sat, 1 Nov 2014 08:13:09 +0000 (08:13 +0000)]
[Patch 1/7] Hookize *_BY_PIECES_P

gcc/

* target.def (use_by_pieces_infrastructure_p): New.
* doc/tm.texi.in (MOVE_BY_PIECES_P): Describe that this macro
is deprecated.
(STORE_BY_PIECES_P): Likewise.
(CLEAR_BY_PIECES_P): Likewise.
(SET_BY_PIECES_P): Likewise.
(TARGET_MOVE_BY_PIECES_PROFITABLE_P): Add hook.
* doc/tm.texi: Regenerate.
* expr.c (MOVE_BY_PIECES_P): Rewrite in terms of
TARGET_USE_BY_PIECES_INFRASTRUCTURE_P.
(STORE_BY_PIECES_P): Likewise.
(CLEAR_BY_PIECES_P): Likewise.
(SET_BY_PIECES_P): Likewise.
(STORE_MAX_PIECES): Move to...
* defaults.h (STORE_MAX_PIECES): ...here.
* targhooks.c (get_move_ratio): New.
(default_use_by_pieces_infrastructure_p): Likewise.
* targhooks.h (default_use_by_pieces_infrastructure_p): New.
* target.h (by_pieces_operation): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216996 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sat, 1 Nov 2014 00:16:18 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216994 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/63702
uros [Fri, 31 Oct 2014 21:56:05 +0000 (21:56 +0000)]
PR target/63702
* config/i386/i386.c (ix86_expand_args_builtin): Remove extra
assignment to 'nargs' variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216991 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/63620
uros [Fri, 31 Oct 2014 21:52:22 +0000 (21:52 +0000)]
PR target/63620
* config/i386/i386-protos.h (ix86_use_pseudo_pic_reg): Declare.
* config/i386/i386.c (ix86_use_pseudo_pic_reg): Export.
* config/i386/i386.md (*pushtf): Allow only CONST_DOUBLEs that won't
be reloaded through memory.
(*pushxf): Ditto.
(*pushdf): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216990 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMake std::vector<bool> meet C++11 allocator requirements.
redi [Fri, 31 Oct 2014 20:49:40 +0000 (20:49 +0000)]
Make std::vector<bool> meet C++11 allocator requirements.

* include/bits/stl_bvector.h (_Bvector_base): Use allocator_traits.
(_Bvector_base::_Bvector_impl): Use allocator's pointer type.
(_Bvector_base::_M_end_addr()): Convert to raw pointer.
(vector<bool>): Use allocator_traits and _M_end_addr. Add allocator
extended constructors.
* include/bits/vector.tcc (vector<bool>): Use allocator_traits and
_M_end_addr.
* testsuite/23_containers/vector/bool/allocator/copy.cc: New.
* testsuite/23_containers/vector/bool/allocator/minimal.cc: New.
* testsuite/23_containers/vector/bool/allocator/noexcept.cc: New.
* testsuite/23_containers/vector/bool/allocator/copy_assign.cc: New.
* testsuite/23_containers/vector/bool/allocator/move.cc: New.
* testsuite/23_containers/vector/bool/allocator/swap.cc: New.
* testsuite/23_containers/vector/bool/allocator/ext_ptr.cc: New.
* testsuite/23_containers/vector/bool/allocator/move_assign.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216988 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/63620
uros [Fri, 31 Oct 2014 19:47:36 +0000 (19:47 +0000)]
PR target/63620
* config/i386/i386.md (*pushtf): Allow only CONST_DOUBLES that won't
be reloaded through memory.
(*pushxf): Ditto.
(*pushdf): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216987 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/63659
jakub [Fri, 31 Oct 2014 19:42:39 +0000 (19:42 +0000)]
PR rtl-optimization/63659
* ree.c (update_reg_equal_equiv_notes): New function.
(combine_set_extension, transform_ifelse): Use it.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216985 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/contrib.texi: Add contribution notes for Balaji Iyer (Cilk+)
law [Fri, 31 Oct 2014 19:34:18 +0000 (19:34 +0000)]
   * doc/contrib.texi: Add contribution notes for Balaji Iyer (Cilk+)
        and Jonny Grant (collect2).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216984 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Richard Biener <rguenther@suse.de>
rguenth [Fri, 31 Oct 2014 16:26:43 +0000 (16:26 +0000)]
2014-10-31  Richard Biener  <rguenther@suse.de>

* builtins.c (fold_builtin_atomic_always_lock_free): Use
CONVERT_EXPR_P, CONVERT_EXPR_CODE_P and CASE_CONVERT where
approprate.
(fold_builtin_expect): Likewise.
(integer_valued_real_p): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* ipa-inline-analysis.c (eliminated_by_inlining_prob): Likewise.
(find_foldable_builtin_expect): Likewise.
* trans-mem.c (thread_private_new_memory): Likewise.
* tree-affine.c (aff_combination_expand): Likewise.
* tree-data-ref.c (initialize_matrix_A): Likewise.
* tree-inline.c (copy_bb): Likewise.
* tree-pretty-print.c (dump_function_name): Likewise.
(print_call_name): Likewise.
* tree-ssa-forwprop.c (constant_pointer_difference): Likewise.
* tree-ssa-math-opts.c (find_bswap_or_nop_1): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* tree-vect-patterns.c (vect_handle_widen_op_by_const): Likewise.
(vect_recog_widen_mult_pattern): Likewise.
(vect_operation_fits_smaller_type): Likewise.
* tree-vrp.c (find_assert_locations_1): Likewise.
* tree-ssa-dom.c (initialize_hash_element): Canonicalize
converts to NOP_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216982 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Fri, 31 Oct 2014 14:49:31 +0000 (14:49 +0000)]
2014-10-31  Hristian Kirtchev  <kirtchev@adacore.com>

* aspects.adb Add an entry for aspect Ghost in table
Canonical_Aspect.
* aspects.ads Add an entry for aspect Ghost in tables
Aspect_Argument, Aspect_Delay, Aspect_Id, Aspect_Names and
Implementation_Defined_Aspect.
* einfo.adb: Flags 277 and 278 are now in use.
(Is_Checked_Ghost_Entity): New routine.
(Is_Ghost_Entity): Removed.
(Is_Ghost_Subprogram): Removed.
(Is_Ignored_Ghost_Entity): New routine.
(Set_Is_Checked_Ghost_Entity): New routine.
(Set_Is_Ignored_Ghost_Entity): New routine.
(Write_Entity_Flags): Output flags Is_Checked_Ghost_Entity and
Is_Ignored_Ghost_Entity.
* einfo.ads: Add new flags Is_Checked_Ghost_Entity
and Is_Ignored_Ghost_Entity along with usage in nodes.
(Is_Checked_Ghost_Entity): New routine and pragma Inline.
(Is_Ghost_Entity): Removed along with synthesized flag
description and usage in nodes.
(Is_Ghost_Subprogram): Removed along with synthesized flag description
and usage in nodes.
(Is_Ignored_Ghost_Entity): New routine and pragma Inline.
(Set_Is_Checked_Ghost_Entity): New routine and pragma Inline.
(Set_Is_Ignored_Ghost_Entity): New routine and pragma Inline.
* freeze.adb (Freeze_Entity): A Ghost type cannot be effectively
volatile.
* par-prag.adb Pragma Ghost does not need special handling by
the parser.
* repinfo.adb (List_Mechanisms): Remove the entry for convention Ghost.
* sem_attr.adb (Analyze_Access_Attribute): Remove obsolete check.
* sem_ch3.adb (Analyze_Full_Type_Declaration): Mark
the type as Ghost when its enclosing context is Ghost.
(Analyze_Incomplete_Type_Decl): Mark the type as Ghost when
its enclosing context is Ghost.
(Analyze_Number_Declaration): Mark the number as Ghost when its
enclosing context is Ghost.
(Analyze_Object_Declaration): Mark the object as Ghost when its
enclosing context is Ghost. Verify the Ghost policy between
initial declaration and completion of a deferred constant.
(Analyze_Object_Contract): A Ghost variable cannot be effectively
volatile, imported or exported.
(Build_Derived_Record_Type): Mark a type extension as Ghost when it
implements a Ghost interface.
(Build_Record_Type): Inherit volatility and "ghostness" from
the parent type.
(Check_Completion): A Ghost entity declared
in a non-Ghost package does not require completion in a body.
(Implements_Ghost_Interface): New routine.
(Process_Full_View): Inherit "ghostness" from the partial view. Verify
the Ghost policy between the partial and full views. Verify the
completion of a Ghost type extension.
* sem_ch4.adb (Check_Ghost_Subprogram_Call): Removed.
* sem_ch5.adb (Analyze_Assignment): Analyze the left hand side first.
* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Mark
the subprogram as Ghost when its enclosing context is Ghost.
(Analyze_Generic_Subprogram_Body): Mark the generic body as Ghost
when its enclosing context is Ghost. Verify the Ghost policy
between the spec and body.
(Analyze_Subprogram_Body_Helper): Mark the body as Ghost when its
enclosing context is Ghost. Verify the Ghost policy between the spec
and body.
(Check_Conformance): A Ghost subprogram profile and a non-Ghost
subprogram profile are not subtype conformant.
(Convention_Of): Removed.
* sem_ch7.adb (Analyze_Package_Body_Helper): Inherit the
"ghostness" from the spec. Verify the Ghost policy between
the spec and body.
(Analyze_Private_Type_Declaration): Mark the type as Ghost when its
enclosing context is Ghost.
(Requires_Completion_In_Body): New routine.
(Unit_Requires_Body): Use Requires_Completion_In_Body.
(Unit_Requires_Body_Info): Rename formal parameter P to Pack_Id, update
comment on usage and all uses of P in the body. Use
Requires_Completion_In_Body.
* sem_ch7.ads (Unit_Requires_Body): Rename formal parameter P
to Pack_Id, update comment on usage and all uses of P in the body.
* sem_ch8.adb (Analyze_Exception_Renaming): Inherit the "ghostness"
from the renamed excention.
(Analyze_Generic_Renaming): Inherit the "ghostness" from the
renamed generic subprogram.
(Analyze_Object_Renaming): Inherit the "ghostness" from the renamed
object.
(Analyze_Package_Renaming): Inherit the "ghostness" from the
renamed package.
(Analyze_Subprogram_Renaming): Inherit the "ghostness" from the
renamed subprogram.
* sem_ch11.adb (Analyze_Exception_Declaration): Mark an exception
as Ghost when its enclosing context is Ghost.
* sem_ch12.adb (Analyze_Generic_Package_Declaration,
Analyze_Generic_Subprogram_Declaration): Mark an exception as
Ghost when its enclosing context is Ghost.
(Preanalyze_Actuals): Remove obsolete check.
* sem_ch13.adb (Analyze_Aspect_Specifications): Add processing
for aspect Ghost.
(Check_Aspect_At_Freeze_Point): Aspects
Depends and Global do no need special checking at freeze point.
(Insert_After_SPARK_Mode): Update comment on usage.
* sem_mech.adb (Set_Mechanisms): Remove the entry for convention Ghost.
* sem_prag.adb Add an entry for pragma Ghost in table Sig_Flags.
(Analyze_Abstract_State): Update the grammar of the pragma. Add
formal parameter Pack_Id along with comment on usage. Mark an
abstract state as Ghost when its enclosing context is Ghost. Add
processing for option Ghost.
(Analyze_Constituent): Verify
that a Ghost abstract state is refined by Ghost constituents.
(Analyze_Pragma): "Ghost" is now a valid policy. Add checks
related to the use and placement of Check_Policy Ghost. Add
processing for pragma Ghost.
(Check_Ghost_Constituent): New routine.
(Is_Valid_Assertion_Kind): "Ghost" is now a valid assertion.
(Process_Convention): Remove obsolete check.
(Set_Convention_From_Pragma): Remove the processing for convention
Ghost.
* sem_res.adb (Check_Ghost_Context): New routine.
(Resolve_Call): Verify that a reference to a Ghost entity appears in a
suitable context. Verify the Ghost polity between point of declaration
and point of use.
(Resolve_Entity_Name): Verify that a reference to
a Ghost entity appears in a suitable context. Verify the Ghost
polity between point of declaration and point of use.
* sem_util.adb (Check_Ghost_Completion): New routine.
(Check_Ghost_Derivation): New routine.
(Incomplete_Or_Partial_View): New routine.
(Incomplete_Or_Private_View): Removed.
(Is_Ghost_Entity): New routine.
(Is_Ghost_Statement_Or_Pragma): New routine.
(Is_Subject_To_Ghost): New routine.
(Policy_In_Effect): New routine.
(Set_Is_Ghost_Entity): New routine.
(Within_Ghost_Scope): New routine.
* sem_util.ads (Check_Ghost_Completion): New routine.
(Check_Ghost_Derivation): New routine.
(Incomplete_Or_Partial_View): New routine.
(Incomplete_Or_Private_View): Removed.
(Is_Ghost_Entity): New routine.
(Is_Ghost_Statement_Or_Pragma): New routine.
(Is_Subject_To_Ghost): New routine.
(Policy_In_Effect): New routine.
(Set_Is_Ghost_Entity): New routine.
(Within_Ghost_Scope): New routine.
* snames.adb-tmpl (Get_Convention_Id): Remove the entry for
convention Ghost.
(Get_Convention_Name): Remove the entry for convention Ghost.
* snames.ads-tmpl Remove the convention id for Ghost. Add a
pragma id for Ghost.

2014-10-31  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: Add description of --RTS option for ASIS tools.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216981 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Olivier Hainque <hainque@adacore.com>
charlet [Fri, 31 Oct 2014 14:33:16 +0000 (14:33 +0000)]
2014-10-31  Olivier Hainque  <hainque@adacore.com>

* gcc-interface/Makefile.in (arm-vxworks): Update target pairs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216980 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Vincent Celier <celier@adacore.com>
charlet [Fri, 31 Oct 2014 14:28:08 +0000 (14:28 +0000)]
2014-10-31  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse_Single_Project): Call Set_Display_Name_Of.
* prj-proc.adb (Recursive_Process): Call Display_Name_Of to
get the project Display_Name.
* prj-tree.adb (Display_Name_Of): New function
(Set_Display_Name_Of): New procedure.
(Create_Project): Call Set_Display_Name_Of.
* prj-tree.ads (Display_Name_Of): New function.
(Set_Display_Name_Of): New procedure.
(Project_Node_Record): New component Display_Name.
(Project_Name_And_Node): Remove component Display_Name.
* prj-conf.adb (Parse_Project_And_Apply_Config): Use the full
Config_File_Path as the Config_File_Name, not just its simple
name.

2014-10-31  Thomas Quinot  <quinot@adacore.com>

* get_scos.adb: Minor reformatting.

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

* exp_ch5.adb (Expand_Formal_Container_Loop): Create block to
capture declaration for cursor to prevent spurious errors when
several formal iterators that use the same cursoe name appear
in the same context.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216978 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Richard Biener <rguenther@suse.de>
rguenth [Fri, 31 Oct 2014 13:43:53 +0000 (13:43 +0000)]
2014-10-31  Richard Biener  <rguenther@suse.de>

* genmatch.c (expr::gen_transform): Use NOP_EXPRs instead of
CONVERT_EXPRs in generated code.
(dt_simplify::gen): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216977 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Fri, 31 Oct 2014 13:30:06 +0000 (13:30 +0000)]
gcc/

PR target/63534
* config/i386/i386.c (ix86_init_pic_reg): Emit SET_GOT to
REAL_PIC_OFFSET_TABLE_REGNUM for mcount profiling.
(ix86_save_reg): Save REAL_PIC_OFFSET_TABLE_REGNUM when profiling
using mcount in 32bit PIC mode.
(ix86_elim_entry_set_got): New.
(ix86_expand_prologue): For the mcount profiling emit new SET_GOT
in PROLOGUE, delete initial if possible.

gcc/testsuite/

PR target/63534
* gcc.target/i386/mcount_pic.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216975 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.target/i386/pr23098.c: Remove xfail.
ienkovich [Fri, 31 Oct 2014 13:23:46 +0000 (13:23 +0000)]
* gcc.target/i386/pr23098.c: Remove xfail.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216974 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-inline.c (want_inline_small_function_p): Fix typo and formatting.
ebotcazou [Fri, 31 Oct 2014 12:32:05 +0000 (12:32 +0000)]
* ipa-inline.c (want_inline_small_function_p): Fix typo and formatting.
(want_inline_function_to_all_callers_p): Fix formatting and simplify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216973 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gnat.dg/opt42.ad[sb]: New test.
ebotcazou [Fri, 31 Oct 2014 12:18:30 +0000 (12:18 +0000)]
* gnat.dg/opt42.ad[sb]: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216972 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Fri, 31 Oct 2014 11:55:07 +0000 (11:55 +0000)]
2014-10-31  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/63259
    * tree-ssa-math-opts.c (bswap_replace): Replace expression by a
    rotation left if it is a 16 bit byte swap.
    (pass_optimize_bswap::execute): Also consider bswap in LROTATE_EXPR
    and RROTATE_EXPR statements if it is a byte rotation.

    gcc/testsuite/
    PR tree-optimization/63259
    * optimize-bswapsi-1.c (swap32_f): New bswap pass test.
    * optimize-bswaphi-1.c: Drop useless SIType definition and fix typo in
    following comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216971 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Vincent Celier <celier@adacore.com>
charlet [Fri, 31 Oct 2014 11:47:11 +0000 (11:47 +0000)]
2014-10-31  Vincent Celier  <celier@adacore.com>

* prj-proc.adb (Recursive_Process): Make sure that the project
display name is never No_Name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216970 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 31 Oct 2014 11:43:09 +0000 (11:43 +0000)]
2014-10-31  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Analyze_Access_Attribute): Do not emit error
message if reference does not come from source, as in the case
for the controlling argument of a dispatching call. Error is
diagnosed when call is resolved.
* sem_ch4.adb (Complete_Object_Operation); Fix incorrect RM
reference in error message.
* sem_res.adb (Check_Prefixed_Call): ditto.

2014-10-31  Yannick Moy  <moy@adacore.com>

* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Do not
suppress checks when pragma Restrictions (No_Exception) is used in
CodePeer or GNATprove mode.

2014-10-31  Yannick Moy  <moy@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Explicitly mark language
checks as not suppressed in GNATprove mode.

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

* sem_elab.adb (Check_Elab_Call): Nothing to check if call is
being pre-analyzed.
* sem_ch3.adb (Complete_Private_Subtype): If all rep items of full
view are those of the base, use rep_item chain of partial view,
which may include aspects.
* sem_cat.adb (Is_non_Remote_Access_Type): Use underlying type
of base type, to handle properly declared subtypes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216969 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 31 Oct 2014 11:39:37 +0000 (11:39 +0000)]
2014-10-31  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Analyze_Generic_Package_Declaration): If there
is a default storage pool, add a corresponding aspect to the
generic unit, to be used at the point of instantiation.
(Analyze_Package_Instantiation): If generic unit has aspect
specifications, propagate them to instance. If instance has a
Default_Storage_Pool aspect, make sure that it overrides the
one that may be inherited from the generic.

2014-10-31  Vincent Celier  <celier@adacore.com>

* prj-attr.adb: Minor removal of attributes of package Linker
that have never been used and never been documented.
* projects.texi: Add documentation for attribute Runtime.
* prj-nmsc.adb (Check_Configuration): Do not report a warning
for unknown compilers when the project is externally built.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216968 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Vasiliy Fofanov <fofanov@adacore.com>
charlet [Fri, 31 Oct 2014 11:37:44 +0000 (11:37 +0000)]
2014-10-31  Vasiliy Fofanov  <fofanov@adacore.com>

* prj-conf.adb (Do_Autoconf): Refactor the code so that empty
Normalized_Pathname doesn't inhibit the custom Selected_Target
value.
* prj-conf.adb (Parse_Project_And_Apply_Config): Make sure that
Automatically_Generated is correctly set after the first call
to Process_Project_And_Apply_Config and not modified after the
second call, if any.

2014-10-31  Yannick Moy  <moy@adacore.com>

* Makefile.rtl, gnat_rm.texi, impunit.adb: Add mention of new library
files.
* a-cfinve.adb, a-cfinve.ads: New unit for formal indefinite
vectors, suitable for use in client SPARK code, also more
efficient than the standard vectors.
* a-coboho.adb, a-coboho.ads New unit for bounded holders, that
are used to define formal indefinite vectors in terms of formal
definite ones.
* a-cofove.adb, a-cofove.ads: Simplification of the API of formal
definite vectors, similar to the API of the new indefinite ones. A
new formal parameter of the generic unit called Bounded allows
to define growable vectors that use dynamic allocation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216967 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Vincent Celier <celier@adacore.com>
charlet [Fri, 31 Oct 2014 11:22:19 +0000 (11:22 +0000)]
2014-10-31  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Look_For_Project_Paths): New procedure
(Parse_Project_And_Apply_Config): Initially, parse the project
files ignoring missing withs. If there are missing withs, extend
the project path with directories rooted at the compiler roots,
including directories rooted at the runtime roots, if there are
non default runtimes, in the PATH orser.
* prj-env.adb (Initialize_Default_Project_Path): Do not add
any directory from the prefix if the target is "-".
* prj-part.adb (Parse): Initialize the tables, as Parse may be
call several times by gprbuild.
* prj.adb (Update_Ignore_Missing_With): New procedure.

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

* sem_aux.adb (First_Stored_Discriminant,
Has_Completely_Hidden_Discriminant): When scanning the list of
discriminants to locate possibly hidden (inherited) discriminants,
ignore itypes that may appear in the entity list, when an access
discriminants is constrained by an access attribute reference.

2014-10-31  Javier Miranda  <miranda@adacore.com>

* freeze.adb (Freeze_Record_Type): Add missing
check to verify that all the primitives of an interface type
are abstract or null procedures.

2014-10-31  Vincent Celier  <celier@adacore.com>

* s-os_lib.adb, s-os_lib.ads: New function Non_Blocking_Spawn that
redirects standard output and standard error to two different files.

2014-10-31  Bob Duff  <duff@adacore.com>

* makeutl.ads: Minor comment fix.

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

* system-linux-x86_64.ads, system-mingw-x86_64.ads (Word_Size,
Memory_Size): Use Standard'Word_Size so that the value can be changed
via a target configuration file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216965 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * Makefile.def (libcc1): Remove bootstrap=true;.
jakub [Fri, 31 Oct 2014 11:19:13 +0000 (11:19 +0000)]
* Makefile.def (libcc1): Remove bootstrap=true;.
* Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216964 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 31 Oct 2014 11:18:47 +0000 (11:18 +0000)]
2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch4.adb: Minor tweak.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch12.adb (Analyze_Package_Instantiation): Do not inline with
back-end inlining.
(Must_Inline_Subp): Delete.
* sem_util.ads, sem_util.adb (Must_Inline): Likewise.

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

* freeze.adb (Freeze_Entity): A default_pool does not apply to
internal access types generated for 'access references.
* sem_prag (Analyze_Pragma, case Default_Pool): If the name is
not null it must designate a variable.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb: Minor reformatting.

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

* sem_ch3.adb (Build_Derived_Private_Type): If the derived
type has access discriminants, create itype references for their
anonymous types, so that they are elaborated before the generated
bodies for the primitive operations of the type.

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

* prj-conf.adb (Locate_Runtime): Remove procedure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216963 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR sanitizer/63697
jakub [Fri, 31 Oct 2014 11:18:13 +0000 (11:18 +0000)]
PR sanitizer/63697
* tree-vrp.c (simplify_internal_call_using_ranges): For subcode ==
MINUS_EXPR, check overflow on vr0.min - vr1.max and vr0.max - vr1.min
instead of vr0.min - vr1.min and vr0.max - vr1.max.

* c-c++-common/ubsan/overflow-sub-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216962 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 31 Oct 2014 11:15:51 +0000 (11:15 +0000)]
2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Has_Excluded_Declaration): With back-end inlining,
only return true for nested packages.
(Cannot_Inline): Issue errors/warnings whatever the optimization level
for back-end inlining and remove assertion.

2014-10-31  Sergey Rybin  <rybin@adacore.com frybin>

* table.adb (Tree_Read, Tree_Write): Use parentheses to specify
the desired order of '*' and '/' operations to avoid overflow.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch6.adb (Do_Inline): Remove unreachable code.
(Do_Inline_Always): Likewise.

2014-10-31  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Check_Stand_Alone_Library): Change error message
when library has no Ada interfaces and Library_Standalone is
declared.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216961 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Arnaud Charlet <charlet@adacore.com>
charlet [Fri, 31 Oct 2014 11:12:14 +0000 (11:12 +0000)]
2014-10-31  Arnaud Charlet  <charlet@adacore.com>

* sem_ch13.adb (Check_Constant_Address_Clause): Disable checks
on address clauses in CodePeer mode.

2014-10-31  Javier Miranda  <miranda@adacore.com>

* inline.adb (Expand_Inlined_Call): Do not skip
inlining of calls to subprogram renamings.

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

* sem_res.adb (Resolve_Entity_Name): Account for
the case where the immediate parent of a reference to an entity
is a parameter association.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216960 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 31 Oct 2014 11:09:39 +0000 (11:09 +0000)]
2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Check_And_Split_Unconstrained_Function): Do not
test for the presence of nested subprograms.

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

* aspects.ads, aspects.adb: Add aspect Default_Storage_Pool.
* sem_ch13.adb (Analyze_One_Aspect): Generate pragma for aspect
Default_Storage_Pool.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216959 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 31 Oct 2014 11:07:40 +0000 (11:07 +0000)]
2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch6.adb: Remove obsolete comment.

2014-10-31  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads: bind vec_sld for pixels to 8hi vsldoi instead
of 4si, as pixels are short.

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

* sem_res.adb (Resolve_Call): Do not reject a call to a protected
operation in the spec of a protected type, when the call appears
in a pre/postcondition for another protected operation.

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

* prj-conf.adb: Locate_Runtime: Always search the runtime in
project path.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Check_Package_Body_For_Inlining): Adjust previous
change to use correct idiom for back-end inlining.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216958 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Jan-Benedict Glaw <jbglaw@lug-owl.de>
jbglaw [Fri, 31 Oct 2014 11:03:57 +0000 (11:03 +0000)]
2014-10-31  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

./
* configure.ac: Update comment.
* configure: Regenerate.

./contrib
* config-list.mk: Don't build Go for certain targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216957 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 31 Oct 2014 11:02:55 +0000 (11:02 +0000)]
2014-10-31  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Freeze_Record_Type): Do not check component size
if its type is generic.

2014-10-31  Bob Duff  <duff@adacore.com>

* gnat_rm.texi: Fix documentation w.r.t -gnatw.w.

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

* sem_ch4.adb (Try_Container_Indexing): Use Check_Implicit_Dereference.
* sem_util.adb (Check_Implicit_Dereference): a) Handle generalized
indexing as well as function calls.  b)  If the context is a
selected component and whe are in an instance, remove entity from
selector name to force resolution of the node, so that explicit
dereferences can be generated in the instance if they were in
the generic unit.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Back_End_Cannot_Inline): Delete.
(Add_Inlined_Subprogram): Do not call it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216956 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 31 Oct 2014 10:59:56 +0000 (10:59 +0000)]
2014-10-31  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.ads (Make_Tag_Assignment): New function, used to
re-initialize the tag in a tagged object declaration with
initial value.
* exp_ch3.adb (Expand_N_Object_Declaration): Use
Make_Tag_Assignment to simplify code for a tagged object
declaration.
* exp_ch13.adb (Expand_Freeze_Entity): Analyze freeze actions
for the freeze node of an object.
* freeze.adb (Check_Address_Clause): Use Make_Tag_Assignment when
needed to extend Freeze_Actions for a tagged object declaration.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Further minor improvement to -flto entry.

2014-10-31  Gary Dismukes  <dismukes@adacore.com>

* g-dynhta.adb, g-dynhta.ads: Minor typo fixes and reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216955 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
chefmax [Fri, 31 Oct 2014 10:53:36 +0000 (10:53 +0000)]
gcc/

2014-10-31  Max Ostapenko  <m.ostapenko@partner.samsung.com>

        PR ipa/63696
        * ipa-icf.c (sem_function::~sem_function): Change free to delete to avoid
        alloc-dealloc mismatch with new, called in ipa_icf::sem_function::init.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216954 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-31 Ilya Enkovich <ilya.enkovich@intel.com>
ienkovich [Fri, 31 Oct 2014 09:19:43 +0000 (09:19 +0000)]
2014-10-31  Ilya Enkovich  <ilya.enkovich@intel.com>

* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216952 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 31 Oct 2014 00:16:39 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216948 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd zero-cost loops for xtensa port.
sterling [Thu, 30 Oct 2014 21:37:45 +0000 (21:37 +0000)]
Add zero-cost loops for xtensa port.

2014-10-10  Felix Yang  <felix.yang@huawei.com>

* config/xtensa/xtensa.h (TARGET_LOOPS): New Macro.
* config/xtensa/xtensa.c: Include dumpfile.h and hw-doloop.h.
(xtensa_reorg, xtensa_reorg_loops): New.
(xtensa_can_use_doloop_p, xtensa_invalid_within_doloop): New.
(hwloop_optimize, hwloop_fail, hwloop_pattern_reg): New.
(xtensa_emit_loop_end): Emit the zero-overhead loop end label.
(xtensa_doloop_hooks): Define.
* config/xtensa/xtensa.md (doloop_end, loop_end): New
(zero_cost_loop_start): Rewritten.
(zero_cost_loop_end): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216945 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Steve Ellcey <sellcey@imgtec.com>
sje [Thu, 30 Oct 2014 20:44:53 +0000 (20:44 +0000)]
2014-10-30  Steve Ellcey  <sellcey@imgtec.com>

* config.gcc (mips*-*-linux*): Combine 32 and 64 bit cases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216944 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMake soft-fp symbols into compat symbols for powerpc*-*-linux*.
jsm28 [Thu, 30 Oct 2014 17:28:30 +0000 (17:28 +0000)]
Make soft-fp symbols into compat symbols for powerpc*-*-linux*.

Continuing preparations for implementing
TARGET_ATOMIC_ASSIGN_EXPAND_FENV for powerpc*-*-linux* soft-float and
e500, this patch makes soft-fp symbols used for those targets into
compat symbols when building with glibc >= 2.19, so that they are only
in shared libgcc for existing binaries requiring them, not in static
libgcc and not available for new links using shared libgcc.  Instead,
new links will get the symbols from libc, which has exported all of
them since 2.19.  (Actually all the symbols were exported from glibc
since 2.4, but some of them were exported by glibc as compat symbols
only - because of a confusion between deliberately present soft-fp
symbols and old accidental reexports of libgcc functions from glibc
2.0 - until 2.19.)

This allows user floating-point arithmetic to interoperate properly
with the state handled by <fenv.h> functions, whether software state
(for soft-float; TLS variables that don't form a public part of
glibc's ABI, so can only be accessed directly by functions within
glibc) or hardware state (for e500 - the copies of the soft-fp
functions in glibc being built to interoperate with the hardware state
whereas those in libgcc aren't).  Previously only glibc's own
functions, and those operations done in hardware on e500, properly
worked with that state, not direct floating-point arithmetic
operations that were implemented in software.

The intended next step is the actual TARGET_ATOMIC_ASSIGN_EXPAND_FENV
implementation.

The test of glibc >= 2.19 uses the same --with-glibc-version configure
option as in the gcc/ directory (but differently implemented; in gcc/
the fallback is to examine headers to find the version, while in
libgcc/ we can use compile for the target and so use AC_COMPUTE_INT).
The TARGET_ATOMIC_ASSIGN_EXPAND_FENV implementation will also only do
anything for glibc >= 2.19, as it will depend on generating calls to
functions __atomic_feholdexcept __atomic_feclearexcept
__atomic_feupdateenv that were added in 2.19 for that purpose (even
for e500, inline code is not readily possible because of the need to
make prctl syscalls from the implementation of these functions).

In order to make symbols compat symbols, the soft-fp files need
wrapping with generated wrappers including asm .symver directives,
which need to name the symbol version in question.  This is extracted
by an awk script from an intermediate stage of generating the .map
file for linking libgcc (that .map itself depends on the objects that
go into the library, so can't be used for this purpose as that would
mean a circular dependency); the extraction is not fully general
regarding the features available in .map generation, but suffices for
the present purpose.

It would make sense for hardfp.c symbols to be compat symbols as well
(in the cases where hardfp.c gets used, the functions in question
should not be used for new links), but this isn't required for the
present purpose, which is only concerned with ensuring that where
functions that should be affected by rounding modes or exceptions get
used, those functions are actually affected by those rounding modes or
exceptions.

Tested with no regressions with cross to powerpc-linux-gnu
(soft-float); c11-atomic-exec-5.c moves from UNSUPPORTED to FAIL, as
expected, now that floating-point arithmetic in user programs uses the
same state as <fenv.h> functions, so the fenv_exceptions test passes,
but TARGET_ATOMIC_ASSIGN_EXPAND_FENV isn't yet implemented.  (For
e500, c11-atomic-exec-5.c was already FAILing, as enough operations
worked with the hardware state for the fenv_exceptions effective
target test to pass.)  Also verified that the exported symbols and
versions are unchanged, with the expected symbols becoming compat
symbols at the same versions, and that with --with-glibc-version=2.18
the symbols remain normal rather than compat symbols.

* Makefile.in (libgcc.map.in): New target.
(libgcc.map): Use libgcc.map.in.
* config/t-softfp (softfp_compat): New variable to be set by
users.
[$(softfp_compat) = y] (softfp_map_dep, softfp_set_symver): New
variables.
[$(softfp_compat) = y] (softfp_file_list): Use files in the build
directory.
[$(softfp_compat) = y] ($(softfp_file_list)): Generate wrappers
that use compat symbols and disable all code unless [SHARED].
* config/t-softfp-compat: New file.
* find-symver.awk: New file.
* configure.ac (--with-glibc-version): New configure option.
(ppc_fp_compat): New variable set for powerpc*-*-linux*.
* configure: Regenerate.
* config.host (powerpc*-*-linux*): Use ${ppc_fp_compat} for
soft-float and e500.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216942 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * c-objc-common.c (c_tree_printer) <case 'T'>: For a typedef name,
mpolacek [Thu, 30 Oct 2014 17:22:12 +0000 (17:22 +0000)]
* c-objc-common.c (c_tree_printer) <case 'T'>: For a typedef name,
print the stripped version as well, if they're not the same.

* gcc.dg/diag-aka-1.c: New test.
* gcc.dg/pr13804-1.c: Adjust dg-error.
* gcc.dg/redecl-14.c: Likewise.
* gcc.dg/pr56980.c: Adjust dg-message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216941 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Oct 2014 15:41:45 +0000 (15:41 +0000)]
2014-10-30  Richard Biener  <rguenther@suse.de>

* genmatch.c: Remove <map>, <utility> and <string> includes.
Include ggc.h and hash-map.h.
(ggc_internal_cleared_alloc): Provide stub definition.
(ggc_free): Likewise.
(struct capture_id_map_hasher): New traits for hash_map.
(cid_map_t): New typedef.
(everywhere else): Replace std::map use with cid_map_t.
* hash-map.h (hash_map::elements): New member function.
* Makefile.in (build/genmatch.o): Add $(HASH_TABLE_H),
hash-map.h and $(GGC_H) as dependency.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216940 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Oct 2014 15:36:05 +0000 (15:36 +0000)]
2014-10-30  Richard Biener  <rguenther@suse.de>

* genmatch.c (capture_info::walk_c_expr): Ignore capture
uses inside TREE_TYPE ().
* gimple-ssa-strength-reduction.c (stmt_cost): Use CASE_CONVERT.
(find_candidates_dom_walker::before_dom_children): Likewise.
(replace_mult_candidate): Use CONVERT_EXPR_CODE_P.
(replace_profitable_candidates): Likewise.
* tree-ssa-dom.c (initialize_hash_element): Canonicalize
CONVERT_EXPR_CODE_P to CONVERT_EXPR.
* convert.c (convert_to_integer): Use CASE_CONVERT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216939 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.misc-tests/godump-1.c: Skip if ! lp64.
ian [Thu, 30 Oct 2014 15:19:45 +0000 (15:19 +0000)]
* gcc.misc-tests/godump-1.c: Skip if ! lp64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216938 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.misc-tests/godump-1.c: Skip -fdump-go-spec tests for all
ian [Thu, 30 Oct 2014 14:51:30 +0000 (14:51 +0000)]
* gcc.misc-tests/godump-1.c: Skip -fdump-go-spec tests for all
platforms except s390[x] and x86_64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216936 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * configure.host (aix5+): New stanza.
dje [Thu, 30 Oct 2014 14:20:50 +0000 (14:20 +0000)]
    * configure.host (aix5+): New stanza.
        (aix4.3+): Do not use -G in link command.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216935 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Oct 2014 13:13:35 +0000 (13:13 +0000)]
2014-10-30  Richard Biener  <rguenther@suse.de>

* match.pd: Implement more patterns that simplify to a single value.
* fold-const.c (fold_binary_loc): Remove them here.
* tree-ssa-forwprop.c (simplify_bitwise_binary): Likewise.
(fwprop_ssa_val): Remove restriction on single uses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216933 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Jan-Benedict Glaw <jbglaw@lug-owl.de>
jbglaw [Thu, 30 Oct 2014 12:44:23 +0000 (12:44 +0000)]
2014-10-30  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* config/avr/driver-avr.c (avr_set_current_device): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216932 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 30 Oct 2014 11:53:39 +0000 (11:53 +0000)]
2014-10-30  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): Code cleanup.

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

* sem_ch5.adb (Analyze_Iterator_Specification): If a subtype
indication is provided, check properly that it covers the element
type of of the container type.

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

* g-dynhta.ads, g-dynhta.adb: Add the implementation of a load facto
-based hash table.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216926 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRecommit wrongly reverted change.
charlet [Thu, 30 Oct 2014 11:46:20 +0000 (11:46 +0000)]
Recommit wrongly reverted change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216924 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRecommit wrongly reverted change.
charlet [Thu, 30 Oct 2014 11:45:47 +0000 (11:45 +0000)]
Recommit wrongly reverted change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216923 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRe-commit wrongly reverted previous change.
charlet [Thu, 30 Oct 2014 11:45:03 +0000 (11:45 +0000)]
Re-commit wrongly reverted previous change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216922 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 30 Oct 2014 11:44:20 +0000 (11:44 +0000)]
2014-10-30  Ed Schonberg  <schonberg@adacore.com>

* exp_util.ads, exp_util.adb (Following_Address_Clause): Modify
Has_Following_Address_Clause so that it returns the address
clause if present, rather than a boolean value.
* sem_ch3.adb (Analyze_Object_Declaration): use
Following_Address_Clause.
* exp_ch3.adb (Expand_N_Object_Declaration): When a tagged object
is initialized, insert tag assignment after object is frozen,
which may be after an address clause that follows the declaration.

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

* system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads,
system-vxworks-arm.ads, system-freebsd-x86_64.ads,
system-linux-hppa.ads, system-linux-s390.ads,
system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads,
system-vxworks-sparcv9.ads, system-linux-ppc.ads, system-aix64.ads,
system-linux-sh4.ads, system-solaris-x86.ads, system-linux-x86_64.ads,
system-linux-x86.ads, system-vxworks-ppc.ads, system-hpux.ads,
system-linux-armel.ads, system-darwin-ppc.ads, system-solaris-sparc.ads,
system-vxworks-m68k.ads, system-hpux-ia64.ads, system.ads,
system-solaris-x86_64.ads, system-mingw-x86_64.ads,
system-vxworks-mips.ads, system-linux-sparc.ads, system-freebsd-x86.ads,
system-aix.ads, system-darwin-x86_64.ads, system-vxworks-x86.ads: Add
pragma No_Elaboration_Code_All.

2014-10-30  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Minor improvement to -flto entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216921 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 30 Oct 2014 11:37:06 +0000 (11:37 +0000)]
2014-10-30  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_util.adb (Inherit_Subprogram_Contract):
Add a guard to protect against enumeration literal overriding.
* sem_ch3.adb, sem_ch4.adb, sem_res.adb, sem_util.adb:
Minor reformatting (add SPARK RM references).

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

* exp_dbug.adb, opt.ads: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216920 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-30 Yannick Moy <moy@adacore.com>
charlet [Thu, 30 Oct 2014 11:34:41 +0000 (11:34 +0000)]
2014-10-30  Yannick Moy  <moy@adacore.com>

* inline.adb (Has_Single_Return_In_GNATprove_Mode):
Return False when return statement is inside one or more blocks.

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

* exp_ch7.adb (Is_Subprogram_Call): Account for the case where an
object declaration initialized by a function call that returns
an unconstrained result may be rewritted as a renaming of the
secondary stack result.

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

* aspects.adb: Add an entry for aspect Extensions_Visible in
table Canonical_Aspect.
* aspects.ads: Add entry for aspect Extensions_Visible in
tables Aspect_Argument, Aspect_Delay, Aspect_Id, Aspect_Names,
Implementation_Defined_Aspect.
* einfo.adb (Get_Pragma): Include pragma Extensions_Visible in
the list of contract pragmas.
* par-prag.adb Pragma Extensions_Visible does not require special
processing from the parser.
* sem_ch3.adb (Analyze_Object_Declaration): Prevent an
implicit class-wide conversion of a formal parameter
of a specific tagged type whose related subprogram is
subject to pragma Extensions_Visible with value "False".
(Check_Abstract_Overriding): Add various overriding checks
related to pragma Extensions_Visible.
(Derive_Subprogram):
A subprogram subject to pragma Extensions_Visible with value
False requires overriding if the subprogram has at least one
controlling OUT parameter.
(Is_EVF_Procedure): New routine.
* sem_ch4.adb (Analyze_Type_Conversion): A formal parameter of
a specific tagged type whose related subprogram is subject to
pragma Extensions_Visible with value "False" cannot appear in
a class-wide conversion.
* sem_ch6.adb (Analyze_Subprogram_Contract): Remove
the assertion to account for pragma Extensions_Visible.
(Check_Overriding_Indicator): An overriding subprogram
inherits the contact of the overridden subprogram.
(New_Overloaded_Entity): An overriding subprogram inherits the
contact of the overridden subprogram.
* sem_ch13.adb (Analyze_Aspect_Specifications): Add processing
for aspect Extensions_Visible.
(Check_Aspect_At_Freeze_Point): Aspect Extensions_Visible does not
require special processing at the freeze point.
* sem_prag.adb Add an entry for pragma Extensions_Visible in
table Sig_Flags.
(Analyze_Pragma): Ensure that various SPARK
pragmas lack identifiers in their arguments. Add processing for
pragma Extensions_Visible.
(Chain_CTC): Code reformatting.
* sem_res.adb (Resolve_Actuals): A formal parameter of a
specific tagged type whose related subprogram is subject to
pragma Extensions_Visible with value "False" cannot act as an
actual in a subprogram with value "True".
* sem_util.adb (Add_Classification): New routine.
(Add_Contract_Item): Account for pragma Extensions_Visible. Code
reformatting.
(Add_Contract_Test_Case): New routine.
(Add_Pre_Post_Condition): New routine.
(Extensions_Visible_Status): New routine.
(Inherit_Subprogram_Contract): New routine.
(Is_EVF_Expression): New routine.
(Is_Specific_Tagged_Type): New routine.
* sem_util.ads Add type Extensions_Visible_Mode and document all values.
(Add_Contract_Item): Add pragma Extensions_Visible to the
comment on usage.
(Inherit_Subprogram_Contract): New routine.
(Is_EVF_Expression): New routine.
(Is_Specific_Tagged_Type): New routine.
* sinfo.adb (Is_Inherited): New routine.
(Set_Is_Inherited): New routine.
* sinfo.ads Add flag Is_Inherited along with its usage in
nodes.
(Is_Inherited): New routine along with pragma Inline.
(Set_Is_Inherited): New routine along with pragma Inline.
* snames.ads-tmpl: Add predefined name "Extensions_Visible"
and a new Pragma_Id for the pragma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216919 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd svn:executable property for generate_libstdcxx_web_docs.
jakub [Thu, 30 Oct 2014 10:11:38 +0000 (10:11 +0000)]
Add svn:executable property for generate_libstdcxx_web_docs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216914 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR ipa/63574
marxin [Thu, 30 Oct 2014 10:10:58 +0000 (10:10 +0000)]
PR ipa/63574
PR ipa/63664
* g++.dg/ipa/pr63574.C: New test.
* ipa-icf-gimple.c (func_checker::parse_labels): Missing comment added.
(func_checker::compare_gimple_label): Simlified comparison introduced.
* ipa-icf-gimple.h: Missing comment added.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216913 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoBuild a shared host libiberty also for libcc1's benefit.
tschwinge [Thu, 30 Oct 2014 10:06:37 +0000 (10:06 +0000)]
Build a shared host libiberty also for libcc1's benefit.

* configure.ac (extra_host_libiberty_configure_flags): Add
--enable-shared also for libcc1's benefit.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216912 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/pa/pa-protos.h (pa_output_arg_descriptor): Strengthen
law [Thu, 30 Oct 2014 05:14:13 +0000 (05:14 +0000)]
* config/pa/pa-protos.h (pa_output_arg_descriptor): Strengthen
argument from rtx to rtx_insn *.
(compute_movmem_length, compute_clrmem_length): Likewise.
(copy_fp_args, length_fp_args): Likewise.
* config/pa/pa.c (legitimize_pic_address): Promote local variable
"insn" from rtx to rtx_insn *.
(legitimize_tls_address, pa_emit_move_sequence): Likewise.
(pa_output_block_move, store_reg, store_reg_modify): Likewise.
(set_reg_plus_d, pa_expand_prologue, hppa_profile_hook): Likewise.
(branch_to_delay_slot_p, branch_needs_nop_p, use_skip_p): Likewise.
(pa_output_arg_descriptor): Strengthen argument to an rtx_insn *.
(compute_movmem_length, compute_clrmem_length): Likewise.
(copy_fp-args, length_fp_args): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216859 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Thu, 30 Oct 2014 00:16:25 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216858 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix build fallout with machine_mode changes.
ramana [Wed, 29 Oct 2014 23:41:04 +0000 (23:41 +0000)]
Fix build fallout with machine_mode changes.

2014-10-29  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/arm/arm.h (MACHMODE): Treat machine_mode as a
        scalar typedef.
        (CUMULATIVE_ARGS): Guard against target includes.
        (machine_function): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216855 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Restore recog state after finding pre-madd instruction
ktkachov [Wed, 29 Oct 2014 21:44:05 +0000 (21:44 +0000)]
[AArch64] Restore recog state after finding pre-madd instruction

* config/aarch64/aarch64.c (aarch64_madd_needs_nop): Restore
recog state after aarch64_prev_real_insn call.

* gcc.target/aarch64/madd_after_asm_1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216852 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoUse perfect forwarding in std::function invokers.
redi [Wed, 29 Oct 2014 18:38:31 +0000 (18:38 +0000)]
Use perfect forwarding in std::function invokers.

* include/std/functional: (_Function_base::_Function_base()): Use
nullptr instead of literal zero.
(function::operator=(nullptr_t)): Likewise.
(_Function_handler::_M_invoke): Use perfect forwarding for _ArgTypes.
(function::_Invoker_type): Likewise.
* testsuite/20_util/function/invoke/forwarding.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216849 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/experimental/any: Add feature-testing macro.
redi [Wed, 29 Oct 2014 18:22:05 +0000 (18:22 +0000)]
* include/experimental/any: Add feature-testing macro.
* include/experimental/optional: Likewise.
* include/experimental/string_view: Likewise.
* include/experimental/tuple: Likewise.
* include/experimental/type_traits: Likewise.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216848 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd <experimental/algorithm> and <experimental/functional>.
redi [Wed, 29 Oct 2014 18:21:59 +0000 (18:21 +0000)]
Add <experimental/algorithm> and <experimental/functional>.

* doc/xml/manual/status_cxx2014.xml: Update TS status.
* include/Makefile.am: Add new headers.
* include/Makefile.in: Regenerate.
* include/experimental/algorithm: New.
* include/experimental/functional: New.
* testsuite/experimental/algorithm/sample.cc: New.
* testsuite/experimental/algorithm/search.cc: New.
* testsuite/experimental/functional/not_fn.cc: New.
* testsuite/experimental/functional/searchers.cc: New.
* testsuite/experimental/functional/value.cc: New.
* testsuite/experimental/feat-lib-fund.cc: Add headers and reorder.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216847 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Fix/revert fallout from machine_mode change
ktkachov [Wed, 29 Oct 2014 17:04:28 +0000 (17:04 +0000)]
[AArch64] Fix/revert fallout from machine_mode change

* config/aarch64/aarch64.h (MACHMODE): Add 'enum' to machine_mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216846 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] Fix/revert fallout from machine_mode change.
ktkachov [Wed, 29 Oct 2014 17:02:59 +0000 (17:02 +0000)]
[ARM] Fix/revert fallout from machine_mode change.

* config/arm/arm.h (MACHMODE): Add 'enum' to machine_mode.
(struct machine_function): Gate definition on
!defined(USED_FOR_TARGET).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216845 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* expmed.c (strict_volatile_bitfield_p): Fix off-by-one error.
dj [Wed, 29 Oct 2014 16:33:42 +0000 (16:33 +0000)]
* expmed.c (strict_volatile_bitfield_p): Fix off-by-one error.
* gcc.dg/20141029-1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216844 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR ipa/63587
marxin [Wed, 29 Oct 2014 15:17:42 +0000 (15:17 +0000)]
PR ipa/63587

* g++.dg/ipa/pr63587-1.C: New test
* g++.dg/ipa/pr63587-2.C: New test.

* cgraphunit.c (cgraph_node::expand_thunk): Only VAR_DECLs are put
to local declarations.
* function.c (add_local_decl): Implementation moved from header
file, assert introduced for tree type.
* function.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216841 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/:
ian [Wed, 29 Oct 2014 15:01:07 +0000 (15:01 +0000)]
gcc/:
* godump.c (go_format_type): Represent "float _Complex" and
"double _Complex" as complex64 or complex128 in Go, as appropriate.
gcc/testsuite/:
* gcc.misc-tests/godump-1.c: Add tests for complex types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216840 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-10-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 Oct 2014 14:42:03 +0000 (14:42 +0000)]
2014-10-29  Richard Biener  <rguenther@suse.de>

* match.pd: Implement a first set of conversion patterns.
* fold-const.c (fold_unary_loc): Remove them here.
* tree-ssa-forwprop.c (simplify_vce): Remove.
(pass_forwprop::execute): Do not call simplify_vce.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216839 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoOptimize powerpc*-*-linux* e500 hardfp/soft-fp use.
jsm28 [Wed, 29 Oct 2014 12:59:16 +0000 (12:59 +0000)]
Optimize powerpc*-*-linux* e500 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 e500 cases.

For e500v2, use of hardfp is generally right, except that calls to
__unordsf2 and __unorddf2 are actually generated by GCC from
__builtin_isunordered and so they need to be implemented with soft-fp
to avoid recursively calling themselves.  For e500v1, hardfp is right
for SFmode (except for __unordsf2) but soft-fp for DFmode (and when
using soft-fp, as usual it's best for the conversions between DFmode
and integers all to come directly from soft-fp rather than some coming
from libgcc2.c).  Thus, new variables hardfp_exclusions and
softfp_extras are added that configurations using t-hardfp and
t-softfp can use to achieve the desired effect of selectively mixing
the two sources of functions.

Tested with no regressions for crosses to powerpc-linux-gnuspe (both
e500v1 and e500v2); also checked that the same set of symbols and
versions is exported from shared libgcc before and after the patch.

* config/t-hardfp (hardfp_exclusions): Document new variable for
user to define.
(hardfp_func_list): Exclude functions from $(hardfp_exclusions).
* config/t-softfp (softfp_extras): Document new variable for user
to define.
(softfp_func_list): Add functions from $(softfp_extras).
* config/rs6000/t-e500v1-fp, config/rs6000/t-e500v2-fp: New files.
* config.host (powerpc*-*-linux*): For e500v1, use
rs6000/t-e500v1-fp and t-hardfp; do not use t-softfp-sfdf and
t-softfp-excl.  For e500v2, use t-hardfp-sfdf, rs6000/t-e500v2-fp
and t-hardfp; do not use t-softfp-sfdf and t-softfp-excl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216835 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/ada/
rsandifo [Wed, 29 Oct 2014 12:02:45 +0000 (12:02 +0000)]
gcc/ada/
* gcc-interface/decl.c, gcc-interface/gigi.h, gcc-interface/misc.c,
gcc-interface/trans.c, gcc-interface/utils.c, gcc-interface/utils2.c:
Remove redundant enum from machine_mode.

gcc/c-family/
* c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
enum from machine_mode.

gcc/c/
* c-decl.c, c-tree.h, c-typeck.c: Remove redundant enum from
machine_mode.

gcc/cp/
* constexpr.c: Remove redundant enum from machine_mode.

gcc/fortran/
* trans-types.c, trans-types.h: Remove redundant enum from
machine_mode.

gcc/go/
* go-lang.c: Remove redundant enum from machine_mode.

gcc/java/
* builtins.c, java-tree.h, typeck.c: Remove redundant enum from
machine_mode.

gcc/lto/
* lto-lang.c: Remove redundant enum from machine_mode.

gcc/
* addresses.h, alias.c, asan.c, auto-inc-dec.c, bt-load.c, builtins.c,
builtins.h, caller-save.c, calls.c, calls.h, cfgexpand.c, cfgloop.h,
cfgrtl.c, combine.c, compare-elim.c, config/aarch64/aarch64-builtins.c,
config/aarch64/aarch64-protos.h, config/aarch64/aarch64-simd.md,
config/aarch64/aarch64.c, config/aarch64/aarch64.h,
config/aarch64/aarch64.md, config/alpha/alpha-protos.h,
config/alpha/alpha.c, config/arc/arc-protos.h, config/arc/arc.c,
config/arc/arc.h, config/arc/predicates.md,
config/arm/aarch-common-protos.h, config/arm/aarch-common.c,
config/arm/arm-protos.h, config/arm/arm.c, config/arm/arm.h,
config/arm/arm.md, config/arm/neon.md, config/arm/thumb2.md,
config/avr/avr-log.c, config/avr/avr-protos.h, config/avr/avr.c,
config/avr/avr.md, config/bfin/bfin-protos.h, config/bfin/bfin.c,
config/c6x/c6x-protos.h, config/c6x/c6x.c, config/c6x/c6x.md,
config/cr16/cr16-protos.h, config/cr16/cr16.c,
config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.md,
config/darwin-protos.h, config/darwin.c,
config/epiphany/epiphany-protos.h, config/epiphany/epiphany.c,
config/epiphany/epiphany.md, config/fr30/fr30.c,
config/frv/frv-protos.h, config/frv/frv.c, config/frv/predicates.md,
config/h8300/h8300-protos.h, config/h8300/h8300.c,
config/i386/i386-builtin-types.awk, config/i386/i386-protos.h,
config/i386/i386.c, config/i386/i386.md, config/i386/predicates.md,
config/i386/sse.md, config/i386/sync.md, config/ia64/ia64-protos.h,
config/ia64/ia64.c, config/iq2000/iq2000-protos.h,
config/iq2000/iq2000.c, config/iq2000/iq2000.md,
config/lm32/lm32-protos.h, config/lm32/lm32.c,
config/m32c/m32c-protos.h, config/m32c/m32c.c,
config/m32r/m32r-protos.h, config/m32r/m32r.c,
config/m68k/m68k-protos.h, config/m68k/m68k.c,
config/mcore/mcore-protos.h, config/mcore/mcore.c,
config/mcore/mcore.md, config/mep/mep-protos.h, config/mep/mep.c,
config/microblaze/microblaze-protos.h, config/microblaze/microblaze.c,
config/mips/mips-protos.h, config/mips/mips.c,
config/mmix/mmix-protos.h, config/mmix/mmix.c,
config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
config/moxie/moxie.c, config/msp430/msp430-protos.h,
config/msp430/msp430.c, config/nds32/nds32-cost.c,
config/nds32/nds32-intrinsic.c, config/nds32/nds32-md-auxiliary.c,
config/nds32/nds32-protos.h, config/nds32/nds32.c,
config/nios2/nios2-protos.h, config/nios2/nios2.c,
config/pa/pa-protos.h, config/pa/pa.c, config/pdp11/pdp11-protos.h,
config/pdp11/pdp11.c, config/rl78/rl78-protos.h, config/rl78/rl78.c,
config/rs6000/altivec.md, config/rs6000/rs6000-c.c,
config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
config/rs6000/rs6000.h, config/rx/rx-protos.h, config/rx/rx.c,
config/s390/predicates.md, config/s390/s390-protos.h,
config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
config/sh/predicates.md, config/sh/sh-protos.h, config/sh/sh.c,
config/sh/sh.md, config/sparc/predicates.md,
config/sparc/sparc-protos.h, config/sparc/sparc.c,
config/sparc/sparc.md, config/spu/spu-protos.h, config/spu/spu.c,
config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
config/tilegx/tilegx-protos.h, config/tilegx/tilegx.c,
config/tilegx/tilegx.md, config/tilepro/tilepro-protos.h,
config/tilepro/tilepro.c, config/v850/v850-protos.h,
config/v850/v850.c, config/v850/v850.md, config/vax/vax-protos.h,
config/vax/vax.c, config/vms/vms-c.c, config/xtensa/xtensa-protos.h,
config/xtensa/xtensa.c, coverage.c, cprop.c, cse.c, cselib.c, cselib.h,
dbxout.c, ddg.c, df-problems.c, dfp.c, dfp.h, doc/md.texi,
doc/rtl.texi, doc/tm.texi, doc/tm.texi.in, dojump.c, dse.c,
dwarf2cfi.c, dwarf2out.c, dwarf2out.h, emit-rtl.c, emit-rtl.h,
except.c, explow.c, expmed.c, expmed.h, expr.c, expr.h, final.c,
fixed-value.c, fixed-value.h, fold-const.c, function.c, function.h,
fwprop.c, gcse.c, gengenrtl.c, genmodes.c, genopinit.c, genoutput.c,
genpreds.c, genrecog.c, gensupport.c, gimple-ssa-strength-reduction.c,
graphite-clast-to-gimple.c, haifa-sched.c, hooks.c, hooks.h, ifcvt.c,
internal-fn.c, ira-build.c, ira-color.c, ira-conflicts.c, ira-costs.c,
ira-emit.c, ira-int.h, ira-lives.c, ira.c, ira.h, jump.c, langhooks.h,
libfuncs.h, lists.c, loop-doloop.c, loop-invariant.c, loop-iv.c,
loop-unroll.c, lower-subreg.c, lower-subreg.h, lra-assigns.c,
lra-constraints.c, lra-eliminations.c, lra-int.h, lra-lives.c,
lra-spills.c, lra.c, lra.h, machmode.h, omp-low.c, optabs.c, optabs.h,
output.h, postreload.c, print-tree.c, read-rtl.c, real.c, real.h,
recog.c, recog.h, ree.c, reg-stack.c, regcprop.c, reginfo.c,
regrename.c, regs.h, reload.c, reload.h, reload1.c, rtl.c, rtl.h,
rtlanal.c, rtlhash.c, rtlhooks-def.h, rtlhooks.c, sched-deps.c,
sel-sched-dump.c, sel-sched-ir.c, sel-sched-ir.h, sel-sched.c,
simplify-rtx.c, stmt.c, stor-layout.c, stor-layout.h, target.def,
targhooks.c, targhooks.h, tree-affine.c, tree-call-cdce.c,
tree-complex.c, tree-data-ref.c, tree-dfa.c, tree-if-conv.c,
tree-inline.c, tree-outof-ssa.c, tree-scalar-evolution.c,
tree-ssa-address.c, tree-ssa-ccp.c, tree-ssa-loop-ivopts.c,
tree-ssa-loop-ivopts.h, tree-ssa-loop-manip.c,
tree-ssa-loop-prefetch.c, tree-ssa-math-opts.c, tree-ssa-reassoc.c,
tree-ssa-sccvn.c, tree-streamer-in.c, tree-switch-conversion.c,
tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop.c,
tree-vect-patterns.c, tree-vect-slp.c, tree-vect-stmts.c,
tree-vrp.c, tree.c, tree.h, tsan.c, ubsan.c, valtrack.c,
var-tracking.c, varasm.c: Remove redundant enum from
machine_mode.
gcc/
* gengtype.c (main): Treat machine_mode as a scalar typedef.
* genmodes.c (emit_insn_modes_h): Hide inline functions if
USED_FOR_TARGET.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216834 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * configure.ac: Remove -Werror addition to WARN_FLAGS. Add
jakub [Wed, 29 Oct 2014 11:38:00 +0000 (11:38 +0000)]
* configure.ac: Remove -Werror addition to WARN_FLAGS.  Add
ACX_PROG_CC_WARNINGS_ARE_ERRORS and AC_ARG_VAR for GMPINC.
* Makefile.am (AM_CPPFLAGS): Add $(GMPINC).
(WERROR_FLAG): Remove.
(AM_CXXFLAGS): Use $(WERROR) instead of $(WERROR_FLAG).
* configure: Regenerated.
* Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216833 138bc75d-0d04-0410-961f-82ee72b054a4