1. 01 Feb, 2005 30 commits
    • sourcebuild.texi (Test directives): Describe selector expressions. · 8d2d2ec6
      	* doc/sourcebuild.texi (Test directives): Describe selector
      	expressions.
      
      	* lib/gcc-dg.exp (selector_opd, selector_list, selector_expression):
      	New procs.
      	(dg-process-target (local override)): Handle selector expressions.
      
      From-SVN: r94551
      Janis Johnson committed
    • README: Describe tests in source directory. · 91442c20
      	* gcc.test-framework/README: Describe tests in source directory.
      	* gcc.test-framework/test-framework.awk: Handle dg- tests.
      	* gcc.test-framework/test-framework.exp: Handle dg- tests.
      	* gcc.test-framework/dg-bogus-exp-P.c: New test.
      	* gcc.test-framework/dg-bogus-exp-XF.c: New test.
      	* gcc.test-framework/dg-do-assemble-exp-P.c: New test.
      	* gcc.test-framework/dg-do-compile-exp-P.c: New test.
      	* gcc.test-framework/dg-do-link-exp-P.c: New test.
      	* gcc.test-framework/dg-do-run-exp-P.c: New test.
      	* gcc.test-framework/dg-dot-run-exp-P.c: New test.
      	* gcc.test-framework/dg-dot-run-exp-U.c: New test.
      	* gcc.test-framework/dg-dox-run-exp-XF.c: New test.
      	* gcc.test-framework/dg-error-exp-P.c: New test.
      	* gcc.test-framework/dg-error-exp-XP.c: New test.
      	* gcc.test-framework/dg-excess-errors-exp-XF.c: New test.
      	* gcc.test-framework/dg-excess-errors-exp-XP.c: New test.
      	* gcc.test-framework/dg-output-exp-P.c: New test.
      	* gcc.test-framework/dg-output-exp-XF.c: New test.
      	* gcc.test-framework/dg-warning-exp-P.c: New test.
      	* gcc.misc-tests/dg-1.c: Remove.
      	* gcc.misc-tests/dg-2.c: Remove.
      	* gcc.misc-tests/dg-3.c: Remove.
      	* gcc.misc-tests/dg-4.c: Remove.
      	* gcc.misc-tests/dg-5.c: Remove.
      	* gcc.misc-tests/dg-6.c: Remove.
      	* gcc.misc-tests/dg-7.c: Remove.
      	* gcc.misc-tests/dg-8.c: Remove.
      	* gcc.misc-tests/dg-9.c: Remove.
      	* gcc.misc-tests/dg-10.c: Remove.
      	* gcc.misc-tests/dg-11.c: Remove.
      	* gcc.misc-tests/dg-12.c: Remove.
      	* gcc.misc-tests/dg-test.exp: Remove.
      
      From-SVN: r94550
      Janis Johnson committed
    • test-framework.awk: Change recording and printing of passes and failures. · 0e7eed46
      	* gcc.test-framework/test-framework.awk: Change recording and
      	printing of passes and failures.
      
      From-SVN: r94549
      Janis Johnson committed
    • gcc.test-framework: New directory. · 395909dd
      2005-02-01  Janis Johnson  <janis187@us.ibm.com>
      
      	* gcc.test-framework: New directory.
      	* gcc.test-framework/README: New.
      	* gcc.test-framework/test-framework.exp: New.
      	* gcc.test-framework/test-framework.awk: New.
      	* gcc.test-framework/gen_directive_tests: New.
      
      From-SVN: r94548
      Janis Johnson committed
    • revert: gjavah.c (print_field_info): Mark static data members of floating-point… · 22f8a068
      revert: gjavah.c (print_field_info): Mark static data members of floating-point type with "__extension__".
      
      	Revert:
      	2005-01-31  Mark Mitchell  <mark@codesourcery.com>
      	* gjavah.c (print_field_info): Mark static data members of
      	floating-point type with "__extension__".
      
      From-SVN: r94547
      Mark Mitchell committed
    • config.gcc (powerpc64-*-linux*): Default to -m64 also for specific 64-bit CPUs. · d1c8addb
      2005-02-01  Segher Boessenkool  <segher@kernel.crashing.org>
      
      	* config.gcc (powerpc64-*-linux*): Default to -m64 also for
      	specific 64-bit CPUs.
      
      From-SVN: r94545
      Segher Boessenkool committed
    • (lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it. · 9646f148
      2005-02-01  James A. Morrison  <phython@gcc.gnu.org>
      
              * (lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.
      
      From-SVN: r94544
      James A. Morrison committed
    • parse.y: Reformat comments. · 22f51792
      2005-02-01  James A. Morrison  <phython@gcc.gnu.org>
      
              * parse.y: Reformat comments.
              * treetree.c: Likewise.
              * treetree.h: Likewise.
      
      From-SVN: r94543
      James A. Morrison committed
    • treelang.exp: Fix comment typos. · 596d4d61
      2005-02-01  James A. Morrison  <phython@gcc.gnu.org>
      
              * lib/treelang.exp: Fix comment typos.
              (treelang_target_compile): Don't append libs=-ltreelang to options.
      
      From-SVN: r94542
      James A. Morrison committed
    • re PR target/16201 (Assembler messages:Error: bad immediate value for offset (4116)) · 6555b6bd
      PR target/16201
      * arm.c (arm_eliminable_register): New function.
      (adjacent_mem_locations): Don't allow eliminable registers.  Use
      HOST_WIDE_INT for address offsets.
      * arm-protos.h (arm_eliminable_register): Add prototype.
      
      From-SVN: r94540
      Richard Earnshaw committed
    • cpp_type_traits.h: Rename _M_type fields to __value... · 4d73fac9
      2005-02-01  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/bits/cpp_type_traits.h: Rename _M_type fields to
      	__value, except for __enable_if, _M_type -> __type, consistently
      	with the other traits.
      	* include/bits/stl_algobase.h: Tweak consistently.
      	* include/bits/stl_tree.h: Likewise.
      	* include/bits/valarray_array.h: Likewise.
      	* include/c_std/std_cmath.h: Likewise.
      	* include/debug/safe_iterator.h: Likewise.
      	* include/std/std_complex.h: Likewise.
      
      From-SVN: r94538
      Paolo Carlini committed
    • re PR rtl-optimization/15242 (pessimization of "goto *") · bbcb0c05
      	PR optimization/15242
      	* params.def (PARAM_MAX_GOTO_DUPLICATION_INSNS): New param.
      	* basic-block.h (duplicate_computed_gotos): Add prototype.
      	* bb-reorder.c (duplicate_computed_gotos): New function to
      	duplicate sufficiently small blocks ending in a computed jump.
      	* passes.c (rest_of_compilation): Call duplicate_computed_gotos
      	if not optimizing for size.
      	* cfgcleanup.c (try_crossjump_bb): If not optimizing for size,
      	never do tail merging for blocks ending in a computed jump.
      	* doc/invoke.texi: Document the max-goto-duplication-insns param.
      
      From-SVN: r94531
      Steven Bosscher committed
    • re PR libfortran/19363 (List directed write of Infinity and NaN has regressed) · e88334a6
      2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>
      
      	PR libgfortran/19363
      	PR libgfortran/19691
      	* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
      
      From-SVN: r94530
      Paul Thomas committed
    • Patch from Richard Sandiford <rsandifo@redhat.com> · 9c0a30c3
      	* reload1.c (choose_reload_regs): Prevent the find_equiv_reg() code
      	from inheriting a subreg equivalence with a non-spill register.
      
      	* tree.h (DECL_FUNCTION_CODE): Document that it is overloaded.
      
      From-SVN: r94529
      Eric Botcazou committed
    • parser.c (cp_parser_primary_expression): Don't complain about floating-point… · 8c94c75a
      parser.c (cp_parser_primary_expression): Don't complain about floating-point literals in integral constant expressions...
      
      	* parser.c (cp_parser_primary_expression): Don't complain about
      	floating-point literals in integral constant expressions when
      	!pedantic.
      
      	* gjavah.c (print_field_info): Mark static data members of
      	floating-point type with "__extension__".
      
      From-SVN: r94527
      Mark Mitchell committed
    • crossconfig.m4: Repair Solaris cross bits for strtold and strtof. · ddf2a54a
      
      2005-01-31  Brad Spencer  <spencer@infointeractive.com>
      
      	* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
      	* configure: Regenerated.
      
      From-SVN: r94526
      Brad Spencer committed
    • frv.c (movcc_fp_destination_operand): New. · 7b150713
      * config/frv/frv.c (movcc_fp_destination_operand): New.
      (gpr_or_memory_operand): Fix typo in comment.
      (gpr_or_memory_operand_with_scratch): New.
      * config/frv/frv.h (PREDICATE_CODES): Add the two new predicates.
      * config/frv/frv.md (movcc_fp, movcc_fp_internal): Use
      movcc_fp_destination_operand.
      (reload_incc_fp): Use gpr_or_memory_operand_with_scratch.
      Legitimize memory addresses using a scratch register.
      
      From-SVN: r94523
      Alexandre Oliva committed
    • re PR c++/18757 (ICE (on invalid) in get_innermost_template_args) · c8a7ed43
      gcc/cp/ChangeLog:
      PR c++/18757
      PR c++/19366
      PR c++/19499
      * parser.c (cp_parser_template_id): Revert 2004-12-09's patch.
      Issue an error when creating the template id.
      * pt.c (fn_type_unification): Return early if the explicit
      template arg list is an error_mark_node.
      gcc/testsuite/ChangeLog:
      * g++.dg/parse/typename7.C: Adjust error messages.
      
      From-SVN: r94520
      Alexandre Oliva committed
    • tree-into-ssa.c (mark_def_sites_global_data): Make KILLS bitmap a sparse bitmap… · 7d793e36
      tree-into-ssa.c (mark_def_sites_global_data): Make KILLS bitmap a sparse bitmap instead of a simple bitmap.
      
              * tree-into-ssa.c (mark_def_sites_global_data): Make KILLS
              bitmap a sparse bitmap instead of a simple bitmap.
              (mark_def_sites_initialize_block):  Corresponding changes.
              (ssa_mark_def_sites_initialize_block): Likewise.
              (ssa_mark_phi_uses): Likewise.
              (mark_def_site, ssa_mark_def_sites): Likewise.
              (mark_def_site_blocks): Likewise.
              (rewrite_ssa_into_ssa): Likewise.
      
      From-SVN: r94519
      Jeff Law committed
    • tree-ssa-dom.c (record_cond): Pass correct variable type for last argument to… · 5746637c
      tree-ssa-dom.c (record_cond): Pass correct variable type for last argument to htab_find_slot_with_hash.
      
              * tree-ssa-dom.c (record_cond): Pass correct variable type
              for last argument to htab_find_slot_with_hash.
      
      From-SVN: r94517
      Jeff Law committed
    • fold-const.c (fold, [...]): Do not lose side effects when optimizing 0 % X. · dc5d4efb
      
      	* fold-const.c (fold, case CEIL_MOD_EXPR): Do not lose side
      	effects when optimizing 0 % X.  Do not try to optimize X % 0.
      
      	* gcc.c-torture/execute/20050131-1.c: New test.
      	* gcc.dg/wcaselabel.c: New test.
      
      From-SVN: r94516
      Jeff Law committed
    • Fix typo in Richard Henderson's IA-64 vector patch. · 3dcec1e9
      * config/ia64/itanium1.md (1_scall bypass): Change 2_mmalua to
      1_mmalua.
      
      From-SVN: r94515
      James E Wilson committed
    • mips.c (override_options): Warn if -mint64 is used. · fc474307
      2005-02-01  Eric Christopher  <echristo@redhat.com>
      
      	* config/mips/mips.c (override_options): Warn if -mint64
      	is used.
      	* doc/invoke.texi (MIPS Options): Document that -mint64 is
      	deprecated.
      
      From-SVN: r94514
      Eric Christopher committed
    • re PR java/9157 (SEGV on bad java source) · 7f75bb83
              PR java/9157
              * parse.y (build_string_concatenation): Remove redundant if.
              (patch_conditional_expr): Attempt to patch_string() the condition
              of a ?: as well, in addition to its other operands.
      
      From-SVN: r94513
      Ranjit Mathew committed
    • decl.c (build_enumerator): Do not issue duplicate error messages about invalid… · 93678513
      decl.c (build_enumerator): Do not issue duplicate error messages about invalid enumeration constants.
      
      	* decl.c (build_enumerator): Do not issue duplicate error messages
      	about invalid enumeration constants.
      	* parser.c (cp_parser_non_integral_constant_expression): Always
      	set parser->non_integral_constant_expression_p.
      	(cp_parser_primary_expression): Add cast_p parameter.  Issue
      	errors about invalid uses of floating-point literals in
      	cast-expressions.
      	(cp_parser_postfix_expression): Add cast_p parameter.
      	(cp_parser_open_square_expression): Pass it.
      	(cp_parser_parenthesized_expression_list): Add cast_p parameter.
      	(cp_parser_unary_expression): Likewise.
      	(cp_parser_new_placement): Pass it.
      	(cp_parser_direct_new_declarator): Likewise.
      	(cp_parser_new_initializer): Likewise.
      	(cp_parser_cast_expression): Add cast_p parameter.
      	(cp_parser_binary_expression): Likewise.
      	(cp_parser_question_colon_clause): Likewise.
      	(cp_parser_assignment_expression): Likewise.
      	(cp_parser_expression): Likewise.
      	(cp_parser_constant_expression): If an integral constant
      	expression is invalid, return error_mark_node.
      	(cp_parser_expression_statement): Pass cast_p.
      	(cp_parser_condition): Likewise.
      	(cp_parser_iteration_statement): Likewise.
      	(cp_parser_jump_statement): Likewise.
      	(cp_parser_mem_initializer): Likewise.
      	(cp_parser_template_argument): Likewise.
      	(cp_parser_parameter_declaration): Likewise.
      	(cp_parser_initializer): Likewise.
      	(cp_parser_throw_expression): Likewise.
      	(cp_parser_attribute_list): Likewise.
      	(cp_parser_simple_cast_expression): Likewise.
      	(cp_parser_functional_cast): Likewise.
      	(cp_parser_late_parsing_default_args): Likewise.
      	(cp_parser_sizeof_operand): Save/restore
      	non_integral_constant_expression_p.
      
      	* include/std/std_limits.h (numeric_limits<float>::has_denorm):
      	Add required cast.
      	(numeric_limits<double>::has_denorm): Likewise.
      	(numeric_limits<long double>::has_denorm): Likewise.
      
      	* g++.dg/other/warning1.C: Adjust error messags.
      	* g++.dg/parse/constant5.C: New test.
      
      From-SVN: r94512
      Mark Mitchell committed
    • * cse.c (get_cse_reg_info): Update a comment. · 782c0a3e
      From-SVN: r94511
      Kazu Hirata committed
    • Daily bump. · 74276db1
      From-SVN: r94509
      GCC Administrator committed
    • cse.c (cse_reg_info): Remove hash_next, next, regno. · bc5e3b54
      	* cse.c (cse_reg_info): Remove hash_next, next, regno.  Add
      	timestamp.
      	(cse_reg_info_list, cse_reg_info_list_free, REGHASH_SHIFT,
      	REGHASH_SIZE, REGHASH_MASK, reg_hash, REGHASH_FN,
      	cached_cse_reg_info, GET_CSE_REG_INFO): Remove.
      	(cached_regno): Initialize to INVALID_REGNUM.
      	(cse_reg_info_table_size,
      	cse_reg_info_table_first_uninitialized,
      	cse_reg_info_timestamp): New.
      	(REG_TICK, REG_IN_TABLE, SUBREG_TICKED, REG_QTY): Use
      	get_cse_reg_info.
      	(init_cse_reg_info, get_cse_reg_info_1): New.
      	(get_cse_reg_info): Cache the last look-up.
      	(new_basic_block): Update the code to clear mappings from
      	registers to cse_reg_info entries.
      	(cse_main): Call init_cse_reg_info.
      
      From-SVN: r94506
      Kazu Hirata committed
    • re PR c/19333 (C front end accepts arrays of incomplete types) · b4519d39
      gcc/
              PR c/19333
              * c-decl.c (start_decl): Do not warn about arrays of elements with
              an incomplete type here.
              (grokdeclarator): Do it here by making a pedwarn an error.
              * c-typeck.c (push_init_level): If there were previous errors with
              the constructor type, do not warn about braces for initializers.
              (process_init_element): Likewise for excess initializer elements.
      
      testsuite/
              PR c/19333
              * testsuite/gcc.c-torture/compile/20011130-1.c: Reorder to make
              the test case valid.
              * testsuite/gcc.dg/20030815-1.c: Remove invalid tests.
              * testsuite/gcc.dg/array-7.c: Adjust expected result.
              * testsuite/gcc.dg/pr18596-3.c: Likewise.
              * testsuite/gcc.dg/noncompile/20000901-1.c: Likewise.
              * testsuite/gcc.dg/noncompile/init-2.c: Likewise.
              * testsuite/gcc.dg/noncompile/init-4.c: Likewise.
      
      From-SVN: r94505
      Steven Bosscher committed
  2. 31 Jan, 2005 10 commits
    • extend.texi (nested functions): Fix linkage description. · 28697267
      2005-01-31  Dale Johannesen  <dalej@apple.com>
      
      	* doc/extend.texi (nested functions): Fix linkage description.
      	Clarify that static is not allowed.
      
      From-SVN: r94499
      Dale Johannesen committed
    • * cse.c (delete_trivially_dead_insn): Don't iterate. · 65e9fa10
      From-SVN: r94498
      Kazu Hirata committed
    • rs6000.md (copysignsf3): New expand. · 0530bc70
      2005-01-31  Andrew Pinski  <pinskia@physics.uc.edu>
      
              * config/rs6000/rs6000.md (copysignsf3): New expand.
              (copysigndf3): Likewise.
      
      From-SVN: r94497
      Andrew Pinski committed
    • parser.c (cp_lexer_new_main): Get the first token, first, before doing anything. · 3d8a8aad
              * parser.c (cp_lexer_new_main): Get the first token, first, before
              doing anything.
      Radar 3929334
      
      From-SVN: r94494
      Mike Stump committed
    • recog.c (constrain_operands): Only look for earlyclobber operand conflicts if an… · 9ea88834
      recog.c (constrain_operands): Only look for earlyclobber operand conflicts if an '&' constraint was seen.
      
      	* recog.c (constrain_operands): Only look for earlyclobber operand
      	conflicts if an '&' constraint was seen.
      
      From-SVN: r94493
      Steven Bosscher committed
    • Thx to Eric Botcazou, Andrew Pinski and Mark Kettenis for this one. · 75a3bd9d
      Turns out OpenBSD was mistakenly including an embedded system fragment,
      and thus outputting stabs debug by default.
      
      Once the only needed definition is saved from that file, we happily compile
      with default dwarf2.   The rest of the toolchain is happy, and any recent
      gdb works very well with that...
      
      This obviously improves the stability of the compiler, since dwarf2 output
      is so much more well-tested than stabs on elf platforms...
      
      2005-01-31  Marc Espie <espie@openbsd.org>
      
      	* config.gcc: Don't include embedded systems fragment, switches default
      	debugging format to ELF.
      	* config/i386/openbsdelf.h: Add DBX_REGISTER_NUMBER since we no
      	longer pick it up there.
      
      From-SVN: r94488
      Marc Espie committed
    • darwin.md (movsf_low_di): Make work. · e87d92f4
      2005-01-31  Dale Johannesen  <dalej@apple.com>
      
      	* config/rs6000/darwin.md (movsf_low_di):  Make work.
      	(movdf_low_di):  Make work.
      
      From-SVN: r94487
      Dale Johannesen committed
    • darwin-tramp.asm (__trampoline_setup): Make work for 64 bit. · 42d262fa
      2005-01-31  Dale Johannesen  <dalej@apple.com>
      
      	* config/rs6000/darwin-tramp.asm (__trampoline_setup):
      	Make work for 64 bit.
      
      From-SVN: r94486
      Dale Johannesen committed
    • re PR middle-end/19650 (miscompiling of array acess of (int)(a==2)) · 3b70b82a
      2005-01-31  Roger Sayle  <roger@eyesopen.com>
      	    Dale Johannesen  <dalej@apple.com>
      
      	PR middle-end/19650
      	* fold-const.c (fold_binary_op_with_conditional_arg):
      	Make types match original operands, before STRIP_NOPS.
      
      From-SVN: r94485
      Dale Johannesen committed
    • cpp_type_traits.h: Add types to the structs thus making type_traits.h redundant... · c0736a9d
      2005-01-31  Paolo Carlini  <pcarlini@suse.de>
      	    Gabriel Dos Reis  <gdr@integrable-solutions.net>
      
      	* include/bits/cpp_type_traits.h: Add types to the structs thus
      	making type_traits.h redundant; exploit new __truth_type and
      	__traitor helpers.
      	* include/bits/type_traits.h: Remove.
      	* include/Makefile.am: Update.
      	* include/Makefile.in: Regenerate.
      	* include/backward/tempbuf.h: Include cpp_type_traits.h instead.
      	* include/bits/basic_string.h (replace(iterator, iterator,
      	_InputIterator, _InputIterator), _S_construct(_InIterator,
      	_InIterator, const _Alloc&)): Use __is_integer instead.
      	* include/bits/stl_bvector.h (vector(_InputIterator,
      	_InputIterator, const allocator_type&), assign(_InputIterator,
      	_InputIterator), insert(iterator, _InputIterator, _InputIterator)):
      	Likewise.
      	* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
      	_ForwardIterator)): Use __is_scalar.
      	* include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
      	const allocator_type&), assign(_InputIterator, _InputIterator),
      	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
      	* include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
      	insert(iterator, _InputIterator, _InputIterator)): Likewise.
      	* include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
      	_ForwardIterator)): Use __is_scalar.
      	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
      	_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
      	_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
      	_Size, const _Tp&)): Likewise.
      	* include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
      	const allocator_type&), assign(_InputIterator, _InputIterator),
      	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
      	* include/debug/debug.h (__valid_range(const _InputIterator&,
      	const _InputIterator&)): Use __is_integer.
      	* include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
      	* include/std/std_string.h: Include cpp_type_traits.h instead.
      
      Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>
      
      From-SVN: r94484
      Paolo Carlini committed