Commit Graph

40817 Commits

Author SHA1 Message Date
Jakub Jelinek 6f9fdf4db2 PR c/4475, c++/3780:
* c-common.def (SWITCH_STMT): Add SWITCH_TYPE operand.
	* c-common.h (SWITCH_TYPE): Define.
	* c-typeck.c (c_start_case): Set SWITCH_TYPE.
	* stmt.c (all_cases_count): Set lastval to thisval at end of loop.
	Rename spareness variable to sparseness.
	(expand_end_case_type): Renamed from expand_end_case, use orig_type
	if non-NULL instead of TREE_TYPE (orig_index).
	* tree.h (expand_end_case_type): Renamed from expand_end_case.
	(expand_end_case): Define using expand_end_case_type.
	* c-semantics.c (genrtl_switch_stmt): Pass SWITCH_TYPE
	to expand_end_case_type.
	* doc/c-tree.texi (SWITCH_STMT): Document SWITCH_TYPE.

	* semantics.c (begin_switch_stmt): Clear SWITCH_TYPE.
	(finish_switch_cond): Set SWITCH_TYPE.

	* gcc.dg/Wswitch.c: Fix typos.  Don't return unconditionally
	before all tests.  Move warning one line above to match where it
	C frontend emits.
	* gcc.dg/Wswitch-2.c: New test.
	* g++.dg/warn/Wswitch-1.C: New test.
	* g++.dg/warn/Wswitch-2.C: New test.

From-SVN: r49497
2002-02-04 23:05:15 +01:00
John David Anglin 79109502a0 pa.h (PREFERRED_STACK_BOUNDARY): Define to match standard rounding.
* pa.h (PREFERRED_STACK_BOUNDARY): Define to match standard rounding.
	(BIGGEST_ALIGNMENT): Change to 128.

From-SVN: r49496
2002-02-04 21:37:14 +00:00
John David Anglin e62a598717 * pa32-linux.h (LINK_COMMAND_SPEC): Define.
From-SVN: r49492
2002-02-04 21:16:51 +00:00
John David Anglin 219f24a42e * pa.md (call_internal_reg_64bit): Remove unused variable.
From-SVN: r49491
2002-02-04 21:05:25 +00:00
Nick Clifton 3cb66fd7e1 Replace current_function_anonymous_args with cfun->machine->uses_anonymous_args
From-SVN: r49490
2002-02-04 20:23:07 +00:00
Paolo Carlini 53804e7c80 locale_facets.tcc (money_get::do_get(string)): Deal correctly with !(__io.flags() & ios_base::showbase) for case...
2002-02-04  Paolo Carlini  <pcarlini@unitus.it>

        libstdc++/5579
        * include/bits/locale_facets.tcc (money_get::do_get(string)):
        Deal correctly with !(__io.flags() & ios_base::showbase)
        for case money_base::symbol.
        * testsuite/22_locale/money_get_members_char.cc: Add test05.
        * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.

From-SVN: r49489
2002-02-04 19:51:32 +00:00
Bernd Schmidt 24c545ff92 cfgrtl.c (force_nonfallthru_and_redirect): Don't try to redirect the entry block.
* cfgrtl.c (force_nonfallthru_and_redirect): Don't try to redirect
         the entry block.

From-SVN: r49488
2002-02-04 19:19:04 +00:00
Richard Henderson 72db02bfc3 * g++.dg/abi/offsetof.C: Fix size comparison.
From-SVN: r49487
2002-02-04 10:27:59 -08:00
Richard Henderson 563c12b029 combine.c (force_to_mode): Remove STACK_BIAS code.
* combine.c (force_to_mode): Remove STACK_BIAS code.
        (nonzero_bits): Likewise.  Replace sp/fp special case with
        REGNO_POINTER_ALIGN.

        * config/sparc/sparc.h (FRAME_POINTER_REGNUM): Change to SFP.
        (HARD_FRAME_POINTER_REGNUM): New.
        (FIRST_PSEUDO_REGISTER, REG_CLASS_CONTENTS): Update.
        (FIXED_REGS, CALL_USED_REGS): Update.
        (REG_ALLOC_ORDER, REGISTER_NAMES): Update.
        (CONDITIONAL_REGISTER_USAGE): Update for HFP.
        (HARD_REGNO_NREGS): Update for SFP.
        (STACK_POINTER_OFFSET): Include bias here ...
        (FIRST_PARM_OFFSET): ... not here.
        (STACK_BIAS): Remove.
        (INIT_EXPANDERS): New.
        (STARTING_FRAME_OFFSET): Do not include bias.
        (ELIMINABLE_REGS, CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): New.
        (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P): Update for SFP.
        (REG_OK_FOR_INDEX_P, REG_OK_FOR_BASE_P): Likewise.
        * config/sparc/aout.h (DBX_REGISTER_NUMBER): Update for HFP.
        * config/sparc/litecoff.h, config/sparc/sol2.h: Likewise.
        * config/sparc/sparc.c (mem_min_alignment): Update for HFP.
        (sparc_nonflat_function_prologue, epilogue_renumber): Likewise.
        (MUST_SAVE_REGISTER): Likewise.
        (sparc_flat_function_prologue): Likewise.
        (sparc_flat_function_epilogue): Likewise.
        (HARD_FRAME_POINTER_MASK): Rename from FRAME_POINTER_MASK.
        (sparc_init_modes): SFP is GENERAL_REGS.
        (sparc_builtin_saveregs): SFP does not have bias applied.

