Ramana Radhakrishnan [Thu, 1 Oct 2009 12:18:34 +0000 (12:18 +0000)]
arm.c (arm_override_options): Turn off flag_dwarf2_cfi_asm for AAPCS variants.
2009-10-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm.c (arm_override_options): Turn off
flag_dwarf2_cfi_asm for AAPCS variants.
From-SVN: r152369
Martin Jambor [Thu, 1 Oct 2009 11:48:24 +0000 (13:48 +0200)]
re PR middle-end/12392 (very long optimized compile)
2009-10-01 Martin Jambor <mjambor@suse.cz>
PR middle-end/12392
* tree-sra.c (convert_callers): Do not call
compute_inline_parameters on one caller more than once.
From-SVN: r152368
Nick Clifton [Thu, 1 Oct 2009 11:42:33 +0000 (11:42 +0000)]
netbsd-elf.h (NETBSD_CC1_AND_CC1PLUS_SPEC): Define as an empty string if not already defined.
* config/vax/netbsd-elf.h (NETBSD_CC1_AND_CC1PLUS_SPEC): Define as
an empty string if not already defined.
From-SVN: r152367
Martin Jambor [Thu, 1 Oct 2009 11:30:12 +0000 (13:30 +0200)]
re PR bootstrap/41395 (Revision 151800 failed bootstrap)
2009-10-01 Martin Jambor <mjambor@suse.cz>
PR bootstrap/41395
* tree-sra.c (is_va_list_type): New function.
(find_var_candidates): Call is_va_list_type.
(find_param_candidates): Check that the type or the type pointed
to are not va_list types.
From-SVN: r152366
Martin Jambor [Thu, 1 Oct 2009 09:31:08 +0000 (11:31 +0200)]
re PR c++/41503 (function_parameter_expanded_from_pack_p segfaults when passed a PARM_DECL created by IPA-SRA)
2009-10-01 Martin Jambor <mjambor@suse.cz>
PR c++/41503
* cp/pt.c (function_parameter_expanded_from_pack_p): Return false if
DECL_ARTIFICIAL (param_decl) is true.
From-SVN: r152365
Gabriel Dos Reis [Thu, 1 Oct 2009 05:13:56 +0000 (05:13 +0000)]
tree.h (tree_decl_common::lang_flag_8): New.
gcc/
* tree.h (tree_decl_common::lang_flag_8): New.
* c-common.c (c_common_reswords): Include "constexpr" as C++0x
keyword.
* c-common.h (RID_CONSTEXPR): New.
gcc/cp/
* decl.c (check_for_uninitialized_const_var): Check constexpr
variables too.
(build_ptrmemfunc_type): Make the result a literal type.
(build_ptrmem_type): Likewise.
(grokdeclarator): Handle `constexpr'.
(check_tag_decl): Reject `constexpr'.
(check_function_type): Check constexpr functions.
* cp-tree.h (ds_constexpr): New cp_decl_spec enumerator.
(CLASSTYPE_LITERAL_P): New.
(lang_type_class::is_literal): New.
(lang_type_class::dummy): Adjust width.
(literal_type_p): Declare.
* parser.c (cp_parser_check_decl_spec): Print it.
(cp_parser_decl_specifier_seq): Accept "constexpr".
* semantics.c (validate_constexpr_fundecl): Define.
(literal_type_p): Define.
From-SVN: r152358
Dennis Wassel [Thu, 1 Oct 2009 02:34:59 +0000 (02:34 +0000)]
bounds_check_7.f90: Adapted error message.
2009-09-30 Dennis Wassel <dennis.wassel@gmail.com>
* gcc/testsuite/gfortran.dg/bounds_check_7.f90: Adapted error message.
* gcc/testsuite/gfortran.dg/bounds_check_11.f90: Likewise.
* gcc/testsuite/gfortran.dg/bounds_check_fail_1.f90: Likewise.
From-SVN: r152356
Dennis Wassel [Thu, 1 Oct 2009 02:32:41 +0000 (02:32 +0000)]
trans-array.c (gfc_trans_array_bound_check): Improved bounds checking error messages.
2009-09-30 Dennis Wassel <dennis.wassel@gmail.com>
* gcc/fortran/trans-array.c (gfc_trans_array_bound_check): Improved
bounds checking error messages. (gfc_conv_array_ref): Likewise.
(gfc_conv_ss_startstride): Likewise.
From-SVN: r152355
Martin Thuresson [Thu, 1 Oct 2009 01:20:13 +0000 (01:20 +0000)]
regex.c (byte_re_match_2_internal): Split declaration and assignment to avoid -Wc++-compat warning due to goto.
2009-09-30 Martin Thuresson <martint@google.com>
* regex.c (byte_re_match_2_internal): Split declaration and
assignment to avoid -Wc++-compat warning due to goto.
From-SVN: r152354
GCC Administrator [Thu, 1 Oct 2009 00:16:55 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r152353
Dave Korn [Wed, 30 Sep 2009 22:20:54 +0000 (22:20 +0000)]
configure.host (libgcj_sublib_ltflags): New variable.
* configure.host (libgcj_sublib_ltflags): New variable.
* configure.ac (LIBGCJ_SUBLIB_LTFLAGS): AC_SUBST variable for
the above in makefiles.
* configure: Regenerate.
* Makefile.am (libgcj_la_LDFLAGS_NOUNDEF): Rename from this ...
(LIBJAVA_LDFLAGS_NOUNDEF): ... to this, initialise from
LIBGCJ_SUBLIB_LTFLAGS (only when building sublibs), and ...
(libgij_la_LDFLAGS, libgcj_tools_la_LDFLAGS, libjvm_la_LDFLAGS,
lib_gnu_awt_xlib_la_LDFLAGS, libgcj_bc_la_LDFLAGS): ... use it in
all these places to replace hard-coded -no-undefined and -bindir
flags, as well as ...
(libgcj_la_LDFLAGS): ... updating existing reference here.
* Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* gcj/Makefile.in: Likewise.
From-SVN: r152347
Tobias Burnus [Wed, 30 Sep 2009 20:45:07 +0000 (22:45 +0200)]
resolve.c (check_typebound_baseobject): Don't check for abstract types for CLASS.
fortran/
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* resolve.c (check_typebound_baseobject): Don't check for
abstract types for CLASS.
(resolve_class_assign): Adapt for RHS being a CLASS.
* trans-intrinsic.c (gfc_conv_associated): Add component ref
if expr is a CLASS.
testsuite/
2009-09-30 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/select_type_4.f90: New test.
From-SVN: r152346
Tobias Burnus [Wed, 30 Sep 2009 19:55:45 +0000 (21:55 +0200)]
re PR fortran/40996 ([F03] ALLOCATABLE scalars)
fortran/
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* check.c (gfc_check_same_type_as): New function for checking
SAME_TYPE_AS and EXTENDS_TYPE_OF.
* decl.c (encapsulate_class_symbol): Set ABSTRACT attribute for class
container, if the contained type has it. Add an initializer for the
class container.
(add_init_expr_to_sym): Handle BT_CLASS.
(vindex_counter): New counter for setting vindices.
(gfc_match_derived_decl): Set vindex for all derived types, not only
those which are being extended.
* expr.c (gfc_check_assign_symbol): Handle NULL initialization of class
pointers.
* gfortran.h (gfc_isym_id): New values GFC_ISYM_SAME_TYPE_AS and
GFC_ISYM_EXTENDS_TYPE_OF.
(gfc_type_is_extensible): New prototype.
* intrinsic.h (gfc_check_same_type_as): New prototype.
* intrinsic.c (add_functions): Add SAME_TYPE_AS and EXTENDS_TYPE_OF.
* primary.c (gfc_expr_attr): Handle CLASS-valued functions.
* resolve.c (resolve_structure_cons): Handle BT_CLASS.
(type_is_extensible): Make non-static and rename to
'gfc_type_is_extensible.
(resolve_select_type): Renamed type_is_extensible.
(resolve_class_assign): Handle NULL pointers.
(resolve_fl_variable_derived): Renamed type_is_extensible.
(resolve_fl_derived): Ditto.
* trans-expr.c (gfc_trans_subcomponent_assign): Handle NULL
initialization of class pointer components.
(gfc_conv_structure): Handle BT_CLASS.
* trans-intrinsic.c (gfc_conv_same_type_as,gfc_conv_extends_type_of):
New functions.
(gfc_conv_intrinsic_function): Handle SAME_TYPE_AS and EXTENDS_TYPE_OF.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.h (type_selector, select_type_tmp): New global variables.
* match.c (type_selector, select_type_tmp): New global variables,
used for SELECT TYPE statements.
(gfc_match_select_type): Better error handling. Remember selector.
(gfc_match_type_is): Create temporary variable.
* module.c (ab_attribute): New value 'AB_IS_CLASS'.
(attr_bits): New string.
(mio_symbol_attribute): Handle 'is_class'.
* resolve.c (resolve_select_type): Insert pointer assignment statement,
to assign temporary to selector.
* symbol.c (gfc_get_ha_sym_tree): Replace selector by a temporary
in SELECT TYPE statements.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* dump-parse-tree.c (show_code_node): Renamed 'alloc_list'.
* gfortran.h (gfc_code): Rename 'alloc_list'. Add member 'ts'.
(gfc_expr_to_initialize): New prototype.
* match.c (alloc_opt_list): Correctly check type compatibility.
Renamed 'alloc_list'.
(dealloc_opt_list): Renamed 'alloc_list'.
* resolve.c (expr_to_initialize): Rename to 'gfc_expr_to_initialize'
and make it non-static.
(resolve_allocate_expr): Set vindex for CLASS variables correctly.
Move initialization code to gfc_trans_allocate. Renamed 'alloc_list'.
(resolve_allocate_deallocate): Renamed 'alloc_list'.
(check_class_pointer_assign): Rename to 'resolve_class_assign'. Change
argument type. Adjust to work with ordinary assignments.
(resolve_code): Call 'resolve_class_assign' for ordinary assignments.
Renamed 'check_class_pointer_assign'.
* st.c (gfc_free_statement): Renamed 'alloc_list'.
* trans-stmt.c (gfc_trans_allocate): Renamed 'alloc_list'. Handle
size determination and initialization of CLASS variables. Bugfix for
ALLOCATE statements with default initialization and SOURCE block.
(gfc_trans_deallocate): Renamed 'alloc_list'.
2009-09-30 Paul Thomas <pault@gcc.gnu.org>
* trans-expr.c (gfc_conv_procedure_call): Convert a derived
type actual to a class object if the formal argument is a
class.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/40996
* decl.c (build_struct): Handle allocatable scalar components.
* expr.c (gfc_add_component_ref): Correctly set typespec of expression,
after inserting component reference.
* match.c (gfc_match_type_is,gfc_match_class_is): Make sure that no
variables are being used uninitialized.
* primary.c (gfc_match_varspec): Handle CLASS array components.
* resolve.c (resolve_select_type): Transform EXEC_SELECT_TYPE to
EXEC_SELECT.
* trans-array.c (structure_alloc_comps,gfc_trans_deferred_array):
Handle allocatable scalar components.
* trans-expr.c (gfc_conv_component_ref): Ditto.
* trans-types.c (gfc_get_derived_type): Ditto.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* decl.c (encapsulate_class_symbol): Modify names of class container
components by prefixing with '$'.
(gfc_match_end): Handle COMP_SELECT_TYPE.
* expr.c (gfc_add_component_ref): Modify names of class container
components by prefixing with '$'.
* gfortran.h (gfc_statement): Add ST_SELECT_TYPE, ST_TYPE_IS and
ST_CLASS_IS.
(gfc_case): New field 'ts'.
(gfc_exec_op): Add EXEC_SELECT_TYPE.
(gfc_type_is_extension_of): New prototype.
* match.h (gfc_match_select_type,gfc_match_type_is,gfc_match_class_is):
New prototypes.
* match.c (match_derived_type_spec): New function.
(match_type_spec): Use 'match_derived_type_spec'.
(match_case_eos): Modify error message.
(gfc_match_select_type): New function.
(gfc_match_case): Modify error message.
(gfc_match_type_is): New function.
(gfc_match_class_is): Ditto.
* parse.h (gfc_compile_state): Add COMP_SELECT_TYPE.
* parse.c (decode_statement): Handle SELECT TYPE, TYPE IS and CLASS IS
statements.
(next_statement): Handle ST_SELECT_TYPE.
(gfc_ascii_statement): Handle ST_SELECT_TYPE, ST_TYPE_IS, ST_CLASS_IS.
(parse_select_type_block): New function.
(parse_executable): Handle ST_SELECT_TYPE.
* resolve.c (resolve_deallocate_expr): Handle BT_CLASS. Modify names of
class container components by prefixing with '$'.
(resolve_allocate_expr): Ditto.
(resolve_select_type): New function.
(gfc_resolve_blocks): Handle EXEC_SELECT_TYPE.
(check_class_pointer_assign): Modify names of class container
components by prefixing with '$'.
(resolve_code): Ditto.
* st.c (gfc_free_statement): Ditto.
* symbol.c (gfc_type_is_extension_of): New function.
(gfc_type_compatible): Use 'gfc_type_is_extension_of', plus a bugfix.
* trans.c (gfc_trans_code): Handel EXEC_SELECT_TYPE.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
Paul Thomas <pault@gcc.gnu.org>
* check.c (gfc_check_move_alloc): Arguments don't have to be arrays.
The second argument needs to be type-compatible with the first (not the
other way around, which makes a difference for CLASS entities).
* decl.c (encapsulate_class_symbol): New function.
(build_sym,build_struct): Handle BT_CLASS, call
'encapsulate_class_symbol'.
(gfc_match_decl_type_spec): Remove warning, use BT_CLASS.
(gfc_match_derived_decl): Set vindex;
* expr.c (gfc_add_component_ref): New function.
(gfc_copy_expr,gfc_check_pointer_assign,gfc_check_assign_symbol):
Handle BT_CLASS.
* dump-parse-tree.c (show_symbol): Print vindex.
* gfortran.h (bt): New basic type BT_CLASS.
(symbol_attribute): New field 'is_class'.
(gfc_typespec): Remove field 'is_class'.
(gfc_symbol): New field 'vindex'.
(gfc_get_ultimate_derived_super_type): New prototype.
(gfc_add_component_ref): Ditto.
* interface.c (gfc_compare_derived_types): Pointer equality check
moved here from gfc_compare_types.
(gfc_compare_types): Handle BT_CLASS and use
gfc_type_compatible.
* match.c (gfc_match_allocate,gfc_match_deallocate,gfc_match_call):
Handle BT_CLASS.
* misc.c (gfc_clear_ts): Removed is_class.
(gfc_basic_typename,gfc_typename): Handle BT_CLASS.
* module.c (bt_types,mio_typespec): Handle BT_CLASS.
(mio_symbol): Handle vindex.
* primary.c (gfc_match_varspec,gfc_variable_attr): Handle BT_CLASS.
* resolve.c (find_array_spec,check_typebound_baseobject):
Handle BT_CLASS.
(resolve_ppc_call,resolve_expr_ppc): Don't call 'gfc_is_proc_ptr_comp'
inside 'gcc_assert'.
(resolve_deallocate_expr,resolve_allocate_expr): Handle BT_CLASS.
(check_class_pointer_assign): New function.
(resolve_code): Handle BT_CLASS, call check_class_pointer_assign.
(resolve_fl_var_and_proc,type_is_extensible,resolve_fl_variable_derived,
resolve_fl_variable): Handle BT_CLASS.
(check_generic_tbp_ambiguity): Add special case.
(resolve_typebound_procedure,resolve_fl_derived): Handle BT_CLASS.
* symbol.c (gfc_get_ultimate_derived_super_type): New function.
(gfc_type_compatible): Handle BT_CLASS.
* trans-expr.c (conv_parent_component_references): Handle CLASS
containers.
(gfc_conv_initializer): Handle BT_CLASS.
* trans-types.c (gfc_typenode_for_spec,gfc_get_derived_type):
Handle BT_CLASS.
testsuite/
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.dg/same_type_as_1.f03: New test.
* gfortran.dg/same_type_as_2.f03: Ditto.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.dg/select_type_1.f03: Extended.
* gfortran.dg/select_type_3.f03: New test.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.dg/class_allocate_1.f03: New test.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/40996
* gfortran.dg/allocatable_scalar_3.f90: New test.
* gfortran.dg/select_type_2.f03: Ditto.
* gfortran.dg/typebound_proc_5.f03: Changed error messages.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.dg/block_name_2.f90: Modified error message.
* gfortran.dg/select_6.f90: Ditto.
* gfortran.dg/select_type_1.f03: New test.
2009-09-30 Janus Weil <janus@gcc.gnu.org>
* gfortran.dg/allocate_derived_1.f90: Remove -w option.
* gfortran.dg/class_1.f03: Ditto.
* gfortran.dg/class_2.f03: Ditto.
* gfortran.dg/proc_ptr_comp_pass_1.f90: Ditto.
* gfortran.dg/proc_ptr_comp_pass_2.f90: Ditto.
* gfortran.dg/proc_ptr_comp_pass_3.f90: Ditto.
* gfortran.dg/typebound_call_10.f03: Ditto.
* gfortran.dg/typebound_call_2.f03: Ditto.
* gfortran.dg/typebound_call_3.f03: Ditto.
* gfortran.dg/typebound_call_4.f03: Ditto.
* gfortran.dg/typebound_call_9.f03: Ditto.
* gfortran.dg/typebound_generic_3.f03: Ditto.
* gfortran.dg/typebound_generic_4.f03: Ditto.
* gfortran.dg/typebound_operator_1.f03: Ditto.
* gfortran.dg/typebound_operator_2.f03: Ditto.
* gfortran.dg/typebound_operator_3.f03: Ditto.
* gfortran.dg/typebound_operator_4.f03: Ditto.
* gfortran.dg/typebound_proc_1.f08: Ditto.
* gfortran.dg/typebound_proc_5.f03: Ditto.
* gfortran.dg/typebound_proc_6.f03: Ditto.
From-SVN: r152345
Jason Merrill [Wed, 30 Sep 2009 17:57:55 +0000 (13:57 -0400)]
remove duplicate changelog entry
From-SVN: r152342
Jason Merrill [Wed, 30 Sep 2009 17:56:00 +0000 (13:56 -0400)]
* g++.dg/eh/init-temp1.C: Improve test.
From-SVN: r152341
Jason Merrill [Wed, 30 Sep 2009 17:55:54 +0000 (13:55 -0400)]
semantics.c (lambda_expr_this_capture): Fix default capture of explicit capture of 'this'.
* semantics.c (lambda_expr_this_capture): Fix default capture
of explicit capture of 'this'.
From-SVN: r152340
Jason Merrill [Wed, 30 Sep 2009 17:54:37 +0000 (13:54 -0400)]
semantics.c (lambda_expr_this_capture): Fix default capture of explicit capture of 'this'.
* semantics.c (lambda_expr_this_capture): Fix default capture
of explicit capture of 'this'.
From-SVN: r152339
Uros Bizjak [Wed, 30 Sep 2009 16:09:53 +0000 (18:09 +0200)]
alpha.c (alpha_gimplify_va_arg_1): Use ref-all pointers.
* config/alpha/alpha.c (alpha_gimplify_va_arg_1):
Use ref-all pointers.
(alpha_gimplify_va_arg): Ditto.
From-SVN: r152333
Jason Merrill [Wed, 30 Sep 2009 15:49:31 +0000 (11:49 -0400)]
remove utf8
From-SVN: r152331
Jason Merrill [Wed, 30 Sep 2009 15:49:24 +0000 (11:49 -0400)]
* parser.c (cp_parser_lambda_expression): Don't add __ to __this.
From-SVN: r152330
Jason Merrill [Wed, 30 Sep 2009 15:49:17 +0000 (11:49 -0400)]
* cp-tree.h (LANG_DECL_U2_CHECK): Check LANG_DECL_HAS_MIN.
From-SVN: r152329
Jakub Jelinek [Wed, 30 Sep 2009 09:57:56 +0000 (11:57 +0200)]
re PR target/41279 (252.eon performance regression)
PR target/41279
* cfgloopanal.c (num_loop_insns): Don't increment ninsns for each bb
before insn counting loop now that BB_END (bb) is counted. Ensure
the return value isn't zero.
From-SVN: r152324
Nick Clifton [Wed, 30 Sep 2009 07:27:28 +0000 (07:27 +0000)]
config.gcc (sh-symbianelf): Replace definition of extra_objs with separate definitions of c_target_objs and...
* config.gcc (sh-symbianelf): Replace definition of extra_objs
with separate definitions of c_target_objs and cxx_target_objs.
* config/sh/t-sh: Add rules to build symbian-cxx.o, symbian-c.o
and symbian-base.o.
* config/sh/sh.c (TARGET_CXX_INPUT_EXPORT_CLASS): Use
sh_symbian_import_export_class.
* config/sh/sh-protos.h: Fix names of exported symbian functions.
* config/sh/symbian.c: Delete, moving code into...
* config/sh/symbian-base.c: ... here
* config/sh/symbian-c.c: ... and here
* config/sh/symbian-cxx.c: ... and here.
From-SVN: r152323
Uros Bizjak [Wed, 30 Sep 2009 07:13:20 +0000 (09:13 +0200)]
re PR target/22093 (Unaligned access to HI values causes unrecognizable insn error)
PR target/22093
* config/alpha/alpha.md (unaligned_storehi_be): Force operand
of plus RTX into register.
testsuite/ChangeLog:
PR target/22093
* gcc.target/alpha/pr22093.c: New test.
From-SVN: r152322
Jason Merrill [Wed, 30 Sep 2009 03:03:31 +0000 (23:03 -0400)]
properly merge include/ChangeLog
From-SVN: r152319
Jason Merrill [Wed, 30 Sep 2009 03:01:30 +0000 (23:01 -0400)]
merge in cxx0x-lambdas-branch@152308
From-SVN: r152318
Paolo Carlini [Wed, 30 Sep 2009 00:50:24 +0000 (00:50 +0000)]
random.tcc: Define static const data members.
2009-09-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc: Define static const data members.
* include/tr1/random.tcc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/
requirements/constants.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/
requirements/constants.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/constants.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
requirements/constants.cc: Likewise.
From-SVN: r152317
Ralf Wildenhues [Wed, 30 Sep 2009 00:47:38 +0000 (00:47 +0000)]
install.texi cleanups.
gcc/:
* doc/install.texi: Linguistic and markup fixes.
(Configuration) <--disable-cpp>: Remove description.
<--enable-maintainer-mode>: Autotools files are affected, too.
<--with-sysroot>: Improve description.
(Building): Bump required GNU make version.
From-SVN: r152316
Ralf Wildenhues [Wed, 30 Sep 2009 00:43:28 +0000 (00:43 +0000)]
sed and head portability fixes in ld version check.
libstdc++-v3/:
PR libstdc++/38923
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Avoid 'head',
use sed script portable to Solaris /bin/sed for extracting ld
version.
* configure: Regenerate.
libgomp/:
* acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
use sed script portable to Solaris /bin/sed for extracting ld
version.
* configure: Regenerate.
From-SVN: r152315
GCC Administrator [Wed, 30 Sep 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r152314
Harsha Jagasia [Wed, 30 Sep 2009 00:00:45 +0000 (00:00 +0000)]
config.gcc (i[34567]86-*-*): Include fma4intrin.h.
2009-09-29 Harsha Jagasia <harsha.jagasia@amd.com>
* config.gcc (i[34567]86-*-*): Include fma4intrin.h.
(x86_64-*-*): Ditto.
* config/i386/fma4intrin.h: New file, provide common x86 compiler
intrinisics for FMA4.
* config/i386/cpuid.h (bit_FMA4): Define FMA4 bit.
* config/i386/x86intrin.h: Fix typo to SSE4A instead of SSE4a.
Add FMA4 check and fma4intrin.h.
* config/i386/i386-c.c(ix86_target_macros_internal): Check
ISA_FLAG for FMA4.
* config/i386/i386.h(TARGET_FMA4): New macro for FMA4.
* config/i386/i386.md (UNSPEC_FMA4_INTRINSIC): Add new UNSPEC
constant for FMA4 support.
(UNSPEC_FMA4_FMADDSUB): Ditto.
(UNSPEC_FMA4_FMSUBADD): Ditto.
* config/i386/i386.opt (-mfma4): New switch for FMA4 support.
* config/i386/i386-protos.h (ix86_fma4_valid_op_p): Add
declaration.
(ix86_expand_fma4_multiple_memory): Ditto.
* config/i386/i386.c (OPTION_MASK_ISA_FMA4_SET): New.
(OPTION_MASK_ISA_FMA4_UNSET): New.
(OPTION_MASK_ISA_SSE4A_UNSET): Change definition to
depend on FMA4.
(OPTION_MASK_ISA_AVX_UNSET): Change definition to
depend on FMA4.
(ix86_handle_option): Handle -mfma4.
(isa_opts): Handle -mfma4.
(enum pta_flags): Add PTA_FMA4.
(override_options): Add FMA4 support.
(IX86_BUILTIN_VFMADDSS): New for FMA4 intrinsic.
(IX86_BUILTIN_VFMADDSD): Ditto.
(IX86_BUILTIN_VFMADDPS): Ditto.
(IX86_BUILTIN_VFMADDPD): Ditto.
(IX86_BUILTIN_VFMSUBSS): Ditto.
(IX86_BUILTIN_VFMSUBSD): Ditto.
(IX86_BUILTIN_VFMSUBPS): Ditto.
(IX86_BUILTIN_VFMSUBPD): Ditto.
(IX86_BUILTIN_VFMADDSUBPS): Ditto.
(IX86_BUILTIN_VFMADDSUBPD): Ditto.
(IX86_BUILTIN_VFMSUBADDPS): Ditto.
(IX86_BUILTIN_VFMSUBADDPD): Ditto.
(IX86_BUILTIN_VFNMADDSS): Ditto.
(IX86_BUILTIN_VFNMADDSD): Ditto.
(IX86_BUILTIN_VFNMADDPS): Ditto.
(IX86_BUILTIN_VFNMADDPD): Ditto.
(IX86_BUILTIN_VFNMSUBSS): Ditto.
(IX86_BUILTIN_VFNMSUBSD): Ditto.
(IX86_BUILTIN_VFNMSUBPS): Ditto.
(IX86_BUILTIN_VFNMSUBPD): Ditto.
(IX86_BUILTIN_VFMADDPS256): Ditto.
(IX86_BUILTIN_VFMADDPD256): Ditto.
(IX86_BUILTIN_VFMSUBPS256): Ditto.
(IX86_BUILTIN_VFMSUBPD256): Ditto.
(IX86_BUILTIN_VFMADDSUBPS256): Ditto.
(IX86_BUILTIN_VFMADDSUBPD256): Ditto.
(IX86_BUILTIN_VFMSUBADDPS256): Ditto.
(IX86_BUILTIN_VFMSUBADDPD256): Ditto.
(IX86_BUILTIN_VFNMADDPS256): Ditto.
(IX86_BUILTIN_VFNMADDPD256): Ditto.
(IX86_BUILTIN_VFNMSUBPS256): Ditto.
(IX86_BUILTIN_VFNMSUBPD256): Ditto.
(enum multi_arg_type): New enum for describing the various FMA4
intrinsic argument types.
(bdesc_multi_arg): New table for FMA4 intrinsics.
(ix86_init_mmx_sse_builtins): Add FMA4 intrinsic support.
(ix86_expand_multi_arg_builtin): New function for creating FMA4
intrinsics.
(ix86_expand_builtin): Add FMA4 intrinsic support.
(ix86_fma4_valid_op_p): New function to validate FMA4 3 and 4
operand instructions.
(ix86_expand_fma4_multiple_memory): New function to split the
second memory reference from FMA4 instructions.
* config/i386/sse.md (ssemodesuffixf4): New mode attribute for FMA4.
(ssemodesuffixf2s): Ditto.
(fma4_fmadd<mode>4): Add FMA4 floating point multiply/add
instructions.
(fma4_fmsub<mode>4): Ditto.
(fma4_fnmadd<mode>4): Ditto.
(fma4_fnmsub<mode>4): Ditto.
(fma4_vmfmadd<mode>4): Ditto.
(fma4_vmfmsub<mode>4): Ditto.
(fma4_vmfnmadd<mode>4): Ditto.
(fma4_vmfnmsub<mode>4): Ditto.
(fma4_fmadd<mode>4256): Ditto.
(fma4_fmsub<mode>4256): Ditto.
(fma4_fnmadd<mode>4256): Ditto.
(fma4_fnmsub<mode>4256): Ditto.
(fma4_fmaddsubv8sf4): Ditto.
(fma4_fmaddsubv4sf4): Ditto.
(fma4_fmaddsubv4df4): Ditto.
(fma4_fmaddsubv2df4): Ditto.
(fma4_fmsubaddv8sf4): Ditto.
(fma4_fmsubaddv4sf4): Ditto.
(fma4_fmsubaddv4df4): Ditto.
(fma4_fmsubaddv2df4): Ditto.
(fma4i_fmadd<mode>4): Add FMA4 floating point multiply/add
instructions for intrinsics.
(fma4i_fmsub<mode>4): Ditto.
(fma4i_fnmadd<mode>4): Ditto.
(fma4i_fnmsub<mode>4): Ditto.
(fma4i_vmfmadd<mode>4): Ditto.
(fma4i_vmfmsub<mode>4): Ditto.
(fma4i_vmfnmadd<mode>4): Ditto.
(fma4i_vmfnmsub<mode>4): Ditto.
(fma4i_fmadd<mode>4256): Ditto.
(fma4i_fmsub<mode>4256): Ditto.
(fma4i_fnmadd<mode>4256): Ditto.
(fma4i_fnmsub<mode>4256): Ditto.
(fma4i_fmaddsubv8sf4): Ditto.
(fma4i_fmaddsubv4sf4): Ditto.
(fma4i_fmaddsubv4df4): Ditto.
(fma4i_fmaddsubv2df4): Ditto.
(fma4i_fmsubaddv8sf4): Ditto.
(fma4i_fmsubaddv4sf4): Ditto.
(fma4i_fmsubaddv4df4): Ditto.
(fma4i_fmsubaddv2df4): Ditto.
* doc/invoke.texi (-mfma4): Add documentation.
* doc/extend.texi (x86 intrinsics): Add FMA4 intrinsics.
* gcc.target/i386/fma4-check.h
* gcc.target/i386/fma4-fma.c
* gcc.target/i386/fma4-maccXX.c
* gcc.target/i386/fma4-msubXX.c
* gcc.target/i386/fma4-nmaccXX.c
* gcc.target/i386/fma4-nmsubXX.c
* gcc.target/i386/fma4-vector.c
* gcc.target/i386/fma4-256-maccXX.c
* gcc.target/i386/fma4-256-msubXX.c
* gcc.target/i386/fma4-256-nmaccXX.c
* gcc.target/i386/fma4-256-nmsubXX.c
* gcc.target/i386/fma4-256-vector.c
* gcc.target/i386/funcspec-2.c: New file.
* gcc.target/i386/funcspec-4.c: Test error conditions
related to FMA4.
* gcc.target/i386/funcspec-5.c
* gcc.target/i386/funcspec-6.c
* gcc.target/i386/funcspec-8.c: Add FMA4.
* gcc.target/i386/funcspec-9.c: New file.
* gcc.target/i386/i386.exp: Add check_effective_target_fma4.
* gcc.target/i386/isa-10.c
* gcc.target/i386/isa-11.c
* gcc.target/i386/isa-12.c
* gcc.target/i386/isa-13.c
* gcc.target/i386/isa-2.c
* gcc.target/i386/isa-3.c
* gcc.target/i386/isa-4.c
* gcc.target/i386/isa-7.c
* gcc.target/i386/isa-8.c
* gcc.target/i386/isa-9.c: New file.
* gcc.target/i386/isa-14.c
* gcc.target/i386/isa-1.c
* gcc.target/i386/isa-5.c
* gcc.target/i386/isa-6.c: Add FMA4.
* gcc.target/i386/sse-12.c
* gcc.target/i386/sse-13.c
* gcc.target/i386/sse-14.c
* gcc.target/i386/sse-22.c: New file.
* g++.dg/other/i386-2.C
* g++.dg/other/i386-3.C
* g++.dg/other/i386-5.C
* g++.dg/other/i386-6.C: Add -mfma4 in dg-options.
From-SVN: r152311
Richard Henderson [Tue, 29 Sep 2009 23:46:02 +0000 (16:46 -0700)]
tree-eh.c (unsplit_eh): Do not unsplit if there's already an edge to the new destination block.
* tree-eh.c (unsplit_eh): Do not unsplit if there's already
an edge to the new destination block.
From-SVN: r152310
John David Anglin [Tue, 29 Sep 2009 23:04:46 +0000 (23:04 +0000)]
re PR target/41393 (ICE in get_eh_region_and_lp_from_rtx at except.c:1692)
PR target/41393
* pa.c (hppa_profile_hook): Use
make_reg_eh_region_note_nothrow_nononlocal to add REG_EH_REGION note.
From-SVN: r152309
Steve Ellcey [Tue, 29 Sep 2009 22:21:27 +0000 (22:21 +0000)]
re PR target/41365 (gcc.dg/vect/vect-cond-[123].c abort due to bad code generation at -O1 and above)
2009-09-29 Steve Ellcey <sje@cup.hp.com>
Alexander Monakov <amonakov@ispras.ru>
PR target/41365
* config/ia64/predicates.md (not_postinc_destination_operand): New.
(not_postinc_memory_operand): New.
(not_postinc_move_operand): New.
* config/ia64/ia64.md (*cmovdi_internal): Disallow autoincrement.
(*cmovsi_internal): Ditto.
Co-Authored-By: Alexander Monakov <amonakov@ispras.ru>
From-SVN: r152306
Pat Haugen [Tue, 29 Sep 2009 18:58:56 +0000 (18:58 +0000)]
rs6000.c (rs6000_issue_rate): Don't artificially restrict issue_rate in first pass when...
* config/rs6000/rs6000.c (rs6000_issue_rate): Don't artificially
restrict issue_rate in first pass when scheduling for register
pressure.
From-SVN: r152291
H.J. Lu [Tue, 29 Sep 2009 18:29:24 +0000 (18:29 +0000)]
re PR middle-end/41496 (Many regressions on trunk)
2009-09-29 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/41496
* g++.dg/dfp/dfp.exp: Unset DEFAULT_CXXFLAGS if it didn't exist
before.
From-SVN: r152287
Basile Starynkevitch [Tue, 29 Sep 2009 18:26:33 +0000 (18:26 +0000)]
gengtype.c (plugin_output): New.
2009-09-29 Basile Starynkevitch <basile@starynkevitch.net>
Rafael Avila de Espindola <espindola@google.com>
* gengtype.c (plugin_output): New.
(get_output_file_with_visibility): Return plugin_output for plugins.
(main): Parse and use the -P option.
* gty.texi: Update the command line format.
Co-Authored-By: Rafael Avila de Espindola <espindola@google.com>
From-SVN: r152286
H.J. Lu [Tue, 29 Sep 2009 17:42:33 +0000 (10:42 -0700)]
Fix a typo in ChangeLog.
From-SVN: r152285
Janis Johnson [Tue, 29 Sep 2009 17:40:28 +0000 (17:40 +0000)]
dg-bogus-exp-XF.c: Move dg-bogus directive.
* gcc.test-framework/dg-bogus-exp-XF.c: Move dg-bogus directive.
* gcc.test-framework/dg-warning-exp-P.c: Move dg-warning directives.
From-SVN: r152284
Jakub Jelinek [Tue, 29 Sep 2009 17:33:58 +0000 (19:33 +0200)]
re PR debug/41438 (VTA: libgomp build fails due to inconsistent debug info)
PR debug/41438
* dwarf2out.c (const_ok_for_output_1, const_ok_for_output): New
functions.
(mem_loc_descriptor, loc_descriptor, add_const_value_attribute): Bail
out if !const_ok_for_output.
PR debug/41474
* dwarf2out.c (mem_loc_descriptor) <case CONCAT, case CONCATN,
case VAR_LOCATION>: Remove gcc_unreachable ().
* gcc.dg/debug/dwarf2/const-1.c: Add dg-require-visibility, make x
hidden.
* g++.dg/debug/dwarf2/const-1.C: Likewise.
From-SVN: r152282
Harsha Jagasia [Tue, 29 Sep 2009 17:15:32 +0000 (17:15 +0000)]
config.gcc (i[34567]86-*-*): Remove mmintrin-common.h.
2009-09-29 Harsha Jagasia <harsha.jagasia@amd.com>
* config.gcc (i[34567]86-*-*): Remove mmintrin-common.h.
(x86_64-*-*): Ditto.
* config/i386/smmintrin.h: Move instructions in mmintrin-common.h
back to smmintrin.h.
* config/i386/cpuid.h: (bit_SSE5): Remove SSE5 bit.
* config/i386/x86intrin.h: Remove SSE5.
* config/i386/mmintrin-common.h: Delete file.
* doc/extend.texi (x86 intrinsics): Remove SSE5 flags
and builtins.
* gcc.target/i386/i386.exp: Remove check_effective_target_sse5.
* gcc.target/i386/isa-1.c
* gcc.target/i386/isa-5.c
* gcc.target/i386/isa-6.c: Remove SSE5.
* gcc.target/i386/funcspec-4.c: Remove error conditions related to SSE5.
* gcc.target/i386/avx-1.c
* gcc.target/i386/avx-2.c
* gcc.target/i386/sse-23.c: Remove comments to mmintrin-common.h.
* gcc.target/i386/funcspec-9.c: Delete.
From-SVN: r152280
Richard Guenther [Tue, 29 Sep 2009 14:29:10 +0000 (14:29 +0000)]
alias.c (ao_ref_from_mem): Properly deal with off decl accesses resulting from stack temporaries on...
2009-09-29 Richard Guenther <rguenther@suse.de>
* alias.c (ao_ref_from_mem): Properly deal with off decl accesses
resulting from stack temporaries on STRICT_ALIGNMENT targets.
From-SVN: r152278
Jakub Jelinek [Tue, 29 Sep 2009 12:56:46 +0000 (14:56 +0200)]
re PR testsuite/41444 (Typo in gcc/testsuite/gcc.dg/guality/guality.h)
PR testsuite/41444
* gcc.dg/guality/guality.h (GUALITY_GDB_REDIRECT): Fix a typo
in macro name definition for non-unix/win32/msdos.
From-SVN: r152275
Eric Botcazou [Tue, 29 Sep 2009 11:13:29 +0000 (11:13 +0000)]
decl.c (gnat_to_gnu_entity): Factor out common code processing the component type into...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Factor out
common code processing the component type into...
<E_Array_Subtype>: Likewise.
(gnat_to_gnu_component_type): ...this new static function.
(maybe_pad_type): Minor cleanup.
From-SVN: r152273
Eric Botcazou [Tue, 29 Sep 2009 10:54:12 +0000 (10:54 +0000)]
decl.c (gnat_to_gnu_entity): Rewrite the handling of constrained discriminated record subtypes.
* decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Rewrite the handling
of constrained discriminated record subtypes.
(components_to_record): Declare the type of the variants and of the
qualified union.
(build_subst_list): Move around.
(compute_field_positions): Rename into...
(build_position_list): ...this. Return a TREE_VEC.
(annotate_rep): Adjust for above renaming.
(build_variant_list): New static function.
(create_field_decl_from): Likewise.
(get_rep_part): Likewise.
(get_variant_part): Likewise.
(create_variant_part_from): Likewise.
(copy_and_substitute_in_size): Likewise.
From-SVN: r152272
Jakub Jelinek [Tue, 29 Sep 2009 10:38:19 +0000 (12:38 +0200)]
guality.exp (gdb-test): New proc for use in dg-final.
* gcc.dg/guality/guality.exp (gdb-test): New proc for use in dg-final.
* gcc.dg/guality/pr41353-1.c: New test.
From-SVN: r152271
Nick Clifton [Tue, 29 Sep 2009 09:31:41 +0000 (09:31 +0000)]
function.c (current_function_name): If there is no current function just return "<none>".
* function.c (current_function_name): If there is no current
function just return "<none>".
From-SVN: r152269
Daniel Kraft [Tue, 29 Sep 2009 07:42:42 +0000 (09:42 +0200)]
re PR fortran/39626 (Correctly implement details of Fortran 2008 BLOCK construct)
2009-09-29 Daniel Kraft <d@domob.eu>
PR fortran/39626
* gfortran.h (enum gfc_statement): Add ST_BLOCK and ST_END_BLOCK.
(struct gfc_namespace): Convert flags to bit-fields and add flag
`construct_entities' for use with BLOCK constructs.
(enum gfc_exec_code): Add EXEC_BLOCK.
(struct gfc_code): Add namespace field to union for EXEC_BLOCK.
* match.h (gfc_match_block): New prototype.
* parse.h (enum gfc_compile_state): Add COMP_BLOCK.
* trans.h (gfc_process_block_locals): New prototype.
(gfc_trans_deferred_vars): Made public, new prototype.
* trans-stmt.h (gfc_trans_block_construct): New prototype.
* decl.c (gfc_match_end): Handle END BLOCK correctly.
(gfc_match_intent): Error if inside of BLOCK.
(gfc_match_optional), (gfc_match_value): Ditto.
* match.c (gfc_match_block): New routine.
* parse.c (decode_statement): Handle BLOCK statement.
(case_exec_markers): Add ST_BLOCK.
(case_end): Add ST_END_BLOCK.
(gfc_ascii_statement): Handle ST_BLOCK and ST_END_BLOCK.
(parse_spec): Check for statements not allowed inside of BLOCK.
(parse_block_construct): New routine.
(parse_executable): Parse BLOCKs.
(parse_progunit): Disallow CONTAINS in BLOCK constructs.
* resolve.c (is_illegal_recursion): Find real container procedure and
don't get confused by BLOCK constructs.
(resolve_block_construct): New routine.
(gfc_resolve_blocks), (resolve_code): Handle EXEC_BLOCK.
* st.c (gfc_free_statement): Handle EXEC_BLOCK statements.
* trans-decl.c (saved_local_decls): New static variable.
(add_decl_as_local): New routine.
(gfc_finish_var_decl): Add variable as local if inside BLOCK.
(gfc_trans_deferred_vars): Make public.
(gfc_process_block_locals): New routine.
* trans-stmt.c (gfc_trans_block_construct): New routine.
* trans.c (gfc_trans_code): Handle EXEC_BLOCK statements.
2009-09-29 Daniel Kraft <d@domob.eu>
PR fortran/39626
* gfortran.dg/block_1.f08: New test.
* gfortran.dg/block_2.f08: New test.
* gfortran.dg/block_3.f90: New test.
* gfortran.dg/block_4.f08: New test.
* gfortran.dg/block_5.f08: New test.
* gfortran.dg/block_6.f08: New test.
* gfortran.dg/block_7.f08: New test.
* gfortran.dg/block_8.f08: New test.
From-SVN: r152266
Jerry DeLisle [Tue, 29 Sep 2009 02:50:48 +0000 (02:50 +0000)]
re PR libfortran/35862 ([F2003] Implement new rounding modes for run time)
2009-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/35862
* gfortran.dg/round_1.f03: New test.
* gfortran.dg/f2003_io_3.f03: Update test.
From-SVN: r152264
Jerry DeLisle [Tue, 29 Sep 2009 02:47:54 +0000 (02:47 +0000)]
re PR libfortran/35862 ([F2003] Implement new rounding modes for run time)
2009-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/35862
* io.h (gfc_unit): Add round_status.
(format_token): Add enumerators for rounding format specifiers.
* transfer.c (round_opt): New options table.
(formatted_transfer_scalar_read): Add set round_status for each rounding
format token. (formatted_transfer_scalar_write): Likewise.
* format.c (format_lex): Tokenize the rounding format specifiers.
(parse_format_list): Parse the rounding format specifiers.
* write_float.def (outout_float): Modify rounding code to use new
variable rchar to set the appropriate rounding. Fix some whitespace.
* unit.c (get_internal_unit): Initialize rounding mode for internal
units. (init_units): Likewise.
From-SVN: r152263
Jerry DeLisle [Tue, 29 Sep 2009 02:44:38 +0000 (02:44 +0000)]
re PR libfortran/35862 ([F2003] Implement new rounding modes for run time)
2009-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/35862
* io.c (format_token): Add enumerators for rounding format specifiers.
(format_lex): Tokenize the rounding format specifiers.
(gfc_match_open): Enable rounding modes in OPEN statement.
From-SVN: r152262
GCC Administrator [Tue, 29 Sep 2009 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r152261
Benjamin Kosnik [Tue, 29 Sep 2009 00:15:30 +0000 (00:15 +0000)]
eh_terminate.cc: Fixes for -fno-exceptions.
2009-09-28 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/eh_terminate.cc: Fixes for -fno-exceptions.
* libsupc++/vec.cc: Same.
* libsupc++/vterminate.cc: Same.
* libsupc++/new_opnt.cc: Same.
From-SVN: r152258
Sriraman Tallam [Mon, 28 Sep 2009 23:15:35 +0000 (23:15 +0000)]
tree-pass.h (register_pass_info): New structure.
* tree-pass.h (register_pass_info): New structure.
(pass_positioning_ops): Move enum from gcc-plugin.h.
(register_pass): New function.
* gcc-plugin.h (plugin_pass): Delete structure.
(pass_positioning_ops): Delete enum.
* plugin.c (regsiter_pass): Delete function.
(position_pass): Delete function.
(added_pass_nodes): Delete variable.
(prev_added_pass_nodes): Delete variable.
(pass_list_node): Delete structure.
* passes.c (make_pass_instance): New function.
(next_pass_1): Change to call make_pass_instance.
(pass_list_node): Move structure from gcc-plugin.h.
(added_pass_nodes): Move variable from plugin.c.
(prev_added_pass_nodes): Move variable from plugin.c.
(position_pass): New function.
(register_pass): New function.
From-SVN: r152257
Kai Tietz [Mon, 28 Sep 2009 22:26:25 +0000 (22:26 +0000)]
win64.S (_ffi_call_win64 stack): Remove for gnu assembly version use of ___chkstk.
2009-09-28 Kai Tietz <kai.tietz@onevision.com>
* src/x86/win64.S (_ffi_call_win64 stack): Remove for gnu
assembly version use of ___chkstk.
From-SVN: r152256
Olivier Hainque [Mon, 28 Sep 2009 21:53:28 +0000 (21:53 +0000)]
Add PR reference to ChangeLog entry.
From-SVN: r152254
Easwaran Raman [Mon, 28 Sep 2009 21:26:31 +0000 (21:26 +0000)]
ifcvt.c (noce_try_abs): Recognize pattern and call expand_one_cmpl_abs_nojump.
./: * ifcvt.c (noce_try_abs): Recognize pattern and call
expand_one_cmpl_abs_nojump.
* optabs.c (expand_one_cmpl_abs_nojump): New function.
* optabs.h (expand_one_cmpl_abs_nojump): Declare.
testsuite/:
* gcc.target/i386/ifcvt-onecmpl-abs-1.c: New file.
* gcc.c-torture/execute/ifcvt-onecmpl-abs-1.c: New file.
From-SVN: r152253
Ian Lance Taylor [Mon, 28 Sep 2009 21:23:35 +0000 (21:23 +0000)]
re PR middle-end/40500 (Revision 148512 failed to build binutils)
PR middle-end/40500
* c-opts.c (c_common_handle_option): Don't set
warn_jump_misses_init for -Wall.
* doc/invoke.texi (Warning Options): Update documentation.
From-SVN: r152252
Ralf Wildenhues [Mon, 28 Sep 2009 20:22:56 +0000 (20:22 +0000)]
Fix dependency of out_object_file on gt header for out_file.
gcc/:
* Makefile.in ($(out_object_file)): Depend on
gt-$(basename $(notdir $(out_file))).h.
From-SVN: r152249
Janis Johnson [Mon, 28 Sep 2009 18:35:54 +0000 (18:35 +0000)]
dfp.exp: Run tests from c-c++-common/dfp.
* g++.dg/dfp/dfp.exp: Run tests from c-c++-common/dfp.
* c-c++-common/dfp/func-vararg-alternate-d32.c: XFAIL for C++.
* c-c++-common/dfp/func-vararg-dfp.c: Ditto.
* c-c++-common/dfp/func-vararg-mixed.c: Ditto.
* c-c++-common/dfp/func-vararg-mixed-2.c: Ditto.
From-SVN: r152247
Janis Johnson [Mon, 28 Sep 2009 17:46:44 +0000 (17:46 +0000)]
* g++.dg/dfp/dfp.exp: Fix typo.
From-SVN: r152246
Janis Johnson [Mon, 28 Sep 2009 17:45:09 +0000 (17:45 +0000)]
target-supports.exp (check-effective-target-dfp-nocache): Fix typo that breaks the check.
* lib/target-supports.exp (check-effective-target-dfp-nocache):
Fix typo that breaks the check.
From-SVN: r152245
Olivier Hainque [Mon, 28 Sep 2009 17:00:46 +0000 (17:00 +0000)]
ada/
* gcc-interface/targtyps.c
* (get_target_default_allocator_alignment):
Account for observable alignments out of default allocators.
testsuite/
* gnat.dg (tagged_alloc_free.adb): New testcase.
From-SVN: r152243
Janis Johnson [Mon, 28 Sep 2009 16:55:52 +0000 (16:55 +0000)]
mangle.c (write_builtin_type): Support decimal float types.
* mangle.c (write_builtin_type): Support decimal float types.
* g++.dg/dfp: New directory.
* g++.dg/dg.exp: Prune tests in dfp directory.
* g++.dg/dfp/dfp/exp: New.
* g++.dg/dfp/mangle-mode.C: New test.
From-SVN: r152242
Richard Henderson [Mon, 28 Sep 2009 16:44:32 +0000 (09:44 -0700)]
except.h (struct eh_region_d): Add use_cxa_end_cleanup.
* except.h (struct eh_region_d): Add use_cxa_end_cleanup.
* except.c (gen_eh_region): Set it.
(duplicate_eh_regions_1): Copy it.
* tree-eh.c (lower_resx): Use it to determine which function
to call to resume.
* langhooks.h (struct lang_hooks): Add eh_use_cxa_end_cleanup.
* langhooks-def.h (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
* builtins.def (BUILT_IN_CXA_END_CLEANUP): New.
* tree.c (build_common_builtin_nodes): Remove parameter. Build
BUILT_IN_CXA_END_CLEANUP if necessary.
* tree.h (build_common_builtin_nodes): Update decl.
* c-common.c (c_define_builtins): Update call to
build_common_builtin_nodes.
gcc/ada/
* gcc-interface/utils.c (gnat_install_builtins): Update call to
build_common_builtin_nodes.
gcc/cp/
* cp-objcp-common.h (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
gcc/fortran/
* f95-lang.c (gfc_init_builtin_functions): Update call to
build_common_builtin_nodes.
gcc/java/
* builtins.c (initialize_builtins): Update call to
build_common_builtin_nodes.
* lang.c (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
From-SVN: r152241
Andrew Pinski [Mon, 28 Sep 2009 15:49:47 +0000 (15:49 +0000)]
spu.c (get_branch_target): Return NULL for ASM_OPERANDS patterns.
2009-09-28 Andrew Pinski <andrew_pinski@playstation.sony.com>
* spu.c (get_branch_target): Return NULL for ASM_OPERANDS patterns.
From-SVN: r152239
Michael Matz [Mon, 28 Sep 2009 12:54:23 +0000 (12:54 +0000)]
builtins.c (interclass_mathfn_icode): New helper.
* builtins.c (interclass_mathfn_icode): New helper.
(expand_builtin_interclass_mathfn): Use it here, and split folding
into ...
(fold_builtin_interclass_mathfn): ... this new folder.
(build_call_nofold_loc): New static helper.
(build_call_nofold): New wrapper macro for above.
(expand_builtin_int_roundingfn): Use it instead of build_call_expr.
(expand_builtin_pow): Ditto.
(expand_builtin_memset_args): Ditto.
(expand_builtin_printf): Ditto.
(expand_builtin_fprintf): Ditto.
(expand_builtin_sprintf): Ditto.
(expand_builtin_memory_chk): Ditto.
(expand_builtin_mempcpy_args): Ditto and don't call folders.
(expand_builtin_stpcpy): Ditto.
(expand_builtin_strcmp): Ditto.
(expand_builtin_strncmp): Ditto.
(expand_builtin_strcpy): Remove FNDECL and MODE arguments.
(expand_builtin_strcpy_args): Don't call folders.
(expand_builtin_memcmp): Ditto.
(expand_builtin_strncpy): Ditto, and use target.
(expand_builtin_memcpy): Ditto.
(expand_builtin_strstr, expand_builtin_strchr, expand_builtin_strrchr,
expand_builtin_strpbrk, expand_builtin_memmove,
expand_builtin_memmove_args, expand_builtin_bcopy,
expand_builtin_memchr, expand_builtin_strcat, expand_builtin_strncat,
expand_builtin_strspn, expand_builtin_strcspn,
expand_builtin_fputs): Remove these.
(expand_builtin): Don't call the above, change calls to other
expanders that changed prototype.
(fold_builtin_stpcpy): New folder split out from expand_builtin_stpcpy.
(fold_builtin_1 <ISFINITE, ISINF, ISNORMAL>): Call
fold_builtin_interclass_mathfn.
(fold_builtin_2 <STPCPY>): Call fold_builtin_stpcpy.
(fold_builtin_strcat): Add folding split from expand_builtin_strcat.
* fold-const.c (fold_binary_loc <NE_EXPR>): Add !exp != 0 -> !exp.
* passes.c (init_optimization_passes): Move pass_fold_builtins
after last phiopt pass.
* tree-inline.c (fold_marked_statements): When folding builtins
iterate over all instruction potentially generated.
* tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Declare
earlier.
(fold_gimple_call): Use it to always fold calls (into potentially
multiple instructions).
* tree-ssa-dom.c (optimize_stmt): Resolve __builtin_constant_p
calls into zero at this time.
* tree-ssa-propagate.c (substitute_and_fold): Ignore multiple
statements generated by builtin folding.
testsuite/
* gcc.dg/builtins-44.c: Use __builtin_isinf_sign when checking
for sign of -Inf.
From-SVN: r152236
Nick Clifton [Mon, 28 Sep 2009 12:15:42 +0000 (12:15 +0000)]
m32r.c (m32r_is_insn): Return false for debugging insns.
* config/m32r/m32r.c (m32r_is_insn): Return false for debugging
insns.
From-SVN: r152235
Johannes Singler [Mon, 28 Sep 2009 12:11:28 +0000 (12:11 +0000)]
for_each_selectors.h: Remove obsolete comment.
2009-09-28 Johannes Singler <singler@ira.uka.de>
* include/parallel/for_each_selectors.h: Remove obsolete comment.
From-SVN: r152234
Duncan Sands [Mon, 28 Sep 2009 08:53:18 +0000 (08:53 +0000)]
Correct off-by-one error in changelog date.
From-SVN: r152233
Duncan Sands [Mon, 28 Sep 2009 08:50:39 +0000 (10:50 +0200)]
Add support for using ggc cache tables from plugins.
Approved by Ian Lance Taylor.
From-SVN: r152232
GCC Administrator [Mon, 28 Sep 2009 00:17:09 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r152230
Richard Henderson [Sun, 27 Sep 2009 23:22:28 +0000 (16:22 -0700)]
tree-ssa-ccp.c (optimize_stack_restore): Relax the conditions under which we remove __builtin_stack_restore.
* tree-ssa-ccp.c (optimize_stack_restore): Relax the conditions under
which we remove __builtin_stack_restore.
From-SVN: r152227
Bernd Schmidt [Sun, 27 Sep 2009 16:56:57 +0000 (16:56 +0000)]
loop-iv.c (iv_analyze_op): Use function_invariant_p, not CONSTANT_P, to test for GRD_INVARIANT.
* loop-iv.c (iv_analyze_op): Use function_invariant_p, not CONSTANT_P,
to test for GRD_INVARIANT.
(simple_rhs_p): Anything that's function_invariant_p is fine.
From-SVN: r152226
Rafael Espindola [Sun, 27 Sep 2009 16:27:25 +0000 (16:27 +0000)]
Remove some lines emacs decided to include.
From-SVN: r152225
Rafael Espindola [Sun, 27 Sep 2009 16:25:04 +0000 (16:25 +0000)]
Fix "merge" problem in the previous patch.
2009-09-27 Rafael Avila de Espindola <espindola@google.com>
* gengtype.c (main): Use plunge_files instead of plugin_output.
From-SVN: r152224
Basile Starynkevitch [Sun, 27 Sep 2009 16:15:25 +0000 (16:15 +0000)]
gengtype.c (write_root, [...]): Add a emit_pch argument.
2009-09-27 Basile Starynkevitch <basile@starynkevitch.net>
Rafael Avila de Espindola <espindola@google.com>
* gengtype.c (write_root, write_roots): Add a emit_pch argument.
Don't print pch related info if it is false.
(main): Don't print pch info in plugin mode.
Co-Authored-By: Rafael Avila de Espindola <espindola@google.com>
From-SVN: r152223
Eric Botcazou [Sun, 27 Sep 2009 16:05:15 +0000 (16:05 +0000)]
dwarf2out.c (enum dw_val_class): Replace dw_val_class_long_long with dw_val_class_const_double.
* dwarf2out.c (enum dw_val_class): Replace dw_val_class_long_long
with dw_val_class_const_double.
(struct dw_val_struct): Replace val_long_long with val_double and
adjust for above change.
(output_loc_operands): Likewise.
(add_AT_long_long): Rename into...
(add_AT_double): ...this.
(print_die): Replace dw_val_class_long_long with
dw_val_class_const_double and adjust.
(attr_checksum): Likewise.
(same_dw_val_p): Likewise.
(size_of_die): Likewise.
(value_format): Likewise.
(output_die): Likewise.
(loc_descriptor) <CONST_DOUBLE>: Likewise.
(add_const_value_attribute) <CONST_DOUBLE>: Call add_AT_double
instead of add_AT_long_long.
(add_bound_info) <INTEGER_CST>: Generate the bound as an unsigned
value with the precision of its type.
From-SVN: r152222
Andreas Schwab [Sun, 27 Sep 2009 15:27:08 +0000 (15:27 +0000)]
re PR c/41476 (__typeof__ expands to const type for function types)
PR c/41476
* c-typeck.c (build_conditional_expr): Use the readonly and
volatile flags of the operand types, not of the operands itself.
testsuite/:
* gcc.dg/cond-constqual-1.c: New test.
From-SVN: r152220
Peter O'Gorman [Sun, 27 Sep 2009 15:19:59 +0000 (15:19 +0000)]
collect2.c (main): Look for -brtl before adding libraries.
From-SVN: r152219
Jonathan Gray [Sun, 27 Sep 2009 13:20:23 +0000 (13:20 +0000)]
config.gcc: Update OpenBSD targets.
* config.gcc: Update OpenBSD targets.
* config/openbsd-stdint.h: New file.
* config/openbsd-libpthread.h: New file.
* config/openbsd.h: Update and break out LIB_SPEC definition.
* config/alpha/openbsd.h: Overhaul to reflect ELF migration.
* config/i386/openbsdelf.h: Correct types.
* config/m68k/openbsd.h: Likewise.
* config/mips/openbsd.h: Likewise.
* config/vax/openbsd.h: Likewise.
From-SVN: r152218
Eric Botcazou [Sun, 27 Sep 2009 12:36:43 +0000 (12:36 +0000)]
fold-const.c (maybe_lvalue_p): Return false for M(IN|AX)_EXPR.
* fold-const.c (maybe_lvalue_p): Return false for M(IN|AX)_EXPR.
(extract_muldiv_1) <MINUS_EXPR>: Swap operands if necessary.
* stor-layout.c (layout_type) <ARRAY_TYPE>: Do not take the maximum
of the length and zero.
From-SVN: r152217
Ralf Wildenhues [Sun, 27 Sep 2009 07:10:10 +0000 (07:10 +0000)]
Fix dependencies in gcc/Makefile.in.
gcc/:
* Makefile.in (TOPLEV_H): Use $(INPUT_H) not input.h.
(FLAGS_H): Add options.h $(REAL_H).
(SEL_SCHED_IR_H): Add $(BITMAP_H) vecprim.h $(CFGLOOP_H).
(TREE_VECTORIZER_H): New.
(EBITMAP_H): Renamed from EBIMAP_H.
(c-decl.o, c-objc-common.o, c-pretty-print.o, attribs.o, c-omp.o)
(gtype-desc.o, ggc-common.o, ggc-page.o, ggc-zone.o, langhooks.o)
(tree.o, tree-ssa-structalias.o, tree-ssa-ter.o, tree-ssanames.o)
(tree-phinodes.o, tree-ssa-loop.o, tree-ssa-math-opts.o)
(gimple-low.o, omp-low.o, sese.o, graphite-blocking.o)
(graphite-clast-to-gimple.o, graphite-dependences.o)
(graphite-interchange.o, graphite-poly.o, graphite-scop-detection.o)
(graphite-sese-to-poly.o, tree-vect-loop.o, tree-vect-loop-manip.o)
(tree-vect-patterns.o, tree-vect-slp.o, tree-vect-stmts.o)
(tree-vect-data-refs.o, tree-vectorizer.o, gimple.o, tree-mudflap.o)
(targhooks.o, stmt.o, emit-rtl.o, ipa.o, matrix-reorg.o, ipa-inline.o)
(gcse.o, tree-ssa-ccp.o, df-byte-scan.o, vec.o, caller-save.o)
(ira-build.o, ira-costs.o, ira-color.o, ira-emit.o, ira.o)
(haifa-sched.o, sched-rgn.o, sel-sched.o, sel-sched-dump.o)
(sel-sched-ir.o, final.o, $(out_object_file)): Dependencies
updated and fixed as per above changes and per
check_makefile_deps.sh output.
From-SVN: r152216
Ralf Wildenhues [Sun, 27 Sep 2009 06:49:33 +0000 (06:49 +0000)]
Fix library dependencies for -Wl,--as-needed.
gcc/:
PR bootstrap/40928
* configure.ac: Use $LIBS for '-ldl', not $LDFLAGS.
* configure: Regenerate.
libjava/:
PR libgcj/38298
* Makefile.am (libgcj_tools_la_LIBADD): Add '-lm'.
* Makefile.in: Regenerate.
From-SVN: r152215
Gary Funck [Sun, 27 Sep 2009 06:18:19 +0000 (06:18 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2009-09-26 Gary Funck <gary@intrepid.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r152214
GCC Administrator [Sun, 27 Sep 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r152211
Paolo Carlini [Sat, 26 Sep 2009 21:30:59 +0000 (21:30 +0000)]
lwg-active.html: Update to Revision R66.
2009-09-26 Paolo Carlini <paolo.carlini@oracle.com>
* doc/html/ext/lwg-active.html: Update to Revision R66.
* doc/html/ext/lwg-closed.html: Likewise.
* doc/html/ext/lwg-defects: Likewise.
* doc/xml/manual/intro.xml: Update entry for DR 853.
From-SVN: r152208
Kaveh R. Ghazi [Sat, 26 Sep 2009 20:22:43 +0000 (20:22 +0000)]
configure.ac: Update minimum MPC version to 0.7.
* configure.ac: Update minimum MPC version to 0.7.
* configure: Regenerate.
gcc:
* doc/install.texi: Update minimum MPC version to 0.7.
From-SVN: r152207
Gerald Pfeifer [Sat, 26 Sep 2009 19:29:01 +0000 (19:29 +0000)]
lwg-closed.html: Adjust four instances of two URLs according to upstream redirects.
* doc/html/ext/lwg-closed.html: Adjust four instances of two URLs
according to upstream redirects.
From-SVN: r152206
Gerald Pfeifer [Sat, 26 Sep 2009 19:12:40 +0000 (19:12 +0000)]
install.texi (Binaries): Remove reference to the binary distribution CD-ROM from the FSF.
* doc/install.texi (Binaries): Remove reference to the binary
distribution CD-ROM from the FSF.
From-SVN: r152205
Michael Matz [Sat, 26 Sep 2009 16:46:43 +0000 (16:46 +0000)]
re PR lto/40758 ([LTO] ICE in partition_view_bitmap, at tree-ssa-live.c:331)
PR lto/40758
PR middle-end/41470
* tree-ssa-coalesce.c (coalesce_ssa_name): Add only SSA names
that are mentioned in the body.
testsuite/
* gcc.dg/pr41470.c: New test.
From-SVN: r152203
Eric Botcazou [Sat, 26 Sep 2009 11:25:23 +0000 (11:25 +0000)]
decl.c (gnat_to_gnu_entity): Filter out negative size for the array dimensions like in the constrained case.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Filter out
negative size for the array dimensions like in the constrained case.
<E_Array_Subtype>: Do not create an artificially non-constant high
bound if the low bound is non-constant. Minor tweaks.
* gcc-interface/trans.c (lvalue_required_p): Add CONSTANT parameter
and turn ALIASED into a boolean parameter. Adjust calls to self.
<N_Attribute_Reference>: Return 1 for more attributes.
<N_Object_Renaming_Declaration>: Return 1 for non-constant objects.
<N_Assignment_Statement>: Return 1 for the LHS.
(Identifier_to_gnu): Adjust calls to lvalue_required_p.
(call_to_gnu): Be prepared for wrapped boolean rvalues.
From-SVN: r152201
GCC Administrator [Sat, 26 Sep 2009 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r152192
Michael Matz [Fri, 25 Sep 2009 23:57:01 +0000 (23:57 +0000)]
re PR tree-optimization/41454 (DOM miscompiles gcc.c-torture/execute/990513-1.c at -O2 -fno-tree-vrp)
PR tree-optimization/41454
* tree-ssa-dom (stmts_to_rescan): Remove variable.
(tree_ssa_dominator_optimize): Don't allocate and free it.
(dom_opt_leave_block): Don't iterate over it.
(eliminate_redundant_computations): Don't return a value.
(cprop_operand, cprop_into_stmt): Ditto.
(optimize_stmt): Don't defer updating stmts.
testsuite/
* gcc.dg/pr41454.c: New test.
From-SVN: r152189
Dodji Seketeli [Fri, 25 Sep 2009 23:23:18 +0000 (23:23 +0000)]
DWARF for Template parm pack is a gnu extension.
include/ChangeLog:
* dwarf2.h (enum dwarf_tag): Rename DW_TAG_template_parameter_pack and
DW_TAG_formal_parameter_pack into DW_TAG_GNU_template_parameter_pack
and DW_TAG_formal_parameter_pack until DWARF 5 is out.
gcc/ChangeLog:
* dwarf2out.c (dwarf_tag_name, gen_generic_params_dies,
generic_parameter_die, template_parameter_pack_die,
gen_formal_parameter_die, gen_subprogram_die): Adjust after renaming
DW_TAG_formal_parameter_pack and DW_TAG_template_parameter_pack into
DW_TAG_GNU_formal_parameter_pack and DW_TAG_GNU_template_parameter_pack.
gcc/testsuite/ChangeLog:
* g++.dg/debug/dwarf2/template-func-params-4.C: Adjust after renaming
DW_TAG_template_parameter_pack and DW_TAG_formal_parameter_pack
into DW_TAG_GNU_template_parameter_pack and
DW_TAG_GNU_formal_parameter_pack.
* g++.dg/debug/dwarf2/template-params-4.C: Likewise.
* g++.dg/debug/dwarf2/template-func-params-7.C: Likewise.
From-SVN: r152188
Richard Henderson [Fri, 25 Sep 2009 20:49:08 +0000 (13:49 -0700)]
re PR middle-end/41469 (-fexceptions ICE in expand_gimple_stmt_1, at cfgexpand.c:1947)
PR middle-end/41469
* tree-eh.c (lower_resx): Resolve RESX with no source region to
__builtin_trap.
(gate_lower_resx): New.
(gate_lower_eh_dispatch): Rename from gate_lower_ehcontrol.
From-SVN: r152185
Nick Clifton [Fri, 25 Sep 2009 19:23:40 +0000 (19:23 +0000)]
configure.ac: Pass any --cache-file=/dev/null option on to subconfigures.
* configure.ac: Pass any --cache-file=/dev/null option on to
subconfigures.
* configure: Regenerate.
From-SVN: r152183
Nathan Froyd [Fri, 25 Sep 2009 18:53:06 +0000 (18:53 +0000)]
vect.exp: Append extra parameters as separate parameters for alignment-sensitive...
* gcc.dg/vect/vect.exp: Append extra parameters as separate
parameters for alignment-sensitive -fsection-anchors tests.
From-SVN: r152182
Cary Coutant [Fri, 25 Sep 2009 18:33:04 +0000 (18:33 +0000)]
Add rest of new values from DWARF Version 4.
include/
Add rest of new values from DWARF Version 4.
* dwarf2.h (DW_TAG_rvalue_reference_type, DW_TAG_template_alias):
New tags.
(DW_FORM_ref_sig8): New name for DW_FORM_sig8.
(DW_AT_main_subprogram, DW_AT_data_bit_offset, DW_AT_const_expr,
DW_AT_enum_class, DW_AT_linkage_name, DW_AT_GNU_guarded_by,
DW_AT_GNU_pt_guarded_by, DW_AT_GNU_guarded, DW_AT_GNU_pt_guarded,
DW_AT_GNU_locks_excluded, DW_AT_GNU_exclusive_locks_required,
DW_AT_GNU_shared_locks_required, DW_AT_GNU_odr_signature): New
attributes.
(DW_LANG_Python): New language.
From-SVN: r152181
Anatoly Sokolov [Fri, 25 Sep 2009 17:19:11 +0000 (21:19 +0400)]
v850.h (FUNCTION_VALUE): Remove.
* config/v850/v850.h (FUNCTION_VALUE): Remove.
* config/v850/v850.c (v850_function_value): New function.
(TARGET_FUNCTION_VALUE): Define.
From-SVN: r152180