Skip to content
Snippets Groups Projects
  1. Jul 02, 2007
    • Rainer Orth's avatar
      re PR boehm-gc/21940 (boehm-gc gctest fails on Solaris 10/x86) · 28e2ff77
      Rainer Orth authored
      	PR boehm-gc/21940
      	PR boehm-gc/21942
      	* configure.ac (GC_SOLARIS_THREADS): Don't define on *-*-solaris*.
      	Use alternate thread library in /usr/lib/lwp.
      	* configure: Regenerate.
      	* dyn_load.c: Use GC_SOLARIS_PTHREADS.
      	* include/gc_config_macros.h (GC_SOLARIS_THREADS): Don't define.
      	* include/private/gcconfig.h: Handle 64-bit Solaris 2/x86.
      	(GC_SOLARIS_THREADS): Don't define.
      	* include/private/solaris_threads.h: Remove.
      	* pthread_support.c (GC_thr_init) [GC_SOLARIS_PTHREADS]: Determine
      	GC_nprocs via sysconf().
      	* Makefile.am (libgcjgc_la_SOURCES): Remove solaris_pthreads.c and
      	solaris_threads.c.
      	(gctest_LDADD): Use THREADLIBS instead of THREADDLLIBS.
      	* Makefile.in: Regenerate.	 
      	* solaris_pthreads.c: Remove.
      	* solaris_threads.c: Remove.
      
      From-SVN: r126211
      28e2ff77
    • Rainer Orth's avatar
      re PR libgcj/30513 (Bootstrap failure with libgcj on sparc-sun-solaris2.10) · a3b7729c
      Rainer Orth authored
      	PR libgcj/30513
      	* configure.host (i[3-6]86-*): Undef sun.
      
      From-SVN: r126210
      a3b7729c
    • Rainer Orth's avatar
      re PR libgomp/26308 (libgomp bootstrap failure on Tru64 UNIX V4.0F) · 28c67ed7
      Rainer Orth authored
      	PR libgomp/26308
      	* config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
      
      From-SVN: r126208
      28c67ed7
    • Richard Sandiford's avatar
      mips-protos.h (mips16e_save_restore_info): New struct. · e1260576
      Richard Sandiford authored
      gcc/
      2007-07-02  Sandra Loosemore  <sandra@codesourcery.com>
      	    Richard Sandiford  <richard@codesourcery.com>
      	    Nigel Stephens  <nigel@mips.com>
      
      	* config/mips/mips-protos.h (mips16e_save_restore_info): New struct.
      	(mips16e_output_save_restore): Declare.
      	(mips16e_save_restore_pattern_p): Likewise.
      	* config/mips/mips.h (GENERATE_MIPS16E_SAVE_RESTORE): New macro.
      	* config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Return 0x7f8
      	for GENERATE_MIPS16E_SAVE_RESTORE.  Return 0x400 for TARGET_MIPS16
      	&& !GENERATE_MIPS16E_SAVE_RESTORE && !TARGET_64BIT.
      	(BITSET_P): New global macro, extracted from...
      	(mips_for_each_saved_reg): ...here.
      	(mips16e_save_restore_info): New struct.
      	(mips16e_s2_s8_regs, mips16e_a0_a3_regs): New variables.
      	(mips16e_save_restore_regs): New variable.
      	(mips_split_plus, mips16e_find_first_register): New functions.
      	(mips16e_mask_registers): New function.
      	(compute_frame_size): Expand the commentary before the function.
      	Enforce the MIPS16e save and restore register range restrictions.
      	Pad the general register save area at the low end.
      	(mips16e_save_restore_reg, mips16e_build_save_restore)
      	(mips16e_save_restore_pattern_p, mips16e_add_register_range)
      	(mips16e_output_save_restore, mips16e_collect_propagate_value)
      	(mips16e_collect_argument_save, mips16e_collect_argument_saves):
      	New functions.
      	(mips_expand_prologue, mips_expand_epilogue): Handle
      	GENERATE_MIPS16E_SAVE_RESTORE.
      	* config/mips/mips.md (*mips16e_save_restore): New pattern.
      
      gcc/testsuite/
      	* gcc.target/mips/save-restore-1.c: New test.
      	* gcc.target/mips/save-restore-2.c: Likewise.
      	* gcc.target/mips/save-restore-3.c: Likewise.
      	* gcc.target/mips/save-restore-4.c: Likewise.
      
      From-SVN: r126207
      e1260576
    • Uros Bizjak's avatar
      re PR tree-optimization/31966 (Miscompiles valid code with -ftree-vectorize) · 8ad02175
      Uros Bizjak authored
      	PR tree-optimization/31966
      	PR tree-optimization/32533
      	* tree-if-conv.c (add_to_dst_predicate_list): Use "edge", not
      	"basic_block" description as its third argument.  Update function
      	calls to get destination bb from "edge" argument.  Save "cond" into
      	aux field of the edge.  Update prototype for changed arguments.
      	(find_phi_replacement_condition): Operate on incoming edges, not
      	on predecessor blocks.  If there is a condition saved in the
      	incoming edge aux field, AND it with incoming bb predicate.
      	Return source bb of the first edge.
      	(clean_predicate_lists): Clean aux field of outgoing node edges.
      	(tree_if_conversion): Do not initialize cond variable. Move
      	variable declaration into the loop.
      	(replace_phi_with_cond_gimple_modify_stmt): Remove unneded
      	initializations of new_stmt, arg0 and arg1 variables.
      
      testsuite/ChangeLog:
      
      	PR tree-optimization/31966
      	PR tree-optimization/32533
      	* gcc.dg/tree-ssa/pr31966.c: New runtime test.
      	* gfortran.dg/pr32533.f90: Ditto.
      
      From-SVN: r126206
      8ad02175
    • Kenneth Zadeck's avatar
      Fixed Changelog entry on unreverted patch. · bc90eb85
      Kenneth Zadeck authored
      From-SVN: r126205
      bc90eb85
    • Richard Biener's avatar
      ChangeLog: Remove conflict marker, fix typo in date. · 72ad03ef
      Richard Biener authored
      2007-07-02  Richard Guenther  <rguenther@suse.de>
      
      	* testsuite/ChangeLog: Remove conflict marker, fix typo in date.
      
      From-SVN: r126204
      72ad03ef
    • Douglas Gregor's avatar
      typedefs_neg.cc: Tweak line numbers. · 269ef14d
      Douglas Gregor authored
      2007-07-02  Douglas Gregor  <doug.gregor@gmail.com>
      
              * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
              Tweak line numbers.
              * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
              Ditto.
              * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
              Don't try to create an unsigned wchar_t.
              * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
              Don't try to create an unsigned wchar_t.
              * testsuite/util/testsuite_hooks.h: Remove a stray semicolon.
      
      From-SVN: r126203
      269ef14d
    • Jakub Jelinek's avatar
      re PR c++/31748 (bad diagnostic for invalid private clause) · 76dc15d4
      Jakub Jelinek authored
      	PR c++/31748
      	* semantics.c (finish_omp_clauses): Use %qD instead of %qE for
      	DECL_P in not a variable and appears more than once error messages.
      
      	* g++.dg/gomp/pr31748.C: New test.
      
      From-SVN: r126201
      76dc15d4
    • Jakub Jelinek's avatar
      tree-nrv.c (dest_safe_for_nrv_p): Grok any handled_component_p, SSA_NAMEs,... · a2daf82c
      Jakub Jelinek authored
      tree-nrv.c (dest_safe_for_nrv_p): Grok any handled_component_p, SSA_NAMEs, RESULT_DECLs and PARM_DECLs.
      
      	* tree-nrv.c (dest_safe_for_nrv_p): Grok any handled_component_p,
      	SSA_NAMEs, RESULT_DECLs and PARM_DECLs.
      
      	* g++.dg/opt/nrv12.C: New test.
      	* gcc.target/i386/nrv1.c: New test.
      
      From-SVN: r126200
      a2daf82c
    • Richard Guenther's avatar
      tree-ssa.c (useless_type_conversion_p): Document future intent as defining the... · 85b19f61
      Richard Guenther authored
      tree-ssa.c (useless_type_conversion_p): Document future intent as defining the middle-end type system.
      
      2007-07-02  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa.c (useless_type_conversion_p): Document
      	future intent as defining the middle-end type system.
      	Re-structure to call langhook last, group by type class,
      	mark questionable parts.
      
      From-SVN: r126199
      85b19f61
    • Richard Guenther's avatar
      re PR middle-end/15988 (ICE in fold_convert with pointer-to-member-function) · f4088621
      Richard Guenther authored
      2007-07-02  Richard Guenther  <rguenther@suse.de>
      
      	* tree-flow.h (types_compatible_p): Declare.
      	* tree-ssa.c (types_compatible_p): New function.
      	* ipa-type-escape.c (discover_unique_type): Use
      	types_compatible_p instead of lang_hooks.types_compatible_p.
      	* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
      	* tree-vn.c (expressions_equal_p): Likewise.
      	* tree.c (fields_compatible_p): Likewise.
      	* tree-ssa-dom.c (avail_expr_eq): Likewise.
      	(cprop_operand): Use useless_type_conversion_p instead of
      	lang_hooks.types_compatible_p.
      	* tree-inline.c (setup_one_parameter): Likewise.
      	(declare_return_variable): Likewise.
      	* tree-nrv.c (tree_nrv): Likewise.
      	* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Likewise.
      	(maybe_fold_offset_to_component_ref): Likewise.
      	(maybe_fold_offset_to_reference): Likewise.
      	* tree-ssa-copy.c (may_propagate_copy): Likewise.
      	(merge_alias_info): Likewise.
      	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
      	* tree-ssa-phiopt.c (conditional_replacement): Likewise.
      	* tree-ssa-reassoc.c (optimize_ops_list): Likewise.
      	* tree-tailcall.c (find_tail_calls): Likewise.
      	* tree-vect-generic.c (expand_vector_operations_1): Likewise.
      	* gimplify.c (canonicalize_addr_expr): Likewise.
      	(fold_indirect_ref_rhs): Likewise.
      	(gimplify_addr_expr): Likewise.  Swap parameters to cpt_same_type.
      	(cpt_same_type): Likewise.
      	(check_pointer_types_r): Swap parameters to cpt_same_type
      	where appropriate.
      	* fold-const.c (fold_convert): Revert fix for PR15988.
      	* tree-inline.c (setup_one_parameter): Instead fix it here by
      	using fold_build1 instead of fold_convert and checking for
      	error_mark_node.  Convert only if the conversion is necessary.
      
      From-SVN: r126198
      f4088621
    • Joseph Myers's avatar
      configure.ac: Check for .gnu_attribute on Power. · e51917ae
      Joseph Myers authored
      	* configure.ac: Check for .gnu_attribute on Power.
      	* configure: Regenerate.
      	* config/rs6000/rs6000.c (rs6000_file_start): If supported, output
      	attribute for floating-point ABI.
      
      From-SVN: r126197
      e51917ae
    • Ira Rosen's avatar
      re PR tree-optimization/32230 (Segfault in set_bb_for_stmt with -O -ftree-vectorize) · 3053ce44
      Ira Rosen authored
      	PR tree-optimization/32230
      	PR tree-optimization/32477
      	* tree-vect-analyze.c (vect_analyze_data_refs): Fail if base
      	address is a constant.
      
      From-SVN: r126196
      3053ce44
    • Richard Sandiford's avatar
      gcc/ · e2c14f5d
      Richard Sandiford authored
      	* config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*)
      	(mipsisa32r2-*-elf*, mipsisa32r2el-*-elf*)
      	(mipsisa64-*-elf*, mipsisa64el-*-elf*): Combine top-level
      	stanzas.  Use the first part of the triplet to set MIPS_ISA_DEFAULT.
      	Remove redundant setting of MASK_FLOAT64 and MASK_64BIT for the
      	64-bit targets.  Add support for *-elfoabi*.
      	* config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Use
      	different settings if $(tm_defines) does not select the EABI.
      	(MULTILIB_EXCLUSIONS): Define in those circumstances.
      	* config/mips/mips.h (MIPS_ISA_LEVEL_OPTION_SPEC): New macro.
      	(MIPS_ARCH_OPTION_SPEC): Likewise.
      	(MIPS_ISA_LEVEL_SPEC): Likewise.
      	(OPTION_DEFAULT_SPECS): Use MIPS_ARCH_OPTION_SPEC.
      	* config/mips/elfoabi.h: New file.
      
      From-SVN: r126195
      e2c14f5d
    • Richard Guenther's avatar
      tree-flow.h (tree_ssa_useless_type_conversion_1): Rename to ... · 36618b93
      Richard Guenther authored
      2007-07-02  Richard Guenther  <rguenther@suse.de>
      
      	* tree-flow.h (tree_ssa_useless_type_conversion_1): Rename to ...
      	(useless_type_conversion_p): ... this.
      	* tree-ssa.c (tree_ssa_useless_type_conversion_1): Rename to ...
      	(useless_type_conversion_p): ... this.
      	* builtins.c (fold_builtin_memory_op): Rename
      	tree_ssa_useless_type_conversion_1 to useless_type_conversion_p.
      	* tree-cfg.c (verify_expr): Likewise.
      	* tree-ssa-address.c (tree_ssa_useless_type_conversion_1): Likewise.
      	* tree-ssa-ccp.c (ccp_fold): Likewise.
      	* tree-ssa-copy.c (may_propagate_copy): Likewise.
      	* tree-ssa-dom.c (eliminate_redundant_computations): Likewise.
      	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
      	* tree-ssa-loop-niter.c (refine_bounds_using_guard): Likewise.
      	* tree-ssa-pre.c (eliminate): Likewise.
      	* tree-ssa.c (delete_tree_ssa): Likewise.
      	(tree_ssa_useless_type_conversion): Likewise.
      	* tree.c (build2_stat): Likewise.
      
      From-SVN: r126194
      36618b93
    • Paolo Bonzini's avatar
      configure: Regenerate. · 1c00b503
      Paolo Bonzini authored
      2007-07-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      From-SVN: r126193
      1c00b503
    • Tobias Burnus's avatar
      gfortran.texi (Fortran 2003): Add ISO Bind C. · c0eba481
      Tobias Burnus authored
      2007-07-02  Tobias Burnus  <burnus@net-b.de>
      
      	* gfortran.texi (Fortran 2003): Add ISO Bind C.
      	* intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
      	C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.
      
      From-SVN: r126192
      c0eba481
    • Kai Tietz's avatar
      Makefile.def: Add windmc tool to build. · 901119ae
      Kai Tietz authored
      2007-07-02  Kai Tietz   <kai.tietz@onevision.com>
      
      	* Makefile.def: Add windmc tool to build.
      	* Makefile.tpl: Likewise.
      	* configure.ac: Likewise.
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      
      From-SVN: r126191
      901119ae
    • Daniel Berlin's avatar
      Add missing test from last commit · 908bd465
      Daniel Berlin authored
      Fixup two existing C++ tests for SCCVN changes
      
      From-SVN: r126187
      908bd465
    • Daniel Berlin's avatar
      re PR tree-optimization/32571 (ICE in set_ssa_val_to, at tree-ssa-sccvn.c:1011) · 8b0a5125
      Daniel Berlin authored
      2007-07-01  Daniel Berlin  <dberlin@dberlin.org>
      
      	Fix PR tree-optimization/32571
      	* tree-ssa-sccvn.c (visit_use): Shortcut copies to avoid
      	simplifying them.
      
      From-SVN: r126186
      8b0a5125
    • Christopher D. Rickett's avatar
      [multiple changes] · a8b3b0b6
      Christopher D. Rickett authored
      2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>
      
      	* interface.c (gfc_compare_derived_types): Special case for comparing
      	derived types across namespaces.
      	(gfc_compare_types): Deal with BT_VOID.
      	(compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
      	* trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
      	to SCALAR
      	(gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and 
      	NULL_FUNPTR.
      	(gfc_conv_expr): Convert expressions for ISO C Binding derived types.
      	* symbol.c (gfc_set_default_type): BIND(C) variables should not be
      	implicitly declared.
      	(check_conflict): Add BIND(C) and check for conflicts.
      	(gfc_add_explicit_interface): Whitespace.	
      	(gfc_add_is_bind_c): New function.  
      	(gfc_copy_attr): Use it.
      	(gfc_new_symbol): Initialize ISO C Binding objects.
      	(get_iso_c_binding_dt):  New function.
      	(verify_bind_c_derived_type): Ditto.
      	(gen_special_c_interop_ptr): Ditto.
      	(add_formal_arg): Ditto.
      	(gen_cptr_param): Ditto.
      	(gen_fptr_param): Ditto.
      	(gen_shape_param): Ditto.
      	(add_proc_interface): Ditto.
      	(build_formal_args): Ditto.
      	(generate_isocbinding_symbol):  Ditto.
      	(get_iso_c_sym):  Ditto.
      	* decl.c (num_idents_on_line, has_name_equals): New variables.
      	(verify_c_interop_param): New function.
      	(build_sym): Finish binding labels and deal with COMMON blocks.
      	(add_init_expr_to_sym): Check if the initialized expression is
      	an iso_c_binding named constants
      	(variable_decl): Set ISO C Binding type_spec components.
      	(gfc_match_kind_spec): Check match for C interoperable kind.
      	(match_char_spec): Fix comment. Chnage gfc_match_small_int
      	to gfc_match_small_int_expr.  Check for C interoperable kind.
      	(match_type_spec): Clear the current binding label.
      	(match_attr_spec): Add DECL_IS_BIND_C.  If BIND(C) is found, use it
      	to set attributes.
      	(set_binding_label): New function.
      	(set_com_block_bind_c): Ditto.
      	(verify_c_interop): Ditto.
      	(verify_com_block_vars_c_interop): Ditto.
      	(verify_bind_c_sym): Ditto.
      	(set_verify_bind_c_sym): Ditto.
      	(set_verify_bind_c_com_block): Ditto.
      	(get_bind_c_idents): Ditto.
      	(gfc_match_bind_c_stmt): Ditto.
      	(gfc_match_data_decl): Use num_idents_on_line.
      	(match_result): Deal with right paren in BIND(C).
      	(gfc_match_suffix): New function.
      	(gfc_match_function_decl): Use it.  Code is re-arranged to deal with
      	ISO C Binding result clauses.
      	(gfc_match_subroutine):  Deal with BIND(C).
       	(gfc_match_bind_c): New function.
      	(gfc_get_type_attr_spec): New function.  Code is re-arranged in and
      	taken from gfc_match_derived_decl.
      	(gfc_match_derived_decl): Add check for BIND(C).
      	* trans-common.c: Forward declare gfc_get_common.
      	(gfc_sym_mangled_common_id): Change arg from 'const char *name' to
      	'gfc_common_head *com'.  Check for ISO C Binding of the common block.
      	(build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
      	* gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
      	(bt): Add BT_VOID
      	(sym_flavor): Add FL_VOID.
       	(iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
      	(CInteropKind_t): New struct.
      	(c_interop_kinds_table): Use it.  Declare an array of structs.
      	(symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
      	bitfields.
      	(gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
      	(gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
      	common_block members.
      	(gfc_common_head): Add binding_label and is_bind_c members.
      	(gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
      	Add prototypes for get_c_kind, gfc_validate_c_kind, 
      	gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
      	verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
      	verify_bind_c_derived_type, verify_com_block_vars_c_interop,
      	generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
      	* iso-c-binding.def: New file. This file contains the definitions
      	of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
      	module.
      	* trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
      	 or C_NULL_FUNPTR expressions.
      	* expr.c (gfc_copy_expr): Add BT_VOID case.  For BT_CHARACTER, the
      	ISO C Binding requires a minimum string length of 1 for '\0'.  
      	* module.c (intmod_sym): New struct.
      	(pointer_info): Add binding_label member.
      	(write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
      	(ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
      	(attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
      	(mio_symbol_attribute): Deal with ISO C Binding attributes.
      	(bt_types): Add "VOID".
      	(mio_typespec): Deal with ISO C Binding components.
      	(mio_namespace_ref): Add intmod variable. 
      	(mio_symbol): Check for symbols from an intrinsic module.
      	(load_commons): Check for BIND(C) common block.
      	(read_module): Read binding_label and use it.
      	(write_common): Add label.  Write BIND(C) info.
      	(write_blank_common): Blank commons are not BIND(C).  Explicitly
      	set is_bind_c=0.
      	(write_symbol): Deal with binding_label.
      	(sort_iso_c_rename_list): New function.
      	(import_iso_c_binding_module): Ditto.
      	(create_int_parameter): Add to args.
      	(use_iso_fortran_env_module): Adjust to deal with iso_c_binding
      	intrinsic module.
      	* trans-types.c (c_interop_kinds_table): new array of structs. 
      	(gfc_validate_c_kind): New function.
      	(gfc_check_any_c_kind): Ditto.
      	(get_real_kind_from_node): Ditto.
      	(get_int_kind_from_node): Ditto.
      	(get_int_kind_from_width): Ditto.
      	(get_int_kind_from_minimal_width): Ditto.
      	(init_c_interop_kinds): Ditto.
      	(gfc_init_kinds): call init_c_interop_kinds.
      	(gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
      	Adjust handling of BT_DERIVED.
      	(gfc_sym_type): Whitespace.
      	(gfc_get_derived_type):  Account for iso_c_binding derived types
      	* resolve.c (is_scalar_expr_ptr): New function.
      	(gfc_iso_c_func_interface): Ditto.
      	(resolve_function): Use gfc_iso_c_func_interface. 
      	(set_name_and_label): New function.
      	(gfc_iso_c_sub_interface): Ditto.
      	(resolve_specific_s0): Use gfc_iso_c_sub_interface.
      	(resolve_bind_c_comms): New function.
      	(resolve_bind_c_derived_types): Ditto.
      	(gfc_verify_binding_labels): Ditto.
      	(resolve_fl_procedure): Check for ISO C interoperability.
      	(resolve_symbol): Check C interoperability.
      	(resolve_types): Walk the namespace.  Check COMMON blocks.
      	* trans-decl.c (gfc_sym_mangled_identifier):  Prevent the mangling
      	of identifiers that have an assigned binding label.
      	(gfc_sym_mangled_function_id): Use the binding label rather than
      	the mangled name.
      	(gfc_finish_var_decl): Put variables that are BIND(C) into a common
      	segment of the object file, because this is what C would do.
      	(gfc_create_module_variable): Conver to proper types
      	(set_tree_decl_type_code): New function.
      	(generate_local_decl): Check dummy variables and derived types for
      	ISO C Binding attributes.
      	* match.c (gfc_match_small_int_expr): New function.
      	(gfc_match_name_C): Ditto.
      	(match_common_name): Deal with ISO C Binding in COMMON blocks
      	* trans-io.c (transfer_expr):  Deal with C_NULL_PTR or C_NULL_FUNPTR
      	expressions
      	* match.h: Add prototypes for gfc_match_small_int_expr,
      	gfc_match_name_C, match_common_name, set_com_block_bind_c,
      	set_binding_label, set_verify_bind_c_sym,
      	set_verify_bind_c_com_block, get_bind_c_idents,
      	gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
      	gfc_get_type_attr_spec
      	* parse.c (decode_statement): Use gfc_match_bind_c_stmt
      	(parse_derived): Init *derived_sym = NULL, and gfc_current_block
      	later for valiadation.
      	* primary.c (got_delim): Set ISO C Binding components of ts.
      	(match_logical_constant): Ditto.
      	(match_complex_constant): Ditto.
      	(match_complex_constant): Ditto.
      	(gfc_match_rvalue): Check for existence of at least one arg for
      	C_LOC, C_FUNLOC, and C_ASSOCIATED.
      	* misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
      	(get_c_kind): New function.
      
      2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>
      
      	* Makefile.in: Add support for iso_c_generated_procs.c and
      	iso_c_binding.c.
      	* Makefile.am: Ditto.
      	* intrinsics/iso_c_generated_procs.c: New file containing helper
      	functions.
      	* intrinsics/iso_c_binding.c: Ditto.
      	* intrinsics/iso_c_binding.h: New file
      	* gfortran.map: Include the __iso_c_binding_c_* functions.
      	* libgfortran.h: define GFC_NUM_RANK_BITS.
      
      2007-06-23  Christopher D. Rickett  <crickett@lanl.gov>
      
      	* bind_c_array_params.f03: New files for Fortran 2003 ISO C Binding.
      	* bind_c_coms.f90: Ditto.
      	* bind_c_coms_driver.c: Ditto.
      	* bind_c_dts.f90: Ditto.
      	* bind_c_dts_2.f03: Ditto.
      	* bind_c_dts_2_driver.c: Ditto.
      	* bind_c_dts_3.f03: Ditto.
      	* bind_c_dts_4.f03: Ditto.
      	* bind_c_dts_driver.c: Ditto.
      	* bind_c_implicit_vars.f03: Ditto.
      	* bind_c_procs.f03: Ditto.
      	* bind_c_usage_2.f03: Ditto.
      	* bind_c_usage_3.f03: Ditto.
      	* bind_c_usage_5.f03: Ditto.
      	* bind_c_usage_6.f03: Ditto.
      	* bind_c_usage_7.f03: Ditto.
      	* bind_c_vars.f90: Ditto.
      	* bind_c_vars_driver.c: Ditto.
      	* binding_c_table_15_1.f03: Ditto.
      	* binding_label_tests.f03: Ditto.
      	* binding_label_tests_10.f03: Ditto.
      	* binding_label_tests_10_main.f03: Ditto.
      	* binding_label_tests_11.f03: Ditto.
      	* binding_label_tests_11_main.f03: Ditto.
      	* binding_label_tests_12.f03: Ditto.
      	* binding_label_tests_13.f03: Ditto.
      	* binding_label_tests_13_main.f03: Ditto.
      	* binding_label_tests_14.f03: Ditto.
      	* binding_label_tests_2.f03: Ditto.
      	* binding_label_tests_3.f03: Ditto.
      	* binding_label_tests_4.f03: Ditto.
      	* binding_label_tests_5.f03: Ditto.
      	* binding_label_tests_6.f03: Ditto.
      	* binding_label_tests_7.f03: Ditto.
      	* binding_label_tests_8.f03: Ditto.
      	* binding_label_tests_9.f03: Ditto.
      	* c_assoc.f90: Ditto.
      	* c_assoc_2.f03: Ditto.
      	* c_f_pointer_shape_test.f90: Ditto.
      	* c_f_pointer_tests.f90: Ditto.
      	* c_f_tests_driver.c: Ditto.
      	* c_funloc_tests.f03: Ditto.
      	* c_funloc_tests_2.f03: Ditto.
      	* c_funloc_tests_3.f03: Ditto.
      	* c_funloc_tests_3_funcs.c: Ditto.
      	* c_kind_params.f90: Ditto.
      	* c_kind_tests_2.f03: Ditto.
      	* c_kinds.c: Ditto.
      	* c_loc_driver.c: Ditto.
      	* c_loc_test.f90: Ditto.
      	* c_loc_tests_2.f03: Ditto.
      	* c_loc_tests_2_funcs.c: Ditto.
      	* c_loc_tests_3.f03: Ditto.
      	* c_loc_tests_4.f03: Ditto.
      	* c_loc_tests_5.f03: Ditto.
      	* c_loc_tests_6.f03: Ditto.
      	* c_loc_tests_7.f03: Ditto.
      	* c_loc_tests_8.f03: Ditto.
      	* c_ptr_tests.f03: Ditto.
      	* c_ptr_tests_10.f03: Ditto.
      	* c_ptr_tests_5.f03: Ditto.
      	* c_ptr_tests_7.f03: Ditto.
      	* c_ptr_tests_7_driver.c: Ditto.
      	* c_ptr_tests_8.f03: Ditto.
      	* c_ptr_tests_8_funcs.c: Ditto.
      	* c_ptr_tests_9.f03: Ditto.
      	* c_ptr_tests_driver.c: Ditto.
      	* c_size_t_driver.c: Ditto.
      	* c_size_t_test.f03: Ditto.
      	* com_block_driver.f90: Ditto.
      	* global_vars_c_init.f90: Ditto.
      	* global_vars_c_init_driver.c: Ditto.
      	* global_vars_f90_init.f90: Ditto.
      	* global_vars_f90_init_driver.c: Ditto.
      	* interop_params.f03: Ditto.
      	* iso_c_binding_only.f03: Ditto.
      	* iso_c_binding_rename_1.f03: Ditto.
      	* iso_c_binding_rename_1_driver.c: Ditto.
      	* iso_c_binding_rename_2.f03: Ditto.
      	* iso_c_binding_rename_2_driver.c: Ditto.
      	* kind_tests_2.f03: Ditto.
      	* kind_tests_3.f03: Ditto.
      	* module_md5_1.f90: Ditto.
      	* only_clause_main.c: Ditto.
      	* print_c_kinds.f90: Ditto.
      	* test_bind_c_parens.f03: Ditto.
      	* test_c_assoc.c: Ditto.
      	* test_com_block.f90: Ditto.
      	* test_common_binding_labels.f03: Ditto.
      	* test_common_binding_labels_2.f03: Ditto.
      	* test_common_binding_labels_2_main.f03: Ditto.
      	* test_common_binding_labels_3.f03: Ditto.
      	* test_common_binding_labels_3_main.f03: Ditto.
      	* test_only_clause.f90: Ditto.
      	* use_iso_c_binding.f90: Ditto.
      	* value_5.f90: Ditto.
      	* value_test.f90: Ditto.
      	* value_tests_f03.f90: Ditto.
      
      From-SVN: r126185
      a8b3b0b6
    • Douglas Gregor's avatar
      type_traits (__make_unsigned): Remove invalid wchar_t specialization. · 5edfe9e8
      Douglas Gregor authored
      2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>
      
      	* include/std/type_traits (__make_unsigned): Remove invalid
      	wchar_t specialization.
      	(__make_signed): Remove invalid wchar_t specialization.
      
      From-SVN: r126184
      5edfe9e8
    • GCC Administrator's avatar
      Daily bump. · a7141b79
      GCC Administrator authored
      From-SVN: r126182
      a7141b79
  2. Jul 01, 2007
    • Daniel Berlin's avatar
      tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle constants and ohter... · 4794afa5
      Daniel Berlin authored
      tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle constants and ohter expected operations explicitly...
      
      2007-07-01  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle constants
      	and ohter expected operations explicitly, change default to
      	gcc_unreachable.
      
      From-SVN: r126179
      4794afa5
    • Daniel Jacobowitz's avatar
      arm.c (arm_cannot_copy_insn_p): Do not expect a PARALLEL. · 10ae7c7b
      Daniel Jacobowitz authored
      	* config/arm/arm.c (arm_cannot_copy_insn_p): Do not expect a
      	PARALLEL.
      	* config/arm/arm.md (pic_add_dot_plus_four, pic_add_dot_plus_eight)
      	(tls_load_dot_plus_eight): Move the label number into the unspec.
      	* config/arm/thumb2.md (pic_load_dot_plus_four): Likewise.
      
      	* gcc.dg/tls/opt-14.c: New.
      
      From-SVN: r126178
      10ae7c7b
    • Ollie Wild's avatar
      name-lookup.c (ambiguous_decl): Fix case when new->value is hidden. · af92ab36
      Ollie Wild authored
      	* name-lookup.c (ambiguous_decl): Fix case when new->value is hidden.
      	(select_decl): Remove function.
      	(unqualified_namespace_lookup): Populate binding by calling
      	ambiguous_decl.  Remove select_decl call.
      	(lookup_qualified_name): Remove select_decl call.
      	* decl.c (lookup_and_check_tag): Check for ambiguous references.
      	* parser.c (cp_parser_elaborated_type_specifier): Skip redundant error
      	generation when name lookup is ambiguous.
      
      	* g++.dg/lookup/using16.C: New test.
      	* g++.dg/lookup/using17.C: New test.
      
      From-SVN: r126177
      af92ab36
    • Janne Blomqvist's avatar
      re PR fortran/32239 (optimize power in loops, use __builtin_powi instead of _gfortran_pow_r4_i4) · 31c97dfe
      Janne Blomqvist authored
      gcc/fortran:
      	
      2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/32239
      	* trans-expr.c (gfc_conv_power_op): Use builtin_powi for
      	real**int4 powers.
      	* f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
      	builtins table.
      
      	
      libgfortran:
      	
      2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/32239
      	* Makefile.am: Don't generate real**int4 pow functions.
      	* gfortran.map: Remove real**int4 pow symbols.
      	* Makefile.in: Regenerated.
      
      testsuite
      
      2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/32239
      	* gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90
      	(test_4): Use proper test for floating point equality.
      	(test_8): Likewise.
      
      From-SVN: r126175
      31c97dfe
    • Jerry DeLisle's avatar
      re PR fortran/32554 ([4.2 Only] Bug in P formatting) · c7b6844e
      Jerry DeLisle authored
      2007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/32554
      	* gfortran.dg/fmt_p_1.f90: New test.
      
      From-SVN: r126174
      c7b6844e
    • Jerry DeLisle's avatar
      re PR fortran/32554 ([4.2 Only] Bug in P formatting) · c767280a
      Jerry DeLisle authored
      2007-07-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/32554
      	* io/write.c (output_float): Set edigits to a fixed size, avoiding
      	variation in field width calculation and eliminate buffer overrun.
      
      From-SVN: r126173
      c767280a
    • Andreas Schwab's avatar
      * dwarf2out.c (initial_return_save): Define only if used. · 36bd4303
      Andreas Schwab authored
      From-SVN: r126170
      36bd4303
    • Richard Sandiford's avatar
      [multiple changes] · d4d7f1d1
      Richard Sandiford authored
      2007-07-01  Richard Sandiford  <richard@codesourcery.com>
      
      	Unreverting Richard's Revert of:
      
      	2007-06-27  Richard Sandiford  <richard@codesourcery.com>
      
      	* dce.c (deletable_insn_p_1): New function, split out from...
      	(deletable_insn_p): ...here.  Only treat bare USEs and CLOBBERs
      	specially, not those inside PARALLELs.  Remove BODY argument
      	and adjust recursive call accordingly.
      	(prescan_insns_for_dce): Update call to delete_insn_p.
      
      From-SVN: r126168
      d4d7f1d1
    • Vladimir Yanovsky's avatar
      Fix missed initialization of scc_nodes. · 7ee1ad84
      Vladimir Yanovsky authored
      
      Co-Authored-By: default avatarRevital Eres <eres@il.ibm.com>
      
      From-SVN: r126167
      7ee1ad84
    • Janne Blomqvist's avatar
      fortran frontend: · a6bd3804
      Janne Blomqvist authored
      	
      2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* trans.h: Remove decls for 64-bit allocation functions.
      	* trans-array.c (gfc_grow_array): Always pick the standard realloc
      	function decl.
      	(gfc_array_allocate): Likewise.
      	* trans-decl.c: Remove trees for 64-bit allocation functions.
      	(gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
      	allocations functions, use index_int_type for normal allocation
      	functions.
      
      libgfortran changelog:
      
      2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* runtime/memory.c (internal_realloc): Use index_type for size
      	argument instead of GFC_INTEGER_4.
      	(allocate_array): Likewise.
      	(allocate): Likewise, add ifdef around unnecessary check.
      	(internal_reallo64): Remove.
      	(allocate_array64): Remove.
      	(allocate64): Remove.
      	* gfortran.map: Remove symbols for 64-bit allocation functions.
      
      From-SVN: r126166
      a6bd3804
    • Ira Rosen's avatar
      vect-strided-store-u16-i4.c: Remove abort() from input initialization and fix... · c67e4bcd
      Ira Rosen authored
      vect-strided-store-u16-i4.c: Remove abort() from input initialization and fix dg-final check - the...
      
      	* gcc.dg/vect/vect-strided-store-u16-i4.c: Remove abort() from input
      	initialization and fix dg-final check - the initialization loop is
      	vectorizable.
      
      From-SVN: r126165
      c67e4bcd
    • Uros Bizjak's avatar
      re PR middle-end/32559 (ICE with vector arithmetic) · c22f6d33
      Uros Bizjak authored
              PR middle-end/32559
              * fold-const.c (fold-binary) [PLUS_EXPR]: Convert ~X + X to 1 or
              X + ~X to 1 only for INTEGRAL_TYPE_P type.
      
      testsuite/ChangeLog:
      
              PR middle-end/32559
              * gcc.dg/pr32559.c: New test.
      
      From-SVN: r126164
      c22f6d33
    • Uros Bizjak's avatar
      re PR tree-optimization/25371 (-ftree-vectorize results in internal compiler error on AMD64) · 344c77be
      Uros Bizjak authored
             PR tree-optimization/25371
             * gcc.dg/vect/pr25371.c: New test.
      
      From-SVN: r126163
      344c77be
    • Daniel Berlin's avatar
      tree-ssa-pre.c (is_exception_related): New function · b941a8ae
      Daniel Berlin authored
      2007-06-30  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree-ssa-pre.c (is_exception_related): New function
      	(can_value_number_operation): Use it.
      
      From-SVN: r126162
      b941a8ae
    • GCC Administrator's avatar
      Daily bump. · c0333e3d
      GCC Administrator authored
      From-SVN: r126160
      c0333e3d
  3. Jun 30, 2007
    • Joseph Myers's avatar
      configure.ac: Check for .gnu_attribute on MIPS. · dcb957d9
      Joseph Myers authored
      	* configure.ac: Check for .gnu_attribute on MIPS.
      	* configure, config.in: Regenerate.
      	* config/mips/mips.c (mips_file_start): If supported, output
      	attribute for floating-point ABI.
      
      From-SVN: r126157
      dcb957d9
Loading