Commit Graph

65479 Commits

Author SHA1 Message Date
Janis Johnson
8d2d2ec6bd sourcebuild.texi (Test directives): Describe selector expressions.
* 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
2005-02-01 17:54:45 +00:00
Janis Johnson
91442c2081 README: Describe tests in source directory.
* 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
2005-02-01 17:37:25 +00:00
Janis Johnson
0e7eed4602 test-framework.awk: Change recording and printing of passes and failures.
* gcc.test-framework/test-framework.awk: Change recording and
	printing of passes and failures.

From-SVN: r94549
2005-02-01 17:31:33 +00:00
Janis Johnson
395909dddc gcc.test-framework: New directory.
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
2005-02-01 17:28:46 +00:00
Mark Mitchell
22f8a06852 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
2005-02-01 17:13:08 +00:00
Segher Boessenkool
d1c8addb26 config.gcc (powerpc64-*-linux*): Default to -m64 also for specific 64-bit CPUs.
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
2005-02-01 16:36:42 +01:00
James A. Morrison
9646f1480d (lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.
2005-02-01  James A. Morrison  <phython@gcc.gnu.org>

        * (lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.

From-SVN: r94544
2005-02-01 15:18:30 +00:00
James A. Morrison
22f51792e3 parse.y: Reformat comments.
2005-02-01  James A. Morrison  <phython@gcc.gnu.org>

        * parse.y: Reformat comments.
        * treetree.c: Likewise.
        * treetree.h: Likewise.

From-SVN: r94543
2005-02-01 15:16:58 +00:00
James A. Morrison
596d4d6134 treelang.exp: Fix comment typos.
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
2005-02-01 15:07:42 +00:00
Richard Earnshaw
6555b6bdea re PR target/16201 (Assembler messages:Error: bad immediate value for offset (4116))
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
2005-02-01 14:07:02 +00:00
Paolo Carlini
4d73fac958 cpp_type_traits.h: Rename _M_type fields to __value...
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
2005-02-01 13:30:34 +00:00
Steven Bosscher
bbcb0c056b re PR rtl-optimization/15242 (pessimization of "goto *")
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
2005-02-01 10:03:15 +00:00
Paul Thomas
e88334a68f re PR libfortran/19363 (List directed write of Infinity and NaN has regressed)
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
2005-02-01 09:06:22 +00:00
Eric Botcazou
9c0a30c366 Patch from Richard Sandiford <rsandifo@redhat.com>
* 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
2005-02-01 07:22:19 +00:00
Mark Mitchell
8c94c75ae7 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
2005-02-01 06:58:27 +00:00
Brad Spencer
ddf2a54af5 crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
2005-01-31  Brad Spencer  <spencer@infointeractive.com>

	* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
	* configure: Regenerated.

From-SVN: r94526
2005-02-01 06:56:30 +00:00
Alexandre Oliva
7b150713cf frv.c (movcc_fp_destination_operand): New.
* 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
2005-02-01 06:33:35 +00:00
Alexandre Oliva
e894ab29c7 * parser.c (cp_parser_template_id): Revert comment patch too.
From-SVN: r94521
2005-02-01 06:07:14 +00:00
Alexandre Oliva
c8a7ed431a re PR c++/18757 (ICE (on invalid) in get_innermost_template_args)
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
2005-02-01 05:56:08 +00:00
Jeff Law
7d793e369d 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
2005-01-31 22:28:23 -07:00
Jeff Law
5746637cfa 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
2005-01-31 20:52:37 -07:00
Jeff Law
dc5d4efbce fold-const.c (fold, [...]): Do not lose side effects when optimizing 0 % X.
* 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
2005-01-31 20:48:52 -07:00
James E Wilson
3dcec1e9e7 Fix typo in Richard Henderson's IA-64 vector patch.
* config/ia64/itanium1.md (1_scall bypass): Change 2_mmalua to
1_mmalua.

From-SVN: r94515
2005-01-31 19:06:26 -08:00
Eric Christopher
fc47430703 mips.c (override_options): Warn if -mint64 is used.
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
2005-02-01 03:02:51 +00:00
Ranjit Mathew
7f75bb8318 re PR java/9157 (SEGV on bad java source)
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
2005-02-01 02:36:29 +00:00
Mark Mitchell
9367851362 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
2005-02-01 01:01:34 +00:00
Kazu Hirata
782c0a3ea9 * cse.c (get_cse_reg_info): Update a comment.
From-SVN: r94511
2005-02-01 00:41:56 +00:00
GCC Administrator
74276db1df Daily bump.
From-SVN: r94509
2005-02-01 00:16:23 +00:00
Kazu Hirata
bc5e3b54eb cse.c (cse_reg_info): Remove hash_next, next, regno.
* 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
2005-02-01 00:14:47 +00:00
Steven Bosscher
b4519d39bc re PR c/19333 (C front end accepts arrays of incomplete types)
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
2005-02-01 00:09:40 +00:00
Dale Johannesen
286972677e extend.texi (nested functions): Fix linkage description.
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
2005-01-31 23:18:49 +00:00
Kazu Hirata
65e9fa1009 * cse.c (delete_trivially_dead_insn): Don't iterate.
From-SVN: r94498
2005-01-31 22:43:36 +00:00
Andrew Pinski
0530bc70fb rs6000.md (copysignsf3): New expand.
2005-01-31  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/rs6000/rs6000.md (copysignsf3): New expand.
        (copysigndf3): Likewise.

From-SVN: r94497
2005-01-31 14:29:27 -08:00
Mike Stump
3d8a8aade3 parser.c (cp_lexer_new_main): Get the first token, first, before doing anything.
* parser.c (cp_lexer_new_main): Get the first token, first, before
        doing anything.
Radar 3929334

From-SVN: r94494
2005-01-31 22:05:07 +00:00
Steven Bosscher
9ea888348f 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
2005-01-31 21:14:44 +00:00
Marc Espie
75a3bd9d65 Thx to Eric Botcazou, Andrew Pinski and Mark Kettenis for this one.
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
2005-01-31 18:51:26 +00:00
Dale Johannesen
e87d92f469 darwin.md (movsf_low_di): Make work.
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
2005-01-31 18:11:19 +00:00
Dale Johannesen
42d262fa87 darwin-tramp.asm (__trampoline_setup): Make work for 64 bit.
2005-01-31  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/darwin-tramp.asm (__trampoline_setup):
	Make work for 64 bit.

From-SVN: r94486
2005-01-31 18:03:46 +00:00
Dale Johannesen
3b70b82ab9 re PR middle-end/19650 (miscompiling of array acess of (int)(a==2))
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
2005-01-31 18:00:52 +00:00
Paolo Carlini
c0736a9ddb cpp_type_traits.h: Add types to the structs thus making type_traits.h redundant...
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
2005-01-31 16:22:01 +00:00
Mark Mitchell
4e8f0a2e12 * decl.c (start_decl): Add missing parentheses.
From-SVN: r94483
2005-01-31 16:16:16 +00:00
Alan Modra
a7a52913cf linux-unwind.h (struct gcc_vregs): New.
* config/rs6000/linux-unwind.h (struct gcc_vregs): New.
	(struct gcc_regs): Rename from gcc_pt_regs.  Add more regs.
	(struct gcc_sigcontext): Delete.  Merge contents to..
	(struct gcc_ucontext): ..here.
	(get_sigcontext): Delete.
	(get_regs): New function, like get_sigcontext but return regs ptr.
	64-bit version finds regs from r1 to support vdso.
	(ppc_linux_aux_vector): New function.
	(ppc_fallback_frame_state): Modify for get_regs.  Restore fprs
	and vector regs.

From-SVN: r94481
2005-02-01 00:07:37 +10:30
Ira Rosen
261ba0c8db tree-vectorizer.c (vect_analyze_offset_expr): Use ssizetype instead sizetype.
2005-01-31  Ira Rosen  <irar@il.ibm.com>

        * tree-vectorizer.c (vect_analyze_offset_expr): Use ssizetype instead
        sizetype.
        (vect_get_base_and_offset): Use ssizetype instead sizetype. Remove
        redundant fold. Fix misalignment for MINUS_EXPR.
        (vect_compute_data_ref_alignment): Use ssizetype instead sizetype.
        (vect_analyze_pointer_ref_access): Likewise.
        (vect_get_memtag_and_dr): Likewise.

From-SVN: r94480
2005-01-31 11:51:01 +00:00
Richard Henderson
2ae1ac77f2 i386.c (absnegsf2_mixed): Remove all of the # hackery.
* config/i386/i386.c (absnegsf2_mixed): Remove all of the # hackery.
        (absnegsf2_sse, absnegsf2_i387, absnegdf2_mixed, absnegdf2_sse,
        absnegdf2_i387, absnegxf2_i387): Likewise.

From-SVN: r94473
2005-01-31 01:16:02 -08:00
Richard Henderson
93b39cbcc9 copysign1.c: Special case sizeof long double for intel double extended format.
* gcc.c-torture/execute/ieee/copysign1.c: Special case sizeof
        long double for intel double extended format.
        * gcc.c-torture/execute/ieee/copysign2.c: Likewise.

From-SVN: r94472
2005-01-31 01:10:01 -08:00
Richard Henderson
ae3946599e re PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copysignl)
PR 19696
        * optabs.c (expand_copysign_absneg): New.
        (expand_copysign_bit): Split out from ...
        (expand_copysign): ... here.  Use expand_copysign_absneg.

From-SVN: r94471
2005-01-31 01:02:25 -08:00
Mark Mitchell
2b1e8a76ef re PR c++/19555 (specialized in the wrong namespace causes an ICE)
PR c++/19555
	* cp-tree.h (DECL_USE_TEMPLATE): Expand documentation.
	* decl.c (duplicate_decls): Do not discard
	DECL_IMPLICIT_INSTANTIATION when merging declarations.
	(start_decl): Do not SET_DECL_TEMPLATE_SPECIALIZATION for
	variables that do not have DECL_USE_TEMPLATE.

	PR c++/19555
	* g++.dg/template/static10.C: New test.

From-SVN: r94469
2005-01-31 06:16:54 +00:00
Roger Sayle
ebcaaa2152 re PR middle-end/19697 (gcc.c-torture/execute/ieee/mzero6.c:24: error: unrecognizable insn)
PR middle-end/19697
	* config/pa/pa.md (anddi3, iordi3): On HPPA64, disallow an integer
	constant as the second operand and a register as the third.

From-SVN: r94468
2005-01-31 06:04:07 +00:00
Danny Smith
6cc37e7e24 re PR target/19704 (ICE for tail call of regparm 3 and dllimport)
PR target/19704
	* config/i386/i386.c (ix86_function_ok_for_sibcall):  Also check
	that dllimport'd functions do not use all call-clobbered registers
	to pass parameters.

From-SVN: r94467
2005-01-31 05:49:07 +00:00
Mark Mitchell
e3016344b3 re PR c++/19395 (invalid scope qualifier allowed in typedef)
PR c++/19395
	* decl.c (grokdeclarator): Refactor code so that qualified names
	are never allowed as the declarator in a typedef.

	PR c++/19367
	* name-lookup.c (do_nonmember_using_decl): Avoid overloading
	builtin declarations.

	PR c++/19395
	* g++.dg/parse/error24.C: New test.

	PR c++/19367
	* g++.dg/lookup/builtin1.C: New test.

From-SVN: r94466
2005-01-31 04:07:41 +00:00