Neil Booth [Tue, 11 Jun 2002 05:36:17 +0000 (05:36 +0000)]
Makefile.in: Update cppmain.o.
* Makefile.in: Update cppmain.o.
* cpphash.h (struct cpp_reader): Move some members to a
nested structure.
(trad_line): Rename saved_line.
(_cpp_read_logical_line_trad): Update.
(_cpp_remove_overlay): New.
* cppinit.c (cpp_create_reader): No need to set saved_line.
(cpp_destroy): Update.
(cpp_read_main_file): Only overlay if compiling.
* cpplex.c (continue_after_nul): Return false if in directive.
* cpplib.c (EXPAND): New.
(directive_table, SEEN_EOL): Update.
(end_directive): Remove overlay if traditional; don't skip
line in traditional #define.
(prepare_directive_trad): New.
(_cpp_handle_directive, run_directive): Update for traditional
directives.
(lex_macro_node): Simplify, don't use lex_identifier_trad.
* cpplib.h (struct options): Add preprocess_only.
* cppmain.c: Don't include intl.h.
(cpp_preprocess_file): Set options->preprocess_only.
(scan_translation_unit_trad): Fix, and print line numbers.
* cpptrad.c (check_output_buffer, lex_identifier, scan_parameters,
maybe_start_funlike, scan_out_logical_line, replace_args_and_push,
save_replacement_text, _cpp_create_trad_definition): Update for
variable renaming.
(_cpp_overlay_buffer): Save line number.
(_cpp_remove_overlay): Rename from restore_buff, restore line.
(_cpp_read_logical_line_trad): Don't handle overlays here.
(scan_out_logical_line): Process directives.
Danny Smith [Tue, 11 Jun 2002 05:25:44 +0000 (05:25 +0000)]
gthr-win32.h: Wrap all functions in extern "C".
* gthr-win32.h: Wrap all functions in extern "C".
(__gthread_key_t): Typedef as unsigned long,
not win32 DWORD.
(__GTHREAD_ONCE_INIT): Use 0, not win32 FALSE.
(__gthread_mutex_t): Typedef as void*, not win32 HANDLE.
(__gthr_win32_once, __gthr_win32_key_create,
__gthr_win32_key_delete, __gthr_win32_getspecific,
__gthr_win32_setspecific, __gthr_win32_mutex_init_function,
__gthr_win32_mutex_lock,__gthr_win32_mutex_trylock,
__gthr_win32_mutex_unlock): Declare.
(__gthread_once,__gthread_key_create,
__gthread_key_delete, __gthread_getspecific,
__gthread_setspecific, __gthread_mutex_init_function,
__gthread_mutex_lock,__gthread_mutex_trylock,
__gthread_mutex_unlock): Call corresponding
__gthr_win32_* extern implementations if #defined
__GTHREAD_HIDE_WIN32API.
* config/i386/t-mingw32 (LIB2FUNCS_EXTRA): Set to
$(srcdir)/config/i386/gthr-win32.c
* config/i386/gthr-win32.c: New implementation file.
(__gthr_win32_once, __gthr_win32_key_create,
__gthr_win32_key_delete, __gthr_win32_getspecific,
__gthr_win32_setspecific, __gthr_win32_mutex_init_function,
__gthr_win32_mutex_lock,__gthr_win32_mutex_trylock,
__gthr_win32_mutex_unlock): New functions, based on
static inlines in gthr-win32.h.
Zack Weinberg [Mon, 10 Jun 2002 22:35:56 +0000 (22:35 +0000)]
Makefile.in (MACHMODE_H): Add @extra_modes_file@.
* Makefile.in (MACHMODE_H): Add @extra_modes_file@.
* configure.in: If $srcdir/config/${cpu_type}/${cpu_type}-modes.def
exists, substitute its pathname as @extra_modes_file@, define
EXTRA_MODES_FILE to be an appropriate string to #include it
with, and define EXTRA_CC_MODES to 1.
* machmode.def: Update comments. Include EXTRA_MODES_FILE if
it's defined. Get rid of redundancy in calling sequence for
CC; don't use it to define CCmode, to avoid a warning.
* libgcc2.c: Include symcat.h for the sake of machmode.def.
Loren J. Rittle [Mon, 10 Jun 2002 20:52:12 +0000 (20:52 +0000)]
acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and include all required headers for test against older POSIX standard.
* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
include all required headers for test against older POSIX standard.
(GLIBCPP_CHECK_SETRLIMIT): Likewise.
(ac_setrlimit): Likewise.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* testsuite/testsuite_hooks.cc: Reorder and include all
required headers for use against older POSIX standard.
J"orn Rennecke [Mon, 10 Jun 2002 17:15:13 +0000 (17:15 +0000)]
Fix cfi generation for SH[1-4]:
* sh.c (frame_insn): New function.
(output_stack_adjust): Add parameter emit_fn. All callers changed.
(push): Now returns rtx. Use frame_insn.
(sh_expand_prologue): Clear RTX_FRAME_RELATED_P for second push
of a DF register.
* sh.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_RETURN_COLUMN): Define.
H.J. Lu [Mon, 10 Jun 2002 17:10:21 +0000 (17:10 +0000)]
gc_locks.h (GC_test_and_set): Support Linux/mips.
* include/private/gc_locks.h (GC_test_and_set): Support
Linux/mips.
(GC_TEST_AND_SET_DEFINED): Likewise.
* include/private/gcconfig.h (DYNAMIC_LOADING): Defined for
Linux/mips.
(DATAEND): Likewise.
(LINUX_STACKBOTTOM): Likewise.
(STACKBOTTOM): Removed for Linux/mips.
Zack Weinberg [Mon, 10 Jun 2002 16:58:36 +0000 (16:58 +0000)]
Makefile.in (STAGESTUFF): Add s-gtype, gt-*.h, gtype-*.h, and gtype-desc.c.
* Makefile.in (STAGESTUFF): Add s-gtype, gt-*.h, gtype-*.h,
and gtype-desc.c.
(mostlyclean): Delete specs.h, options.h, gencheck.h here...
(distclean): ... not here. But do delete all testsuite/*.log,
testsuite/*.sum files here. Delete mkheaders. Delete
po/*.gmo and the testsuite directory in a split tree build.
Jeff Law [Mon, 10 Jun 2002 16:32:45 +0000 (10:32 -0600)]
alias.c (static_reg_base_value): New to hold RTL for items allocated once per function for the aliasing code.
* alias.c (static_reg_base_value): New to hold RTL for
items allocated once per function for the aliasing code.
(init_alias_once_per_function): Initialize static_reg_base_value.
(init_alias_analysis): Avoid throw-away allocations of RTL by
using pre-computed values in static_reg_base_value.
* function.c (prepare_function_start): Call
init_alias_once_per_function appropriately.
* rtl.h (init_alias_once_per_function): Declare.
* caller-save (init_caller_save): Restructure slightly to
avoid lots of silly RTL generation.
* expr.c (init_expr_once): Likewise.
* reload1.c (reload_cse_regs_1): Allocate throw-away register
RTL object here. Pass it into children.
(reload_cse_simplify_operands): Use passed-in register RTL
object.
(reload_cse_simplify): Pass through throw-away register
RTL object.
Neil Booth [Mon, 10 Jun 2002 06:03:13 +0000 (06:03 +0000)]
cpphash.h (struct cpp_macro): Put comments on their own lines.
* cpphash.h (struct cpp_macro): Put comments on their own lines.
(_cpp_expansions_different_trad): New.
* cppmacro.c (warn_of_redefinition): Fix for traditional case.
* cpptrad.c (canonicalize_text): New.
(scan_out_logical_line): Handle no arguments correctly.
(save_replacement_text): Commit memory when finished.
(_cpp_expansions_different_trad): New.
Bryce McKinlay [Mon, 10 Jun 2002 05:11:42 +0000 (05:11 +0000)]
Don't use RTL inlining. Fix for PR java/6820.
* lang.c (LANG_HOOKS_POST_OPTIONS): Define.
(flag_really_inline): New.
(java_decode_option): Set flag_really_inline if -finline-functions
is seen.
(java_post_options): New function. Turn off inlining unless
flag_really_inline is set.
Bryce McKinlay [Mon, 10 Jun 2002 03:47:36 +0000 (03:47 +0000)]
gjavah.c (throwable_p): Accept argument as either a classname or signature fragment.
* gjavah.c (throwable_p): Accept argument as either a classname or
signature fragment. Create null-terminated classname string for super
when calling itself recursively.
(decode_signature_piece): Skip first character from class name
signature when calling throwable_p.
* config/avr/avr.c (avr_mcu_types): Update for new devices.
* config/avr/avr.h (TARGET_SWITCHES, AVR_MEGA): Add -mshort-calls.
(LINK_SPEC, CRT_BINUTILS_SPECS): Update for new devices.
* config/avr/avr.md ("type" and "length" attributes): New type
"xcall", length 1 or 2 if AVR_MEGA. Use in all patterns that
output a single "call" or "rcall" insn depending on device size.
* config/avr/t-avr (MULTILIB_MATCHES): Update for new devices.
Kaveh R. Ghazi [Sun, 9 Jun 2002 02:12:21 +0000 (02:12 +0000)]
genautomata.c: Don't include ctype.h or limits.h.
* genautomata.c: Don't include ctype.h or limits.h. Use ISSPACE,
not isspace.
* gengtype-lex.l: Don't include ctype.h and use ISSPACE/ISIDNUM in
lieu of isspace/IDchar.
* gengtype.c: Likewise for ctype.h and ISALNUM vs isalnum.
* read-rtl.c: Likewise for ctype.h. Don't define ISDIGIT or
ISSPACE.
Zack Weinberg [Sun, 9 Jun 2002 00:26:31 +0000 (00:26 +0000)]
Makefile.in (LIBCPP_OBJS): Take out version.o.
* Makefile.in (LIBCPP_OBJS): Take out version.o.
* cpphash.h (cpp_reader): Take out print_version member.
* cppinit.c: (cpp_handle_option): Don't do anything with
-version. Just set help_only for --version, --target-help.
Just set verbose option for -v.
(cpp_post_options): Don't print a version string.
Jason Thorpe [Sat, 8 Jun 2002 17:51:28 +0000 (17:51 +0000)]
netbsd-elf.h (SUBTARGET_EXTRA_SPECS): Define and include netbsd_entry_point.
* config/sh/netbsd-elf.h (SUBTARGET_EXTRA_SPECS): Define
and include netbsd_entry_point.
(SUBTARGET_LINK_SPEC): Define as NETBSD_LINK_SPEC_ELF.
(NETBSD_ENTRY_POINT): Define.
avr.c (avr_regs_to_save): No need to save any registers in a noreturn function.
* config/avr/avr.c (avr_regs_to_save): No need to save any registers
in a noreturn function.
(avr_output_function_prologue, avr_output_function_epilogue):
Correct function size calculation. Do not crash on empty function.
(avr_output_function_epilogue): No need for epilogue after a BARRIER.
Roger Sayle [Fri, 7 Jun 2002 23:50:31 +0000 (23:50 +0000)]
simplify-rtx.c (simplify_gen_relational): Simplify RTL of the form (ne (comp x y) 0) into (comp x y) where comp is a...
* simplify-rtx.c (simplify_gen_relational): Simplify RTL of the form
(ne (comp x y) 0) into (comp x y) where comp is a comparison code.
Simplify (eq (comp x y) 0) into (revcomp x y) if the sense of the
comparison code comp can be reversed.
Roger Sayle [Fri, 7 Jun 2002 23:42:53 +0000 (23:42 +0000)]
fold-const.c (fold): Place both integer and real constants last in comparisons.
* fold-const.c (fold) [EQ_EXPR]: Place both integer and real
constants last in comparisons. Optimize (x+1.0)>0.0 into the
equivalent x > -1.0 when -ffast-math.
Zack Weinberg [Fri, 7 Jun 2002 22:24:30 +0000 (22:24 +0000)]
cppinit.c (COMMAND_LINE_OPTIONS): Give all relevant -W options their own entries.
* cppinit.c (COMMAND_LINE_OPTIONS): Give all relevant -W
options their own entries.
(parse_option): Clarify comment.
(cpp_handle_option): Remove 'ignore' parameter and OPT_W
special case. Replace if/strcmp chain for -W options with
use of new OPT_* entries for them.
(cpp_handle_options): Update to match.
* cpplib.h: Remove last parameter to cpp_handle_option from prototype.
* c-decl.c, cp/decl2.c: Update call to cpp_handle_option.