1. 18 Mar, 2008 14 commits
    • configure.ac (libtool_VERSION): To 6:11:0. · 074c0065
      
      2008-03-18  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* configure.ac (libtool_VERSION): To 6:11:0.
      	* configure: Regenerate.
      	* aclocal.m4: Regenerate.
      
      From-SVN: r133317
      Benjamin Kosnik committed
    • expr.c (store_expr): Assume lang_hooks.reduce_bit_field_operations is true. · ac5dc795
      2008-03-18  Paolo Bonzini  <bonzini@gnu.org>
      
              * expr.c (store_expr): Assume lang_hooks.reduce_bit_field_operations
              is true.
              (expand_expr_real_1) <REDUCE_BIT_FIELD>: Don't look at ignore.
              (expand_expr_real_1): Assume lang_hooks.reduce_bit_field_operations
              is true.  Add "&& !ignore" condition to reduce_bit_field.  Modify
              target after ignore has been set, and move there also the commputation
              of subtarget and original_target.
              * langhooks-def.h (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Delete.
              (LANG_HOOKS_INITIALIZER): Remove it.
              * langhooks.h (struct lang_hooks): Remove reduce_bit_field_operations.
      
      ada:
      2008-03-18  Paolo Bonzini  <bonzini@gnu.org>
      
              * misc.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Delete.
      
      cp:
      2008-03-18  Paolo Bonzini  <bonzini@gnu.org>
      
              * cp-lang.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Delete.
      
      From-SVN: r133316
      Paolo Bonzini committed
    • tree-ssa-sccvn.c (visit_reference_op_load): If the lookup found an expression… · b80280f2
      tree-ssa-sccvn.c (visit_reference_op_load): If the lookup found an expression with constants, note that in the VN for the lhs.
      
      2008-03-18  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (visit_reference_op_load): If the lookup
      	found an expression with constants, note that in the VN for the lhs.
      	* tree-ssa-pre.c (eliminate): Visit COND_EXPR statements and
      	fold them to constants if possible.  Run cleanup_cfg if done so.
      	(execute_pre): Return todo.
      	(do_pre): Likewise.
      	(execute_fre): Likewise.
      	* tree-ssa-forwprop.c (can_propagate_from): Allow propagation
      	of constants.
      	(get_prop_source_stmt): Look through pointer conversions.
      
      	* gcc.dg/tree-ssa/forwprop-4.c: New testcase.
      	* gcc.dg/tree-ssa/ssa-fre-16.c: Likewise.
      
      From-SVN: r133315
      Richard Guenther committed
    • tree-pretty-print.c: Include predict.h. · 2e28e797
      
      	* tree-pretty-print.c: Include predict.h.
      	(dump_generic_node): Dump predictor.
      	* tree.h (PREDICT_EXPR_OUTCOME, PREDICT_EXPR_PREDICTION): Update.
      	* tree-gimple.c (is_gimple_stmt): Add PREDICT_EXPR.
      	* gimple-low.c (lower_stmt): Likewise.
      	* expr.c (expand_expr_real): Likewise.
      	* predict.c (tree_bb_level_predictions): Use PREDICT_EXPRs and remove
      	them.
      	(build_predict_expr, build_predict_expr): New.
      	* predict.h (predictor_name, build_predict_expr): Update.
      	* c-typeck.c (c_finish_bc_stmt): Add prediction.
      	* gimplify.c (gimplify_expr): Add PREDICT_EXPR.
      	* predict.def (PRED_CONTINUE): Update hitrate.
      	* tree.def (PREDICT_EXPR): Define.
      	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Mark PREDICT_EXPR;
      	do not handle BIND_EXPR.
      	* tree-inline.c (estimate_num_insns_1): PREDICT_EXPR is free.
      	* tree-cfg.c (verify_gimple_stmt): PREDICT_EXPR is valid.
      	* tree-ssa-operands.c (get_expr_operands): PREDICT_EXPR takes no
      	operands.
      
      From-SVN: r133313
      Jan Hubicka committed
    • * gcov-io.h (__gcov_merge_ior, __gcov_fork): Mark hidden. · 52f1c7ed
      From-SVN: r133312
      Michael Matz committed
    • tree-gimple.h (is_gimple_invariant_address): Declare. · c8ae0bec
      2008-03-18  Richard Guenther  <rguenther@suse.de>
      
      	* tree-gimple.h (is_gimple_invariant_address): Declare.
      	(is_gimple_constant): Likewise.
      	* tree-gimple.c (is_gimple_constant): New function.
      	(is_gimple_invariant_address): Likewise.
      	(is_gimple_min_invariant): Implement in terms of is_gimple_constant
      	and is_gimple_invariant_address.
      	* tree-ssa-loop-niter.c (expand_simple_operations): Revert
      	previous change.
      	* tree-data-ref.c (get_references_in_stmt): A SSA_NAME is not
      	an addressable base.
      
      	* gcc.dg/tree-ssa/loop-19.c: Revert previous change.
      
      From-SVN: r133311
      Richard Guenther committed
    • re PR middle-end/35611 (FAIL: libgomp.c/omp-nested-1.c execution test) · 8119fc93
      	PR middle-end/35611
      	* gimplify.c (gimplify_expr): Gimplify second operand of
      	OMP_ATOMIC_LOAD.
      
      	* testsuite/libgomp.c/atomic-4.c: New test.
      
      From-SVN: r133309
      Jakub Jelinek committed
    • re PR libgomp/35625 (schedule(guided) loops forever if ((end - start) % incr) != 0) · 9e775963
      	PR libgomp/35625
      	* iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
      	(gomp_iter_guided_next): Likewise.
      	* testsuite/libgomp.c/pr35625.c: New test.
      
      From-SVN: r133306
      Jakub Jelinek committed
    • aclocal.m4: Regenerate. · 483d8a4a
      intl/
      	* aclocal.m4: Regenerate.
      	* configure: Likewise.
      
      From-SVN: r133304
      Ralf Wildenhues committed
    • re PR fortran/35617 (read namelist error) · 12da5c8a
      2008-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/35617
      	* gfortran.dg/namelist_45.f90: New test.
      
      From-SVN: r133303
      Jerry DeLisle committed
    • re PR fortran/35617 (read namelist error) · 5a79ae84
      2008-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/35617
      	* io/list_read.c (eat_separator): If next character after eatline is '!'
      	then eatline again.
      
      From-SVN: r133302
      Jerry DeLisle committed
    • re PR testsuite/35512 (gcc.target/ia64/visibility-1.c) · f82f5289
      PR testsuite/35512
      * gcc.target/ia64/visibility-1.c (foo): Change return type to void.
      Write variables instead of reading them.
      
      From-SVN: r133301
      James E Wilson committed
    • re PR c++/35548 (g++ 4.3 miscompile this simple program) · 3d574e5b
              PR c++/35548
              * call.c (reference_binding): Check LOOKUP_NO_TEMP_BIND when binding
              a temp directly to a reference as per DR391.
      
      From-SVN: r133299
      Jason Merrill committed
    • Daily bump. · a5728e40
      From-SVN: r133297
      GCC Administrator committed
  2. 17 Mar, 2008 2 commits
  3. 16 Mar, 2008 13 commits
    • re PR fortran/35470 (Valid pointer assigment code gives compilation errors) · c52938ec
      2008-03-16  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/35470
      	* resolve.c (check_assumed_size_reference):  Only visit the
      	first reference and look directly at the highest dimension.
      
      2008-03-16  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/35470
      	* gfortran.dg/subref_array_pointer_3.f90 : New test.
      
      From-SVN: r133279
      Paul Thomas committed
    • [multiple changes] · 41ff0d66
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
      	Update.
      	* testsuite/17_intro/headers/c++200x/all.cc: Likewise.
      	* include/precompiled/stdc++.h: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
      	* include/std/date_time: New file.
      	* src/date_time.cc: New file.
       	* config/abi/pre/gnu.ver: Added <date_time> symbols in version
       	GLIBCXX_3.4.11 and changed two patterns in version GLIBCXX_3.4
      	that matched new symbols.
      	* include/Makefile.am: Add date_time in std headers.
      	* src/Makefile.am: Add date_time.cc to source files.
      	* include/Makefile.in: Regenerate.
      	* src/Makefile.in: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
            * testsuite/31_date_time/headers/date_time/types_std.cc: New.
            * testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
            * testsuite/31_date_time/system_time/requirements: Likewise.
            * testsuite/31_date_time/system_time/requirements/traits.cc: Likewise. 	
      
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* config.h.in: Regenerate.
      
      From-SVN: r133278
      Paolo Carlini committed
    • [multiple changes] · 0c24bb10
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
      	Update.
      	* testsuite/17_intro/headers/c++200x/all.cc: Likewise.
      	* include/precompiled/stdc++.h: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
      	* include/std/date_time: New file.
      	* src/date_time.cc: New file.
       	* config/abi/pre/gnu.ver: Added <date_time> symbols in version
       	GLIBCXX_3.4.11 and changed two patterns in version GLIBCXX_3.4
      	that matched new symbols.
      	* include/Makefile.am: Add date_time in std headers.
      	* src/Makefile.am: Add date_time.cc to source files.
      	* include/Makefile.in: Regenerate.
      	* src/Makefile.in: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
            * testsuite/31_date_time/headers/date_time/types_std.cc: New.
            * testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
            * testsuite/31_date_time/system_time/requirements: Likewise.
            * testsuite/31_date_time/system_time/requirements/traits.cc: Likewise. 	
      
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* config.h.in: Regenerate.
      
      From-SVN: r133277
      Paolo Carlini committed
    • [multiple changes] · 5ae8cf8c
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
      	Update.
      	* testsuite/17_intro/headers/c++200x/all.cc: Likewise.
      	* include/precompiled/stdc++.h: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
      	* include/std/date_time: New file.
      	* src/date_time.cc: New file.
       	* config/abi/pre/gnu.ver: Added <date_time> symbols in version
       	GLIBCXX_3.4.11 and changed two patterns in version GLIBCXX_3.4
      	that matched new symbols.
      	* include/Makefile.am: Add date_time in std headers.
      	* src/Makefile.am: Add date_time.cc to source files.
      	* include/Makefile.in: Regenerate.
      	* src/Makefile.in: Likewise.
      
      2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
      
            * testsuite/31_date_time/headers/date_time/types_std.cc: New.
            * testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
            * testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
            * testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
            * testsuite/31_date_time/system_time/requirements: Likewise.
            * testsuite/31_date_time/system_time/requirements/traits.cc: Likewise. 	
      
      2008-03-16  Paolo Carlini  <pcarlini@suse.de>
      
      	* config.h.in: Regenerate.
      
      From-SVN: r133276
      Paolo Carlini committed
    • re PR debug/31510 (FAIL: libgomp.fortran/threadprivate[23].f90 -O3 -g) · fcb9237b
      	PR debug/31510
      	* dbxout.c (dbxout_expand_expr, case VAR_DECL): Return NULL for
      	emulated thread local variables.
      
      From-SVN: r133274
      James E Wilson committed
    • re PR tree-optimization/35607 (IVOPTs produces invalid gimple) · 461f8762
      2008-03-16  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/35607
      	* tree-ssa-loop-niter.c (expand_simple_operations): Do not
      	expand TREE_INVARIANT operations that are not gimple invariant.
      
      	* gcc.c-torture/compile/pr35607.c: New testcase.
      	* gcc.dg/tree-ssa/loop-19.c: Use -O2 to avoid vectorization.
      
      From-SVN: r133273
      Richard Guenther committed
    • extend.texi (Alignment): Say that the ABI controls the __alignof__ for… · 2a31c49c
      extend.texi (Alignment): Say that the ABI controls the __alignof__ for non-strict-alignment targets...
      
      	* doc/extend.texi (Alignment): Say that the ABI controls
      	the __alignof__ for non-strict-alignment targets rather
      	than being a recommendation.
      
      From-SVN: r133271
      Hans-Peter Nilsson committed
    • re PR fortran/35582 ([4.1/4.2] very simple error gives segmentation fault) · c2339253
      2008-03-16  Daniel Franke  <franke.daniel@gmail.com>
      
              PR fortran/35582
              * gfortran.dg/write_invalid_format.f90: New test.
      
      From-SVN: r133270
      Daniel Franke committed
    • configure.ac: m4_include config/proginstall.m4. · 38d24731
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * configure.ac: m4_include config/proginstall.m4.
              * configure: Regenerate.
      
      config/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * proginstall.m4: New file, with fixed AC_PROG_INSTALL.
      
      libjava/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * Makefile.am (install-data-local): Rewrite to be more efficient,
              using awk, and `install' with multiple files at once.  Do not gather
              more than 50 files in one go to avoid hitting command line limits.
              (install_data_local_split): New variable.
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * gcj/Makefile.in: Likewise.
              * include/Makefile.in: Likewise.
              * testsuite/Makefile.in: Likewise.
      
      boehm-gc/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * include/Makefile.in: Likewise.
      
      libffi/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * include/Makefile.in: Likewise.
              * testsuite/Makefile.in: Likewise.
      
      libgfortran/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
      
      libgomp/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * testsuite/Makefile.in: Likewise.
      
      libmudflap/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * testsuite/Makefile.in: Likewise.
      
      libssp/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
      libssp/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
      
      libstdc++-v3/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
              * doc/Makefile.in: Likewise.
              * include/Makefile.in: Likewise.
              * libmath/Makefile.in: Likewise.
              * libsupc++/Makefile.in: Likewise.
              * po/Makefile.in: Likewise.
              * src/Makefile.in: Likewise.
              * testsuite/Makefile.in: Likewise.
      
      zlib/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
              * aclocal.m4: Regenerate.
              * configure: Likewise.
              * Makefile.in: Likewise.
      
      From-SVN: r133269
      Ralf Wildenhues committed
    • Makefile.am (write_entries_to_file_split): New variable. · 0dc54e5c
      libjava/
      2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
      
      	* Makefile.am (write_entries_to_file_split): New variable.
      	(write_entries_to_file): Write out that many entries at once,
      	for speed.
      	* Makefile.in: Regenerate.
      
      From-SVN: r133268
      Ralf Wildenhues committed
    • backport: Deal with Autoconf 2.62's semantic change in m4_append. · 32bc4cf4
      2008-03-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
      
      	Backport from upstream Libtool:
      	
      	2007-10-12  Eric Blake  <ebb9@byu.net>
      	
      	Deal with Autoconf 2.62's semantic change in m4_append.
      	* ltsugar.m4 (lt_append): Replace broken versions of
      	m4_append.
      	(lt_if_append_uniq): Don't require separator to be overquoted,
      	and avoid broken m4_append.
      	(lt_dict_add): Fix typo.
      	* libtool.m4 (_LT_DECL): Don't overquote separator.
      
      From-SVN: r133267
      Ralf Wildenhues committed
    • arm.c (arm_unwind_emit): Suppress unused unwinding annotations. · 80efdb6a
      2008-03-15  Paul Brook  <paul@codesourcery.com>
      
      	gcc/
      	* config/arm/arm.c (arm_unwind_emit): Suppress unused unwinding
      	annotations.
      	(arm_output_fn_unwind): Mark functions that can not be unwound.
      
      From-SVN: r133266
      Paul Brook committed
    • Daily bump. · 393ab252
      From-SVN: r133264
      GCC Administrator committed
  4. 15 Mar, 2008 11 commits
    • arm.c (arm_rtx_costs_1): Add costs for ARMv6 value extension instructions. · ff069900
      2008-03-15  Paul Brook  <paul@codesourcery.com>
      
      	gcc/
      	* config/arm/arm.c (arm_rtx_costs_1): Add costs for ARMv6 value
      	extension instructions.
      
      From-SVN: r133260
      Paul Brook committed
    • * zh_CN.po: Update. · 1b753828
      From-SVN: r133258
      Joseph Myers committed
    • tree-ssa-ccp.c (ccp_fold): Also read from constant values and fold constant aggregate refs. · 87e1e42b
      2008-03-15  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-ccp.c (ccp_fold): Also read from constant values
      	and fold constant aggregate refs.
      	(fold_const_aggregate_ref): Handle string constants
      	and constructors in ARRAY_REFs.  Handle INDIRECT_REF.
      	(evaluate_stmt): Simplify now that ccp_fold folds constant
      	aggregate refs.
      
      	* gcc.dg/tree-ssa/ssa-ccp-16.c: New testcase.
      
      From-SVN: r133257
      Richard Guenther committed
    • * zh_CN.po: Update. · 10727683
      From-SVN: r133255
      Joseph Myers committed
    • arm.md (insv): Use gen_insv_t2 and gen_insv_zero. · ef87d898
      2008-03-15  Paul Brook  <paul@codesourcery.com>
      
      	* config/arm/arm.md (insv): Use gen_insv_t2 and gen_insv_zero.
      	(extzv): Use gen_extzv_t2.
      	(insv_t2, insv_zero, extv, extzv_t2): New patterns.
      
      From-SVN: r133254
      Paul Brook committed
    • re PR fortran/35184 (ICE in gfc_conv_array_index_offset) · 6b927641
      2008-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR testsuite/35184
      	gfortran.dg/elemental_subroutine_6.f90: New test.
      
      From-SVN: r133253
      Jerry DeLisle committed
    • re PR fortran/35184 (ICE in gfc_conv_array_index_offset) · db5cf0c7
      2008-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/35184
      	* trans-array.c (gfc_conv_array_index_offset): Remove unnecessary
      	assert.
      
      From-SVN: r133252
      Jerry DeLisle committed
    • tree-ssa-ccp.c (get_symbol_constant_value): Export. · ed97ddc6
      2008-03-15  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-ccp.c (get_symbol_constant_value): Export.
      	(fold_const_aggregate_ref): Likewise.
      	(get_value): Return NULL if we don't have any values.
      	(ccp_finalize): Set const_val to NULL after freeing it.
      	* tree-flow.h (get_symbol_constant_value): Declare.
      	(fold_const_aggregate_ref): Likewise.
      	* tree-ssa-sccvn.c (try_to_simplify): Use them.
      
      	* gcc.dg/pr23911.c: Adjust testcase.
      	* gcc.dg/tree-ssa/pr14841.c: Likewise.
      	* gcc.dg/tree-ssa/20030922-2.c: Likewise.
      
      From-SVN: r133251
      Richard Guenther committed
    • re PR fortran/35584 (overzealous warning: branch causes infinite loop) · ab551054
      2008-03-15  Daniel Franke  <franke.daniel@gmail.com>
      
              PR fortran/35584
              * resolve.c (resolve_branch): Less strict and pessimistic warning
              message.
      
      From-SVN: r133250
      Daniel Franke committed
    • re PR middle-end/35593 (spurious warning "array subscript is below array bounds"… · 1fd89060
      re PR middle-end/35593 (spurious warning "array subscript is below array bounds" with void* function argument plus -O2)
      
      2008-03-15  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/35593
      	* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Make sure
      	to not produce negative array indices if not allowed.  Add
      	parameter to indicate that.
      	(maybe_fold_offset_to_component_ref): Allow negative array
      	indices only for the first member of a structure.
      	(maybe_fold_offset_to_reference): Allow negative array indices.
      	(maybe_fold_stmt_addition): Likewise.
      
      	* g++.dg/warn/Warray-bounds-3.C: New testcase.
      
      From-SVN: r133249
      Richard Guenther committed
    • avr.c (avr_arch_types): Add avr6 entry. · 693092fb
      	* gcc/gcc/config/avr/avr.c (avr_arch_types): Add avr6 entry.
      	(avr_arch): Add ARCH_AVR6.
      	(avr_mcu_types): Add 'atmega2560' and 'atmega2561' entry.
       	(initial_elimination_offset): Initialize and use 'avr_pc_size' 
      	instead of fixed value 2.
      	(print_operand_address): Use gs() asm specifier instead of pm().
      	(avr_assemble_integer): (Ditto.).
      	(avr_output_addr_vec_elt): (Ditto.).
      	(print_operand): Handle "!" code.
      	* gcc/gcc/config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Add 
      	__AVR_3_BYTE_PC__, __AVR_2_BYTE_PC__ and __AVR_HAVE_JMP_CALL__.
      	(AVR_HAVE_EIJMP_EICALL): Define.
      	(AVR_3_BYTE_PC): Redefine.
      	(AVR_2_BYTE_PC): (Ditto.).
      	(PRINT_OPERAND_PUNCT_VALID_P): Add '!' code.
      	(LINK_SPEC): Add atmega2560 and atmega2561.
      	(CRT_BINUTILS_SPEC): Add atmega2560 (crtm2560.o) and atmega2561 
      	(crtm2561.o).
      	* gcc/gcc/config/avr/avr.md (call_insn): Use eicall instead of icall 
      	for 3 byte PC devices.
      	(call_value_insn): (Ditto.).
      	(*tablejump_enh): Use eijmp instead of ijmp for 3 byte PC devices.
      	(indirect_jump): Use only for for 2 byte PC devices.
      	(*tablejump): (Ditto.).
      	(*indirect_jump_avr6): Add insn.
      	(*tablejump_rjmp): Don't use for 3 byte PC devices.
      	* gcc/gcc/config/avr/libgcc.S (__prologue_saves__): Use eijmp 
      	instead of ijmp for 3 byte PC devices.
      	(__tablejump2__): (Ditto.).
      	* gcc/gcc/config/avr/t-avr (MULITLIB_OPTIONS): Add avr6 architecture.
      	(MULITLIB_DIRNAMES): (Ditto.). 
      	(MULTILIB_MATCHES): Add atmega2560 and atmega2561 to list.
      
      Co-Authored-By: Anatoly Sokolov <aesok@post.ru>
      
      From-SVN: r133248
      Bjoern Haase committed