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