1. 06 Mar, 2007 9 commits
    • re PR target/23482 ([ColdFire] ICE in in final_scan_insn) · fc2241eb
      gcc/
      	PR target/23482
      	PR target/17114
      	* config/m68k/m68k-protos.h (m68k_legitimate_base_reg_p): Declare.
      	(m68k_legitimate_index_reg_p, m68k_legitimate_address_p): Likewise.
      	(m68k_matches_q_p, m68k_matches_u_p): Likewise.
      	* config/m68k/m68k.h (EXTRA_CONSTRAINT): Use m68k_matches_q_p
      	and m68k_matches_u_p.
      	(PCREL_GENERAL_OPERAND_OK, LEGITIMATE_BASE_REG_P): Delete.
      	(INDIRECTABLE_1_ADDRESS_P, GO_IF_NONINDEXED_ADDRESS): Delete.
      	(GO_IF_INDEXABLE_BASE, GO_IF_INDEXING, GO_IF_INDEXED_ADDRESS): Delete.
      	(LEGITIMATE_INDEX_REG_P, LEGITIMATE_INDEX_P): Delete.
      	(GO_IF_COLDFIRE_FPU_LEGITIMATE_ADDRESS): Delete.
      	(REG_STRICT_P): New macro.
      	(LEGITIMATE_PIC_OPERAND_P): Use REG_STRICT_P rather than
      	PCREL_GENERAL_OPERAND_OK.
      	(REG_OK_FOR_BASE_P): Merge definitions.  Use REG_STRICT_P and
      	m68k_legitimate_base_reg_p.
      	(REG_MODE_OK_FOR_INDEX_P): Likewise m68k_legitimate_index_reg_p.
      	(GO_IF_LEGITIMATE_ADDRESS): Likewise m68k_legitimate_address_p.
      	(PIC_CASE_VECTOR_ADDRESS): Update comment.
      	* config/m68k/m68k.c (m68k_address): New structure.
      	(m68k_legitimate_base_reg_p, m68k_legitimate_index_reg_p)
      	(m68k_decompose_index, m68k_legitimate_constant_address_p)
      	(m68k_jump_table_ref_p, m68k_decompose_address)
      	(m68k_legitimate_address_p, m68k_legitimate_mem_p, m68k_matches_q_p)
      	(m68k_matches_u_p): New functions.
      	(print_operand_address): Rewrite to use m68k_decompose_index.
      
      From-SVN: r122604
      Richard Sandiford committed
    • * gfortran.texi (GFortran and G77): Rewrite completely. · 4b4eb648
      From-SVN: r122602
      Brooks Moses committed
    • * match.c (gfc_match_name): Expanded comment. · 090021e9
      From-SVN: r122601
      Brooks Moses committed
    • gfortran.texi (Old-style kind specifications): Document special handling of… · b2b81a3f
      gfortran.texi (Old-style kind specifications): Document special handling of old-style kind specifiers for COMPLEX.
      
      * gfortran.texi (Old-style kind specifications): Document
      special handling of old-style kind specifiers for COMPLEX.
      * decl.c (gfc_match_old_kind_spec): Document kind/bytesize
      assumptions for COMPLEX in comment.
      
      From-SVN: r122599
      Brooks Moses committed
    • re PR other/31050 ([4.1] gcc --version reports wrong year.) · 676a7884
      PR 31050
      * gfortranspec.c (lang_specific_driver): Update program
      name and copyright date.
      
      From-SVN: r122597
      Brooks Moses committed
    • 2007/03/05 David Taylor <dtaylor@emc.com> · 9e8f6959
      2007/03/05  David Taylor  <dtaylor@emc.com>
      * gcc.c: Correct copyright date in --version output.
      
      From-SVN: r122596
      David Taylor committed
    • pa.md: In unamed move patterns... · 50f9c211
      	* pa.md: In unamed move patterns, disparge copies between general
      	and floating point registers using '?' modifier.  Don't include 'f'
      	constraint for register preferences in DImode, SImode, HImode and
      	QImode patterns.  Likewise for 'r' in DFmode and SFmode patterns.
      	Remove constraints for copies between general and floating registers
      	in soft-float DFmode pattern.
      	(movdf): Fail if operand1 is a CONST_DOUBLE and operand0 is a hard
      	floating register.
      	(movsf): Likewise.
      
      From-SVN: r122593
      John David Anglin committed
    • c-common.c (targetcm): Add. · 1f1d5130
      	* c-common.c (targetcm): Add.   
      	* c-opts.c (c_common_handle_option): Handle language specific
      	target options.
      	* opts.c (handle_option): Verify language for target options, if
      	any are given.
      	* opth-gen.awk: Add CL_LANG_ALL.
      	* target-def.h (TARGET_HANDLE_C_OPTION): Add.
      	(TARGETCM_INITIALIZER): Add.
      	* target.h (struct gcc_targetcm): Add.
      	(targetcm): Add.
      	* targhooks.c (default_handle_c_option): Add.
      	* targhooks.h (default_handle_c_option): Add.
      	* doc/tm.texi (TARGET_HANDLE_C_OPTION): Add.
      
      	* config/darwin.opt (iframework): Add.
      	* config/darwin.h (TARGET_HAS_TARGETCM): Add.
      	* config/darwin-c.c (handle_c_option): Add.
      	(TARGET_HANDLE_C_OPTION): Add.
      	(targetcm): Add.
      	* doc/invoke.texi (Darwin Options): Add -iframework.
      
      From-SVN: r122590
      Mike Stump committed
    • Daily bump. · 20114127
      From-SVN: r122587
      GCC Administrator committed
  2. 05 Mar, 2007 23 commits
  3. 04 Mar, 2007 8 commits
    • re PR other/30465 (Duplicated overflow warning) · f73fe417
      2007-03-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
      
      	PR other/30465
      	* c-common.c (convert_and_check): Don't give warnings for
      	conversion if 'expr' already overflowed.
      
      testsuite/
      	* gcc.dg/multiple-overflow-warn-3.c: New.
      	* g++.dg/warn/multiple-overflow-warn-3.C: New.
      
      From-SVN: r122534
      Manuel López-Ibáñez committed
    • acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global. · af13a7a6
      2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
      	* configure.host (c_model): Set default to c_global.
      	* configure: Regenerate.
      	* include/Makefile.am (c_compatibility_headers_extra): Make
      	conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
      	(c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
      	(c_compatibility_headers): Make conditional on c/c_std/c_global.
      	* include/Makefile.in: Regenerate.
      	* docs/html/configopts.html: Add c_global information to
      	--enable-cheaders. Eventually, "c_std" should mean "C" includes
      	that are in namespace std, with optional C++ "C" compatibility
      	includes to inject into global scope. And "c_global" should mean
      	"C" includes that are in the global namespace, with C++ includes
      	injecting into namespace std and no C++ "C" compatibility
      	includes.
       
      2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
      	Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
      	Add _GLIBCXX_TR1 as namespace macro.
      	Add namespace associations for std::__cxx200x conditionally.
      
      	* include/c_compatibility/assert.h: Correct doxygen markup,
      	conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
      	* include/c_compatibility/ctype.h: Same.
      	* include/c_compatibility/errno.h: Same.
      	* include/c_compatibility/float.h: Same.
      	* include/c_compatibility/iso646.h: Same.
      	* include/c_compatibility/limits.h: Same.
      	* include/c_compatibility/locale.h: Same.
      	* include/c_compatibility/math.h: Same.
      	* include/c_compatibility/setjmp.h: Same.
      	* include/c_compatibility/signal.h: Same.
      	* include/c_compatibility/stdarg.h: Same.
      	* include/c_compatibility/stddef.h: Same.
      	* include/c_compatibility/stdio.h: Same.
      	* include/c_compatibility/stdlib.h: Same.
      	* include/c_compatibility/string.h: Same.
      	* include/c_compatibility/time.h: Same.
      	* include/c_compatibility/wchar.h: Same.
      	* include/c_compatibility/wctype.h: Same.
      
      	* include/c_compatibility/complex.h: Add.
      	* include/c_compatibility/fenv.h: Same.
      	* include/c_compatibility/inttypes.h: Same.
      	* include/c_compatibility/stdbool.h: Same.
      	* include/c_compatibility/stdint.h: Same.
      	* include/c_compatibility/tgmath.h: Same.
      
      	* include/c_global/cassert: Add, use include_next, use C++0x features
      	if -std=c++0x.
      	* include/c_global/cctype: Same.
      	* include/c_global/cerrno: Same.
      	* include/c_global/cfloat: Same.
      	* include/c_global/ciso646: Same.
      	* include/c_global/climits: Same.
      	* include/c_global/clocale: Same.
      	* include/c_global/cmath: Same.
      	* include/c_global/cmath.tcc: Same.
      	* include/c_global/csetjmp: Same.
      	* include/c_global/csignal: Same.
      	* include/c_global/cstdarg: Same.
      	* include/c_global/cstddef: Same.
      	* include/c_global/cstdio: Same.
      	* include/c_global/cstdlib: Same.
      	* include/c_global/cstring: Same.
      	* include/c_global/ctime: Same.
      	* include/c_global/cwchar: Same.
      	* include/c_global/cwctype: Same.
      
      	* include/c_global/ccomplex: Add.
      	* include/c_global/cfenv: Add.
      	* include/c_global/cinttypes: Add. 
      	* include/c_global/cstdbool: Add.
      	* include/c_global/cstdint: Add.
      	* include/c_global/ctgmath: Add.
      
      	* include/std/algorithm: Use C++0x features if -std=c++0x.	
      	* include/std/bitset: Same.
      	* include/std/complex: Same.
      	* include/std/deque: Same.
      	* include/std/fstream: Same.
      	* include/std/functional: Same.
      	* include/std/iomanip: Same.
      	* include/std/ios: Same.
      	* include/std/iosfwd: Same.
      	* include/std/iostream: Same.
      	* include/std/istream: Same.
      	* include/std/iterator: Same.
      	* include/std/limits: Same.
      	* include/std/list: Same.
      	* include/std/locale: Same.
      	* include/std/map: Same.
      	* include/std/memory: Same.
      	* include/std/numeric: Same.
      	* include/std/ostream: Same.
      	* include/std/queue: Same.
      	* include/std/set: Same.
      	* include/std/sstream: Same.
      	* include/std/stack: Same.
      	* include/std/stdexcept: Same.
      	* include/std/streambuf: Same.
      	* include/std/string: Same.
      	* include/std/utility: Same.
      	* include/std/valarray: Same.
      	* include/std/vector: Same.
      
      	* include/std/array: Add.
      	* include/std/random: Add.
      	* include/std/regex: Add.
      	* include/std/tuple: Add.
      	* include/std/type_traits: Add.
      	* include/std/unordered_map: Add.
      	* include/std/unordered_set: Add.
      	* include/std/c++0x_warning.h: Add.
      	
      	* include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
      	* include/tr1/boost_shared_ptr.h: Same.
      	* include/tr1/cctype: Same.
      	* include/tr1/cfenv: Same.
      	* include/tr1/cinttypes: Same.
      	* include/tr1/cmath: Same.
      	* include/tr1/common.h: Same.
      	* include/tr1/complex: Same.
      	* include/tr1/cstdint: Same.
      	* include/tr1/cstdio: Same.
      	* include/tr1/cstdlib: Same.
      	* include/tr1/cwchar: Same.
      	* include/tr1/cwctype: Same.
      	* include/tr1/functional: Same.
      	* include/tr1/functional_hash.h: Same.
      	* include/tr1/functional_iterate.h: Same.
      	* include/tr1/hashtable: Same.
      	* include/tr1/hashtable_policy.h: Same.
      	* include/tr1/math.h: Same.
      	* include/tr1/memory: Same.
      	* include/tr1/random: Same.
      	* include/tr1/random.tcc: Same.
      	* include/tr1/ref_fwd.h: Same.
      	* include/tr1/repeat.h: Same.
      	* include/tr1/stdlib.h: Same.
      	* include/tr1/tuple: Same.
      	* include/tr1/tuple_iterate.h: Same.
      	* include/tr1/type_traits: Same.
      	* include/tr1/type_traits_fwd.h: Same.
      	* include/tr1/unordered_map: Same.
      	* include/tr1/unordered_set: Same.
      	* include/tr1/utility: Same.
      
      	* include/tr1/ccomplex: Add.
      	* include/tr1/complex.h: Add.
      	* include/tr1/regex: Add.
      
      	* include/Makefile.am: Add C++0x headers, "C" compatibility headers.
      	* include/Makefile.in: Regenerate.
      
      	* testsuite/tr1/headers.cc: Add in regex/complex.
      
      	* testsuite/17_intro/headers/c++200x/all.cc: New.
      	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
      	* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
      	* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
      	* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
      	* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
      	* testsuite/20_util/enable_shared_from_this/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
      	* testsuite/20_util/headers/functional/
      	using_namespace_std_placeholders.cc: Same.
      	* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
      	* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
      	* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
      	* testsuite/20_util/shared_ptr/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/20_util/weak_ptr/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/array/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/hash/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
      	* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/tuple/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_map/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_multimap/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_multiset/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_set/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
      	* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
      	* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
      	* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
      
      	* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
      	* testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
      	* testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
      
      From-SVN: r122533
      Benjamin Kosnik committed
    • re PR c++/30895 (ICE with complex values in template parameter) · 2a2193e0
      2007-03-04  Simon Martin  <simartin@users.sourceforge.net>
      
      	PR c++/30895
      	* tree.c (cp_tree_equal): Properly handle COMPLEX_CST trees.
      
      From-SVN: r122532
      Simon Martin committed
    • re PR middle-end/30744 (ICE in compare_values, at tree-vrp.c:466) · 270d43bf
      
      	PR middle-end/30744
      	* fold-const.c (fold_comparison): Enforce type consistency when
      	transforming ~X op ~Y to Y op X, and ~X op C to X op' ~C.
      
      	* gcc.dg/pr30744-1.c: New test case.
      
      From-SVN: r122531
      Roger Sayle committed
    • c_by_val.c: Use _Complex instead of a struct. · 3af83686
      2007-03-04  Tobias Burnus  <burnus@net-b.de>
      
             * gfortran.dg/c_by_val.c: Use _Complex instead of a struct.
      
      From-SVN: r122530
      Tobias Burnus committed
    • Add missing changelog entry: · 5ca09e73
      	* config/i386/driver-i386.c (describe_cache, detect_caches_amd,
      	decode_caches_intel, detect_caches_intel): New functions.
      	(host_detect_local_cpu): Use detect_caches_amd and
      	detect_caches_intel.
      
      From-SVN: r122529
      Zdenek Dvorak committed
    • tree-ssa-address.c (create_mem_ref): Do not put an expression containing a cast… · 69bd3423
      tree-ssa-address.c (create_mem_ref): Do not put an expression containing a cast to the base of TARGET_MEM_REF.
      
      	* tree-ssa-address.c (create_mem_ref): Do not put an expression
      	containing a cast to the base of TARGET_MEM_REF.
      
      From-SVN: r122528
      Zdenek Dvorak committed
    • Remove spurious whitespace from error message. · 23204428
      From-SVN: r122525
      Martin Michlmayr committed