From-SVN: r49486
2002-02-04 10:16:07 -08:00
Richard Henderson ca56cd301e Reindent.
From-SVN: r49485
2002-02-04 09:58:08 -08:00
Richard Henderson 14691f8d24 alpha.c (current_function_is_thunk): Don't check current_function_is_thunk.
* config/alpha/alpha.c (current_function_is_thunk): Don't check
        current_function_is_thunk.
        (alpha_sa_mask): Distinguish between current_function_is_thunk
        called from ASM_OUTPUT_MI_THUNK and not.
        (alpha_does_function_need_gp): Thunks always need gp.
        (alpha_start_function, alpha_output_function_end_prologue): Likewise.
        (alpha_output_mi_thunk_osf): New.
        * config/alpha/alpha-protos.h: Update.
        * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): New.

cp/
        * method.c (use_thunk): Always initialize the block tree.  Reindent.
        * semantics.c (expand_body): Emit thunks after function, not before.

From-SVN: r49484
2002-02-04 09:44:26 -08:00
Zack Weinberg 8d9d2e1df7 * gcc.pot: Regenerate.
From-SVN: r49483
2002-02-04 17:05:24 +00:00
Richard Sandiford 127b94b53d * gcc.dg/cast-qual-2.c: New test.
From-SVN: r49482
2002-02-04 17:02:39 +00:00
Richard Sandiford af702de897 c-typeck.c (build_c_cast): Warn when qualifiers are added to function types, not when they're taken away.
* c-typeck.c (build_c_cast): Warn when qualifiers are added to
	function types, not when they're taken away.

From-SVN: r49481
2002-02-04 17:01:30 +00:00
Jason Merrill e89a607588 decl.c (start_function): Call cplus_decl_attributes immediately after grokdeclarator.
* decl.c (start_function): Call cplus_decl_attributes immediately
        after grokdeclarator.

        * decl.c (start_function): Combine DECL_RESULT handling code.

From-SVN: r49480
2002-02-04 11:28:40 -05:00
Philipp Thomas 3335fcacb0 Update copyright dates.
From-SVN: r49479
2002-02-04 16:07:59 +00:00
Jeff Law 5b1cacd89e cfgrtl.c (try_redirect_by_replacing_jump): Remove associated CODE_LABEL and jump table when...
* cfgrtl.c (try_redirect_by_replacing_jump): Remove associated
        CODE_LABEL and jump table when replacing a table jump with a
        simple jump.

From-SVN: r49478
2002-02-04 09:03:14 -07:00
Philipp Thomas 5987ca1c38 bad.def [...]: Insert comments to mark messages as not being printf style where appropriate.
2002-02-04  Philipp Thomas  <pthomas@suse.de>

	* bad.def com.c expr.c implic.c lex.c stb.c ste.c stu.c:
	Insert comments to mark messages as not being printf style
	where appropriate.

