Commit Graph

112470 Commits

Author SHA1 Message Date
Georg-Johann Lay e12693c1ed re PR target/50652 ([avr] Incorrect data start value for atmega164a)
PR target/50652
	* config/avr/avr-mcus.def (AVR_MCU): Set .data_section_start of
	atmega164a to 0x100.

From-SVN: r179737
2011-10-10 08:32:15 +00:00
GCC Administrator a959e9068f Daily bump.
From-SVN: r179735
2011-10-10 00:19:09 +00:00
Paolo Carlini 90454da1c0 re PR c++/38980 (missing -Wformat warning on const char format string)
/cp
2011-10-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/38980
	* init.c (constant_value_1): Add bool parameter.
	(decl_constant_value_safe): Add.
	(integral_constant_value): Adjust.
	(decl_constant_value): Adjust.
	* cp-tree.h (decl_constant_value_safe): Declare.
	* typeck.c (decay_conversion): Use decl_constant_value_safe.
	* call.c (convert_like_real): Likewise.

/testsuite
2011-10-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/38980
	* g++.dg/warn/format5.C: New.

From-SVN: r179731
2011-10-09 23:20:39 +00:00
Eric Botcazou 75e649f6f4 tree-ssa-forwprop.c (forward_propagate_into_comparison): Do not make the replacement if the conversion to the LHS type is not useless.
* tree-ssa-forwprop.c (forward_propagate_into_comparison): Do not make
	the replacement if the conversion to the LHS type is not useless.

From-SVN: r179730
2011-10-09 21:39:12 +00:00
Tobias Burnus 7de61dc6ac re PR fortran/45044 (Different named COMMON block size: No warning)
2011-10-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45044
        * trans-common.c (translate_common): Fix -Walign-commons
        check.

2011-10-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45044
        * gfortran.dg/common_14.f90: Compile with -Wno-align-commons.
        * gfortran.dg/common_16.f90: New.

From-SVN: r179729
2011-10-09 21:37:47 +02:00
Mikael Morin 0cc8903520 Fix dead e-mail address in ChangeLogs
From-SVN: r179728
2011-10-09 16:59:42 +00:00
Mikael Morin 30d5071885 Fix bogus e-mail address in ChangeLogs
From-SVN: r179727
2011-10-09 16:48:25 +00:00
Mikael Morin 46a9f26bd3 interface.c (check_dummy_characteristics): Count dimensions starting from one in diagnostic.
* interface.c (check_dummy_characteristics): Count dimensions starting
	from one in diagnostic.

From-SVN: r179726
2011-10-09 16:19:06 +00:00
Tobias Burnus 28d0b59566 Make-lang.in (F95_PARSER_OBJS, [...]): Add dependency on iso-c-binding.def and iso-fortran-env.def.
2011-10-09  Tobias Burnus  <burnus@net-b.de>

        * Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
        dependency on iso-c-binding.def and iso-fortran-env.def.
        * module.c (import_iso_c_binding_module): Add error when
        explicitly importing a nonstandard symbol; extend standard-
        depending loading.
        * iso-c-binding.def: Add c_float128 and c_float128_complex
        integer parameters (for -std=gnu).
        * intrinsic.texi (ISO_C_Binding): Document them.
        * symbol.c (generate_isocbinding_symbol): Change macros
        to ignore GFC_STD_* data.
        * trans-types.c (gfc_init_c_interop_kinds): Ditto; make
        nonstatic and renamed from "init_c_interop_kinds".
        (gfc_init_kinds): Don't call it
        * trans-types.h (gfc_init_c_interop_kinds): Add prototype.
        * f95-lang.c (gfc_init_decl_processing): Call it.

2011-10-09  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/iso_c_binding_param_1.f90: New.
        * gfortran.dg/iso_c_binding_param_2.f90: New.
        * gfortran.dg/c_sizeof_2.f90: Update dg-error.

From-SVN: r179725
2011-10-09 17:36:18 +02:00
Ira Rosen 3a0a357821 re PR tree-optimization/50635 (ICE on valid: segfault in vectorize_loops)
PR tree-optimization/50635
        * tree-vect-patterns.c (vect_handle_widen_mult_by_const): Add
        DEF_STMT to the list of statements to be replaced by the
        pattern statements.
        (vect_handle_widen_mult_by_const): Don't check TYPE_OUT.

