1. 22 Jul, 2007 6 commits
    • re PR fortran/32710 (ICE: namelist and subroutine with the same name) · eec14ce5
      gcc/fortran:
      2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/32710
      	* parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
      	the current is a namelist.
      
      gcc/testsuite:
      2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/32710
      	* gfortran.dg/namelist_30.f90: New test.
      
      From-SVN: r126828
      Daniel Franke committed
    • ChangeLogs for r126826. · 26677eb8
      From-SVN: r126827
      Daniel Franke committed
    • re PR fortran/29962 (Initialization expressions) · e1633d82
      gcc/fortran:
      2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/29962
      	PR fortran/31253
      	PR fortran/31265
      	PR fortran/31639
      	* gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
      	generic, specific, actual_ok, noreturn into bits of a bitfield, 
      	added bits for inquiry, transformational, conversion.
      	* check.c (non_init_transformational): Removed, removed all callers.
      	* intrinsic.c (enum class): New.
      	(add_sym*): Replaced argument elemetal by enum class. Changed all
      	callers.
      	(add_functions): Assign appropriate classes to intrinsic functions.
      	(add_subroutines): Assign appropriate classes to intrinsic subroutines.
      	(add_conv): Set conversion attribute.
      	(gfc_init_expr_extensions): Removed, removed all callers.
      	(gfc_intrinsic_func_interface): Reimplemented check for non-standard
      	initializatione expressions.
      	* expr.c (check_specification_function): New.
      	(gfc_is_constant_expr): Added check for specification functions.
      	(check_init_expr_arguments): New.
      	(check_inquiry): Changed return value to MATCH, added checks for
      	inquiry functions defined by F2003.
      	(check_transformational): New.
      	(check_null): New.
      	(check_elemental): New.
      	(check_conversion): New.
      	(check_init_expr): Call new check functions, add more specific error
      	messages.
      
      gcc/testsuite:
      2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/29962
      	* gfortran.dg/array_initializer_1.f90: Removed warning.
      	* gfortran.dg/initialization_1.f90: Adjusted messages.
      	* gfortran.dg/nested_modules_6.f90: Removed warning.
      
      	PR fortran/31253
      	* gfortran.dg/initialization_7.f90: New test.
      
      	PR fortran/31639
      	* gfortran.dg/initialization_8.f90: New test.
      
      From-SVN: r126826
      Daniel Franke committed
    • re PR c++/30818 (templates and typedefs cause function prototype not to match) · 4195a767
      cp/
      	PR c++/30818
      	* typeck.c (structural_comptypes): No need to check
      	resolve_typename_type return value here.
      	* cp-tree.h (TYPENAME_IS_RESOLVING_P): New.
      	* pt.c (resolve_typename_type): Follow typename typedefs.  Return
      	original type rather than error_mark_node in case of failure.
      	* parser.c (cp_parser_nested_name_specifier_opt): Adjust
      	resolve_typename_type result check.
      	(cp_parser_direct_declarator, cp_parser_head,
      	cp_parser_constructor_declarator_p): Likewise.
      
      testsuite/
      	PR c++/30818
      	* g++.dg/template/crash47.C: Adjust errors.
      	* g++.dg/template/crash48.C: Adjust errors.
      	* g++.dg/template/typename12.C: New.
      	* g++.dg/template/typename13.C: New.
      	* g++.dg/template/typename14.C: New.
      	* g++.dg/template/typedef6.C: Adjust errors.
      
      From-SVN: r126825
      Nathan Sidwell committed
    • Add missing ChangeLog entry. · 7e24f16c
      From-SVN: r126824
      H.J. Lu committed
    • Daily bump. · 83dc3db9
      From-SVN: r126820
      GCC Administrator committed
  2. 21 Jul, 2007 8 commits
    • re PR fortran/32627 ([ISO Bind C] Accept c_f_pointer for TYPE) · 6ad5cf72
      2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
      
              PR fortran/32627
              * resolve.c (set_name_and_label): Set kind number for character
              version of c_f_pointer.
              (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
              that of the actual SHAPE arg.
              * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
      
      2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
      
              PR fortran/32627
              * libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
              for character/string arguments.
              * libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
              the optional SHAPE arg to be any valid integer kind.
              * libgfortran/gfortran.map: Add c_f_pointer_s0.
              * libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
              character kind.
              * libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
              c_f_pointer for complex and logical types.
              * libgfortran/gfortran.map: Add c_f_pointer versions for logical
              and complex types.
      
      2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
      
              PR fortran/32627
              * gfortran.dg/pr32627_driver.c: Driver for pr32627.
              * gfortran.dg/pr32627.f03: New test case.
              * gfortran.dg/c_f_pointer_logical.f03: New test case.
              * gfortran.dg/c_f_pointer_logical_driver.c: Driver for
              c_f_pointer_logical.
              * gfortran.dg/c_f_pointer_complex_driver.c: Driver for
              c_f_pointer_complex.
              * gfortran.dg/c_f_pointer_complex.f03: New test case.
              * gfortran.dg/c_f_pointer_shape_tests_2_driver.c: Driver for
              c_f_pointer_shape_tests_2.
              * gfortran.dg/c_f_pointer_shape_tests_2.f03: New test case.
      
      From-SVN: r126817
      Christopher D. Rickett committed
    • * genopinit.c (optabs): Missed commit from my previous commit. · 8e4c6d88
      From-SVN: r126814
      Uros Bizjak committed
    • optabs.h (enum optab_index): Add new OTI_signbit. · d0c9d431
              * optabs.h (enum optab_index): Add new OTI_signbit.
              (signbit_optab): Define corresponding macro.
              (enum insn_code signbit_optab[]): Remove array.
              * optabs.c (init_optabs): Initialize signbit_optab using init_optab.
              (expand_copysign_absneg): If back end provides signbit insn, use it
              instead of bit operations on floating point argument.
              * builtins.c (enum insn_code signbit_optab[]): Remove array.
              (expand_builtin_signbit): Check signbit_optab->handlers[].insn_code for
              availability of signbit insn.
      
              * config/i386/i386.md (signbit<mode>2): New insn pattern to implement
              signbitf, signbit and signbitl built-ins as inline x87 intrinsics when
              SSE mode is not active.
              (isinf<mode>2): Disable for mfpmath=sse,387.
      
      From-SVN: r126813
      Uros Bizjak committed
    • re PR fortran/32801 (USE of ISO_C_BINDING, ONLY: C_LOC causes compiler seg fault) · 21a77227
      2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
      
              PR fortran/32801
              * symbol.c (generate_isocbinding_symbol): Remove unnecessary
              conditional.
      
              PR fortran/32804
              * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
              deferred-shape arrays as args to C_LOC.  Fix bug in testing
              character args to C_LOC.
      
      2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
      
              PR fortran/32804
              * gfortran.dg/c_loc_tests_9.f03: New test case.
              * gfortran.dg/c_loc_tests_10.f03: Ditto.
      
      From-SVN: r126812
      Christopher D. Rickett committed
    • regclass.c (invalid_mode_change_p): Attach ATTRIBUTE_UNUSED to `class' parameter. · d3960cf4
      	* regclass.c (invalid_mode_change_p): Attach ATTRIBUTE_UNUSED to
      	`class' parameter.
      	* struct-equiv.c (note_local_live): Likewise for `y_regno'.
      
      From-SVN: r126811
      Ben Elliston committed
    • re PR fortran/32823 (internal compiler error: in gfc_trans_assignment_1) · ffd82975
              PR fortran/32823
              * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
              arguments passed, not just the first one. Adjust code to refer
              to "args[0]" instead of "arg" as a result.
      
              * gfortran.dg/int_2.f90: New test.
      
      From-SVN: r126810
      Lee Millward committed
    • Daily bump. · a2c996f3
      From-SVN: r126807
      GCC Administrator committed
  3. 20 Jul, 2007 8 commits
  4. 19 Jul, 2007 5 commits
  5. 18 Jul, 2007 13 commits
    • Makefile.in (D32PBIT_FUNCS): Add _sd_to_tf and _tf_to_sd. · a6c9b188
      2007-07-18  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* Makefile.in (D32PBIT_FUNCS): Add _sd_to_tf and _tf_to_sd.
      	(D64PBIT_FUNCS): Add _dd_to_tf and _tf_to_dd.
      	(D128PBIT_FUNCS): Add _td_to_tf and _tf_to_td.
      
      	* config/dfp-bit.c: Empty for TFmode conversions.
      
      From-SVN: r126735
      H.J. Lu committed
    • re PR fortran/32801 (USE of ISO_C_BINDING, ONLY: C_LOC causes compiler seg fault) · c00a2e6b
      2007-07-18  Christopher D. Rickett  <crickett@lanl.gov>
      
      	PR fortran/32801
      	* symbol.c (generate_isocbinding_symbol): Fix bug where
      	ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
      	ISOCBINDING_PTR.
      
      
      2007-07-18  Christopher D. Rickett  <crickett@lanl.gov>
      
      	PR fortran/32801
      	* gfortran.dg/pr32801.f03: New test case.
      
      From-SVN: r126732
      Christopher D. Rickett committed
    • Fix bootstrap on ia64, PR32764 · 0ef0421e
      2007-07-18  Caroline Tice  <ctice@apple.com>
              
              * var-tracking.c (find_src_status):  Check for  COND_EXEC insns
              and handle them correctly; check that src is not NULL before
              trying to use it.
              (find_src_set_src): Likewise.
      
      From-SVN: r126731
      Caroline Tice committed
    • re PR target/32641 (C99 fpclassify, isinf, isfinite, isnormal may raise FP exceptions) · dadda6ca
      fixincludes:
      	PR target/32641
      
      	* inclhack.def (solaris_math_4, solaris_math_5, solaris_math_6,
      	solaris_math_7): Constify and make FP exception-safe.
      	* tests/base/iso/math_c99.h: Update.
      
      	* fixincl.x: Regenerate.
      
      gcc/testsuite:
      	* gcc.dg/c99-math-double-1.c: Mark test variables as volatile.
      	Test negative numbers also.
      	* gcc.dg/c99-math-float-1.c: Likewise.
      	* gcc.dg/c99-math-long-double-1.c: Likewise.
      	* gcc.dg/c99-math.h: Check for FP exceptions.  Update for negative
      	test inputs.
      
      From-SVN: r126730
      Kaveh R. Ghazi committed
    • xtensa-config.h (XCHAL_HAVE_THREADPTR): New. · 2a48b790
      include/
      	* xtensa-config.h (XCHAL_HAVE_THREADPTR): New.
      	(XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I): New.
      gcc/
      	* config/xtensa/xtensa.c (xtensa_expand_mask_and_shift): New.
      	(struct alignment_context, init_alignment_context): New.
      	(xtensa_expand_compare_and_swap, xtensa_expand_atomic): New.
      	* config/xtensa/xtensa.h (XCHAL_HAVE_RELEASE_SYNC): Add default.
      	(XCHAL_HAVE_S32C1I): Likewise.
      	(TARGET_RELEASE_SYNC, TARGET_S32C1I): New.
      	* config/xtensa/xtensa.md (UNSPECV_MEMW): New constant.
      	(UNSPECV_S32RI, UNSPECV_S32C1I): Likewise.
      	(ATOMIC, HQI): New macros.
      	(memory_barrier, *memory_barrier): New.
      	(sync_lock_releasesi): New.
      	(sync_compare_and_swapsi, sync_compare_and_swap<mode>): New.
      	(sync_lock_test_and_set<mode>): New.
      	(sync_<atomic><mode>): New.
      	(sync_old_<atomic><mode>, sync_new_<atomic><mode>): New.
      	* config/xtensa/xtensa-protos.h (xtensa_expand_compare_and_swap): New.
      	(xtensa_expand_atomic): New.
      gcc/testsuite/	
      	* lib/target-supports.exp (check_effective_target_sync_int_long):
      	Enable for xtensa.
      	(check_effective_target_sync_char_short): Likewise.
      
      From-SVN: r126728
      Bob Wilson committed
    • re PR target/30652 (SSE expansion is missing for isinf() and other fpclassify functions) · 8a91c45b
      	PR target/30652
      
      	* builtins.c (expand_builtin_interclass_mathfn): Provide a generic
      	transformation for builtin ISNORMAL.
      	(expand_builtin): Handle BUILT_IN_ISNORMAL.
      	* builtins.def (BUILT_IN_ISNORMAL): New.
      	* doc/extend.texi: Document isnormal.
      
      testsuite:
      	* gcc.dg/pr28796-2.c: Add more cases.
      
      From-SVN: r126726
      Kaveh R. Ghazi committed
    • re PR target/30652 (SSE expansion is missing for isinf() and other fpclassify functions) · 0c8d3c2b
      	PR target/30652
      
      	* builtins.c (expand_builtin_interclass_mathfn): Allow for missing
      	optabs infrastructure.  Provide generic implementation for
      	FINITE/ISFINITE.
      	(expand_builtin): Handle FINITE/ISFINITE.
      	(fold_builtin_classify): Make ISFINITE canonical instead of FINITE.
      	(fold_builtin_1): Likewise.
      
      	* builtins.def (BUILT_IN_ISFINITE): New.
      
      	* doc/extend.texi: Document isfinite.
      
      testsuite:
      	* gcc.dg/pr28796-1.c: Add more cases.
      	* gcc.dg/pr28796-2.c: Likewise.
      
      From-SVN: r126725
      Kaveh R. Ghazi committed
    • re PR target/30652 (SSE expansion is missing for isinf() and other fpclassify functions) · 7faa1bbb
      	PR target/30652
      	PR middle-end/20558
      
      	* builtins.c (expand_builtin_interclass_mathfn): Provide a
      	generic fallback for isinf.
      	* c-cppbuiltin.c (builtin_define_float_constants): Move FP max
      	calculation code ...
      	* real.c (get_max_float): ... to here.
      	* real.h (get_max_float): New.
      
      testsuite:
      	* gcc.dg/pr28796-1.c: Add more cases.
      	* gcc.dg/pr28796-2.c: Likewise.
      
      From-SVN: r126724
      Kaveh R. Ghazi committed
    • re PR middle-end/32668 (The type-generic builtins apply default promotions) · b5d32c25
      	PR middle-end/32668
      
      	* builtin-attrs.def (ATTR_TYPEGENERIC,
      	ATTR_CONST_NOTHROW_TYPEGENERIC): New.
      
      	* builtins.def (BUILT_IN_ISINF, BUILT_IN_ISNAN,
      	BUILT_IN_ISGREATER, BUILT_IN_ISGREATEREQUAL, BUILT_IN_ISLESS,
      	BUILT_IN_ISLESSEQUAL, BUILT_IN_ISLESSGREATER,
      	BUILT_IN_ISUNORDERED): Use ATTR_CONST_NOTHROW_TYPEGENERIC.
      
      	* c-common.c (handle_type_generic_attribute): New.
      	(c_common_attribute_table): Add "type generic".
      
      	* c-typeck.c (convert_arguments): Handle "type generic" functions.
      
      From-SVN: r126723
      Kaveh R. Ghazi committed
    • tree-ssa-sccvn.c (try_to_simplify): Use valid_gimple_expression · c3e4e34d
      2007-07-18  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree-ssa-sccvn.c (try_to_simplify): Use valid_gimple_expression
      	* tree-ssa-propagate (valid_gimple_expression): Handle ADDR_EXPR
      	properly.
      
      From-SVN: r126721
      Daniel Berlin committed
    • re PR target/32808 (cris: ICE: RTL check: expected elt 0 type 'e' or 'u', have… · 9e19a50c
      re PR target/32808 (cris: ICE: RTL check: expected elt 0 type 'e' or 'u', have 'w' (rtx const_int) in cris_print_index, at config/cris/cris.c:499)
      
      	PR target/32808
      	* config/cris/cris.c (cris_print_index): Don't use XEXP before
      	checking that the operand is an expression.
      
      From-SVN: r126720
      Rask Ingemann Lambertsen committed
    • PR/other 30335 · b8a10943
      2007-07-19  Christoph von Wittich  <Christoph_vW@reactos.org>
      	    Danny Smith  <dannysmith@users.sourceforge.net>
      
      	PR/other 30335
      	* config/i386/host-mingw32.c (mingw32_gt_pch_use_address): Put
      	file mapping object in local namespace if Windows version later
      	than NT4
      
      
      Co-Authored-By: Danny Smith <dannysmith@users.sourceforge.net>
      
      From-SVN: r126719
      Christoph von Wittich committed
    • arm-protos.h (arm_cannot_force_const_mem): Declare. · 8426b956
      gcc/
      	* config/arm/arm-protos.h (arm_cannot_force_const_mem): Declare.
      	* config/arm/arm.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to
      	arm_cannot_force_const_mem.
      	(arm_cannot_force_const_mem): New function.
      	* config/arm/arm.h (ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P): New macro.
      	(LEGITIMATE_CONSTANT_P): Test arm_cannot_force_const_mem instead
      	of arm_tls_referenced_p.
      	* config/arm/arm.md (movsi): Split out-of-section constants when
      	ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P.
      	* config/arm/vxworks.h (ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P): Define.
      
      From-SVN: r126718
      Richard Sandiford committed