From-SVN: r49477
2002-02-04 15:58:51 +00:00
Ulrich Weigand f3e9edff6a s390-protos.h (legitimize_la_operand, [...]): Add prototypes.
* config/s390/s390-protos.h (legitimize_la_operand,
	s390_secondary_input_reload_class, s390_plus_operand,
	s390_expand_plus_operand): Add prototypes.

	config/s390/s390.c (s390_secondary_input_reload_class,
	s390_plus_operand, s390_expand_plus_operand): New functions.

	(struct s390_address): New member 'pointer'.
	(s390_decompose_address): Compute it.
	(legitimate_la_operand_p): Use it.
	(legitimize_la_operand): New function.
	(movti, movdi, movdf splitters): Call it.

	config/s390/s390.h (SECONDARY_INPUT_RELOAD_CLASS): Define.
	(PREDICATE_CODES): Add s390_plus_operand.

	config/s390/s390.md (adddi3_inv_64, addaddr_ccclobber): Delete.
	(la_ccclobber): Allow GENERAL_REGS as output operand.

	(reload_load_address, *reload_load_address_reg_0, *la, *do_la_reg_0,
	*reload_la_64, *reload_la_31 and splitters): Delete, replace by ...
	(*la_64, *la_31, reload_indi, reload_insi): ... these.

From-SVN: r49476
2002-02-04 15:51:18 +00:00
Ulrich Weigand 3c9a08ec8e s390.h (CRT_CALL_STATIC_FUNCTION): Fixed register names for regular asm () construct.
* gcc/config/s390/s390.h (CRT_CALL_STATIC_FUNCTION): Fixed
	register names for regular asm () construct.

From-SVN: r49475
2002-02-04 15:43:02 +00:00
Jakub Jelinek ac300a450e i386.md (movsf_1): Allow moving SF values in MMX registers.
* config/i386/i386.md (movsf_1): Allow moving SF values in MMX
	registers.

From-SVN: r49474
2002-02-04 10:48:34 +01:00
Jakub Jelinek fa85240399 combine.c (recog_for_combine): Create a dummy insn with PATTERN pat for recog.
* combine.c (recog_for_combine): Create a dummy insn with PATTERN
	pat for recog.

	* gcc.dg/20020201-4.c: New test.

From-SVN: r49473
2002-02-04 10:40:57 +01:00
Jason Merrill 9780c24faf xref.c: Remove.
* xref.c: Remove.
        * Make-lang.in (CXX_OBJS): Remove cp/xref.o
        (cp/xref.o): Remove dependencies.
        * class.c (finish_struct_1, check_methods): Don't call xref fns.
        (finish_struct_1): Likewise.
        * friend.c (make_friend_class): Likewise.
        * lex.c (cxx_init, cxx_finish, extract_interface_info): Likewise.
        * spew.c (read_process_identifier): Likewise.

From-SVN: r49472
2002-02-04 03:55:43 -05:00
Hartmut Penner fecaac3765 varasm.c (decode_rtx_const): Allow unspec (symbol_ref) in constant pool to be identical by string address...
* varasm.c (decode_rtx_const): Allow unspec (symbol_ref) in
     constant pool to be identical by string address and index.

From-SVN: r49471
2002-02-04 08:29:08 +00:00
Ben Elliston f7948d5146 gcc.exp (gcc_init): Check that the need_status_wrapper target_info attribute != 0...
* lib/gcc.exp (gcc_init): Check that the need_status_wrapper
	target_info attribute != 0, in addition to the empty string.
	(gcc_target_compile): Likewise.

From-SVN: r49470
2002-02-04 16:00:25 +11:00
Anthony Green 10c459437e output.h (SECTION_OVERRIDE): Define.
2002-02-04  Anthony Green  <green@redhat.com>

	* output.h (SECTION_OVERRIDE): Define.
	* varasm.c (named_section): Obey SECTION_OVERRIDE.

java:
2002-02-04  Anthony Green  <green@redhat.com>

	* class.c (build_utf8_ref): Put UTF-8 constants into merged
	sections if available.

From-SVN: r49469
2002-02-04 03:03:44 +00:00
Bryce McKinlay 14b7105512 * parse.y (java_expand_classes): Fix typo in static field loop.
From-SVN: r49468
2002-02-04 02:38:16 +00:00
Jason Thorpe 69474c3c18 config.gcc (arm*-*-netbsdelf*): Placeholder to prevent match by existing arm*-*-netbsd* (a.out) target.
* config.gcc (arm*-*-netbsdelf*): Placeholder to prevent match
by existing arm*-*-netbsd* (a.out) target.
(ns32k-*-netbsdelf*): Likewise.
(sparc-*-netbsdelf*): Likewise.
(vax-*-netbsdelf*): Likewise.

