1. 27 Jul, 2007 25 commits
    • invoke.texi (mdsp, mdspr2): Document the __mips_dsp, __mips_dspr2 and __mips_dsp_rev macros. · da7d4908
      gcc/
      	* doc/invoke.texi (mdsp, mdspr2): Document the __mips_dsp,
      	__mips_dspr2 and __mips_dsp_rev macros.
      	* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_dsp_rev.
      
      From-SVN: r126994
      Richard Sandiford committed
    • trans-decl.c (gfc_build_builtin_function_decls): Use existing… · 4e27018f
      trans-decl.c (gfc_build_builtin_function_decls): Use existing gfc_array_index_type rather than creating another typenode for...
      
      2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* trans-decl.c (gfc_build_builtin_function_decls): Use existing
      	gfc_array_index_type rather than creating another typenode for
      	gfc_index_integer_kind.
      
      From-SVN: r126993
      Janne Blomqvist committed
    • Fortran frontend changelog: · 6520ecac
      2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* trans-io.c (gfc_build_io_library_fndecls): Change to use
      	gfc_array_index_type for array descriptor triplets instead of
      	gfc_int4_type_node.
      
      libgfortran ChangeLog:
      
      2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* io/transfer.c (st_set_nml_var_dim): Use index_type instead of
      	GFC_INTEGER_4 for array descriptor triplets.
      
      From-SVN: r126992
      Janne Blomqvist committed
    • typeck.c (structural_comptypes): Compare DECLTYPE_TYPE nodes. · 3ad6a8e1
      2007-07-27  Douglas Gregor  <doug.gregor@gmail.com>
      
      	* typeck.c (structural_comptypes): Compare DECLTYPE_TYPE nodes.
      	* cp-tree.def (DECLTYPE_TYPE): New.
      	* error.c (dump_type): Dump DECLTYPE_TYPE nodes.
      	(dump_type_prefix): Ditto.
      	(dump_type_suffix): Ditto.
      	* tree.c (DECLTYPE_TYPE): Walk DECLTYPE_TYPE nodes.
      	* mangle.c (write_type): Handle DECLTYPE_TYPE.
      	* cp-tree.h (IS_AGGR_TYPE): DECLTYPE_TYPE nodes can be aggregate
      	types.
      	(DECLTYPE_TYPE_EXPR): New.
      	(DECLTYPE_TYPE_ID_EXPR_OR_MEMBER_ACCESS_P): New.
      	(finish_declared_type): Declare.
      	* cxx-pretty-print.c (pp_cxx_type_specifier_seq): Print
      	DECLTYPE_TYPE nodes.
      	(pp_cxx_type_id): Ditto.
      	* pt.c (for_each_template_parm_r): Walk DECLTYPE_TYPE children.
      	(tsubst): Substitute into a DECLTYPE_TYPE node.
      	(tsubst_copy): Ditto.
      	(unify): Cannot deduce anything from TYPEOF_TYPE or DECLTYPE_TYPE
      	nodes.
      	(dependent_type_p_r): DECLTYPE_TYPE types are always dependent.
      	* semantics.c (finish_typeof): TYPEOF_TYPE types need to use
      	structural equality (because we can't hash the expressions).
      	(finish_declared_type): New.
      	* lex.c (reswords): Add "decltype" keyword.
      	* parser.c cp_lexer_next_token_is_decl_specifier_keyword
      	(cp_parser_postfix_expression): Add member_access_only_p to
      	restrict postfix expression to member access expressions.
      	(cp_parser_unary_expression): Update call to
      	cp_parser_postfix_expression to reflect new parameter.
      	(cp_parser_declared_type): New.
      	(cp_parser_simple_type_specifier): Parse decltype types.
      
      2007-07-27  Douglas Gregor  <doug.gregor@gmail.com>
      	
             * c-common.h (enum rid): Add RID_DECLTYPE, update RID_LAST_CXX0X.
      
      2007-07-27  Douglas Gregor  <doug.gregor@gmail.com>
      
      	* g++.dg/cpp0x/decltype1.C: New.
      	* g++.dg/cpp0x/decltype2.C: New.
      	* g++.dg/cpp0x/decltype3.C: New.
      	* g++.dg/cpp0x/decltype4.C: New.
      	* g++.dg/cpp0x/decltype5.C: New.
      	* g++.dg/cpp0x/decltype6.C: New.
      
      From-SVN: r126991
      Douglas Gregor committed
    • pr27743.c (bar): Use an integer of exactly 32 bits because the test relies on bit 31 to be the... · 8a67955f
      	* gcc.dg/torture/pr27743.c (bar): Use an integer of exactly 32 bits
      	  because the test relies on bit 31 to be the sign bit.
      
      From-SVN: r126990
      Rask Ingemann Lambertsen committed
    • pr28651.c (main): Use INT_MAX instead of assuming it is 0x7fffffff. · f017014e
      	* gcc.c-torture/execute/pr28651.c (main): Use INT_MAX instead of
      	  assuming it is 0x7fffffff.
      	* gcc.dg/tree-ssa/vrp29.c (decCompare)(main): Likewise.
      	* gcc.dg/Wconversion-integer-no-sign.c (h): Likewise.
      
      From-SVN: r126989
      Rask Ingemann Lambertsen committed
    • re PR libstdc++/32907 (Inefficient operator== in std::string) · bd12160a
      2007-07-27  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/32907
      	* include/bits/basic_string.h (operator==(const basic_string<_CharT>&,
      	const basic_string<_CharT>&)): Add.
      	(operator!=): Forward to operator==.
      	* include/ext/vstring.h(operator==(const __versa_string<_CharT,
      	std::char_traits<_CharT>, std::allocator<_CharT>, _Base>&,
      	const __versa_string<_CharT, std::char_traits<_CharT>,
      	std::allocator<_CharT>, _Base>&)): Add.
      	(operator!=): Forward to operator==.
      
      	* include/ext/sso_string_base.h (_M_compare): Remove.
      
      From-SVN: r126988
      Paolo Carlini committed
    • re PR middle-end/32749 (gfortran.dg/auto_array_1.f90) · e4142b7c
      2007-07-26  Kenneth Zadeck <zadeck@naturalbridge.com>
      
      	PR middle-end/32749
      	
      	* df-problems.c (df_create_unused_note): Removed do_not_gen parm
      	and the updating of the live and do_not_gen sets.
      	(df_note_bb_compute): Added updating of live and do_not_gen sets
      	for regular defs so that the case of clobber inside conditional
      	call is processed correctly.
      
      From-SVN: r126987
      Kenneth Zadeck committed
    • re PR c++/32346 (long long bitfield passed to int argument incorrectly) · 83144bd6
      	PR c++/32346
      	* call.c (convert_for_arg_passing): Only widen bitfields to their
      	declared types if necessary.
      	PR c++/32346
      	* g++.dg/expr/bitfield9.C: New test.
      
      From-SVN: r126986
      Mark Mitchell committed
    • re PR fortran/32899 (Broken diagnostic for invalid use of .eq. for logicals) · b8475dd6
      2007-07-26  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/32899
      	* resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
      
      2007-07-26  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/32899
      	* gfortran.dg/logical_comp.f90: Update dg-error strings.
      
      From-SVN: r126985
      Steven G. Kargl committed
    • re PR fortran/32760 (Error defining subroutine named PRINT) · 7aa34e7a
      2007-07-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/32760
      	* gfortran.dg/private_type_7.f90: New test.
      
      From-SVN: r126982
      Jerry DeLisle committed
    • re PR fortran/32760 (Error defining subroutine named PRINT) · 4958f4ee
      2007-07-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      	    Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/32760
      	* primary.c (match_variable): Do not call gfc_add_flavor if symbol has
      	attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
      
      Co-Authored-By: Daniel Franke <franke.daniel@gmail.com>
      
      From-SVN: r126981
      Jerry DeLisle committed
    • mangle.c (set_type_package_list): Constify. · 0b740634
      	* mangle.c (set_type_package_list): Constify.
      	* verify-glue.c (vfy_make_string): Delete.
      	* verify.h (vfy_make_string): Likewise.
      
      From-SVN: r126980
      Kaveh R. Ghazi committed
    • re PR fortran/32035 ('<anonymous>' may be used uninitialized in this function) · 2b8327ce
      	PR fortran/32035
      
      	* trans-stmt.c (gfc_trans_character_select): Replace the
      	mechanism with labels by a SWITCH_EXPR.
      	* trans-decl.c (gfc_build_builtin_function_decls): Change
      	return type for select_string.
      
      	* runtime/select.c (select_string): Adjust prototype and function
      	so that the return value is an integer, not a pointer.
      
      	* gfortran.dg/select_char_1.f90: New test.
      
      From-SVN: r126978
      Francois-Xavier Coudert committed
    • rs6000.c (rs6000_gimplify_va_arg): Generate the operands with compatible type. · 8fb632eb
      	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Generate the
      	operands with compatible type.
      
      From-SVN: r126976
      Zdenek Dvorak committed
    • re PR fortran/32903 (Default initializer and intent(OUT): default initializer not used) · a896d54d
      2007-07-27  Tobias Burnus  <burnus@net-b.de>
      
      	PR fortran/32903
      	* gfortran.dg/initialization_11.f90: New test.
      
      From-SVN: r126975
      Tobias Burnus committed
    • re PR fortran/32903 (Default initializer and intent(OUT): default initializer not used) · 55ed891f
      2007-07-27  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/32903
      	* trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
      	derived types as referenced, if they have the the default
      	initializer set.
      
      From-SVN: r126974
      Paul Thomas committed
    • lex.l (update_yylval): Constify. · d426d208
      	* lex.l (update_yylval): Constify.
      	* treelang.h (struct token_part, struct parameter_part):
      	Likewise.
      	* treetree.c (tree_code_create_function_prototype,
      	tree_code_create_variable, tree_code_get_integer_value):
      	Likewise.
      	* treetree.h (tree_code_get_integer_value,
      	tree_code_create_function_prototype, tree_code_create_variable):
      	Likewise.
      
      From-SVN: r126973
      Kaveh R. Ghazi committed
    • expr.h (store_bit_field): Don't return a value. · 6d7db3c5
      gcc/
      	* expr.h (store_bit_field): Don't return a value.
      	* expmed.c (check_predicate_volatile_ok): New function.
      	(store_bit_field_1): New function, extracted from store_bit_field.
      	Take a fallback_p argument and return true if the operation succeeded.
      	Only use store_fixed_bit_field if fallback_p.  Don't recompute
      	mode_for_extraction; use op_mode instead.  Try forcing memories
      	into registers if the insv expander fails.
      	(store_bit_field): Use store_bit_field_1 with fallback_p true.
      	Don't return a value.
      	(convert_extracted_bit_field): New function, extracted from
      	store_bit_field.
      	(extract_bit_field_1): Likewise.  Take a fallback_p argument
      	and return NULL if the operation succeeded.  Only use
      	extract_fixed_bit_field if fallback_p.  Only calculate one
      	extraction mode.  Combine code for extv and extzv.  Try forcing
      	memories into registers if the ext(z)v expander fails.
      	(extract_bit_field): Use extract_bit_field_1 with fallback_p true.
      
      gcc/testsuite/
      	* gcc.target/mips/ins-1.c: New test.
      
      From-SVN: r126972
      Richard Sandiford committed
    • 2007-xx-xx Richard Sandiford <rsandifo@nildram.co.uk> · ab34041d
      	    Richard Guenther <rguenther@suse.de>
      
      gcc/
      	* df.h (df_mw_hardreg): Turn df_ref_type and df_ref_flags
      	into bitfields.
      	(df_ref): Likewise.  Put regno with other integer fields.
      
      From-SVN: r126971
      Richard Sandiford committed
    • df.h (df_mw_hardreg): Remove "loc" field. · 6f5c1520
      gcc/
      	* df.h (df_mw_hardreg): Remove "loc" field.
      	* df-scan.c (df_ref_record): Don't set it.  Remove redundant
      	local variable.
      	* df-problems.c (df_whole_mw_reg_unused_p): New function,
      	split out from df_set_unused_notes_for_mw.  Return false for
      	partial references.  Assert that mw_reg is a REG when returning true.
      	(df_set_unused_notes_for_mw): Use it.  Use mw_reg instead of *loc.
      	(df_whole_mw_reg_dead_p): New function, split out from
      	df_set_dead_notes_for_mw.  Return false for partial references.
      	Assert that mw_reg is a REG when returning true.
      	(df_set_dead_notes_for_mw): Use it.  Use mw_reg instead of *loc.
      	Remove redundant bitmap check.
      
      From-SVN: r126970
      Richard Sandiford committed
    • t-ia64 ($(T)crtbegin.o): Removed. · 23815ffe
      2007-07-26  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/ia64/t-ia64 ($(T)crtbegin.o): Removed.
      	($(T)crtend.o): Likwise.
      	($(T)crtbeginS.o): Likwise.
      	($(T)crtendS.o): Likwise.
      	($(T)crtfastmath.o): Likwise.
      
      From-SVN: r126969
      H.J. Lu committed
    • Daily bump. · fecfc406
      From-SVN: r126967
      GCC Administrator committed
    • Makefile.in: Rebuilt. · 7bead97e
      	* Makefile.in: Rebuilt.
      	* Makefile.am (clean-local): Removed.
      	(pth/mf-runtime.lo, pth/mf-heuristics.lo, pth/mf-hooks1.lo,
      	pth/mf-hooks2.lo, pth/mf-hooks3.lo): Likewise.
      	(libmudflapth_la_SOURCES): List sources.
      	(libmudflapth_la_LIBADD): Clear.
      	(libmudflapth_la_CFLAGS): New variable.
      
      From-SVN: r126965
      Tom Tromey committed
  2. 26 Jul, 2007 15 commits
    • java-tree.h (push_labeled_block, [...]): Remove. · 41f701ba
      	* java-tree.h (push_labeled_block, pop_labeled_block): Remove.
      	(LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY,
      	EXIT_BLOCK_LABELED_BLOCK): Likewise.
      	* lang.c (java_tree_inlining_walk_subtrees): Update.
      	(java_dump_tree): Likewise.
      	* java-tree.def (LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, TRY_EXPR):
      	Remove.
      	* decl.c (push_labeled_block, pop_labeled_block): Remove.
      	* java-gimplify.c (java_gimplify_labeled_block_expr,
      	java_gimplify_exit_block_expr, java_gimplify_try_expr): Remove.
      	(java_gimplify_expr): Update.
      
      From-SVN: r126962
      Tom Tromey committed
    • dominance.c (dom_computed, [...]): Removed. · 8fee41c2
      	* dominance.c (dom_computed, n_bbs_in_dom_tree): Removed.
      	* function.h (dom_computed, n_bbs_in_dom_tree): New macros.
      	* basic-block.h (struct control_flow_graph): Added x_dom_computed
      	and x_n_bbs_in_dom_tree fields.
      
      From-SVN: r126960
      Zdenek Dvorak committed
    • re PR tree-optimization/32087 (ICE with FORTRAN and -fprefetch-loop-arrays) · 87621e5f
      	PR tree-optimization/32087
      	* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop):
      	Do not call scale_bbs_frequencies_int with prob of zero.
      
      From-SVN: r126959
      Steve Ellcey committed
    • gcc/ · b617fc71
      	* config/arm/arm-protos.h (neon_lane_bounds, neon_const_bounds)
      	(neon_element_bits): Add prototypes.
      	* config/arm/arm.c (bounds_check, neon_lane_bounds)
      	(neon_const_bounds, neon_element_bits): New functions.
      	* config/arm/neon.md (neon_vget_lane<mode>, neon_vget_lanedi)
      	(neon_vget_lanev2di, neon_vset_lane<mode>, neon_vset_lanedi)
      	(neon_vset_lanev2di, neon_vdup_lane<mode>, neon_vdup_lanedi)
      	(neon_vdup_lanev2di, neon_vcvt_n<mode>, neon_vmul_lane<mode>)
      	(neon_vmull_lane<mode>, neon_vqdmull_lane<mode>)
      	(neon_vqdmulh_lane<mode>, neon_vmla_lane<mode>)
      	(neon_vmlal_lane<mode>, neon_vqdmlal_lane<mode>)
      	(neon_vmls_lane<mode>, neon_vmlsl_lane<mode>)
      	(neon_vqdmlsl_lane<mode>, neon_vext<mode>, neon_vshr_n<mode>)
      	(neon_vshrn_n<mode>, neon_vqshrn_n<mode>, neon_vqshrun_n<mode>)
      	(neon_vshl_n<mode>, neon_vshl_n<mode>, neon_vqshl_n<mode>)
      	(neon_vqshlu_n<mode>, neon_vshll_n<mode>, neon_vsra_n<mode>)
      	(neon_vsri_n<mode>, neon_vsli_n<mode>): Add bounds checks.
      
      From-SVN: r126958
      Julian Brown committed
    • Fixed abi_check for missing symbol size changes. · 69240fc2
      2007-07-25  Stephen M. Webb  <stephenw@xandros.com>
      
        Fixed abi_check for missing symbol size changes.
      	* testsuite/util/testsuite_abi.cc: Changed local variable name to prevent
      	member variable hiding.
      
      From-SVN: r126956
      Stephen M. Webb committed
    • assign-warn-3.c (f0): Declare as inline. · 5153cd4b
      	PR/19232
      	* gcc.dg/assign-warn-3.c (f0): Declare as inline.
      	(f1): Likewise.
      
      From-SVN: r126955
      Nathan Froyd committed
    • vxworks.h (VXWORKS_LINK_SPEC): Fix typo. · 1c387101
      	* config/vxworks.h (VXWORKS_LINK_SPEC): Fix typo.
      	(HAVE_AS_GNU_ATTRIBUTE): Undefine.
      
      From-SVN: r126954
      Nathan Froyd committed
    • arm.c (arm_mac_accumulator_is_mul_result): New. · c956e102
      	gcc/
      	* config/arm/arm.c (arm_mac_accumulator_is_mul_result): New.
      	* config/arm/arm-protos.h (arm_mac_accumulator_is_mul_result): New.
      	* config/arm/cortex-a8.md: New.
      	* config/arm/cortex-a8-neon.md: New.
      	* config/arm/neon-schedgen.ml: New.
      	* config/arm/neon.md (vqh_mnem): New.
      	(neon_type): New.
      	(Is_float_mode): New.
      	(Scalar_mul_8_16): New.
      	(Is_d_reg): New.
      	(V_mode_nunits): New.
      	(All instruction patterns): Annotate with neon_type attribute
      	values.
      	* config/arm/arm.md: Include cortex-a8.md.
      	(insn): Add smmla, umaal, smlald, smlsld, clz, mrs, msr and xtab
      	values.
      	Annotate instruction patterns accordingly.
      	(generic_sched): Do not use generic scheduling for Cortex-A8.
      	(generic_vfp): Do not use generic VFP scheduling for Cortex-A8.
      
      
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      
      From-SVN: r126953
      Mark Shinwell committed
    • fold-const.c (fold_read_from_constant_string): Use build_int_cst_type. · 0c4d4efb
      	* fold-const.c (fold_read_from_constant_string): Use
      	build_int_cst_type.
      	* tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise.
      
      From-SVN: r126952
      Daniel Jacobowitz committed
    • configure.ac: Add types checking to stage1 checking flags. · 7e98624c
      2007-07-26  Richard Guenther  <rguenther@suse.de>
      
      	toplev/
      	* configure.ac: Add types checking to stage1 checking flags.
      	* configure: Regenerate.
      
              gcc/
      	* tree-cfg.c (verify_gimple_unary_expr, verify_gimple_binary_expr,
      	verify_gimple_min_lval, verify_gimple_reference, verify_gimple_expr,
      	verify_gimple_modify_stmt, verify_gimple_stmt, verify_gimple_1,
      	verify_gimple): New functions.
      	* tree-flow.h (verify_gimple): Declare.
      	(verify_gimple_1): Declare.
      	* gimplify.c (cpt_same_type): Remove.
      	(gimplify_addr_expr): Remove checking code.
      	(check_pointer_types_r): Remove.
      	(gimplify_body): Call verify_gimple_1 instead of check_pointer_types_r.
      	Only verify if there were no errors.
      	* configure.ac: Add types checking flag.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      
      From-SVN: r126951
      Richard Guenther committed
    • re PR testsuite/32843 (libffi.call/return_sc.c) · 0ee0208e
      2007-07-26  Richard Guenther  <rguenther@suse.de>
      
      	PR testsuite/32843
      	* testsuite/libffi.call/return_sc.c (main): Verify call
      	result as signed char, not ffi_arg.
      
      From-SVN: r126950
      Richard Guenther committed
    • 20070725-1.c: Split the spare field in two to avoid: error: width of 'spare' exceeds its type. · 2b980e3e
      2007-07-26  Andreas Krebbel  <krebbel1@de.ibm.com>
      
      	* gcc.dg/20070725-1.c: Split the spare field in two to avoid:
      	error: width of 'spare' exceeds its type.
      
      From-SVN: r126949
      Andreas Krebbel committed
    • Change copyright header to refer to version 3 of the GNU General Public License… · 9dcd6f09
      Change copyright header to refer to version 3 of the GNU General Public License and to point readers at the COPYING3 file and the FSF's license web page.
      
      From-SVN: r126948
      Nick Clifton committed
    • tree-ssa-live.c: Include debug.h and flags.h. · aee46bbd
      
      	* tree-ssa-live.c: Include debug.h and flags.h.
      	(mark_scope_block_unused): New function.
      	(remove_unused_scope_block_p): New function.
      	(remove_unused_locals): Remove unused blocks too.
      
      From-SVN: r126947
      Jan Hubicka committed
    • sibcall-3.c: Skip on PowerPC targets when -mlongcall. · e13642b6
      	* gcc.dg/sibcall-3.c: Skip on PowerPC targets when -mlongcall.
      	* gcc.dg/sibcall-4.c: Likewise.
      
      From-SVN: r126943
      Nathan Froyd committed