From-SVN: r179724
2011-10-09 15:09:00 +00:00
Janus Weil 4e5d3db2c4 re PR fortran/50659 ([F03] ICE with PROCEDURE statement)
2011-10-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50659
	* expr.c (replace_symbol): Only do replacement if the symbol is a dummy.

2011-10-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50659
	* gfortran.dg/proc_decl_27.f90: New.

From-SVN: r179723
2011-10-09 13:34:21 +02:00
Anatoly Sokolov 3bb4db675a system.h: Commit forgotten hunk in previous patch.
* system.h: Commit forgotten hunk in previous patch.
	(OUTPUT_ADDR_CONST_EXTRA): Poison.

From-SVN: r179722
2011-10-09 15:09:59 +04:00
Nicola Pero b4a50e4336 In libobjc/: 2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-10-09  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR libobjc/49883
	* init.c (__objc_exec_class): Work around a bug in clang's code
	generation.  Clang sets the class->info field to values different
	from 0x1 or 0x2 (the only allowed values in the traditional GNU
	Objective-C runtime ABI) to store some additional information, but
	this breaks backwards compatibility.  Wipe out all the bits in the
	fields other than the first two upon loading a class.

2011-10-09  Nicola Pero  <nicola.pero@meta-innovation.com>
	
	* class.c (objc_lookup_class): Added back for compatibility with
	clang which seems to emit calls to it.

From-SVN: r179721
2011-10-09 10:29:50 +00:00
Jakub Jelinek 68e291ec19 pt.c (reregister_specialization): Use htab_find instead of htab_find_slot with INSERT.
* pt.c (reregister_specialization): Use htab_find instead of
	htab_find_slot with INSERT.
	(maybe_process_partial_specialization, lookup_template_class_1): Change
	slot variable type to void ** to avoid aliasing problems.
	(register_specialization): Likewise.  Use slot != NULL instead of
	more expensive !optimize_specialization_lookup_p (tmpl) test.

Co-Authored-By: Diego Novillo <dnovillo@google.com>

From-SVN: r179719
2011-10-09 11:35:23 +02:00
Paolo Carlini 367f06ae31 re PR c++/34927 (Duplicate error message about abstract class)
2011-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/34927
	* typeck2.c (abstract_virtuals_error_sfinae): Don't produce duplicate
	inform messages in case of cloned destructor.

From-SVN: r179718
2011-10-09 00:21:37 +00:00
GCC Administrator 6d482d2eaa Daily bump.
From-SVN: r179717
2011-10-09 00:18:00 +00:00
Gerald Pfeifer 7089ef0f0b Fix ChangeLog format for revision 177233.
From-SVN: r179712
2011-10-08 19:10:09 +00:00
Nicola Pero 0ea39696e4 In libobjc/: 2011-10-08 Richard Frith-Macdonald <rfm@gnu.org> Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-10-08  Richard Frith-Macdonald <rfm@gnu.org>
            Nicola Pero  <nicola.pero@meta-innovation.com>

	PR libobjc/50428
	* sendmsg.c (__objc_send_initialize): If a class does not have an
	+initialize method, search for an +initialize method in the
	superclass and in the ancestor classes and execute the first one
	that is found.  This makes the GNU runtime behave in the same way
	as the Apple/NeXT runtime with respect to +initialize methods and
	subclassing.

In gcc/:
2011-10-08  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR libobjc/50428
	* doc/objc.texi (Garbage Collection): Updated example to protect
	+initialize against execution in subclasses.

In gcc/testsuite/:
2011-10-08  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR libobjc/50428	
	* objc/execute/initialize-1.m: New test.

From-SVN: r179711
2011-10-08 17:52:06 +00:00
Paul Thomas 30a390c810 re PR fortran/47844 (Array stride ignored for pointer-valued function results)
2011-10-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/47844
	* trans-array.c (gfc_conv_array_index_offset): Use descriptor
	stride for pointer function results.

2011-10-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/47844
	* gfortran.dg/pointer_function_result_1.f90 : New test.