From-SVN: r49467
2002-02-03 21:52:34 +00:00
Jason Thorpe 939a46f640 Fix typo in date of most recent entry.
From-SVN: r49466
2002-02-03 21:36:46 +00:00
Christopher Faylor 3b56934fb9 gthr-win32.h: Protect against conflicting typedef for BOOL in windows headers and libobjc headers.
* gthr-win32.h: Protect against conflicting typedef for BOOL in windows headers
and libobjc headers.
* gthr-win32.h (__mingwthr_key_dtor): Use extern "C" linkage for C++.
(_mingw.h): Remove duplicate include.

From-SVN: r49465
2002-02-03 20:58:51 +00:00
Jason Thorpe 2fd95d71b4 config.gcc: Set cpu_type to m68k for 68010, as well.
* config.gcc: Set cpu_type to m68k for 68010, as well.
(m68010-*-netbsdelf*): New...
(m68k*-*-netbsdelf*): ...targets.
* config/m68k/netbsd-elf.h: New file.

From-SVN: r49464
2002-02-03 20:53:44 +00:00
Andrew Cagney ffe80457ad re PR c/4475 (-Wswitch option not functional)
* gcc.dg/Wswitch.c: New test.
PR gcc/4475. PR gcc/3780.

From-SVN: r49462
2002-02-03 15:58:08 +00:00
DJ Delorie 02ae22b851 minor typo
From-SVN: r49461
2002-02-03 08:10:29 -05:00
Toon Moene 013c7e9504 re PR fortran/5122 (g77 rejects accepted use of INTEGER*2 as type of DATA statement loop index)
2002-02-03  Toon Moene  <toon@moene.indiv.nluug.nl>

	* g77.f-torture/execute/5122.f: New test for regressions
	against PR fortran/5122.

From-SVN: r49460
2002-02-03 12:57:21 +00:00
Toon Moene cb8728fd13 expr.c (ffeexpr_sym_impdoitem_): Allow other than default INTEGER implied-do loop counts.
2002-02-03  Toon Moene  <toon@moene.indiv.nluug.nl>

	* expr.c (ffeexpr_sym_impdoitem_): Allow other than
	default INTEGER implied-do loop counts.

From-SVN: r49459
2002-02-03 12:54:09 +00:00
Richard Henderson f0c75752a1 class.c (add_field): Mark static fields external.
* class.c (add_field): Mark static fields external.
        (build_class_ref): Remove redundant set.
        * parse.y (java_expand_classes): Mark static fields of classes
        to be compiled as local.
        * jcf-parse.c (parse_class_file): Likewise.

From-SVN: r49458
2002-02-02 22:23:37 -08:00
H.J. Lu d74697b84d cp-demangle.c (cp_demangle_type): Do not protect with IN_LIBGCC2.
2002-02-02  H.J. Lu  (hjl@gnu.org)

	* cp-demangle.c (cp_demangle_type): Do not protect with
	IN_LIBGCC2.
	(cplus_demangle_v3_all): New.
	(cplus_demangle_v3): Call cplus_demangle_v3_all.
	(cplus_demangle_v3_type): Call cplus_demangle_v3_all.

	* cplus-dem.c (cplus_demangle_v3_p): New function pointer.
	Initialized to cplus_demangle_v3.
	(cplus_demangle_with_style): Call cplus_demangle_v3_p instead
	of cplus_demangle_v3.
	(main): Set cplus_demangle_v3_p to cplus_demangle_v3_type for
	command line symbol.

	* testsuite/regress-demangle: Pass the mangled name at the
	command line.

From-SVN: r49456
2002-02-02 20:00:36 -08:00
H.J. Lu 4437e4d46b demangle.h (cplus_demangle_v3_type): New prototype.
2002-02-02  H.J. Lu  (hjl@gnu.org)

	* demangle.h (cplus_demangle_v3_type): New prototype.

From-SVN: r49455
2002-02-02 19:59:23 -08:00
Kazu Hirata 0ea6f6a02a * config/h8300/h8300.c (hand_list): Move inside function_arg.
From-SVN: r49454
2002-02-03 01:36:13 +00:00
Kazu Hirata cbf1b2dabf h8300.c (h8_push_ops): Move inside h8300_init_once.
* config/h8300/h8300.c (h8_push_ops): Move inside
	h8300_init_once.
	(h8_pop_ops): Likewise.
	(h8_move_ops): Likewise.