From-SVN: r179710
2011-10-08 10:18:51 +00:00
GCC Administrator 2758ee9990 Daily bump.
From-SVN: r179707
2011-10-08 00:18:22 +00:00
Ian Lance Taylor b5204884b2 * generic-morestack-thread.c: #include <errno.h>.
From-SVN: r179703
2011-10-07 22:52:28 +00:00
Ian Lance Taylor 91a639a157 re PR target/46093 (code compiled with -fsplit-stack crashes when passing large struct)
PR target/46093
	* generic-morestack.c (__generic_morestack): Make sure the segment
	is large enough for both the stack frame and the copied
	parameters.

From-SVN: r179702
2011-10-07 22:51:11 +00:00
Richard Henderson 2205ed2513 Rename vshuffle/vec_shuffle to vec_perm.
* doc/extend.texi (__builtin_shuffle): Improve the description to
        include the modulus of the selector.  Mention OpenCL.
        * doc/md.texi (vec_perm, vec_perm_const): Document named patterns.

        * tree.def (VEC_PERM_EXPR): Rename from VEC_SHUFFLE_EXPR.
        * genopinit.c (optabs): Rename vshuffle to vec_perm.
        * c-typeck.c (c_build_vec_perm_expr): Rename from
        c_build_vec_shuffle_expr.  Update for name changes.
        * optabs.c (expand_vec_perm_expr_p): Rename from
        expand_vec_shuffle_expr_p.
        (expand_vec_perm_expr): Rename from expand_vec_shuffle_expr.
        * optabs.h (OTI_vec_perm): Rename from DOI_vshuffle.
        (vec_perm_optab): Rename from vshuffle_optab.
        * expr.c, gimple-pretty-print.c, gimple.c, gimplify.c,
        c-tree.h, c-parser.c, tree-cfg.c, tree-inline.c, tree-pretty-print.c,
        tree-ssa-operands.c, tree-vect-generic.c: Update for name changes.

        * config/i386/i386.c (ix86_expand_vec_perm): Rename from
        ix86_expand_vshuffle.
        * config/i386/i386-protos.h: Update.
        * config/i386/sse.md (VEC_PERM_AVX2): Rename from VSHUFFLE_AVX2.
        (vec_perm<VEC_PERM_AVX2>): Rename from vshuffle<VSHUFFLE_AVX2>.

From-SVN: r179701
2011-10-07 15:41:48 -07:00
Richard Henderson 524857ec5d i386: Fixup last pblendw change.
Missed changing one predicate to AVX2.  Add parenthesis
to avoid bootstrap -Werror.

From-SVN: r179700
2011-10-07 15:12:18 -07:00
Richard Henderson 96d861154f i386: Fix representation of 256-bit vpblendw.
From-SVN: r179697
2011-10-07 14:07:10 -07:00
Mikael Morin 621babd8d0 trans-array.c (gfc_conv_expr_descriptor): Remove trailing whitespace.
* trans-array.c	(gfc_conv_expr_descriptor): Remove trailing whitespace.

From-SVN: r179695
2011-10-07 20:56:31 +00:00
Mikael Morin c2eb5b539f trans-array.c (gfc_conv_ss_startstride): Merge two switch cases.
* trans-array.c	(gfc_conv_ss_startstride): Merge two switch cases.

From-SVN: r179694
2011-10-07 20:35:47 +00:00
Mikael Morin 065c6f9de2 trans-array.c (gfc_conv_section_startstride): Remove coarray argument.
* trans-array.c (gfc_conv_section_startstride): Remove coarray argument.
	Remove conditions on coarray.
	(gfc_conv_ss_startstride): Update call to gfc_conv_section_startstride.
	(gfc_conv_expr_descriptor): Ditto. Add assertions before the call.

From-SVN: r179693
2011-10-07 20:32:37 +00:00
Mikael Morin 6cb0246c1b trans-array.c (gfc_conv_section_startstride): Remove coarray_last argument.
* trans-array.c (gfc_conv_section_startstride): Remove coarray_last
	argument. Remove condition on coarray_last.
	(gfc_conv_ss_startstride): Update call to gfc_conv_section_startstride.
	(gfc_conv_expr_descriptor): Ditto.

From-SVN: r179692
2011-10-07 20:29:27 +00:00
Mikael Morin d7baf64789 trans-array.c (gfc_walk_variable_expr): Remove scalar coarray handling.
* trans-array.c (gfc_walk_variable_expr): Remove scalar coarray
	handling.  Don't reset array ref's corank and codimensions' types
	in the full array ref case.  Update loop upper limit.
	Remove DIMEN_THIS_IMAGE case.  Remove unnecessary conditions.

From-SVN: r179691
2011-10-07 20:26:11 +00:00
Mikael Morin 677e2daebf trans.h (gfc_ss_info): Remove codimen field.
* trans.h (gfc_ss_info): Remove codimen field.
	* trans-array.c (gfc_get_array_ss): Don't set codimen field.
	(gfc_trans_create_temp_array): Don't set descriptor's cobounds.
	(gfc_trans_constant_array_constructor): Update loop upper limit.
	(gfc_conv_ss_startstride): Don't set codimen field.
	Don't get descriptor's cobounds.
	(gfc_walk_variable_expr): Update dimension index.
	* trans-intrinsic.c (trans_this_image, trans_image_index,
	conv_intrinsic_cobound): Don't set codimen field

From-SVN: r179690
2011-10-07 20:22:50 +00:00
Mikael Morin c6d741b85b trans.h (gfc_loopinfo): Remove codimen field.
* trans.h (gfc_loopinfo): Remove codimen field.
	* trans-array.c (gfc_set_vector_loop_bounds,
	gfc_trans_scalarizing_loops, gfc_conv_loop_setup): Update loop upper
	limit.
	(gfc_set_loop_bounds_from_array_spec): Ditto. Remove skip on last
	codimension.
	(gfc_start_scalarized_body): Update loop lower limit.
	(gfc_conv_ss_startstride): Don't set loop's codimen field.
	(gfc_conv_loop_setup): Remove unnecessary condition.
	(gfc_conv_expr_descriptor): Don't use loop's codimen field as corank.

From-SVN: r179689
2011-10-07 20:14:44 +00:00
Mikael Morin 8e50858e07 trans.h (gfc_ss): Remove data.temp.codimen field.
* trans.h (gfc_ss): Remove data.temp.codimen field.
	* trans-array.c (gfc_conv_resolve_dependencies,
	gfc_conv_expr_descriptor): Don't set temp's codimen field.

From-SVN: r179686
2011-10-07 20:05:35 +00:00
Mikael Morin 5551a54eda resolve.c (resolve_array_ref): Set array_ref's dimen field (and the associated dimen_type) in the full array...
* resolve.c (resolve_array_ref): Set array_ref's dimen field (and the
	associated dimen_type) in the full array ref case.

From-SVN: r179685
2011-10-07 19:56:11 +00:00
Mikael Morin 9b701a45c0 trans-intrinsic.c (walk_coarray): New function.
* trans-intrinsic.c (walk_coarray): New function.
	(convert_element_to_coarray_ref): Move code to walk_coarray. Remove.
	(trans-this_image, trans_image_index, conv_intrinsic_cobound):
	Use walk_coarray.

From-SVN: r179684
2011-10-07 19:52:34 +00:00
Mikael Morin 6bd0ce7b61 trans-array.c (gfc_conv_expr_descriptor): Add out-of-the-scalarizer cobounds evaluation.
* trans-array.c (gfc_conv_expr_descriptor): Add out-of-the-scalarizer
	cobounds evaluation.

From-SVN: r179683
2011-10-07 19:47:07 +00:00
Mikael Morin 199c387dd1 trans-array.c (gfc_conv_ss_startstride): Support zero rank loop.
* trans-array.c (gfc_conv_ss_startstride): Support zero rank loop.

From-SVN: r179682
2011-10-07 19:43:21 +00:00
Mikael Morin 287b3dd2b2 trans-array.c (gfc_conv_section_startstride): Move code to evaluate_bound.
* trans-array.c (gfc_conv_section_startstride): Move code to
	evaluate_bound.  Use evaluate_bound.
	(evaluate_bound): New function.

From-SVN: r179681
2011-10-07 19:39:22 +00:00
Mikael Morin b0ac6998a7 trans-array.c (gfc_conv_section_startstride): Update assertion to also accept coarrays.
* trans-array.c (gfc_conv_section_startstride): Update assertion to
	also accept coarrays.

From-SVN: r179680
2011-10-07 19:36:20 +00:00
Mikael Morin 3ca398580d trans-array.c (gfc_conv_section_startstride): Factor common array ref references.
* trans-array.c (gfc_conv_section_startstride): Factor common
	array ref references.