From-SVN: r49453
2002-02-03 01:29:16 +00:00
Kazu Hirata 0869f12660 h8300.c (os_task): Make it static.
* config/h8300/h8300.c (os_task): Make it static.
	(monitor): Likewise.
	(pragma_saveall): Likewise.

From-SVN: r49452
2002-02-03 01:24:11 +00:00
Alexandre Oliva 90e65b7084 sh.md (ic_invalidate_line): Make sure the immediate constant is a valid sign-extension for Pmode.
* config/sh/sh.md (ic_invalidate_line): Make sure the immediate
constant is a valid sign-extension for Pmode.

From-SVN: r49451
2002-02-03 00:50:50 +00:00
David Billinghurst e7daa976ff pr3743.f: Delete
2002-02-03  David Billinghurst <David.Billinghurst@riotinto.com>

	* g77.f-torture/compile/pr3743.f: Delete
	* g77.dg/pr3743-1.f: New test.
	* g77.dg/pr3743-2.f: New test.
	* g77.dg/pr3743-3.f: New test.
	* g77.dg/pr3743-4.f: New test.

From-SVN: r49450
2002-02-03 00:43:23 +00:00
Kazu Hirata 9cbcd983a9 * config/h8300/h8300.c: Fix formatting.
From-SVN: r49449
2002-02-02 21:38:49 +00:00
Kazu Hirata 7a27efc4eb * config/h8300/h8300.md: Fix formatting.
From-SVN: r49448
2002-02-02 21:15:24 +00:00
Tom Tromey 9b8b2fcfda * Makefile.in: Rebuilt.
From-SVN: r49447
2002-02-02 21:14:29 +00:00
Kazu Hirata 54175a449d h8300.md (one_cmpl patterns): Tighten the predicates of operands[1].
* config/h8300/h8300.md (one_cmpl patterns): Tighten the
	predicates of operands[1].  Split the patterns for each
	processor variant.

From-SVN: r49446
2002-02-02 20:57:06 +00:00
Kazu Hirata eceb175550 h8300.md (xor patterns): Tighten the predicates of operands[1] to register_operand.
* config/h8300/h8300.md (xor patterns): Tighten the predicates
	of operands[1] to register_operand.

From-SVN: r49445
2002-02-02 20:48:38 +00:00
Neil Booth 0fef3fd0ea cpphash.h (struct spec_nodes): Remove n__CHAR_UNSIGNED__.
* cpphash.h (struct spec_nodes): Remove n__CHAR_UNSIGNED__.
	* cpphash.c (_cpp_init_hashtable): Similarly.
	* cppinit.c (cpp_create_reader): Default the signed_char flag.
	(init_builtins): Define __CHAR_UNSIGNED__ appropriately.
	(COMMAND_LINE_OPTIONS): Recognise -f{un,}signed-char.
	(cpp_handle_option): Handle the new options.
	* cpplex.c (cpp_interpret_charconst): Use new flag.
	* cpplib.h (struct cpp_options): New member signed_char.
	* gcc.c (cpp_unique_options): Remove %c spec and documentation.
	(cpp_options): Handle -fsigned-char and -funsigned-char.
	(static_specs): Remove signed_char_spec.
	(do_spec1): Don't handle %c.
	* system.h: Poison SIGNED_CHAR_SPEC.
	* tradcif.y (yylex): Use flag_signed_char.
	* tradcpp.h (flag_signed_char): New.
	* tradcpp.c (flag_signed_char): New.
	(main): Handle new command-line options.
	(initialize_builtins): Define __CHAR_UNSIGNED__ if appropriate.
config:
	* alpha/alpha.h (SIGNED_CHAR_SPEC): Remove.
	* avr/avr.h: Remove old comments.
	* i960/i960.h (CPP_SPEC): Pass -fsigned-char if -mic*.
	(CC1_SPEC): Pass -fsigned-char if -mic*.
	(SIGNED_CHAR_SPEC): Remove.
doc:
	* tm.texi (SIGNED_CHAR_SPEC): Remove documentation.
testsuite:
	* gcc.dg/cpp/uchar-1.c, uchar-2.c, uchar-3.c: New tests.

From-SVN: r49444
2002-02-02 18:56:37 +00:00
Jason Merrill 1acce4c771 * Makefile.am (clean-nat): New target.
From-SVN: r49443
2002-02-02 13:23:02 -05:00