From-SVN: r179679
2011-10-07 19:33:10 +00:00
Mikael Morin a7525708c6 trans-array.c (gfc_conv_expr_descriptor): Use codim instead of loop.codimen as argument to gfc_get_array_type_bounds.
* trans-array.c (gfc_conv_expr_descriptor): Use codim instead of
	loop.codimen as argument to gfc_get_array_type_bounds.

From-SVN: r179677
2011-10-07 19:28:55 +00:00
Mikael Morin 23c3d0f972 trans-array.h (struct gfc_se): New flag want_coarray.
* trans-array.h (struct gfc_se): New flag want_coarray.
	* trans-intrinsic.c (trans_this_image, trans_image_index,
	conv_intrinsic_cobound): Set want_coarray.
	* trans_array.c (gfc_conv_expr_descriptor): Evaluate codimension
	earlier and without relying on the scalarizer.

From-SVN: r179676
2011-10-07 19:24:07 +00:00
Mikael Morin 89010691e4 expr.c (gfc_get_corank): Return 0 if input expression is not a coarray.
* expr.c (gfc_get_corank): Return 0 if input expression is not a
	coarray.

From-SVN: r179675
2011-10-07 19:14:07 +00:00
Mikael Morin bb033c9adc trans-array.c (gfc_conv_expr_descriptor): Simplify coarray descriptor setup code.
* trans-array.c (gfc_conv_expr_descriptor): Simplify coarray
	descriptor setup code.

From-SVN: r179674
2011-10-07 19:11:01 +00:00
Mikael Morin b78a06b224 resolve.c (compare_spec_to_ref): Move coarray ref initialization code...
* resolve.c (compare_spec_to_ref): Move coarray ref initialization
	code...
	(resolve_array_ref): ... here.

From-SVN: r179672
2011-10-07 19:07:04 +00:00
Mikael Morin 266edc7e83 check.c (is_coarray): Remove.
* check.c (is_coarray): Remove.
	(coarray_check): Use gfc_is_coarray.

From-SVN: r179671
2011-10-07 19:02:36 +00:00
Richard Henderson e1faf1503e Delete incorrect representations of avx2 shifts.
* config/i386/i386.c (bdesc_args): Update code for
	__builtin_ia32_palignr256.  Change type of __builtin_ia32_pslldqi256,
	and __builtin_ia32_psrldqi256 to V4DI_FTYPE_V4DI_INT_CONVERT.
	(ix86_expand_args_builtin): Handle V4DI_FTYPE_V4DI_INT_CONVERT.
	* config/i386/sse.md (mode iterator V16): Add V2TI.
	(mode iterator SSESCALARMODE): Use V2TI not V4DI.
	(mode attr ssse3_avx2): Add V2TI.
	(avx2_lshrqv4di3, avx2_lshlqv4di3): Remove.

From-SVN: r179668
2011-10-07 11:19:50 -07:00
David S. Miller 26e2f443df Fix VIS3 assembler check and conditionalize testsuite on VIS3 support.
gcc/

	PR 50655
	* configure.ac: Add .register directives to VIS3 test.
	* configure: Regenerate.

gcc/testsuite/

	PR 50655
	* gcc.target/sparc/sparc.exp: Add vis3 target test.
	* gcc.target/sparc/cmask.c: Use it.
	* gcc.target/sparc/fhalve.c: Likewise.
	* gcc.target/sparc/fnegop.c: Likewise.
	* gcc.target/sparc/fpadds.c: Likewise.
	* gcc.target/sparc/fshift.c: Likewise.
	* gcc.target/sparc/fucmp.c: Likewise.
	* gcc.target/sparc/lzd.c: Likewise.
	* gcc.target/sparc/vis3misc.c: Likewise.
	* gcc.target/sparc/xmul.c: Likewise.

From-SVN: r179667
2011-10-07 10:23:47 -07:00
Richard Henderson d792cd1e4a Fix avx256 test cases for AVX2.
From-SVN: r179666
2011-10-07 10:01:43 -07:00
Jonathan Wakely 920a97b75d testsuite_allocator.h (uneq_allocator): Add propagate_on_container_swap typedef for C++0x testing.
2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* testsuite/util/testsuite_allocator.h (uneq_allocator): Add
	propagate_on_container_swap typedef for C++0x testing.

From-SVN: r179665
2011-10-07 16:20:31 +00:00