| Fri Dec 31 19:10:31 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * function.c (update_temp_slot_address): Handle case where sum of | |
| temporary address plus offset in register is a valid address. | |
| 1999-12-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * genrecog.c (change_state) Corrected typo. | |
| 1999-12-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h (bcopy, bcmp, bzero, index, rindex, atof, atol, free, | |
| getcwd, getenv, getwd, sbrk, strstr, malloc, calloc, realloc, | |
| strerror, getrlimit, setrlimit, abort): Add prototype arguments. | |
| 1999-12-30 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * i386.c (ix86_expand_fp_compare): In non-sahf non-TARGET_IEEE | |
| case, expand GT comparisons correctly. Fix a comment before this | |
| part of the code. | |
| 1999-12-30 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr> | |
| * dwarfout.c: Include "frame.h" | |
| * dwarf2out.c: Likewise. | |
| * Makefile.in (dwarfout.o): Depend on frame.h | |
| (dwarf2out.o): Likewise. | |
| 1999-12-29 "Martin v. Löwis" <martin@loewis.home.cs.tu-berlin.de> | |
| Restore i386 binary compatibility in Dwarf EH info. | |
| * config/i386/i386.h (DWARF_FRAME_REGISTERS): Define as 17, the old | |
| value of FIRST_PSEUDO_REGISTER. | |
| * frame.h (DWARF_FRAME_REGISTERS): Default to FIRST_PSEUDO_REGISTER. | |
| (struct frame_state): Use DWARF_FRAME_REGISTERS. | |
| * dwarfout.c (output_reg_number): Ditto. | |
| * dwarf2out.c (reg_number, expand_builtin_init_dwarf_reg_sizes): Ditto. | |
| (DWARF_FRAME_RETURN_COLUMN): Default to DWARF_FRAME_REGISTERS. | |
| 1999-12-29 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/fixincl.c(wait_for_pid): sometimes a WSTOPSIG of zero is OK | |
| * fixinc/fixincl.tpl(<hack>TEST_CT): Just do the existence test once | |
| (<hack>_RE_CT): not needed | |
| * fixinc/fixlib.c(is_cxx_header): moved from fixtests.c | |
| rewritten to scan the file text once only | |
| "template<..." test added | |
| * fixinc/fixlib.h(apply_fix_p_t): moved from fixtests.c | |
| (is_cxx_header): declaration added | |
| * fixinc/fixtests.c(is_cxx_header): removed | |
| (apply_fix_p_t): removed | |
| (double_slash_test): is_cxx_header is only called once now | |
| * fixinc/hackshell.tpl: indexing the fixes is now done under DEBUG | |
| * fixinc/inclhack.def(FIXINC_DEBUG): added for testing DEBUG state | |
| within the templates. | |
| The borken spelling of "broken" was fixed. | |
| * fixinc/inclhack.tpl: The $VERBOSE level is used on various messages | |
| The default level depends on FIXINC_DEBUG. | |
| 1999-12-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * crtstuff.c: If !inhibit_libc, include stdlib.h/unistd.h. | |
| Otherwise provide a declaration for atexit. | |
| (init_dummy): Make sure dummy call to atexit is nevertheless | |
| called with correct number of args. | |
| * frame.c: Update comments referring to other files. | |
| * libgcc2.c: Likewise. | |
| 1999-12-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cse.c (free_element, get_element): Remove unused prototypes. | |
| * fold-const.c (extract_muldiv): Initialize variables `op0' and | |
| `op1'. | |
| * jump.c (invert_exp): Add explicit braces to avoid ambiguous | |
| `else' clauses. | |
| Wed Dec 29 12:44:54 1999 Donald Lindsay <dlindsay@cygnus.com> | |
| * configure.in,configure: case arm for mn10200-*-* now sets | |
| float_format=i32 so that float.h will correctly claim "double" | |
| to be 32 bits. Ran autoconf to generate configure from .in file. | |
| Wed Dec 29 10:53:21 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (conditional zero): If op1 is a register, force it into | |
| the same register as op0. | |
| 1999-12-28 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (BINFO_BASETYPES): Improve documentation. | |
| 1999-12-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * configure.in (--enable-checking): Use a more portable `for' | |
| loop syntax. | |
| 1999-12-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * configure.in (AC_DECL_SYS_SIGLIST, xm-siglist.h, | |
| arm/xm-netbsd.h, NO_SYS_SIGLIST): Don't use. | |
| * xm-siglist.h, arm/xm-netbsd.h, mips/xm-news.h, mips/xm-sysv4.h: | |
| Delete files. | |
| * gcc.texi (NO_SYS_SIGLIST, sys_siglist, SYS_SIGLIST_DECLARED): | |
| Delete descriptions. | |
| * i386/osf1elf.h, i386/xm-cygwin.h, i386/xm-mingw32.h, m68k/3b1.h, | |
| m68k/a-ux.h, m68k/dpx2.h, m68k/plexus.h, m68k/xm-hp320.h, | |
| m88k/xm-m88k.h, mips/x-sni-svr4, pa/xm-pa.h, pa/xm-pahpux.h, | |
| pa/xm-papro.h, we32k/xm-we32k.h, winnt/xm-winnt.h, xm-interix.h, | |
| xm-svr4.h: Remove all instances of sys_siglist handling. | |
| 1999-12-27 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.md (cmp_zero_qi, | |
| cmp_zero_extendqisi2_andcc_set, cmp_zero_qi_sp64, | |
| cmp_zero_extendqidi2_andcc_set): New patterns. | |
| 1999-12-28 Manfred Hollstein <mhollstein@cygnus.com> | |
| * m68k/t-mot3300-gald (CROSS_LIBGCC1): Define to libgcc1-asm.a. | |
| (LIB1ASMSRC, LIB1ASMFUNCS, LIB2FUNCS_EXTRA): Define. | |
| (fpgnulib.c, xfgnulib.c): Add rules. | |
| * m68k/t-mot3300-gas: Likewise. | |
| 1999-12-27 Ian Lance Taylor <ian@zembu.com> | |
| * configure.in: Avoid [[ by using test and changequote. Add | |
| changequote required by 1999-12-14 change. | |
| * configure: Rebuild. | |
| 1999-12-27 Clinton Popetz <cpopetz@cygnus.com> | |
| * config/mips/mips.h: Fix typo from 12/17/99 libgcc2 fix. | |
| 1999-12-27 Christophe Jaillet <jaillet.christophe@caramail.com> | |
| * alias.c (nonlocal_reference_p): Add else for disjoint ifs. | |
| * flow.c (find_use_as_address): Likewise. | |
| * function.c (fixup_var_refs_1): Likewise. | |
| (walk_fixup_memory_subreg, fixup_stack_1): Likewise. | |
| * jump.c (invert_exp, redirect_exp): Likewise. | |
| * loop.c (replace_call_address): Likewise. | |
| (count_nonfixed_reads): Likewise. | |
| * rtlanal.c (modified_between_p): Likewise. | |
| (modified_in_p, volatile_insn_p, volatile_refs_p): Likewise. | |
| (side_effects_p, replace_regs, jmp_uses_reg_or_mem): Likewise. | |
| * unroll.c (remap_split_bivs): Likewise. | |
| 1999-12-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * diagnostic.c (v_message_with_decl): Use .* format specifier | |
| instead of building the format specifier width manually. | |
| * system.h (strsignal): Don't check HAVE_STRSIGNAL when | |
| determining whether to provide a prototype. Remove the | |
| sys_siglist clause in the conditional. | |
| 1999-12-23 Martin v. Löwis <loewis@informatik.hu-berlin.de> | |
| * fold-const.c (operand_equal_p): Use memcmp to compare string | |
| constants. | |
| Suggested by D. J. Bernstein | |
| 1999-12-17 Jakub Jelinek <jakub@redhat.com> | |
| * config/h8300/h8300.h (TARGET_H8300H, TARGET_H8300S): Make sure | |
| UNITS_PER_WORD and BITS_PER_WORD are compile time constants when | |
| compiling libgcc2. | |
| * config/mips/mips.h (TARGET_64BIT): Likewise. | |
| * config/rs6000/rs6000.h (TARGET_POWERPC64): Likewise. | |
| * libgcc2.c: Use {,U}{HW,W,DW}type and DWunion everywhere instead | |
| of {SI,DI}type and DIunion. Define these types to QI/HI modes on | |
| dsps. Give routines proper names if SI/DI modes are not used. | |
| * longlong.h: Use DWunion instead of DIunion. | |
| 1999-12-26 Zack Weinberg <zack@wolery.cumb.org> | |
| * acconfig.h: New ENABLE flags: TREE_CHECKING, RTL_CHECKING, | |
| GC_CHECKING, GC_ALWAYS_COLLECT. | |
| * configure.in: Allow --enable-checking with an argument | |
| listing check modes to enable. | |
| * config.in, configure: Rebuilt. | |
| * ggc-page.c, ggc-simple.c: Define GGC_POISON (and | |
| GGC_ALWAYS_VERIFY for ggc-simple.c) only if | |
| ENABLE_GC_CHECKING. Define GGC_ALWAYS_COLLECT only if | |
| ENABLE_GC_ALWAYS_COLLECT. | |
| * rtl.h, rtl.c: Change ENABLE_CHECKING to ENABLE_RTL_CHECKING | |
| throughout. | |
| * tree.h, tree.c: Change ENABLE_CHECKING to | |
| ENABLE_TREE_CHECKING throughout. | |
| Sun Dec 26 07:48:20 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * fold-const.c (fold_truthop): Properly check for FP RHS. | |
| 1999-12-24 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.h (note_deferall_of_defined_inline_function): Declare. | |
| * toplev.c (note_deferral_of_defined_inline_function): New | |
| function, split out from ... | |
| (rest_of_compilation): ... here. Use it. | |
| Fri Dec 24 12:34:26 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * expr.c (store_constructor): Don't call clear_storage if size is | |
| variable. | |
| 1999-12-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (toplev.o): Depend on loop.h. | |
| * dwarfout.c: Include tm_p.h. | |
| * emit-rtl.c (restore_emit_status): Mark parameter with | |
| ATTRIBUTE_UNUSED. | |
| * final.c (final_scan_insn): Likewise. | |
| * flow.c (flow_nodes_print, flow_exits_print, flow_loops_cfg_dump, | |
| flow_loop_nested_p, flow_loop_exits_find, flow_loop_nodes_find, | |
| flow_depth_first_order_compute, flow_loop_pre_header_find, | |
| flow_loop_tree_node_add, flow_loops_tree_build, | |
| flow_loop_level_compute, flow_loops_level_compute, | |
| flow_loop_outside_edge_p): Add prototypes. | |
| (recompute_reg_usage): Mark parameters with ATTRIBUTE_UNUSED. | |
| * ggc-callbacks.c (lang_mark_tree, lang_mark_false_label_stack): | |
| Mark with ATTRIBUTE_NORETURN. | |
| * hash.c (hash_newfunc): Mark parameter with ATTRIBUTE_UNUSED. | |
| * local-alloc.c (no_conflict_p): Likewise. | |
| * loop.c (insert_bct): Hide definitions of variables with hidden | |
| usage. | |
| (note_reg_stored): Mark parameter with ATTRIBUTE_UNUSED. | |
| * regclass.c (memory_move_secondary_cost): Mark variable `mem' | |
| with ATTRIBUTE_UNUSED. | |
| (record_reg_classes): Mark parameter with ATTRIBUTE_UNUSED. | |
| (reg_scan): Likewise. | |
| * reload.c (find_reloads): Remove unused variables `changed'. | |
| * reload1.c (reload_reg_class_lower): Don't unnecessarily cast | |
| away const-ness. | |
| (allocate_reload_reg): Mark parameter with ATTRIBUTE_UNUSED. | |
| Remove unused variable `insn'. | |
| * toplev.c: Include loop.h. | |
| (report_file_and_line): Remove unnecessary prototype. | |
| * tree.c (build_block): Mark parameter with ATTRIBUTE_UNUSED. | |
| * unroll.c (biv_total_increment): Likewise. | |
| Thu Dec 23 23:15:22 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (emit_input_reload_insns): Restore old behavior | |
| wrt. 'special' reloads. | |
| 1999-12-23 Zack Weinberg <zack@wolery.cumb.org> | |
| * Makefile.in (ggc-simple.c, ggc-page.c): Don't depend on | |
| hash.h. (cse.c): Don't depend on hashtab.h. | |
| * cse.c: Don't include hashtab.h. | |
| (hash_cse_reg_info, cse_reg_info_equal_p): Delete prototypes | |
| of dead functions. | |
| * ggc-simple.c: Don't include hash.h. | |
| 1999-12-22 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (add_abstract_origin_attribute): Call | |
| gen_abstract_function on our function context. | |
| Thu Dec 23 03:57:10 1999 Hans-Peter Nilsson <hp@bitrange.com> | |
| * Makefile.in (INTEGRATE_H): Fix typo: INTEGRATE_H, not INTREGRATE_H. | |
| 1999-12-23 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_address_cost): Add statement to default | |
| case in switch. | |
| 1999-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*addqi3_noclobber_reload): Change operand 0 | |
| constraints to "a!r". | |
| 1999-12-21 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (calls.o): Depend on function.h. | |
| (alias.o): Likewise. | |
| 1999-12-21 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (emit_reload_insns): Break out code and variables into... | |
| (input_reload_insns, other_input_address_reload_insns, | |
| other_input_reload_insns, input_address_reload_insns, | |
| inpaddr_address_reload_insns, output_reload_insns, | |
| output_address_reload_insns, outaddr_address_reload_insns, | |
| operand_reload_insns, other_operand_reload_insns, | |
| other_output_reload_insns): ... new static variables, and... | |
| (emit_input_reload_insns, emit_output_reload_insns, do_input_reload, | |
| do_output_reload): ... new functions. | |
| Tue Dec 21 07:06:36 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * pa.h (FUNCTION_ARG_BOUNDARY): Never return 0. | |
| 1999-12-21 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * md.texi: Add c4x constraints documentation. | |
| 1999-12-21 Martin v. Löwis <loewis@informatik.hu-berlin.de> | |
| * config/i386/dgux.c (struct option): Rename to | |
| lang_independent_option. | |
| (struct m_options): Add description field. | |
| (output_options): Rename option type, add sep declaration, output | |
| ix86_cpu_string and ix86_arch_string only if set. | |
| (output_file_start): Rename option type. | |
| Mon Dec 20 23:15:36 1999 Mike Stump <mrs@wrs.com> | |
| * Makefile.in (crtbegin.o, crtend.o, s-crtS): Depend on | |
| stmp-int-hdrs. | |
| (libgcc2.a): Similarly. | |
| Mon Dec 20 23:06:47 1999 David Edelsohn <edelsohn@gnu.org> | |
| * longlong.h (_ARCH_PPC): Only protect add_ssaaaa and sub_ddmmss | |
| with W_TYPE_SIZE == 32. Do not fall through to POWER architecture | |
| for umul_ppmm and smul_ppmm if !_ARCH_PPC and !_ARCH_POWER. | |
| Mon Dec 20 23:02:03 1999 Jeffrey A Law (law@cygnus.com) | |
| * fold-const.c (real_hex_to_f): Remove unused "isldouble" variable. | |
| Remove redundant initialization of "frexpon" and "expon". | |
| Mon Dec 20 15:00:04 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * tree.c (real_value_from_int_cst): Clear REAL_VALUE_TYPE object first. | |
| * expr.c (store_constructor): New argument SIZE; pass to clear_storage. | |
| (store_constructor_field, expand_expr): Pass new arg. | |
| 1999-12-20 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (explow.o): Depend on function.h. | |
| * stor-layout.c (set_sizetype): Fix typo. | |
| 1999-12-20 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * function.c (cfun): Renamed from current_function. All users | |
| changed. | |
| * function.h (cfun): Rename declaration as well. | |
| * reload.h (struct insn_chain): Change live_throughout and dead_or_set | |
| to be of type regset_head, not regset. All users changed by adding | |
| address operator. | |
| * reload1.c (new_insn_chain): Don't allocate regsets, just clear them. | |
| 1999-12-20 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/rtems.h: New file. | |
| 1999-12-19 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (spill_failure): Take class of failed reload as argument | |
| and print it. Caller changed. | |
| Sun Dec 19 07:50:42 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * rs6000.h (SUBTARGET_DEFAULT): New macro. | |
| (TARGET_SWITCHES): Allow subtargets to default switches. | |
| * rs6000/vxppc.h (SUBTARGET_DEFAULT): New macro. | |
| 1999-12-18 Mark Mitchell <mark@codesourcery.com> | |
| * crtstuff.c (__do_global_ctors_aux): Do not call __cxa_finalize | |
| in a main program. | |
| Sat Dec 18 20:42:43 1999 Richard Henderson <rth@cygnus.com> | |
| * cccp.c (main): Define __STDC_VERSION__ as necessary. | |
| * cppinit.c (cpp_handle_option): Likewise. | |
| * ginclude/stdarg.h (va_copy): Use __STDC_VERSION__ to | |
| determine when to define. | |
| Sat Dec 18 20:34:00 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_emit_conditional_move): If TARGET_FIX, handle | |
| cmove with mismatched test and data modes. | |
| Sat Dec 18 20:30:15 1999 Richard Henderson <rth@cygnus.com> | |
| * c-typeck.c (c_expand_start_case): Don't warn for long switch | |
| in system headers. | |
| Sat Dec 18 16:28:43 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * alias.c: Minor reformatting. | |
| * flow.c: Likewise. | |
| * regs.h: Likewise. | |
| * stor-layout.c: Likewise. | |
| * fold-const.c: Likewise. | |
| (OVERFLOW_SUM_SIGN): Renamed from overflow_sum_sign. | |
| (struct cb_args, const_binop_1, const_binop): Pass type of arg, | |
| not arg itself. | |
| (size_int_wide): Cache nodes even if garbage collecting. | |
| (twoval_comparison_p): Reenable SAVE_EXPR case if operand | |
| of SAVE_EXPR has no side effects. | |
| * cse.c: Move a comment. | |
| * tree.c: Minor reformatting. | |
| (int_size_in_bytes): Return -1 if constant overflows. | |
| Sat Dec 18 18:30:20 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (copy_loop_body): Don't treat a REG like a PLUS. | |
| 1999-12-18 10:42 -0800 Zack Weinberg <zack@wolery.cumb.org> | |
| * objc/objc-parse.c: Regenerate. This file must be rebuilt | |
| after any change to c-parse.in, even if objc-parse.y didn't | |
| change. Oops. | |
| 1999-12-18 David S. Miller <davem@redhat.com> | |
| * toplev.c (rest_of_compilation): Restore BLOCK tree | |
| reconstruction and branch shortening changes lost in | |
| December 18th change. | |
| Sat Dec 18 05:29:29 1999 Scott Bambrough <scottb@netwinder.org> | |
| * config/arm/linux-elf.h: Change all instances of | |
| ARM_FLAG_SHORT_BYTES to ARM_FLAG_MMU_TRAPS. | |
| * config/arm/uclinux-elf.h: Likewise. | |
| 1999-12-18 Gabriel Dos Reis <gdr@codesourcery.com> | |
| * toplev.c (notice, vmessage, v_message_with_file_and_line, | |
| v_message_with_decl, file_and_line_for_asm, | |
| v_error_with_file_and_line, v_error_with_decl, v_error_for_asm, | |
| verror, vfatal, v_warning_with_file_and_line, v_warning_with_decl, | |
| v_warning_for_asm, vwarning, vpedwarn, v_pedwarn_with_decl, | |
| v_pedwarn_with_file_and_line, vsorry, vnotice, count_error, | |
| pfatal_with_name, fatal_io_error, need_error_newline, | |
| last_error_function, last_error_tick, announce_function, | |
| default_print_error_function, print_error_function, | |
| report_error_function, fnotice, error_with_file_and_line, | |
| error_with_decl, error_for_asm, error, set_fatal_function, fatal, | |
| _fatal_insn, _fatal_insn_not_found, warning_with_file_and_line, | |
| warning_with_decl, warning_for_asm, warning, pedwarn, | |
| pedwarn_with_decl, pedwarn_with_file_and_line, sorry): Move to | |
| diagnostic.c | |
| (compile_file): Use fnotice instead of notice. Adjust call. | |
| * diagnostic.c: New file. | |
| * Makefile.in (OBJS): Include diagnostic.o | |
| (diagnostic.o): Define dependence. | |
| 1999-12-18 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (ASM_OUTPUT_XXX): Wrap in do-while(0). | |
| Tweak formatting. | |
| 1999-12-18 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (rpts_top, rptb_top): Add clobbers for rs and re. | |
| 1999-12-17 13:21 -0800 Zack Weinberg <zack@rabi.columbia.edu> | |
| * fixtests.c (is_cxx_header): New fn, split out of | |
| double_slash_test. | |
| (else_endif_label): Allow "#endif // comment" in C++ headers, | |
| as determined by is_cxx_header. | |
| * fixfixes.c (else_endif_label_fix): Update comment. | |
| * fixincl.c: Don't output VERB_PROGRESS lines if stdout is not | |
| a tty. | |
| * genfixes: Correct double thinko in commandline parsing. | |
| * hackshell.tpl: Generate correct sh syntax for bypass | |
| entries. | |
| * inclhack.def (all): Whenever an inserted preprocessor | |
| conditional is split over multiple lines, use double | |
| backslashes in this file so the fixed header will be readable. | |
| (AAB_fd_zero_glibc_1_0): Rename to AAB_fd_zero_asm_posix_types_h | |
| and add bypass entry for correct version of this header. | |
| (AAB_fd_zero_glibc_1_x): Rename to AAB_fd_zero_gnu_types_h. | |
| (AAB_fd_zero_glibc_2_0): Rename to AAB_fd_zero_selectbits_h. | |
| (hpux8_bogus_inlines): New fix, split from... | |
| (ultrix_atof_param) ... here. | |
| (math_expression): Add bypass entry keyed to glibc comment | |
| indicating the problem has been dealt with; disable | |
| unnecessary sed operations; update commentary. | |
| (math_gcc_ifndefs): Rename to math_huge_val_from_dbl_max, | |
| add select and bypass entries, simplify shell operation. | |
| (math_huge_val_ifndef): Split from math_gcc_ifndefs. | |
| (ip_missing_semi, rs6000_param, tinfo_cplusplus, | |
| ultrix_atof_param): Add select entry. | |
| (stdio_va_list, sunos_mather_decl): Add bypass entry. | |
| (systypes_for_aix, sysv86_string, tinfo_cplusplus): Put the | |
| comments with the fixes they describe. | |
| * c-parse.in (string action): Do not warn about ANSI string | |
| concatenation in system headers. Affects C parser only. | |
| * c-parse.y, c-parse.c, c-parse.h: Rebuild. | |
| 1999-12-16 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.h (TARGET_ARCH32): Exchange ifdefs so that if | |
| compiling libgcc2 the macro depends always on arch cpp defines. | |
| Fri Dec 17 10:34:16 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * loop.c (insert_loop_mem): Don't record MEMs from inside | |
| EXPR_LISTs. | |
| Fri Dec 17 12:08:11 MET 1999 Jan Hubicka <hubicka@freesoftr.cz> | |
| * regclass.c (regclass): Do not use flowgraph when not optimizing. | |
| * gcse.c (try_replace_reg): Do replacements in REG_EQUAL/REG_EQUIV | |
| notes too, create one when replacement failed, attempt to simplify | |
| resulting notes. | |
| (cprop_insn): Propagate even to registers mentioned only in REG_EQUAL | |
| or REG_EQUIV notes. | |
| 1999-12-16 Mark Mitchell <mark@codesourcery.com> | |
| * crtstuff.c (__dso_handle): Declare. | |
| (__cxa_finalize): Likewise. | |
| (do_global_dtors_aux): Call __cxa_finalize if __dso_handle is | |
| non-NULL. | |
| * invoke.texi: Document -fuse-cxa-atexit. | |
| * tree.h (ptr_type_node): Document. | |
| (const_ptr_type_node): Likewise. | |
| Fri Dec 17 01:32:38 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * regmove.c (optimize_reg_copy_1): Ignore LOOP notes. | |
| (optimize_reg_copy_2): Likewise. | |
| (optimize_reg_copy_3): Likewise. | |
| (fixup_match_2): Likewise. | |
| (regmove_optimize): Likewise. | |
| (fixup_match_1): Liekwise. | |
| * i386.md (HI to SImode promoting splitters): Rewrite. | |
| (pushsf mem peep2): New. | |
| (testhi to andhi peep2): Remove. | |
| * i386.h (x86_promote_QImode): New. | |
| (TARGET_PROMOTE_QImode): New. | |
| (PREDICATE_CODES): Add promotable_binary_operator. | |
| * i386.c (x86_promote_QImode0: New. | |
| (promotable_binary_operator): New. | |
| * i386-protos.h (promotable_binary_operator): New. | |
| * i386.md (test?i_1): Use "nonmemory_operand" predicate, simplify | |
| condition. | |
| (one_cmpl?i*): Pass "NOT" to unary_operator_ok. | |
| 1999-12-16 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (INTREGRATE_H): Rename to INTEGRATE_H. | |
| * function.c (insert_block_after_note): Remove. | |
| (retrofit_block): Likewise. | |
| (identify_blocks): Fix indentation. | |
| (reorder_blocks): Don't NULL out NOTE_SOURCE_FILE for a | |
| NOTE_INSN_BLOCK_BEG or NOTE_INSN_BLOCK_END. | |
| * function.h (insert_block_after_note): Remove prototype. | |
| (retrofit_block): Likewise. | |
| * integrate.c (expand_inline_function): Don't call | |
| find_loop_tree_blocks. Use expand_start_bindings_and_block, not | |
| just expand_start_bindings. Use the block_map to remap old | |
| NOTE_BLOCKs to new ones. | |
| (integrate_decl_tree): Keep track of remapped blocks. | |
| * integrate.h (struct inline_remap): Add block_map. | |
| * stmt.c (expand_fixup): Don't try to retrofit_blocks. Just set | |
| NOTE_BLOCK on the notes. | |
| (expand_start_bindings): Rename to ... | |
| (expand_start_bindings_and_block): Add parameter. Set NOTE_BLOCK. | |
| (expand_end_bindings): Set NOTE_BLOCK. | |
| * toplev.c (rest_of_compilation): In function-at-a-time-mode, | |
| reconstruct the BLOCK tree. | |
| * tree.h (expand_start_bindings): Macroize. Call ... | |
| (expand_start_bindings_and_block): New function. | |
| 1999-12-16 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.c (print_operand): Cast fprintf arguments | |
| to match the format. | |
| 1999-12-16 David S. Miller <davem@redhat.com> | |
| * expr.c (emit_move_insn_1): Only emit clobbers if one of | |
| the outputs is a SUBREG. | |
| * rtlanal.c (reg_overlap_mentioned_p): Revert December 15th | |
| change. | |
| * config/sparc/sparc.c (epilogue_renumber): Add default case | |
| to switch stmt. | |
| Thu Dec 16 11:33:57 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * toplev.c (rest_of_compilation): Run branch shortening after | |
| reg-stack. | |
| * regclass.c (loop_depth): Remove | |
| (scan_one_insn): Do not handle LOOP_NOTE insns. | |
| (regclass): Go through basic blocks and set loop_cost | |
| Thu Dec 16 02:56:25 1999 Zack Weinberg <zack@bitmover.com> | |
| * tree.h (DECL_FROM_INLINE): Check DECL_ABSTRACT_ORIGIN too. | |
| Thu Dec 16 10:43:35 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (movqi): Use "nonimmediate_operand" for output operand. | |
| (movstrictqi, movdi, movsf, movdf, movxf): Likewise. | |
| (adddi, addqi, addhi, subdi, subqi, subhi, ffs): Likewise. | |
| Thu Dec 16 02:41:26 1999 Richard Henderson (rth@cygnus.com) | |
| * loop.c (insert_loop_mem): Ignore memory clobbers. | |
| * combine.c (simplify_comparison): Reduce (OP (MINUS A B) 0) | |
| to (OP A B). | |
| Thu Dec 16 02:26:11 1999 Jeffrey A Law (law@cygnus.com) | |
| * profile.c: Remove redundant #include "output.h". | |
| * h8300.md (HImode preinc peephole): Fix typo. | |
| 1999-12-15 Jason Merrill <jason@casey.cygnus.com> | |
| * function.c (retrofit_block): Abort if we don't find a suitable insn. | |
| (insert_block_after_note): Abort if we don't have a previous block. | |
| Remove FN parameter. | |
| * function.h: Adjust. | |
| 1999-12-15 Mark Mitchell <mark@codesourcery.com> | |
| * builtins.c (expand_builtin_mathfn): Make sure not to expand the | |
| argument more than once. | |
| 1999-12-15 Jason Merrill <jason@casey.cygnus.com> | |
| * stmt.c (expand_decl): Expand upper bound of a dynamic array. | |
| 1999-12-15 Jakub Jelinek <jakub@redhat.com> | |
| * expr.c (emit_group_load): Use dst mode if src is VOIDmode. | |
| Wed Dec 15 16:11:55 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * function.c (PREFERRED_STACK_BOUDNARY): Provide default value. | |
| (assign_stack_local_1): Limit alignment to PREFERRED_STACK_BOUNDARY, | |
| update stack_alignment_needed. | |
| (prepare_function_start): Initialize stack_alignment_needed | |
| * function.h (struct function): Add field stack_alignment_needed. | |
| Wed Dec 15 14:55:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * caller-save.c (insert_one_insn): Returns struct insn_chain *. | |
| Handle live_throughout / dead_or_set instead of live_before / | |
| live_after. | |
| (save_call_clobbered_regs): Get register livenessinformation from | |
| chain->live_throughout. | |
| (add_stored_regs): New function. | |
| (insert_restore, insert_save): Add restored / saved registers to | |
| dead_or_set. | |
| * global.c (reg_dies): New parameter chain. | |
| (reg_becomes_live): Third parameter is regs_set now. | |
| Changed all callers. | |
| (reg_dies): New parameter chain. Changed all callers. | |
| (build_insn_chain): Set live_throughout instead of | |
| live_before / live_after. | |
| * reload.h (struct insn_chain): Replace members live_before / | |
| live_after with live_throughout / dead_or_set. | |
| * reload1.c (new_insn_chain): Handle live_throughout / dead_or_set | |
| instead of live_before / live_after. | |
| (maybe_fix_stack_asms, find_reload_regs, finish_spills): Likewise. | |
| (order_regs_for_reload, find_reg, finish_spills): Likewise. | |
| (choose_reload_regs_init): Likewise. | |
| * stupid.c (current_chain, find_clobbered_regs): Delete. | |
| (stupid_life_analysis): Set chain->live_throughout chain->dead_or_set | |
| instead of chain->live_before / chain->live_after. | |
| (mark_hard_ref): New function. | |
| (stupid_mark_refs): Call mark_hard_ref. Clear chain->live_throughout. | |
| 1999-12-15 David S. Miller <davem@redhat.com> | |
| * rtlanal.c (reg_overlap_mentioned_p): Handle CONCAT. | |
| Wed Dec 15 15:05:30 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * flow.c (calculate_loop_depth): Make global, remove prototype, | |
| rewrite to use new loop infrastructure. | |
| (find_basic_block): Remove calculate_loop_depth call. | |
| * toplev.c (rest_of_compilation): Call find_basic_block. | |
| * output.h (calculate_loop_depth): Declare. | |
| * flow.c (dump_flow_info): Dump loop_depth. | |
| (flow_loops_nodes_find): Increase loop_depth for basic block in the | |
| body. | |
| (flow_loops_find): Initialize the loop_depth for each basic block. | |
| 1999-12-15 Jason Merrill <jason@casey.cygnus.com> | |
| * tree.c (decl_function_context): Handle virtual functions. | |
| * tlink.c (scan_linker_output): Don't look in demangled name when | |
| looking for linker output keywords. | |
| * dwarfout.c (output_type): We can defer namespace-scope classes. | |
| Wed Dec 15 01:23:29 1999 Jeffrey A Law (law@cygnus.com) | |
| * regclass.c (record_reg_classes): Update comment for merging | |
| register class preferences in reg->reg copies. Tighten conditions | |
| for merging register class preferences in reg->reg copies. | |
| Wed Dec 15 02:19:32 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (tablejumpdi): Generate DImode LABEL_REF. | |
| 1999-12-14 Geoff Keating <geoffk@cygnus.com> | |
| * config/m68k/m68020-elf.h (ENDFILE_SPEC): Delete. | |
| (INIT_SECTION_ASM_OP): Delete. | |
| (FINI_SECTION_ASM_OP): Delete. | |
| (STARTFILE_SPEC): Define to hold just crtbegin.o. | |
| 1999-12-14 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (add_abstract_origin_attribute): Do call abort if | |
| the abstract origin wasn't emitted. | |
| * dwarf2out.c (class_scope_p): New fn. | |
| (gen_subprogram_die): Use it. | |
| (gen_variable_die): Use it. Tweak logic. | |
| (gen_struct_or_union_type_die): Check context_die to determine | |
| if we're function-local. | |
| (dwarf2out_decl): Check DECL_BUILT_IN, not DECL_FUNCTION_CODE. | |
| 1999-12-14 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (check_dbra_loop): Can't reverse a biv that has | |
| maybe_multiple set. | |
| 1999-12-14 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c: Add support for -mcpu=arm720 command line | |
| switch. | |
| Tue Dec 14 18:13:32 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Fix sign of giv lifetime calculation | |
| for givs made from biv increments. | |
| Tue Dec 14 08:11:27 1999 Richard Henderson <rth@cygnus.com> | |
| * configure.in (alpha-osf, alpha-linux): Handle ev6[78]. | |
| * alpha.c (override_options): Recognize -mcpu=ev67. | |
| * alpha.h (CPP_CPU_EV67_SPEC): New. | |
| (CPP_CPU_DEFAULT_SPEC): Examine TARGET_CPU_DEFAULT to use it. | |
| (EXTRA_SPECS): Update. | |
| Tue Dec 14 08:04:28 1999 Richard Henderson <rth@cygnus.com> | |
| * cppp.c (main): Set trigraphs and __STRICT_ANSI__ as | |
| appropriate for -lang-c89 and -std=*. | |
| * cppinit.c (cpp_handle_option): Likewise. | |
| (new_pending_define): New, split out from cpp_handle_option. | |
| * gcc.c (default_compilers): Don't define __STRICT_ANSI__ | |
| or enable trigraphs for -ansi/-std=*. | |
| * ginclude/stdarg.h (__va_copy): New. | |
| (va_copy): Don't define for C89. | |
| Tue Dec 14 08:37:27 CST 1999 Clinton Popetz <cpopetz@cygnus.com> | |
| * config/arm/arm.md (mulsidi3adddi, umulsidi3adddi): New patterns | |
| for long long multiply-accumulate. | |
| Tue Dec 14 13:51:38 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * regclass.c (scan_one_insn): Set loop_cost to 1 when | |
| optimizing for size. | |
| 1999-12-14 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (reload): Can't avoid select_reload_regs/finish_spills | |
| if something changed. Back out that part of yesterday's changes. | |
| * loop.c (loop_max_reg): New static variable. | |
| (loop_optimize): Initialize it. Eliminate one unnecessary call to | |
| max_reg_num. | |
| (scan_loop): Call reg_scan_update whenever we may have added new | |
| registers, and update loop_max_reg. | |
| Tue Dec 14 12:07:29 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * regclass.c (record_reg_classes): Do not do the copying preferrencing | |
| when source does not die. | |
| * regclass.c (record_reg_classes): Handle INOUT operands properly. | |
| 1999-12-14 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/linux64.h (TARGET_LIVE_G0, | |
| TARGET_BROKEN_SAVERESTORE): Don't support weird SPARC | |
| variants on Linux. | |
| * config/sparc/linux.h (TARGET_LIVE_G0, | |
| TARGET_BROKEN_SAVERESTORE): Likewise. | |
| * config/sparc/linux-aout.h (TARGET_LIVE_G0, | |
| TARGET_BROKEN_SAVERESTORE): Likewise. | |
| * config/sparc/sparc.h (SPARC_DEFAULT_CMODEL): Default to CM_32. | |
| (CONDITIONAL_REGISTER_USAGE): For block profiling fix %g4 on sparc64, | |
| not %g2. | |
| (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Use %g4 instead of %g2 | |
| as sparc64 block profiling register. | |
| * config/sparc/sparc.c (sparc_override_options): Allow block | |
| profiling with -m32. | |
| (sparc_block_profiler): Use %g4 instead of %g2 as sparc64 block | |
| profiling register. | |
| * config/sparc/linux64.h (MACHINE_STATE_*): Only provide these | |
| macros on TARGET_ARCH32. sparc.h has macros good enough for sparc64. | |
| * config/sparc/sol2.h (MACHINE_STATE_*): Likewise. | |
| * config/sparc/xm-sp64.h: Avoid using __sparc_v9__ when testing | |
| for sparc64. | |
| * config/sparc/sparc.h: Likewise. | |
| * config/sparc/xm-sysv4-64.h: Likewise. | |
| * config/float-sparc.h: Likewise. | |
| * glimits.h: Likewise. | |
| * longlong.h: Likewise. | |
| * config/sparc/linux64.h (DEFAULT_VTABLE_THUNKS): Define to 1. | |
| (ASM_IDENTIFY_GCC): Remove. | |
| 1999-12-14 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * combine.c (combine_simplify_rtx): Don't make shared rtl. | |
| (simplify_logical): Likewise. | |
| 1999-12-14 Mumit Khan <khan@xraylith.wisc.edu> | |
| * cccp.c (INO_T_EQ): Disable inode-based optimization for Cygwin. | |
| * cppfiles.c (INO_T_EQ): Likewise. | |
| 1999-12-14 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/crtdll.h (STARTFILE_SPEC): Add -pg profiling support. | |
| * i386/mingw32.h (LIB_SPEC): Likewise. | |
| (STARTFILE_SPEC): Likewise. | |
| * i386/uwin.h (LIB_SPEC): Likewise. | |
| (STARTFILE_SPEC): Likewise. | |
| * i386/mingw32.h (SUBTARGET_PROLOGUE): Override Cygwin definition. | |
| * i386/uwin.h (SUBTARGET_PROLOGUE): Likewise. | |
| Mon Dec 13 20:25:29 1999 Jeffrey A Law (law@cygnus.com) | |
| * combine.c (combine_simplify_rtx): Fix order of checks for | |
| (ashiftrt foo C) -> (lt foo (const_int 0)) simplification. | |
| 1999-12-13 Clinton Popetz <cpopetz@cygnus.com> | |
| * config/arm/arm.md (*mulsidi3adddi, *umulsidi3adddi) Backed out | |
| 12/10/99 change, reapplied to merged-arm-thumb-backend-branch. | |
| 1999-12-10 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * hard-reg-set.h (inv_reg_alloc_order): Declare if REG_ALLOC_ORDER is | |
| defined. | |
| * regclass.c (inv_reg_alloc_order): New array. | |
| (regclass_init): If REG_ALLOC_ORDER is defined, initialize it. | |
| * reload.h (struct insn_chain): Delete fields group_size, group_mode, | |
| counted_for_groups, counted_for_nongroups. Add fields rld and | |
| n_reloads. | |
| * reload.c (push_secondary_reload): Don't set nongroup field of | |
| new reloads. | |
| (push_reload): Likewise. | |
| (find_reloads): Delete code to compute nongroup fields. | |
| * reload1.c (reload_insn_firstobj): New static variable. | |
| (pseudos_counted, spilled_pseudos): Now of type regset_head. All | |
| users changed. | |
| (calculate_needs, find_tworeg_group, find_group, possible_group_p, | |
| count_possible_groups, modes_equiv_for_class_p, new_spill_reg, | |
| dump_needs, maybe_mark_pseudo_spilled, hard_reg_use_compare): Delete | |
| functions. | |
| (count_pseudo, select_reload_regs, copy_reloads, find_reg): New | |
| functions. | |
| (struct hard_reg_n_uses): Deleted. | |
| (potential_reload_regs): Deleted. | |
| (init_reload): Initialize spilled_pseudos and pseudos_counted. | |
| (reload): Don't try to allocate reload registers if we already know | |
| we have to make another pass. Call select_reload_regs. Free memory | |
| starting with reload_firstobj when starting another pass. | |
| Don't allocate spilled_pseudos. | |
| (calculate_needs_all_insns): Call copy_reloads for an insn that | |
| needs reloads; don't call calculate_needs. | |
| (spill_cost): New static array. | |
| (used_spill_regs_local): New static variable. | |
| (order_regs_for_reload): Rewrite to lose hard_reg_n_uses and the code | |
| to compute potential_reload_regs. | |
| (find_reload_regs): Completely rewritten to use find_reg. | |
| (allocate_reload_reg): Don't test counted_for_groups or | |
| counted_for_nongroups. Lose NOERROR arg and code to give an error; | |
| all cllers changed. | |
| (choose_reload_regs): Add fallback code that uses the existing | |
| register allocation from find_reload_regs. | |
| Mon Dec 13 00:54:14 1999 Philippe De Muyter <phdm@macqel.be> | |
| * flow.c (create_edge_list): Cast xmalloc return value. | |
| Mon Dec 13 00:47:58 1999 Jeffrey A Law (law@cygnus.com) | |
| * doprnt.c: Remove incorrect comment closure. | |
| * cse.c: Fix a few minor whitespace goofs. | |
| 1999-12-13 Don Bowman <don@pixstream.com> | |
| * mips/vxworks.h: Fix problem with comment termination. | |
| (EXTRA_SECTIONS): Add in_sbss. | |
| (EXTRA_SECTION_FUNCTIONS): Corresponding changes. | |
| 1999-12-12 David S. Miller <davem@redhat.com> | |
| * cse.c (struct cse_reg_info): Add hash_next member, | |
| reorder rest of struct for better packing on 64-bit | |
| hosts. | |
| (cse_reg_info_tree): Kill. | |
| (REGHASH_SHIFT, REGHASH_SIZE, REGHASH_MASK, reg_hash, | |
| REGHASH_FN): New custom pow2 hash mechanism. | |
| (NBUCKETS): Kill. | |
| (HASH_SHIFT, HASH_SIZE, HASH_MASK, HASH, table): Rework to | |
| use a pow2 hash table. | |
| (get_cse_reg_info): Rework to use new REGHASH. | |
| (new_basic_block): Likewise, use HASH_SIZE, and inline | |
| free_element call. | |
| (remove_from_table): Rework to use HASH_SIZE/HASH_MASK, | |
| and inline free_element call. | |
| (lookup_as_function, insert, flush_hash_table, invalidate, | |
| remove_invalid_refs, remove_invalid_subreg_refs, rehash_using_reg, | |
| invalidate_for_call, use_related_value, find_comparison_args, | |
| fold_rtx, equiv_constant, cse_insn, invalidate_memory): Likewise. | |
| (hash_cse_reg_info, cse_reg_info_equal_p, free_element, | |
| get_element): Kill. | |
| Sun Dec 12 21:31:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (cse_basic_block): Free qty_table consistently. | |
| 1999-12-12 David S. Miller <davem@redhat.com> | |
| Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.md (movtf reg/reg split): Don't generate | |
| SUBREGs by hand, gen the appropriate hard reg directly. | |
| (movtf reg/mem split): Likewise and alter_subreg on destination | |
| if necessary. | |
| (movtf mem/reg split): Similarly. | |
| (movdf_cc_sp64): Rename from hidden pattern. | |
| (movtf_cc_hq_sp64): Renamed from movtf_cc_sp64. | |
| (movtf_cc_sp64, following split): New pattern and splitter. | |
| (movdf_cc_reg_sp64): Rename from hidden pattern. | |
| (movtf_cc_reg_hq_sp64): Renamed from movtf_cc_reg_sp64, require | |
| TARGET_HARD_QUAD. | |
| (movtf_cc_reg_sp64, following split): New pattern and splitter. | |
| 1999-12-12 Stephen L Moshier <moshier@mediaone.net> | |
| * loop.c (load_mems): Don't hoist written floating point mem | |
| if -ffloat-store. | |
| 1999-12-12 Mark Mitchell <mark@codesourcery.com> | |
| * except.h (struct eh_queue): Add `next' pointer. | |
| (struct eh_status): Make x_ehqueue a pointer. | |
| (push_ehqueue): Declare. | |
| (pop_ehqueue): Likewise. | |
| * except.c (expand_eh_region_end): Adjust now that ehqueue is a | |
| pointer. | |
| (expand_fixup_region_end): Likewise. | |
| (expand_leftover_cleanups): Likewise. | |
| (push_ehqueue): Define. | |
| (pop_ehqueue): Likewise. | |
| (emit_cleanup_handler): Use push_ehqueue and pop_ehqueue rather | |
| than doing it inline. | |
| (expand_start_all_catch): Adjust now that ehqueue is a | |
| pointer. | |
| (mark_eh_queue): Mark all level of the queue. | |
| (mark_eh_status): Adjust now that ehqueue is a | |
| pointer. | |
| (init_eh_for_function): Allocate ehqueue. | |
| (free_eh_status): Free it. | |
| * stmt.c (expand_cleanups): Save the ehqueue around the cleanup | |
| expansion for a fixup. | |
| 1999-12-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gthr-single.h (__gthread_active_p): Add prototype arguments. | |
| * libgcc2.c (__udivmoddi4): Remove unnecessary decls. | |
| (__dummy, __builtin_saveregs, __bb_exit_trace_func, __bb_init_prg, | |
| __bb_trace_func, __bb_trace_func_ret, __bb_trace_ret, | |
| function_ptr, getpagesize, __enable_execute_stack, | |
| __enable_execute_stack, __clear_insn_cache, | |
| __enable_execute_stack, __do_global_dtors, __do_global_ctors, | |
| _cleanup, _exit, __default_terminate, __terminate_func, | |
| __terminate, __empty, __throw, new_eh_context, | |
| eh_context_initialize, eh_context_static, eh_context_specific, | |
| get_eh_context, __get_eh_context, __get_eh_info, | |
| init_reg_size_table, eh_threads_initialize, | |
| __get_dynamic_handler_chain, __sjthrow, __sjpopnthrow, | |
| __unwinding_cleanup, throw_helper, __throw, __rethrow, | |
| __pure_virtual): Add prototype arguments. | |
| (__bb_exit_func): Cast a sizeof to long when comparing against one. | |
| Cast a signed value to unsigned long when comparing against one. | |
| (new_eh_context): Wrap in _GTHREADS macro. | |
| (__sjthrow, __sjpopnthrow): Initialize variable `cleanup' at | |
| declaration. | |
| (in_reg_window): Mark parameters with __attribute__ ((__unused__)). | |
| (throw_helper): Initialize variables `handler_p' and `pc_p'. | |
| 1999-12-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * combine.c (record_promoted_value): Remove unused variable | |
| `links2'. | |
| * emit-rtl.c (renumber_insns): Likewise for `old_max_uid'. | |
| * global.c (record_conflicts): Likewise for `j'. | |
| * genoutput.c (output_insn_data): Don't unnecessarily cast away | |
| const-ness. | |
| 1999-12-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * i386-protos.h (output_387_binary_op, output_fix_trunc, | |
| output_fp_compare): Constify a char*. | |
| * i386.c (ix86_split_to_parts, ix86_safe_length_prefix): Add | |
| static prototypes. | |
| (override_options, ix86_comp_type_attributes, print_operand, | |
| output_387_binary_op, output_fix_trunc, output_fp_compare): | |
| Constify a char*. | |
| (ix86_sched_reorder): Mark parameter `clock_var' with | |
| ATTRIBUTE_UNUSED. | |
| * i386.h (DEBUG_PRINT_REG): Constify a char*. | |
| Fri Dec 10 16:12:13 1999 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
| * tree.def (EXPR_WITH_FILE_LOCATION): Temporarily add a third | |
| operand, for use in the Java front-end. | |
| 1999-12-10 Ben Collins <bcollins@debian.org> | |
| * configure.in: Fix typo for "-64" in 64bit as check. | |
| * configure: Rebuilt. | |
| 1999-12-10 Jakub Jelinek <jakub@redhat.com> | |
| * longlong.h (__sparc_v9__): Use %rDIGIT instead of %DIGIT where | |
| appropriate. | |
| 1999-12-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-parse.in (string): With -Wtraditional, warn if ANSI string | |
| concatenation is utilized. | |
| * invoke.texi (-Wtraditional): Document it. | |
| 1999-12-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * flow.c (flow_loops_dump): Avoid ANSI string concatenation. | |
| Cast a ptrdiff_t to long and pass it to printf with %ld. | |
| 1999-12-10 Geoff Keating <geoffk@cygnus.com> | |
| * config/m68k/m68k.h (CONDITIONAL_REGISTER_USAGE): If we have no | |
| 68881, we have no 68881 registers at all. | |
| (HARD_REGNO_MODE_OK): It is always OK to put a MODE_FLOAT | |
| value in a 68881 register if it is available. | |
| 1999-12-10 Clinton Popetz <cpopetz@cygnus.com> | |
| * config/arm/arm.md (*mulsidi3adddi, *umulsidi3adddi): New patterns | |
| for long long multiply-accumulate. | |
| 1999-12-10 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (insert_loop_mem): Undo last change. | |
| 1999-12-10 David S. Miller <davem@redhat.com> | |
| * config/sparc/sparc.c (fp_sethi_p, fp_mov_p, fp_high_losum_p): | |
| New functions. | |
| * config/sparc/sparc-protos.h: Add them. | |
| * config/sparc/sparc.h: Add them to PREDICATE_CODES. | |
| (EXTRA_CONSTRAINT_BASE): New macro, handling Q, R, and S | |
| constraints which use those helpers. | |
| (EXTRA_CONSTRAINT): Use this new macro. | |
| * md.texi: Update sparc target constraints documentation. | |
| * config/sparc/sparc.md (clear_sf, clear_sfp, movsf_const_intreg, | |
| movsf_const_high, movsf_const_lo, movsf_insn): Delete. | |
| (movsf_insn_novis_liveg0, movsf_insn_novis_noliveg0, | |
| movsf_insn_vis, movsf_lo_sum, movsf_high): New patterns. | |
| (movsf high/lo_sum split): Rework for new patterns. | |
| (movsf expander): Allow storing fp_zero to memory if ! live_g0. | |
| 1999-12-09 Gavin Romig-Koch <gavin@cetus.cygnus.com> | |
| * c-common.c (c_common_nodes_and_builtins): | |
| Create __builtin_ptrdiff_t and __builtin_size_t. | |
| Thu Dec 9 18:05:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa/elf.h (MAX_OFILE_ALIGNMENT): Define. | |
| Fri Dec 10 00:53:10 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * regclass.c (globalize_reg): Re-instate test that allows | |
| fixed registers to be declared as a variable even after functions | |
| are defined. | |
| Fri Dec 10 00:52:13 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (cpu attribute): Add "athlon". | |
| (athlon_decode): New attribute. | |
| (Athlon scheduling units definitions): New. | |
| (fcmp and shld patterns): Set athlon_decode to "vector". | |
| * i386.c (athlon_cost): New. | |
| (m_ATHLON): New. | |
| (x86_use_leave, x86_push_memory, x86_movx, x86_cmove, x86_deep_branch, | |
| x86_use_sahf): Set for Athlon. | |
| (x86_use_fiop): Unset for Athlon. | |
| (override_options): Define Athlon alignments and "athlon" name. | |
| (x86_adjust_cost): Penalize AGI and delayed latencies for Athlon. | |
| * i386.h (TARGET_ATHLON): New. | |
| (enum processor_type): Add PROCESSOR_ATHLON. | |
| (TARGET_CPU_DEFAULT_SPEC): Set to "-D__tune_athlon__" | |
| for CPU_DEFAULT==5 | |
| (TARGET_CPP_CPU_SPECS): Set -D__tune_athlon__ for Athlon. | |
| 1999-12-09 Andreas Jaeger <aj@suse.de> | |
| * loop.c (record_biv): Declare parameter as int. | |
| * config/i386/i386-protos.h: Declare long_memory_operand. | |
| 1999-12-09 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (copy_node): Do zero the TREE_CHAIN, even for an | |
| EXPR_WITH_FILE_LOCATION. | |
| Thu Dec 9 11:36:24 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (neg??, abs?f, one_cmpl?i): Use nonimmediate_operand | |
| in expander. | |
| * flow.c (recompute_reg_usage): Use basic block info to get loop_depth. | |
| * combine.c (try_combine, distribute_notes): Remove REG_N_REFS | |
| updating code. | |
| 1999-12-09 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/linux64.h (TARGET_DEFAULT): Make -mapp-regs | |
| default on linux64 again. | |
| * config/sparc/t-linux64: Add mno-app-regs and non-medlow code | |
| models for multilibing. | |
| * genmultilib: Accept | as alternative separator within a set in | |
| MULTILIB_OPTIONS. | |
| * config/sparc/sparc.h (PROMOTE_FOR_CALL_ONLY): Define. | |
| * calls.c (precompute_arguments): Make sure initial_value contains | |
| value pseudo which CSE expects. | |
| * cse.c (struct set): New entry orig_src. | |
| (cse_insn): Set it early on entry, use it for libcall EQUIV note | |
| replacement. | |
| Wed Dec 8 22:24:15 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (count_basic_blocks): Don't add (use (const_int 0)) insns. | |
| 1999-12-08 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (insert_loop_mem): Don't hoist volatile mems out of loops. | |
| 1999-12-08 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.c (ultra_cmove_results_ready_p, | |
| ultra_fpmode_conflict_exists, ultra_flush_pipeline): Typo fix. | |
| * config/sparc/sparc.h (SPARC_SETHI_P): Don't look at topmost 32 bits | |
| if TARGET_ARCH32. | |
| * longlong.h: Merge in changes from glibc. | |
| Also don't clobber %g2 register in 32bit SPARC assembly, so that | |
| -mno-app-regs libgcc can be compiled. | |
| * libgcc2.c: Add defines so that the updated longlong.h | |
| can be used in libgcc2.a. Also, make sure on most architectures | |
| (at least on all which have optimized code in longlong.h defined | |
| for) {SI,W}_TYPE_SIZE is suitable for preprocessor tests. | |
| 1999-12-08 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/sparc/sol2-64.h: Same as sol2-sld-64.h, except that | |
| `-m EMULATION' is added to non-default LINK_ARCH_SPECs. | |
| * configure.in: Use sol2-64.h instead of sol2-sld-64.h if linker | |
| is GNU ld. | |
| * configure: Rebuilt. | |
| Wed Dec 8 03:45:40 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (secondary_reload_class): For !BWX, sub-simode | |
| outputs require a register. | |
| 1999-12-08 Brendan Kehoe <brendan@cygnus.com> | |
| * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Add _sf_to_usi | |
| _df_to_usi. Required by some targets, so US_SOFTWARE_GOFAST calls to | |
| functions like dptoul will be resolved. | |
| (libgcc2.a): Make sure that the object files from DPBIT are named | |
| differently (prefix `_dp') from those that would be coming from | |
| FPBIT. | |
| 1999-12-08 Alexandre Oliva <oliva@lsd.ic.unicamp.br>, Jakub Jelinek <jakub@redhat.com> | |
| * configure.in: When target is sparc* and tm_file contains 64, | |
| test for 64bit support in assembler. If not supported, remove | |
| sparc/t-sol2-64 from target-dependent Makefile fragments. | |
| (AS_SPARC64_FLAG): Define to the assembler flag for 64bit. | |
| (HAVE_AS_OFFSETABLE_LO10): Rework test to use these flags. | |
| (HAVE_AS_REGISTER_PSEUDO_OP): Use config.cache. | |
| * acconfig.h (AS_SPARC64_FLAG): Added. | |
| * configure, config.in: Rebuilt. | |
| * config/sparc/sol2-sld-64.h: Same as sol2.h, if without 64bit | |
| support. Use AS_SPARC64_FLAG. | |
| 1999-12-07 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.c (hard_32bit_mode_classes): Mark registers | |
| suitable for holding OFmode values so that gcc works with complex | |
| quad long doubles. | |
| (hard_64bit_mode_classes): Likewise. | |
| * config/sparc/sparc.md (sethi_di_medlow_embmedany_pic): Fix pattern | |
| so that it is actually matched. | |
| (sethi_di_medlow): Likewise. | |
| * config/sparc/sparc.h (LEGITIMATE_CONSTANT_P): Consider TFmode 0.0L | |
| as legitimate constant if -mvis. | |
| * config/sparc/sparc.md (movtf): Likewise. | |
| (clear_sf): Use const_double_operand. | |
| (clear_sfp, clear_dfp, clear_tf, clear_tfp): New patterns. | |
| * config/sparc/sparc.c (sparc_emit_float_lib_cmp): New function. | |
| * config/sparc/sparc-protos.h (sparc_emit_float_lib_cmp): Prototype. | |
| * config/sparc/sparc.h (*_LIBCALL): Only use for _Q_* | |
| routines, _Qp_* cannot be handled like that now. | |
| (INIT_TARGET_OPTABS): Likewise. | |
| * config/sparc/sparc.md (cmptf): Accept soft float ARCH64. | |
| (seq, sne, sgt, sge, slt, sle, beq, bne, bgt, bge, blt, ble): Call | |
| sparc_emit_float_lib_cmp if ARCH64 and soft float. | |
| (extendsftf2, extenddftf2, trunctfsf2, trunctfdf2, floatsitf2, | |
| floatditf2, fix_trunctfsi2, fix_trunctfdi2, addtf3, subtf3, multf3, | |
| divtf3, sqrttf3): New expanders. | |
| (extendsftf2_hq, extenddftf2_hq, trunctfsf2_hq, trunctfdf2_hq, | |
| floatsitf2_hq, floatditf2_hq, fix_trunctfsi2_hq, fix_trunctfdi2_hq, | |
| addtf3_hq, subtf3_hq, multf3_hq, divtf3_hq, sqrttf3_hq): Rename from | |
| non-_hq patterns. | |
| * configure.in (sparc64-*-linux*): Use posix threads if enabled. | |
| * configure: Rebuilt. | |
| * config/sparc/linux64.h: Default to -mcpu=ultrasparc if no | |
| -mcpu is given and we're doing 64bit compiles. | |
| Tue Dec 7 19:22:06 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.h (struct induction): Add multi_insn_incr. | |
| * loop.c (basic_induction_var): New multi_insn_incr argument. | |
| Set it if we search back through previous insns for the biv. | |
| (record_biv): New multi_insn_incr argument; fill in struct induction. | |
| (strength_reduce): Discard an iv with multiple bivs, any of | |
| which require multiple insns to increment. | |
| 1999-12-07 Martin v. Löwis <loewis@informatik.hu-berlin.de> | |
| * invoke.texi (C Dialect Options): Remove -flang-c9x, add -std | |
| documentation. | |
| 1999-12-06 David S. Miller <davem@redhat.com> | |
| * combine.c (check_promoted_subreg): Do not conditionalize this upon | |
| PROMOTE_FUNCTION_RETURN. | |
| Mon Dec 6 15:12:14 1999 Jim Wilson <wilson@cygnus.com> | |
| * regmove.c (optimize_reg_copy_1): If no REG_DEAD note, check for | |
| and handle REG_UNUSED note on insn. | |
| * combine.c (force_to_mode, case LSHIFTRT): New local inner_mask. Set | |
| inner_mask instead of mask. | |
| 1999-12-06 Brendan Kehoe <brendan@cygnus.com> | |
| * dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be | |
| zero if there was an error. | |
| 1999-12-06 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.md (return_losum_di): Fix typo in asm | |
| output string. | |
| * longlong.h: Fix clobbers in SPARC asm statements. | |
| * config/sparc/sparc.c (input_operand): Allow HImode and QImode | |
| valid sethi operations when TARGET_ARCH64. | |
| * calls.c (save_fixed_argument_area): If save_mode is BLKmode, | |
| always use move_by_pieces to avoid infinite recursion. | |
| (restore_fixed_argument_area): Likewise. | |
| * combine.c (check_promoted_subreg, record_promoted_value): New | |
| functions. | |
| (combine_instructions): Use them to retain nonzero and sign bit | |
| information after SUBREGs are eliminated by optimizations in | |
| this pass if PROMOTE_FUNCTION_RETURN. | |
| * config/sparc/sparc.h (ASM_DECLARE_REGISTER_GLOBAL): Document | |
| .register declaration. Don't use variables with __ prefixes. | |
| Mon Dec 6 12:24:52 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * fold-const.c (optimize_bit_field_compare): Only use one mode | |
| for both RHS and LHS in non-constant case. | |
| 1999-12-06 Nathan Sidwell <nathan@acm.org> | |
| * frame.c (start_fde_sort): Only allocate erratic array, if | |
| linear one was allocated. Return allocated flag. | |
| (fde_insert): Only insert, if there's a valid array. | |
| (fde_end_sort): Split, sort and merge if linear and erratic | |
| arrays exist, else just sort linear one. | |
| (search_fdes): New function. Linear search through original fde | |
| structure. | |
| (frame_init): Permit multiple initializations. Cope with | |
| memory shortages. | |
| (find_fde): Fallback on linear search, if failed to sort array. | |
| (__deregister_frame_info): Only free sorted array, if we | |
| allocated it. | |
| 1999-12-06 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.h (MUST_PASS_IN_STACK): New macro. | |
| 1999-12-05 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.c (sparc64_initialize_trampoline): Use gen_flushdi. | |
| 1999-12-05 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (special_function_p): Declare. | |
| * calls.c (special_function_p): Make it global. Don't take `name' | |
| as a parameter. Fix typo in 1999-11-28 change. | |
| (expand_cal): Adjust. | |
| 1999-12-04 Mark Mitchell <mark@codesourcery.com> | |
| * tree.def (EXPR_WITH_FILE_LOCATION): Fix comment formatting. | |
| * tree.h (EXPR_WFL_FILENAME): Define in terms of | |
| EXPR_WFL_FILENAME_NODE. | |
| (EXPR_WFL_FILENAME_NODE): Use the second operand slot rather than | |
| the TREE_CHAIN. | |
| * print-tree.c (print_note): Print TREE_PRIVATE and | |
| TREE_PROTECTED. | |
| * dwarf2out.c (add_abstract_origin_attribute): Don't abort when | |
| the original die cannot be found. | |
| * varray.h (varray_head_tag): Add elements_used. | |
| (VARRAY_PUSH): New macro. | |
| (VARRAY_POP): Likewise. | |
| (VARRAY_TOP): Likewise. | |
| Add variants of VARRAY_PUSH and VARRAY_POP for all varray element | |
| types. | |
| * varray.c (varray_init): Initialize elements_used. | |
| * Makefile.in (BASIC_BLOCK_H): Add varray.h. | |
| (INTEGRATE_H): New variable. | |
| (integrate.o): Depend on INTEGRATE_H. | |
| (unroll.o): Likewise. | |
| * function.h (insert_block_after_note): Declare. | |
| * function.c (insert_block_after_note): Split out from ... | |
| (retrofit_block): ... here. | |
| * stmt.c (expand_fixup): Fix typo in comment. | |
| Sat Dec 4 14:13:38 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * regmove.c (copy_src_to_dest): Remove loop_depth parameter. | |
| (optimize_reg_copy_1): Remove REG_N_REFS updating code. | |
| (optimize_reg_copy_2, copy_src_to_dest, fixup_match_2): Likewise. | |
| (regmove_optimize, fixup_match_1): Likewise. | |
| 1999-12-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * flow.c (flow_loops_dump): Add missing argument when calling | |
| flow_loop_nested_p. | |
| 1999-12-04 Geoffrey Keating <geoffk@cygnus.com> | |
| Greg McGary <gkm@gnu.org> | |
| * c-common.c (enum attrs): Add A_NO_LIMIT_STACK. | |
| (init_attributes): Add A_NO_LIMIT_STACK. | |
| (decl_attributes): Handle A_NO_LIMIT_STACK. | |
| * c-decl.c (duplicate_decls): Handle DECL_NO_LIMIT_STACK. | |
| * explow.c (allocate_dynamic_stack_space) [!HAVE_allocate_stack]: | |
| Handle stack bounds checking. | |
| * flags.h (flag_stack_check): Use the word 'probe' rather than | |
| 'check', because the flag doesn't actually cause any checking to | |
| be done. | |
| * function.c (expand_function_start): Set | |
| current_function_limit_stack. | |
| * function.h (struct function): Add limit_stack. | |
| (current_function_limit_stack): Define. | |
| * invoke.texi (Code Gen Options): Document new options. | |
| * rtl.h: Declare stack_limit_rtx. | |
| * toplev.c (stack_limit_rtx): New variable. | |
| (decode_f_option): Handle new options -fstack-limit-register=REG, | |
| -fstack-limit-symbol=IDENT, -fno-stack-limit. | |
| (main): Add stack_limit_rtx as GC root. | |
| * tree.h (DECL_NO_LIMIT_STACK): New macro. | |
| (struct tree_decl): New member no_limit_stack. | |
| * config/rs6000/rs6000.c (rs6000_allocate_stack_space): Handle | |
| stack_limit_rtx. | |
| * config/rs6000/rs6000.md (allocate_stack): Handle stack_limit_rtx. | |
| (conditional_trap+1): Get new mnemonic correct. | |
| (conditional_trap+2): New pattern for DImode traps. | |
| * config/m68k/m68k.c (output_function_prologue): Handle | |
| stack_limit_rtx. | |
| * config/m68k/m68k.md (trap): New insn. | |
| (conditional_trap): New insn. | |
| * md.texi (Standard Names): Document `trap' and | |
| `conditional_trap'. | |
| * optabs.c (gen_cond_trap): Use start_sequence()/end_sequence() | |
| so a cc0 setter doesn't get emitted at some random place in the | |
| function. | |
| * config/i960/i960.md (trap): New insn. | |
| (conditional_trap): New expander. | |
| (conditional_trap+1, conditional_trap+2): New insns for signed | |
| and unsigned cases. | |
| * config/i960/i960.c (i960_function_prologue): Use | |
| STARTING_FRAME_OFFSET. Handle stack_limit_rtx. | |
| Thu Dec 2 21:22:45 1999 Greg McGary <gkm@gnu.org> | |
| Geoffrey Keating <geoffk@cygnus.com> | |
| * flags.h (warn_padded, warn_packed): Add global var decls. | |
| * toplev.c (warn_padded, warn_packed): Add global var defns. | |
| (W_options): Add warnings `-Wpacked' and `-Wpadded'. | |
| * stor-layout.c (layout_record): Add local variable `type' | |
| to hold often-used TREE_TYPE (field). Add local variable | |
| `unpacked_align' to hold alignment that would be in force | |
| if no `packed' attribute were present. Warn if `packed' attribute | |
| is unnecessary, or even harmful. Warn when gcc inserts padding | |
| to satisfy alignment requirements of members. Use NULL_TREE | |
| when checking whether var_size is set. | |
| * invoke.texi: Document new flags. | |
| 1999-12-03 Nathan Sidwell <nathan@acm.org> | |
| * frame.c (fde_split): Reimplement to avoid variable sized array. | |
| Thu Dec 2 18:59:48 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * combine.c (try_combine): Before fixing up LOG_LINKS for the | |
| i3_subst_into_i2 case, check that GET_CODE (PATTERN (i2)) == PARALLEL. | |
| 1999-12-02 Gavin Romig-Koch <gavin@cygnus.com> | |
| * invoke.texi: Document the mips option -mno-crt0 | |
| 1999-12-02 Mike Karr <mkarr@mathworks.com> | |
| * cccp.c (argdata): Added free_ptr member. | |
| (macroexpand): Initialize free_ptr of each argument. When an | |
| argument's buffers are freed, if the argument's free_ptr corresponds | |
| to a buffer on the input stack, then return the free_ptr to that stack | |
| frame, otherwise, free it. | |
| (macarg): If an argument begins and ends on the same input stack level, | |
| then transfer the free_ptr of that buffer to the argument in case | |
| the stack is popped during the processing of a subsequent argument. | |
| 1999-12-02 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (note_reg_stored): New function. | |
| (struct note_reg_stored_arg): New structure. | |
| (try_copy_prop): Change to be more conservative; only replace within | |
| one extended basic block and stop replacing if a store to the | |
| replacement reg is seen. | |
| 1999-12-02 Nick Clifton <nickc@cygnus.com> | |
| * config/fp-bit.c: Initialize all fields of the NAN | |
| constants. | |
| * c-lex.c (check_newline): Pass pragma_getc and pragma_ungetc | |
| to HANDLE_PRAGMA. | |
| Wed Dec 1 18:16:38 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (extend?f?f2): Force the input into a register, not | |
| the output. | |
| 1999-12-01 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.md (movsf_const_intreg): Add constraints for | |
| regclass' sake. | |
| (movdf_const_intreg_sp32): Likewise. Prefer the memory load | |
| alternative because setting up 64bit constant is usually costly, | |
| especially when reload is in progress or completed. | |
| (movdf_const_intreg_sp64): Likewise. | |
| (movdf_const_intreg split): Fix building up constants when | |
| HOST_BITS_PER_WIDE_INT is 64 yet long is 32bit. | |
| Wed Dec 1 16:51:22 1999 Jeffrey A Law (law@cygnus.com) | |
| * combine.c (if_then_else_cond): Use const_true_rtx instead of | |
| const1_rtx for return values in EQ/NE comparison against (const_int 0) | |
| case. | |
| * mn10300.c (REG_SAVE_BYTES): Allocate space for AM33 registers. | |
| (asm_file_start): Emit .am33 into assembly file when compiling for | |
| the AM33. | |
| (print_operand_address): Handle POST_INC addresses. | |
| (can_use_return_insn, initial_offset): Check AM33 registers too. | |
| (expand_prologue): Check & save AM33 registers too. | |
| (expand_epilogue): Similarly. | |
| (secondary_reload_class): Handle AM33 specific secondary reloads. | |
| (output_tst): Emit efficient code for the AM33 too. | |
| * mn10300.h (CPP_SPEC, TARGET_AM33): Define. | |
| (TARGET_SWITCHES): Add -mam33 switch. | |
| (FIRST_PSEUDO_REGISTER): Handle new AM33 registers. | |
| (FIXED_REGISTERS, CALL_USED_REGISTERS): Likewise. | |
| (REG_ALLOC_ORDER, CONDITIONAL_REGISTER_USAGE): Likewise. | |
| (HARD_REGNO_MODE_OK, MODES_TIEABLE_P): Likewise. | |
| (enum reg_class, REG_CLASS_NAMES): Likewise. | |
| (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Likewise. | |
| (INDEX_REG_CLASS, REG_CLASS_FROM_LETTER): Likewise. | |
| (REGNO_OK_FOR_INDEX_P, PREFERRED_RELOAD_CLASS): Likewise. | |
| (PREFERRED_OUTPUT_RELOAD_CLASS, LIMIT_RELOAD_CLASS): Likewise. | |
| (REGISTER_MOVE_COST, REGISTER_NAMES): Likewise. | |
| (HAVE_POST_INCREMENT): Define. | |
| (GO_IF_LEGITIMATE_ADDRESS): Allow POST_INC addresses for the AM33. | |
| (GO_IF_MODE_DEPENDENT_ADDRESS): POST_INC is a mode dependent address. | |
| * mn10300.md (movqi, movhi, addsi, subsi): Add AM33 variants. | |
| (mulsi, andsi, iorsi, xorsi, notsi): Likewise. | |
| (ashiftsi, lshiftrtsi, ashiftrtsi): Likewise. | |
| (zero_extend to SI from QI/HI): Likewise. | |
| (sign_extend to SI from QI/HI): Likewise. | |
| (mulsidi3, umulsidi3): New patterns for the AM33. | |
| (tstsi with zero extension from QI/HI): Add AM33 variants. | |
| (movsi, movsf, movdi, movdf): Generate efficient code for the AM33 too. | |
| (return_internal_regs, store_movm): Handle new AM33 registers. | |
| * t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Define. | |
| (LIBGCC, INSTALL_LIBGCC): Likewise. | |
| * invoke.texi: Document new flags. | |
| Fri Nov 26 10:59:12 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (addsi3_cc): Add "binary_operator_ok" to the condition. | |
| (addsi3_carry): Likewise. | |
| (sbbsi3_cc): Add "binary_operator_ok" to the condition. | |
| (sbbsi3_carry): Likewise. | |
| (mulsi3): Rewrite to expander, ensure that only one operand is memory. | |
| (mulhi3): Likewise. | |
| (test?i_1): Ensure that only one operand is memory. | |
| (conditional move patterns): likewise. | |
| (shift and rotate patterns): Rewrite to expander, add | |
| "binary_operator_ok" to the condition. | |
| * i386.md (QImode patterns): Remove '*' before the 'r' constraints. | |
| * i386.h (procesor_costs): Add movzbl_load field. | |
| (HARD_REGNO_MODE_OK): Accept QImode on non PARTIAL_REGISTER_STALL in | |
| non-Q registers, accept DImode registers anywhere. | |
| (Q_CLASS_P): New. | |
| (MEMORY_MOVE_COST): Calculate QImode moves correctly. | |
| * i386.c (*_cost): Set value for movxbl_load field. | |
| * (addsi): New add to lea splitter. | |
| (ashlsi): Likewise. | |
| (lea to add/shift peep2): New. | |
| 1999-12-01 Mark Salter <msalter@cygnus.com> | |
| * config/mips/elf.h (STARTFILE_SPEC): Add no-crt0. | |
| * config/mips/elf64.h (STARTFILE_SPEC): Add no-crt0. | |
| * config/mips/mips.h (TARGET_SWITCHES): Add no-crt0. | |
| Tue Nov 30 15:20:52 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (ix86_expand_move): Never add clobbers to move patterns. | |
| * i386.md (movsi_xor): New. | |
| (movsi_or): New. | |
| (movsi_1, movhi_1, movqi_1): Remove. | |
| (movsi_2): Rename to movsi_1. | |
| (movhi_2): Rename to movhi_1. | |
| (movqi_2): Rename to movqi_1. | |
| (movdi_1): Remove; remove splitter. | |
| (movdi_2): Rename to movdi_1. | |
| (divmodsi4 splitter): Do not emit clobbers for move patterns. | |
| (long move peep2): Do not create QI or HI mode mov0s | |
| (mov -1,reg -> or peep2s): Enable again, rewrite to single peephole. | |
| * i386.md (zero_extend?i?i2): Rewrite to expanders; new patterns, | |
| rewrite splitters. | |
| * i386.md (neg?f2_if): Split "r" and "f" to separate alternatives. | |
| (abs?f2_if): Likewise. | |
| 1999-11-30 Alex Samuel <samuel@codesourcery.com> | |
| * ggc.h (ggc_test_and_set_mark): New macro. | |
| (ggc_mark_rtx): Use ggc_test_and_set_mark. | |
| (ggc_mark_tree): Likewise. | |
| (ggc_mark_rtvec): Likewise. | |
| * ggc-common.c (ggc_mark_rtx_children): Reduce recursion. | |
| 1999-11-30 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (scope_die_for): Only handle types. Only search for | |
| containing types. | |
| (decl_scope_table): Just an array of trees now. | |
| (push_decl_scope): Simplify. | |
| (dwarf2out_init): Adjust. | |
| (local_scope_p): New fn. | |
| (gen_inlined_enumeration_type_die): Don't call scope_die_for. | |
| (gen_inlined_union_type_die, gen_inlined_structure_type_die): Likewise. | |
| (gen_typedef_die): Likewise. | |
| (gen_lexical_block_die): Don't call push/pop_decl_scope. | |
| (gen_inlined_subroutine_die): Likewise. | |
| (gen_abstract_function): Set current_function_decl temporarily. | |
| (gen_subprogram_die): Don't check DECL_ABSTRACT to set declaration. | |
| Handle block extern declarations. Don't call push/pop_decl_scope. | |
| (gen_decl_die): Fix logic for block externs. | |
| 1999-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * calls.c (special_function_p): Remove `realloc' and add `strdup' | |
| to the list of functions which have attribute malloc by default. | |
| 1999-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-lex.c (yylex): With -Wtraditional, when the ANSI type of an | |
| integer constant does not match the traditional type, limit the | |
| warnings to cases where the base of the type is ten. | |
| * invoke.texi (-Wtraditional): Document it. | |
| Tue Nov 30 15:18:35 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * combine.c (try_combine): Only pass SET or CLOBBER to SET_DEST | |
| * rs6000.md: Only access a CONST_INT with INTVAL | |
| Tue Nov 30 14:21:00 1999 Richard Henderson <rth@cygnus.com> | |
| * lcm.c (compute_laterin): Cast bb->aux to size_t not int. | |
| (compute_nearerout): Likewise. | |
| * ggc-page.c (ggc_page_print_statistics): Explicitly cast | |
| size_t to unsigned long for formatting. | |
| 1999-11-30 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.h (FIXED_REGISTERS, CONDITIONAL_REGISTER_USAGE): | |
| Allow the user to override call-used/fixed state of %g2-5 | |
| registers from the command line (with the exception of %g4 for | |
| embedded model). | |
| (REG_LEAF_ALLOC_ORDER): Move %g1 and %g4-7 registers to front, so that | |
| there is a higher chance of having a leaf function. | |
| (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Provide separate macros | |
| for ARCH64 which has %ccr register. | |
| * config/sparc/sparc.md (return_losum_si, return_losum_di): New | |
| patterns. | |
| * config/sparc/sparc.c (eligible_for_epilogue_delay): For the return | |
| insn accept into delay slot any insn which does not use %[ol] | |
| registers. Accept some LO_SUM and shift left by 1 for the normal | |
| restore case. | |
| (output_function_epilogue): Likewise. | |
| (epilogue_renumber): Added argument which inhibits any renumbering | |
| and just tests if the rtx does not use any %[ol] registers. | |
| (output_return): Reflect above change. | |
| 1999-11-30 Jakub Jelinek <jakub@redhat.com> | |
| * config/sparc/sparc.c (sparc_va_arg): Fix sparc64 va_arg | |
| aggregate passing for sizes <= 16 bytes. | |
| 1999-11-30 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * cse.c (FIXED_REGNO_P): Delete tests for OVERLAPPING_REGNO_P. | |
| * global.c (global_alloc): Delete [OVERLAPPING_REGNO_P] code. | |
| * reload.c (find_dummy_reload): Likewise. | |
| (find_equiv_reg): Likewise; also for INSN_CLOBBERS_REGNO_P. | |
| * reload1.c (reload_as_needed): Likewise. | |
| * stupid.c (stupid_find_reg): Likewise. | |
| * tm.texi (Obsolete Register Macros): Delete section. | |
| * gmicro.h: Remove all traces of the two macros. | |
| * i386.h: Likewise. | |
| * m88k.h: Likewise. | |
| * mips.h: Likewise. | |
| 1999-11-30 Brendan Kehoe <brendan@cygnus.com> | |
| * sparc.h (MASK_FASTER_STRUCTS, TARGET_FASTER_STRUCTS): Define. | |
| (TARGET_SWITCHES): Add -mfaster-structs/-mno-faster-structs flags. | |
| (ROUND_TYPE_ALIGN): Use better value if -mfaster-structs. | |
| * sparc.md (sparclite86x_branch, sparclite86x_shift): New function | |
| units for the sparclite86x chip. | |
| (flush): Revert October 14th change; add SImode specifically. | |
| (flushdi): Copy of flush, but DImode, to avoid genrecog warnings. | |
| * invoke.texi: Document it. | |
| Tue Nov 30 14:58:14 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/mn10200/mn10200.h (PREDICATE_CODES): Add | |
| psimode_truncation_operand. | |
| * config/mn10200/mn10200.c (psimode_truncation_operand): New | |
| function. Return true if the operand is either a MEM valid | |
| for a PSImode address or not a MEM at all. | |
| * config/mn10200/mn10200.md (truncsipsi2): Use | |
| psimode_truncation_operand. | |
| 1999-11-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * flow.c (flow_nodes_print, flow_loops_cfg_dump): New functions. | |
| (flow_loop_nested_p, flow_loops_dump, flow_loops_free): Likewise. | |
| (flow_loop_exits_find, flow_loop_nodes_find): Likewise. | |
| (flow_depth_first_order_compute, flow_loop_pre_header_find): Likewise. | |
| (flow_loop_tree_node_add, flow_loops_tree_build): Likewise. | |
| (flow_loop_level_compute, low_loops_level_compute): Likewise. | |
| (flow_loops_find, flow_loop_outside_edge_p): Likewise. | |
| * basic-block.h: Protect from multiple inclusion. | |
| (flow_loops_find, flow_loops_free, flow_loop_dump): Add protoypes. | |
| (struct loops, struct loop): Define structures. | |
| * sbitmap.c (sbitmap_a_subset_b_p): New function. | |
| * sbitmap.h: Protect from multiple inclusion. | |
| (sbitmap_a_subset_b_p): Add prototype. | |
| * Makefile.in (LOOP_H): New macro. | |
| (stmt.o, integrate.o, loop.o, unroll.o): Replace loop.h with LOOP_H. | |
| Tue Nov 30 01:34:47 1999 Philippe De Muyter <phdm@macqel.be> | |
| * cppinit.c (CAT): The argument list of this macro may not contain | |
| spaces ! | |
| 1999-11-29 David S. Miller <davem@redhat.com> | |
| Move quantity tables and register equivalence chains into | |
| per-qty and per-register structure arrays respectively. | |
| * cse.c (qty_first_reg, qty_last_reg, qty_mode, qty_const, | |
| qty_const_insn, qty_comparison_code, qty_comparison_const, | |
| qty_comparison_qty): Delete, replace with... | |
| (qty_table): this structure table. | |
| (reg_next_eqv, reg_prev_eqv): Delete, replace with... | |
| (reg_eqv_table): this structure table. | |
| (make_new_qty): Add argument MODE. Caller updated. | |
| Update to use qty_table and reg_eqv_table. | |
| (make_regs_eqv, delete_reg_equiv, insert_regs, | |
| insert, exp_equiv_p, cse_rtx_varies_p, canon_reg, | |
| fold_rtx, equiv_constant, record_jump_cond, cse_insn, | |
| cse_process_notes, cse_main, cse_basic_block): Likewise. | |
| Mon Nov 29 16:56:42 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * fold-const.c (extract_muldiv, case {MIN,MAX}_EXPR): Reverse | |
| operation if C is negative. | |
| (extract_muldiv, case SAVE_EXPR): Supresss if arg has side effects. | |
| (extract_muldiv, case {PLUS,MINUS}_EXPR): Don't apply distributive | |
| law for some divisions if constant is negative and change other | |
| divisions to the opposite rounding. | |
| * expr.c (store_constructor_field): If bit position is not multiple | |
| of alignment of TARGET's mode, use BLKmode. | |
| * expr.c (expand_expr_unaligned): Add more code from full case | |
| that is needed when OP0 is in a register. | |
| Mon Nov 29 18:09:39 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * dwarfout.c (field_byte_offset): Size can be zero if there was | |
| an error. | |
| 1999-11-29 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * fold-const.c (split_tree): Delete unused vars ORIG_IN and TYPE. | |
| (associate_trees): Delete unused var TEM. | |
| (extract_muldiv): Delete unused var CANCEL_P. | |
| * fold-const.c [TARGET_FLOAT_FORMAT != IEEE_FLOAT_FORMAT] | |
| (target_isinf, target_isnan, target_negative): Add return types to | |
| function definitions. | |
| 1999-11-29 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/fixincl.c(process): don't skip GLIBC files any more. | |
| * fixinc/hackshell.tpl: ditto | |
| * fixinc/fixtests.c(double_slash_test): more C++ header testing | |
| * fixinc/inclhack.def(AAB_fd_zero_glibc*): corrected spelling of mach | |
| 1999-11-29 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload.c (push_reload): When looking for a register to put into | |
| reg_rtx, make sure all hard regs in a multi-reg register are in the | |
| right class and nonfixed. | |
| * haifa-sched.c (reg_last_uses, reg_last_sets, reg_last_clobbers, | |
| pending_read_insns, pending_write_insns, pending_read_mems, | |
| pending_write_mems, pending_list_length, last_pending_memory_flush, | |
| last_function_call, sched_before_next_call): Move static variables | |
| into a structure. | |
| (bb_ prefixed versions): Replace with single array bb_deps. | |
| (struct deps): New structure. | |
| (add_insn_mem_dependence, flush_pending_lists, sched_analyze_1, | |
| sched_analyze_2, sched_analyze_insn, sched_analyze): Accept new | |
| argument of type "struct deps *"; use that instead of global | |
| variables. All callers changed. | |
| (init_rgn_data_dependencies): Delete function. | |
| (init_rtx_vector): Delete function. | |
| (init_deps): New function. | |
| (free_pending_lists): Simplify, we always use the bb_deps array even | |
| if only one basic block. | |
| (compute_block_backward_dependences): Likewise. | |
| (schedule_region): Likewise. | |
| (propagate_deps): New function, broken out of | |
| compute_block_backward_dependences. | |
| (compute_block_backward_dependences): Use it. | |
| * alpha.md: Delete useless patterns that tried to work around | |
| register elimination problems. | |
| * unroll.c (loop_iterations): Don't abort if iteration variable | |
| was made by loop. | |
| From Joern Rennecke: | |
| * reload1.c (reloads_conflict): Reverse test comparing operand | |
| numbers when testing for conflict between output/outaddr reloads. | |
| 1999-11-29 David S. Miller <davem@redhat.com> | |
| * config/sparc/sparc.c (init_cumulative_args): Fix type of third | |
| arg. | |
| * config/sparc/sparc-protos.h: Update proto, move into RTX_CODE. | |
| 1999-11-28 Robert Lipe <robertl@cygnus.com> | |
| * i386/sco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn | |
| table from .fini into .dtor. | |
| 1999-11-28 Anthony Green <green@cygnus.com> | |
| * tree.h (struct tree_decl): Add malloc_flag. | |
| (DECL_IS_MALLOC): Define. | |
| * c-common.c (attrs): Add A_MALLOC attribute. | |
| (init_attributes): Add this attribute to the table. | |
| (decl_attributes): Handle malloc attribute. | |
| * calls.c (special_function_p): Check for the malloc attribute. | |
| * extend.texi (Function Attributes): Document malloc attribute. | |
| Sun Nov 28 13:21:00 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (reload shift-add patterns): Remove. | |
| 1999-11-28 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * reorg.c (dbr_schedule) Print more statistics. Corrected | |
| problem when printing info when 3 delay slots are filled. | |
| 1999-11-28 Jakub Jelinek <jakub@redhat.com> | |
| * combine.c (setup_incoming_promotions): Pass an outgoing | |
| regno to FUNCTION_ARG_REGNO_P which it expects. | |
| 1999-11-28 Andreas Jaeger <aj@suse.de> | |
| * mips/linux.h (CPP_PREDEFINES): Undefine before redefining. | |
| Sun Nov 28 00:48:15 1999 Philippe De Muyter <phdm@macqel.be> | |
| * cccp.c (do_include): Avoid initialization of automatic variable. | |
| * integrate.c (mark_stores): Function definition made void, to match | |
| previous declaration. | |
| * regclass.c (dump_regclass): Ditto. | |
| * Makefile.in (WARN_CFLAGS): Macro augmented by `-Wtraditional'. | |
| Sat Nov 27 08:38:26 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is | |
| known to be multiple of divisor. | |
| * expr.c (store_constructor): Don't clobber TARGET if CLEARED. | |
| * combine.c (try_combine): Add code to try to merge a set of a | |
| two-word pseudo to a constant with a setting of one of those words | |
| to a constant. | |
| * fold-const.c (negate_expr, associate_trees, extract_muldiv): New. | |
| (split_tree): Completely rework to make more general. | |
| (make_range, fold): Call negate_expr. | |
| (fold, case NEGATE_EXPR): Simplify -(a-b) is -ffast-math. | |
| (fold, associate): Call new split_tree and associate_trees. | |
| (fold, case MULT_EXPR, case *_{DIV,MOD}_EXPR): Call extract_muldiv. | |
| 1999-11-26 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (try_copy_prop): Avoid GNU C extension. | |
| 1999-11-25 Mark Mitchell <mark@codesourcery.com> | |
| * except.c (init_eh_for_function): Still zero eh_return_context, | |
| eh_return_stack_adjust, and eh_return_handler. | |
| * except.h (eh_status): Adjust documentation for x_protect_list. | |
| (begin_protect_partials): New function. | |
| * except.c (enqueue_eh_entry): Fix formatting. | |
| (get_first_handler): Add consistency check. | |
| (add_partial_entry): Adjust usage of protect_list. | |
| (emit_cleanup_handler): Save and restore ehqueue. | |
| (expand_start_all_catch): Add comment. | |
| (begin_protect_partials): New function. | |
| (end_protect_partials): Adjust usage of protect_list. | |
| (init_eh_for_function): Use xcalloc. | |
| 1999-11-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-common.c (check_format_info): Don't call a variadic function | |
| with a non-literal format string. | |
| * c-decl.c (grokdeclarator, start_struct, finish_struct): Likewise. | |
| * c-typeck.c (build_component_ref, build_unary_op, lvalue_or_else, | |
| pedantic_lvalue_warning, error_init, pedwarn_init, warning_init): | |
| Likewise. | |
| * cccp.c (check_macro_name, do_xifdef, vwarning_with_line): | |
| Likewise. | |
| * collect2.c (collect_wait): Likewise. | |
| * dbxout.c (dbxout_type): Likewise. | |
| * gcc.c (do_spec_1): Likewise. | |
| * genemit.c (gen_insn, gen_expand): Likewise. | |
| * genrecog.c (write_switch, write_subroutine): Likewise. | |
| * mips-tfile.c (catch_signal, botch): Likewise. | |
| * print-rtl.c (print_rtx): Likewise. | |
| * toplev.c (default_print_error_function, report_error_function, | |
| _fatal_insn): Likewise. | |
| 1999-11-25 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (unsave_expr_now): Handle NULL_TREE as input. | |
| Wed Nov 24 17:08:09 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * reg-stack.c (subst_stack_regs_pat): Swap operands in commutative | |
| operations when needed. | |
| * i386.md (fop_?f_comm): New. | |
| (fop_?f_1): Do not accept commutative operands. | |
| 1999-11-25 Andreas Jaeger <aj@suse.de> | |
| * config/mips/mips.md (casesi_internal): Add missing brace. | |
| 1999-11-25 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (pend_type, output_pending_types_for_scope): Lose. | |
| (splice_child_die): Handle moving a child DIE from the declaration | |
| DIE of a class to its specification. | |
| (gen_struct_or_union_type_die): Use 'complete' consistently. | |
| (gen_decl_die): Generate the virtual context DIE first. | |
| Use decl_ultimate_origin instead of DECL_ABSTRACT_ORIGIN. | |
| 1999-11-24 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.md (call_value_multiple_interanal1): New. | |
| 1999-11-24 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (free_AT, free_die): New fns. | |
| (remove_children): Call them. | |
| (output_line_info): Disable removal of duplicate notes. | |
| Generate minimal debug info for types with TYPE_DECL_SUPPRESS_INFO set. | |
| * dwarf2out.c (gen_struct_or_union_type_die): TYPE_DECL_SUPPRESS_INFO | |
| means pretend the type isn't defined. | |
| Don't defer emitting types. | |
| (gen_type_die_for_member): New fn. | |
| (gen_decl_die): Call it. | |
| (splice_child_die): New fn. | |
| (gen_member_die): Call it rather than generate duplicate dies. | |
| Defer emitting information for the abstract instance of an inline | |
| until we either inline it or emit an out-of-line copy. | |
| * dwarf2out.c (decl_ultimate_origin): Ignore DECL_ABSTRACT_ORIGIN | |
| from output_inline_function if DECL_ABSTRACT is also set. | |
| (block_ultimate_origin): Likewise. | |
| (gen_abstract_function): New fn. | |
| (gen_decl_die, gen_inlined_subroutine_die): Call it. | |
| (gen_subprogram_die): An abstract instance is not a declaration | |
| just because it doesn't match current_function_decl. Don't abort | |
| because DECL_DEFER_OUTPUT isn't set. Do abort if a declaration | |
| has an abstract origin. | |
| * toplev.c (rest_of_compilation): Don't emit dwarf2 info for the | |
| abstract instance here. | |
| Wed Nov 24 18:39:18 1999 Andrew Haley <aph@cygnus.com> | |
| * config/sh/sh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add the case | |
| where we need to reload fpul from a system register. | |
| 1999-11-24 Andreas Jaeger <aj@suse.de> | |
| * config/mips/linux.h (CPP_PREDEFINES): Added. | |
| (LINK_SPEC): Remove -Y since this is only needed on sparc. | |
| 1999-11-24 Andreas Jaeger <aj@suse.de> | |
| * config/mips/linux.h (TARGET_VERSION): Added. | |
| (HANDLE_SYSV_PRAGMA): Added. | |
| (DEFAULT_VTABLE_THUNKS): Added. | |
| Wed Nov 24 14:12:15 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * local-alloc.c (qty): New structure and static variable. | |
| (qty_phys_reg): Remove, all references changed to qty. | |
| (qty_n_refs): Likewise. | |
| (qty_min_class): Likewise. | |
| (qty_birth): Likewise. | |
| (qty_death): Likewise. | |
| (qty_size): Likewise. | |
| (qty_mode): Likewise. | |
| (qty_n_calls_crossed): Likewise. | |
| (qty_alternate_class): Likewise. | |
| (qty_changes_size): Likewise. | |
| (qty_first_reg): Likewise. | |
| (alloc_qty): Rename variable QTY to QTYNO. | |
| (finf_free_reg): Likewise. | |
| (local_alloc): Allocate qty, do not allocate the removed variables. | |
| Wed Nov 24 17:26:05 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/mips/mips.h (ASM_SPEC): Don't pass -G to the assembler | |
| when -membedded-pic is passed. | |
| * config/mips/mips.md (casesi): Handle 64-bit case too. | |
| (casesi_internal_di): New insn. | |
| * config/mips/mips.c (embedded_pic_offset): Always make the | |
| embedded-pic subtractions relative to the name of the current | |
| function by use of the magic string "..CURRENT_FUNCTION". | |
| * config/mips/mips.h (ASM_OUTPUT_LABELREF): Make the magic happen. | |
| 1999-11-24 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/mips/mips.md (div_trap_normal): Don't ask for the REGNO | |
| of (const_int 0), when what we really care about is | |
| whether it's a zero constant anyway. | |
| (div_trap_mips16): Likewise. | |
| 1999-11-23 Mark Mitchell <mark@codesourcery.com> | |
| * loop.c (loop_optimize): Always find_loop_tree_blocks and | |
| unroll_block_trees when generating debuggable code. | |
| * tree.h (unsave_expr_1): New function. | |
| (lang_unsave): New variable. | |
| (get_callee_fndecl): New function. | |
| * tree.c (unsave_expr_now_r): New function. | |
| (lang_unsave): Define. | |
| (unsave_expr_1): Likewise. | |
| (unsave_expr_now_r): Split out from unsave_expr_now. | |
| (unsave_expr_now): Call lang_unsave if it is non-NULL. Otherwise, | |
| call unsave_expr_now_r. | |
| (get_callee_fndecl): Define. | |
| * Makefile.in (gencheck): Don't depend on lang_tree_files. | |
| (gencheck.o): Do depend on lang_tree_files. | |
| * integrate.h (copy_decl_for_inlining): New declaration. | |
| * integrate.c (copy_and_set_decl_abstract_origin): Remove. | |
| (copy_decl_for_inlining): New function. | |
| (integrate_parm_decls): Use it. | |
| (integrate_decl_tree): Likewise. | |
| 1999-11-23 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.h (ISA_HAS_FP4,ISA_HAS_CONDMOVE,ISA_HAS_8CC): Split | |
| the second two from the first. | |
| (CONDITIONAL_REGISTER_USAGE): Use ISA_HAS_8CC rather than ISA_HAS_FP4. | |
| * config/mips/mips.md (movcc,reload_incc,reload_outcc, | |
| conditional move): Use ISA_HAS_CONDMOVE or ISA_HAS_8CC rather than | |
| ISA_HAS_FP4. | |
| * config/mips/mips.c (mips_move_1word,gen_conditional_branch, | |
| override_options): Use ISA_HAS_CONDMOVE or ISA_HAS_8CC rather than | |
| ISA_HAS_FP4. | |
| Tue Nov 23 11:15:04 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (call_internal_symref, call_value_internal_symref): No mode | |
| needed on the address operand. | |
| * pa.c (call_operand_address): Check for the correct mode. | |
| 1999-11-23 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c: Include "basic-block.h". | |
| (try_copy_prop, replace_loop_reg): New functions. | |
| (load_mems): Detect registers that just hold copies of the hoisted | |
| mem, and call try_copy_prop to eliminate them. | |
| * Makefile.in (loop.o): Update dependencies. | |
| Tue Nov 23 01:03:29 1999 Hans-Peter Nilsson <hp@axis.com> | |
| * Makefile.in (gencheck.o): Depend on gencheck.h. | |
| (insn-emit.o): Depend on flags.h, hard-reg-set.h and resource.h. | |
| (insn-peep.o): Depend on except.h and function.h. | |
| (insn-attrtab.o): Depend on RECOG_H. | |
| (insn-output.o): Depend on toplev.h and flags.h. | |
| (gengenrtl.o): Depend on real.h. | |
| (gen-protos.o): Depend on cpplib.h and cpphash.h. | |
| Unify all dependencies to be on RECOG_H rather than recog.h. | |
| Tue Nov 23 00:57:10 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| From Casper H.S. Dik on comp.unix.solaris, 23 Oct 1998: | |
| * configure.in: Try building a bi-arch 32/64-bit compiler on | |
| sparc-*-solaris2.7 and higher. | |
| * configure: Rebuild. | |
| Mon Nov 22 23:09:44 1999 David O'Brien <obrien@FreeBSD.org> | |
| * config/freebsd.h: New, FreeBSD architecture independent file. | |
| * config/i386/freebsd-elf.h: removed FreeBSD architecturally | |
| independent pieces. | |
| * config/i386/freebsd.h: include i386/perform.h via tm.h rather than | |
| directly by i386/freebsd.h. | |
| * configure.in (*-*-freebsdelf): Include new FreeBSD architecturally | |
| independent configuration file. | |
| (*-*-freebsdelf): Include i386/perform.h via tm.h rather than | |
| directly by i386/freebsd.h. | |
| * configure: Rebuilt. | |
| * xm-i386.h: Define `__i386__' if not defined, rather than `i386' | |
| which is in the user's namespace. | |
| * libgcc2.c: Look for the ANSI-C approved `__i386__' symbol, vs. | |
| `i386' which is not in our namespace. | |
| Mon Nov 22 22:58:01 1999 "R. Kelley Cook" <KelleyCook@attglobal.net> | |
| * invoke.texi (ARM Options): Add in -mno-alignment-traps | |
| 1999-11-22 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (die_struct): Remove die_attr_last and die_child_last. | |
| (add_dwarf_attr, add_child_die): Just push onto the front. | |
| (reverse_die_lists): New fn. | |
| (add_sibling_attributes): Use it. | |
| (push_decl_scope): Reorganize. | |
| (add_name_and_src_coords_attributes): Don't set file and line for | |
| an artificial decl. | |
| (gen_subprogram_die): An artificial function doesn't need to match | |
| file and line. | |
| (gen_compile_unit_die): Return the generated die. Only add | |
| AT_comp_dir if the filename is relative. | |
| (remove_AT): Simplify loop. Also free string values. | |
| (output_die): A DIE ref can't be null. | |
| (output_value_format, value_format): Take a dw_attr_ref. | |
| (dwarf_last_decl, is_extern_subr_die, sibling_offset): Remove. | |
| (AT_class, AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, AT_loc, | |
| AT_addr, AT_lbl): New fns. | |
| (various): Use them. | |
| (various): Constify. | |
| Mon Nov 22 23:53:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * combine.c (combine_simplify_rtx): When handling a SUBREG, | |
| take SUBREG_WORD into account. | |
| (if_then_else_cond): Likewise. | |
| 1999-11-22 Jason Merrill <jason@casey.cygnus.com> | |
| * gmon.c, i386/gmon-sol2.c, sparc/gmon-sol2.c: Remove advertising | |
| clause from BSD license, pursuant with | |
| ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change | |
| 1999-11-22 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (load_mems): Reformat slightly. | |
| * basic-block.h (regset_head): New typedef. | |
| (INIT_REG_SET): New macro. | |
| 1999-11-22 Bruce Korb <autogen@linuxbox.com | |
| * fixinc/mkfisinc.sh(i?86-*-linux): disable script, run fixincl exe | |
| (mips-dec-bsd*): non-functional code | |
| (alpha*-*-linux-gnu*): redundant, duplicated by "*-*-linux-gnu*" | |
| * fixinc/inclhack.def(AAB_fd_zero_glibc_*): | |
| added three replacement fixes | |
| (no_double_slash): removed comments that are not (any longer) pertinent | |
| (bad_lval): this fix currently runs against many files. | |
| The comment seems to indicate that we should select for files | |
| containing 'pragma extern_prefix'. | |
| * fixinc/fixinc.x86-linux-gnu: deleted | |
| * fixinc/inclhack.sh: regen | |
| * fixinc/fixincl.x: regen | |
| * fixinc/fixincl.sh: regen | |
| Fri Nov 12 14:08:40 1999 Andrew Haley <aph@cygnus.com> | |
| * emit-rtl.c (gen_sequence): Only return the pattern of an insn if | |
| its code is INSN and it has no notes. | |
| 1999-11-22 Andrew Haley <aph@cygnus.com> | |
| * varasm.c (function_defined): Remove. | |
| (make_function_rtl): Don't set function_defined. | |
| (make_decl_rtl): Remove global register warning. | |
| * regclass.c (no_global_reg_vars): New variable. | |
| (globalize_reg): Warn if function has already been defined. | |
| (regclass_init): Set no_global_reg_vars. | |
| Mon Nov 22 14:42:22 MET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * regclass.c (reg_pref): New structure and static variable | |
| (prefclass): Delete. | |
| (altclass): Delete. | |
| (all uses of prefclass and altclass): Use reg_pref instead. | |
| 1999-11-21 Nick Clifton <nickc@cygnus.com> | |
| * invoke.texi (ARM Options): Replace -mshort-load-bytes with | |
| -malignment-traps. | |
| (arm.h): Replace -mshort-load-bytes with -malignment-traps. | |
| (arm.c): Replace TARGET_SHORT_BY_BYTES with TARGET_MMU_TRAPS. | |
| (arm.md): Replace TARGET_SHORT_BY_BYTES with TARGET_MMU_TRAPS. | |
| Sun Nov 21 17:11:13 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * varasm.c (output_constructor): Solve problem with long long | |
| bitfields, even on BYTES_BIG_ENDIAN machines (testcase 991118-1). | |
| Fri Nov 19 05:48:45 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * global.c (allocno): New structure and static variable. | |
| (allocno_reg): Remove, all references replaced by allocno. | |
| (allocno_size): Likewise. | |
| (hard_reg_conflicts): Likewise. | |
| (hard_reg_preferences): Likewise. | |
| (hard_reg_copy_preferences): Likewise. | |
| (hard_reg_full_preferences): Likewise. | |
| (regs_someone_prefers): Likewise. | |
| (allocno_calls_crossed): Likewise. | |
| (allocno_n_refs): Likewise. | |
| (allocno_live_length): Likewise. | |
| (find_reg): Rename ALLOCNO to NUM. | |
| * regclass.c (may_move_in_cost): Rename from may_move_cost, all | |
| references updated. | |
| (may_move_out_cost): New variable. | |
| (init_reg_sets_1): Initialize may_move_out_cost. | |
| (record_reg_classes): Use may_move_out_cost. | |
| * regclass.c (dump_regclass): New function. | |
| (regclass): New parameter DUMP, call DUMP_REGCLASS. | |
| * toplev.c (rest_of_compilation): Open lreg dump file before regclass, | |
| pass rtl_dump_file to regclass. | |
| * rtl.h (regclass): Update prototype. | |
| Fri Nov 19 06:32:19 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (neg, not and abs patterns): Revmap to use | |
| ix86_expand_unary_operator and ix86_unary_operator_ok. | |
| (add?f and sub?f expanders): Force operand 1 to register. | |
| * i386.c (ix86_expand_unary_operator): Rewrite. | |
| (ix86_unary_operator_ok): Ensure that memory operands | |
| match real opcode. | |
| (ix86_binary_operator_ok): Do not allow operand 1 to | |
| come into memory and operand 0 not. | |
| (ix86_expand_binary_operator): Ensure that | |
| src1 is not non-matching memory. | |
| * i386.md (negs?2): Rewrite to expanders, new patterns and splitters | |
| to support integer registers and memory. | |
| (abss?2_integer): Likewise. | |
| * i386.h (enum reg_class): Add FLOAT_INT_REGS. | |
| (REG_CLASS_NAMES): Likewise. | |
| (REG_CLASS_CONTENTS): Define FLOAT_INT_REGS as union of FLOAT_REGS | |
| and GENERAL_REGS. | |
| * i386.md (pushsf): Do not preferre FLOAT_REGS over GENERAL_REGS. | |
| (movsf): Likewise; unify 4th and 5th alternative. | |
| (pushdf): Likewise. | |
| (movdf_1): Likewise; rename to movdf_integer. | |
| (pushxf): Likewise; rename to pushxf_integer; fix output template; | |
| remove redundant splitter. | |
| (movxf_1): Likewise; rename to movxf_integer; fix splitter's condition. | |
| (movdf_nointeger): New. | |
| (movxf_nointeger): New. | |
| (pushxf_nointeger): New. | |
| * i386.md (extend?f?f): Split to expander and pattern, refuse two | |
| memory operands in patterns. | |
| (fop*): Refuse two memory operands. | |
| * i386.md (ashrsi3_31): Allow cltd when optimizing for size even | |
| on !TARGET_USE_CLTD CPUs. | |
| Fri Nov 19 10:41:15 GMT 1999 Nathan Sidwell <nathan@acm.org> | |
| * extend.texi: Document C++ restricted pointers and references. | |
| 1999-11-19 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * cse.c (addr_affects_sp): No longer conditional on AUTO_INC_DEC. | |
| (invalidate_skipped_set): Call it unconditionally. | |
| (cse_set_around_loop): Likewise. | |
| Thu Nov 18 17:29:34 MST 1999 Diego Novillo <dnovillo@cygnus.com> | |
| * rtl.texi (mem): Add documentation for alias-set argument | |
| to RTX `mem'. | |
| Fri Nov 18 13:39:22 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.h (struct_processor_costs): New fields int_load, int_store, | |
| fp_move, fp_load and fp_store | |
| (REGISTER_MOVE_COST): Fix comment, calculate exactly the cost of | |
| fp->int moves | |
| (MEMORY_MOVE_COST): New macro. | |
| * i386.c (386_cost): Define new fields. | |
| (i486_cost): Likewise. | |
| (pentium_cost): Likewise. | |
| (pentiumpro_cost): Likewise. | |
| (k6_cost): Likewise. | |
| Fri Nov 19 11:11:55 1999 Greg McGary <gkm@gnu.org> | |
| Geoffrey Keating <geoffk@cygnus.com> | |
| * config/m68k/m68kelf.h: Suppress '/* within comment' warning. | |
| * config/m68k/m68k.h (MASK_PCREL): Don't use same value as | |
| MASK_ALIGN_INT. | |
| * config/m68k/m68k.h (MASK_NO_STRICT_ALIGNMENT): New macro. | |
| (TARGET_STRICT_ALIGNMENT): New macro. | |
| (TARGET_SWITCHES): Add "strict-align" and "no-strict-align". | |
| (STRICT_ALIGNMENT): Depend on TARGET_STRICT_ALIGNMENT. | |
| * invoke.texi (M680x0 Options): Document -mstrict-align. | |
| Thu Nov 18 11:10:03 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| Richard Henderson <rth@cygnus.com> | |
| * i386-protos.h (split_xf, ix86_split_movdi): Remove. | |
| (ix86_split_long_move): Declare. | |
| * i386.c (split_xf, ix86_split_movdi): Remove. | |
| (ix86_split_to_parts, ix86_split_long_move): New. | |
| * i386.md (dimode move splitters): Use ix86_split_long_move. | |
| (dfmode move splitters): Likewise. | |
| (xfmode move splitters): Likewise. | |
| (movsf_1): Allow F->r. | |
| (movdf_1, movxf_1): Allow F->ro. | |
| 1999-11-17 Mark Mitchell <mark@codesourcery.com> | |
| * except.h (struct eh_entry): Add goto_entry_p. | |
| (eh_region_from_symbol): Remove prototype. | |
| * except.c (find_func_region_from_symbol): New function. | |
| (emit_cleanup_handler): Likewise. | |
| (eh_region_from_symbol): Make it static. | |
| (add_new_handler): Verify the argument. | |
| (find_func_region): Update comment. | |
| (expand_eh_region_end): Expand handlers here, rater than waiting | |
| until expand_leftover_cleanups or start_all_catch. | |
| (expand_leftover_cleanups): Don't expand here. | |
| (expand_start_all_catch): Or here. | |
| (expand_rethrow): Check the return value from find_func_region. | |
| * function.c (expand_function_end): Emit the catch_clauses. | |
| 1999-11-18 Gavin Romig-Koch <gavin@cygnus.com> | |
| * integrate.c (expand_inline_function): Add necessary check for NULL. | |
| 1999-11-18 Nick Clifton <nickc@cygnus.com> | |
| * toplev.c (main): Correctly detect an unrecognized option. | |
| * cppinit.c (cpp_handle_option): Do not claim to have consumed | |
| a -f option if it has not been recognized. | |
| Thu Nov 18 00:59:11 1999 Michael Gschwind <mikeg@alagoas.watson.ibm.com> | |
| * basic-block.h (update_life_extent): Remove trailing comma on | |
| enumeration type list. | |
| 1999-11-18 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * varasm.c (output_constructor) Solved problem with long long | |
| bitfields. Corrected calculating this_time and shift. Also | |
| corrected calculating mask when BITS_PER_UNIT == 32 (c4x). | |
| Wed Nov 17 23:46:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (split_edge): Take looping structure into account when | |
| determining where to put the new block note. | |
| Wed Nov 17 20:42:43 1999 Jeff Holcomb <jeffh@cygnus.com> | |
| * Makefile.in (ggc-none.o): Provide host specific version if | |
| needed. | |
| Wed Nov 17 16:51:23 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (delete_trivially_dead_insns): Identify no-op insns | |
| containing subregs too. | |
| Wed Nov 17 17:39:48 MST 1999 Diego Novillo <dnovillo@cygnus.com> | |
| * invoke.texi: Add documentation for -muninit-const-in-rodata. | |
| * config/mips/mips.h (MASK_UNINIT_CONST_IN_RODATA): Define. | |
| (TARGET_UNINIT_CONST_IN_RODATA): Define. | |
| (text_section): Add switches -munint-const-in-rodata and | |
| -mno-uninit-const-in-rodata. | |
| (ASM_OUTPUT_COMMON): Remove. | |
| (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. Check if uninitialized | |
| const objects should be placed in read-only data. Otherwise declare | |
| them in common. | |
| Wed Nov 17 16:38:32 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): Revert last change. | |
| Wed Nov 17 15:18:30 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): Don't try to duplicate the loop exit | |
| test if optimizing for size. | |
| 1999-11-17 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (toplev.o): Depend on except.h. | |
| (dwarf2out.o,loop.o,flow.o,haifa-sched.o): Likewise. | |
| Mon Nov 15 22:45:39 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (divmodsi4): Rewrite to expander. | |
| (*divmodsi4_nocltd): New. | |
| (*divmodsi4_cltd): New. | |
| (divmodsi4 splitter): Handle the case when input comes in edx. | |
| (udivmodhi4): Do not use constraints in exander. | |
| (ashrsi3_31): Conditionize by TARGET_USE_CLTD. | |
| 1999-11-17 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (push_decl_scope): Still use decl_scope_depth - 1 | |
| for the common case. | |
| 1999-11-16 Jakub Jelinek <jakub@redhat.com> | |
| * explow.c (hard_function_value): Add outgoing argument. | |
| * expr.h (hard_function_value): Declare it. | |
| * calls.c (expand_call, emit_library_call_value): Update callers. | |
| * function.c (aggregate_value_p): Ditto. | |
| (diddle_return_value): Must look at the outgoing registers | |
| on archs with register windows. | |
| Mon Nov 15 20:46:45 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_build_va_list): Use make_lang_type and | |
| initialize TYPE_NAME for the va_list record. | |
| * flow.c (calculate_global_regs_live): Zero bb->aux to begin. | |
| * ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long | |
| for printing. | |
| * ggc.h (struct ggc_statistics): Rearrange elements for better | |
| packing on 64-bit hosts. | |
| * lcm.c (compute_laterin): Store a size_t not an int in bb->aux. | |
| (compute_nearerout): Likewise. | |
| Tue Nov 16 14:37:52 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/rs6000/rs6000.c (first_reg_to_save): Save | |
| PIC_OFFSET_TABLE_REGNUM when -fpic even though it is fixed. | |
| 1999-11-15 Jason Merrill <jason@casey.cygnus.com> | |
| * dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table | |
| notion of nesting to find the DIE for a type or function. | |
| DIEs can go in limbo even if we got a context_die. | |
| (push_decl_scope): Our context doesn't need to be in decl_scope_table. | |
| (gen_struct_or_union_type_die): Don't use TREE_PERMANENT to test | |
| for local type. | |
| (gen_decl_die): Ignore NAMESPACE_DECLs for now. | |
| (gen_type_die): Writing out the context doesn't cause member class | |
| template instantiations to be written out as well. | |
| Mon Nov 15 15:33:18 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.h (ASM_OUTPUT_DEF): New. | |
| Based on proposed addition from David Edelsohn. | |
| 1999-11-15 Robert Lipe <RobertLipe@usa.net> | |
| Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/inclhack.def | |
| (AAB_svr4_replace_byteorder): added. Takes advantage of GCC features | |
| (unixware7_byteorder_fix): added. Removes conflicts for new defs | |
| in net/inet.h. | |
| (svr5_mach_defines): added. Like svr4_mach_defines, with new syntax | |
| (svr4_endian): enabled with SVR5 | |
| (svr4_mkdev): simplified syntax and enabled with SVR5 | |
| Sun Nov 14 18:49:37 1999 David O'Brien <obrien@FreeBSD.org> | |
| * configure.in: Handle libgcc2 threads support on FreeBSD platforms. | |
| * configure: Rebuilt. | |
| * config/t-freebsd-thread: New file. | |
| Sun Nov 14 23:11:05 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.c (ix86_decompose_address): Verify the base is a REG | |
| before trying to examine its register number. | |
| * basic-block.h: Remove all #defines and prototypes related to | |
| integer lists. | |
| (free_bb_mem, compute_preds_succs): Remove prototype. | |
| * rtl.h (free_bb_mem): Remove prototype. | |
| * flow.c (alloc_int_list_node); Remove function. | |
| (add_inst_list_node, free_int_list, add_pred_succ): Likewise. | |
| (compute_preds_succs, free_bb_mem): Likewise. | |
| * gcse.c (gcse_main): Do not call free_bb_mem anymore. | |
| * toplev.c (rest_of_compilation): Likewise. | |
| * haifa-sched.c (build_control_flow): Use flow generated edge | |
| list to build the haifa specific edge list. | |
| (find_rgns): Use new CFG data structures instead of pred/succ lists. | |
| (schedule_insns): Do not build pred/succ lists anymore. Instead | |
| build the edge table. | |
| * basic-block.h (dump_bb_data): Remove declaration. | |
| * flow.c (dump_bb_data): Remove function. | |
| * sbitmap.c (sbitmap_intersect_of_predsucc): Delete function. | |
| (sbitmap_union_of_predsucc): Likewise. | |
| * gcse.c (delete_null_pointer_checks_1): Kill unused s_preds | |
| argument. All callers changed. | |
| (delete_null_pointer_checks_1): No longer need to compute the | |
| pred/succ lists. | |
| * gcse.c (pre_expr_reaches_here_p): Kill CHECK_PRE_COM argument. | |
| All callers changed. | |
| (pre_expr_reaches_here_p_work): Likewise. | |
| (pre_edge_insert): No longer call pre_expr_reaches_here_p. | |
| * lcm.c (compute_laterin): Fix initialization of LATER. | |
| (compute_nearerout): Similarly for NEARER. | |
| Sun Nov 14 12:41:57 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * cse.c (set_nonvarying_address_components): Delete unused function. | |
| (refers_to_p): Likewise. | |
| Fri Nov 12 20:53:22 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.c (diddle_return_value): Set REG_FUNCTION_VALUE_P as | |
| needed. | |
| Sat Nov 13 16:20:09 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Wrap macro | |
| definition in do while (0). | |
| Fri Nov 12 16:26:25 1999 Jim Wilson <wilson@cygnus.com> | |
| * stmt.c (pushcase, pushcase_range): Partially revert Oct 28 change. | |
| Fri Nov 12 12:43:49 1999 Richard Henderson <rth@cygnus.com> | |
| * unroll.c (unroll_loop): Make temp an unsigned HOST_WIDE_INT. | |
| Fri Nov 12 15:14:19 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * i960.h (CAN_DEBUG_WITHOUT_FP): Don't define it. | |
| (FRAME_POINTER_REQUIRED): Don't worry about nonlocal goto. | |
| (ELIMINABLE_REGS, CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): New. | |
| (INITIAL_FRAME_POINTER_OFFSET): Remove it. | |
| * i960.c (i960_function_prologue): Don't allocate space for g8-g11 | |
| saved on the stack. Output more accurate stack frame statistics | |
| into assembler file. | |
| 1999-11-12 11:47 -0800 Zack Weinberg <zack@bitmover.com> | |
| * genextract.c (record_insn_name): New function. | |
| (get_insn_name): No longer a stub. | |
| (main): Call record_insn_name for each insn. After each label | |
| written, print the insn name in a comment. | |
| Fri Nov 12 13:45:02 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * output.h (const_section, init_section, fini_section): Add | |
| prototypes. | |
| * alpha/elf.h (const_section): Delete declaration. | |
| * svr4.h (const_section): Likewise. | |
| Fri Nov 12 08:54:22 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (SAVE_EXPR_PERSISTENT_P): New macro. | |
| * tree.c (array_type_nelts): Don't handle SAVE_EXPRs specially. | |
| (unsave_expr_now): Don't unsave SAVE_EXPR_PERSISTENT_P | |
| expressions. | |
| * stor-layout.c (variable_size): Set SAVE_EXPR_PERSISTENT_P on | |
| variable-sized array bounds. | |
| Fri Nov 12 08:04:45 1999 Catherine Moore <clm@cygnus.com> | |
| * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Use | |
| ASM_OUTPUT_LABEL. | |
| Fri Nov 12 13:31:54 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * config/arm/arm.h (LEGITIMIZE_RELOAD_ADDRESS): Treat QImode | |
| addresses the same way GO_IF_LEGITIMATE_INDEX does. | |
| Fri Nov 12 12:36:04 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * cse.c (hash_arg_in_struct): Delete. | |
| (struct table_elt): Delete elt in_struct. | |
| (struct set): Delete elt src_in_struct. | |
| (merge_equiv_classes): Don't set either hash_arg_in_struct or | |
| the corresponding in_struct elts. | |
| (canon_hash): Likewise. | |
| (safe_hash): Likewise. | |
| (find_best_addr): Likewise. | |
| (record_jump_cond): Likewise. | |
| (cse_insn): Likewise. | |
| Thu Nov 11 19:45:24 1999 Jim Wilson <wilson@cygnus.com> | |
| * loop.c (invariant_p, case MEM): Put MEM_VOLATILE_P check back. | |
| * dbxout.c (dbxout_type, case INTEGER_TYPE): Handle too large | |
| unsigned types. | |
| Thu Nov 11 18:54:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.c (diddle_return_value): Put back check that the DECL_RTL | |
| for the function is a register. | |
| * function.c (diddle_return_value): Use hard_function_value to | |
| get an rtx suitable for use in the USE/CLOBBER insn. | |
| * global.c (global_conflicts): Update comments. | |
| (record_conflicts): No need to record conflicts between pseudos here. | |
| 1999-11-11 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/fixincl.c: Added verbose levels for status messages | |
| Thu Nov 11 13:23:04 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * jump.c (jump_optimize_1): Avoid passing an rtx that is not an | |
| operand as argument to expand_and or expand_binop. | |
| Thu Nov 11 02:21:16 1999 Rodney Brown <RodneyBrown@pmsc.com> | |
| * xcoffout.c (xcoffout_source_file): Change ggc_add_root to | |
| gcc_add_string_root. | |
| Wed Nov 10 21:24:19 1999 Jason Eckhardt <jle@cygnus.com> | |
| * config/pa/pa.h (MASK_RETURN_ADDR): Change 0xfffffffc to -4. | |
| Wed Nov 10 15:56:16 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (compute_flow_dominators): Initially put all blocks on | |
| the worklist. | |
| * lcm.c (compute_antinout_edge, compute_available): Similarly. | |
| * gcse.c (compute_cprop_avinout): Remove. | |
| (compute_cprop_data): Use compute_available. | |
| (delete_null_pointer_checks_1): Use compute_available. | |
| * basic-block.h (compute_available): Returns a void now. | |
| * gcse.c (one_classic_gcse_pass): Do not expect compute_available | |
| to return a value anymore. | |
| * lcm.c (compute_available, compute_antinout_edge): Revamp to use | |
| worklists. Fix boundary cases. Compute maximal solutions. | |
| (compute_laterin, compute_nearerout): Similarly. | |
| * dwarf2out.c (add_AT_location_description): Allow | |
| (mem (plus (pseudo) (...)) too. | |
| Wed Nov 10 10:52:42 1999 Tom Tromey <tromey@cygnus.com> | |
| * gcc.c (do_spec_1): Support text between `%u' and `%O'. | |
| Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be> | |
| Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cppinit.c: Test `GCC_VERSION', not `HAVE_GCC_VERSION'. | |
| * gansidecl.h: Likewise. | |
| * rtl.c: Likewise. | |
| * rtl.h: Likewise. | |
| * toplev.h: Likewise. | |
| * tree.c: Likewise. | |
| * tree.h: Likewise. | |
| * varray.c: Likewise. | |
| * varray.h: Likewise. | |
| Wed Nov 10 10:57:22 1999 Clinton Popetz <cpopetz@cygnus.com> | |
| * gcov.c (struct arcdata): Add hits and total, remove prob. | |
| (output_branch_counts): New. | |
| (process_args): Set output_branch_counts if -c. | |
| (calculate_branch_probs): Store hits and total instead of | |
| percentage. | |
| (output_data): Emit counts if output_branch_counts is true. | |
| * gcov.texi (Invoking Gcov): Document -c switch.. | |
| Wed Nov 10 01:10:41 1999 Philippe De Muyter <phdm@macqel.be> | |
| * genoutput.c (output_insn_data): Cast `INSN_OUTPUT_FORMAT_MULTI' and | |
| `INSN_OUTPUT_FORMAT_FUNCTION' to `PTR'-type. | |
| Wed Nov 10 00:51:41 1999 Hans-Peter Nilsson <hp@axis.se> | |
| * invoke.texi (C Dialect Options): Add missing builtins from | |
| c-common.c to list. | |
| * extend.texi (Other Builtins): Copy to this list. | |
| Wed Nov 10 04:58:09 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * Makefile.in (recog.o): Use BASIC_BLOCK_H macro. | |
| (print-rtl.o, $(HOST_PREFIX_1)print-rtl.o): Likewise. Remove | |
| redundant bitmap.h. | |
| Wed Nov 10 00:02:53 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (compute_flow_dominators): No longer treat basic block 0 | |
| or (n_basic_blocks - 1) specially. Clear the AUX field before | |
| starting computation of doms/pdoms. Fix initial state for pdoms. | |
| Wed Nov 10 03:58:08 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * Makefile.in ($(HOST_PREFIX_1)rtl.o): Update dependencies to | |
| match rtl.o's: added ggc.h and toplev.h | |
| ($(HOST_PREFIX_1)print-rtl.o): Likewise: added system.h. | |
| ($(HOST_PREFIX_1)rtlanal.o): Likewise: added system.h. | |
| ($(HOST_PREFIX_1)obstack.o): Likewise: added $(CONFIG_H). | |
| Tue Nov 9 10:30:08 1999 Tom Tromey <tromey@cygnus.com> | |
| * config/i386/xm-djgpp.h (HAVE_DOS_BASED_FILE_SYSTEM): Renamed | |
| from HAVE_DOS_BASED_FILESYSTEM. | |
| * gcc.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM, not | |
| HAVE_DOS_BASED_FILESYSTEM. | |
| (main): Likewise. | |
| (split_directories): Only special-case DOS file names if | |
| HAVE_DOS_BASED_FILE_SYSTEM is defined. Use IS_DIR_SEPARATOR | |
| instead of explicit tests. Conditionalize on !VMS. | |
| (make_relative_prefix): Use IS_DIR_SEPARATOR instead of explicit | |
| tests. Conditionalize on !VMS. | |
| (process_command): Only use make_relative_prefix if !VMS. | |
| (free_split_directories): Conditionalize on !VMS. | |
| (DIR_UP): Conditionalize on !VMS. | |
| Wed Jun 9 16:57:11 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * gcc.c (STANDARD_BINDIR_PREFIX): Provide default. | |
| Fri Feb 5 14:22:01 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * gcc.c (make_relative_prefix): Handle the HAVE_EXECUTABLE_SUFFIX | |
| case. | |
| Mon Nov 8 14:16:57 1999 Michael Meissner <meissner@cygnus.com> | |
| * invoke.texi (Environment Variables): Document relative path | |
| lookup. | |
| * gcc.c (DIR_UP): If not defined, define as "..". | |
| (standard_bindir_prefix): New static, holds target location to | |
| install binaries. | |
| (split_directories): New function to split a filename into | |
| component directories. | |
| (free_split_directories): New function, release memory allocated | |
| by split_directories. | |
| (make_relative_prefix): New function, make a relative pathname if | |
| the compiler is not in the expected location. | |
| (process_command): If GCC_EXEC_PREFIX was not specified, see if we | |
| can figure out an appropriate prefix from argv[0]. | |
| * Makefile.in (DRIVER_DEFINES): Use unlibsubdir in definition of | |
| STANDARD_STARTFILE_PREFIX and TOOLDIR_BASE_PREFIX. Define | |
| STANDARD_BINDIR_PREFIX. | |
| Wed Nov 10 11:47:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x-protos.h: New file. Prototypes for functions defined | |
| in c4x.c. | |
| * config/c4x/c4x.h: Moved prototypes to c4x.h. | |
| * config/c4x/c4x.c (c4x_preferred_reload_class, c4x_limit_reload_class, | |
| c4x_secondary_memory_needed) Delete. | |
| (fp_zero_operand): Add mode argument. | |
| Thu Nov 4 15:52:35 1999 Andrew Haley <aph@cygnus.com> | |
| * reload1.c (reload_reg_free_for_value_p): Don't use a register | |
| that is in reload_reg_used. | |
| Tue Nov 9 16:43:00 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm-protos.h: New file: Prototypes for functions | |
| defined in arm.c and pe.c. | |
| * config/arm/arm.h: Fix compile time warnings. | |
| * config/arm/arm.c: Fix compile time warnings. | |
| * config/arm/pe.h: Fix compile time warnings. | |
| * config/arm/aout.h: Fix compile time warnings. | |
| Tue Nov 9 14:55:44 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/m32r/m32r-protos.h: New file: Prototypes for functions | |
| defined in m32r.c | |
| * config/m32r/m32r.h: Move prototypes to m32r-protos.h | |
| Add support for subtargets. | |
| Add prototypes for new predicates. | |
| Add scheduling macros. | |
| * config/m32r/m32r.c: Fix compile time warnings. | |
| (int8_operand): New predicate function. | |
| (reg_or_cmp_int16_operand): New predicate function. | |
| (extend_operand): New predicate function. | |
| (m32r_adjust_code): New scheduling function. | |
| (m32r_adjust_priority): New scheduling function. | |
| (m32r_sched_init): New scheduling function. | |
| (m32r_sched_reorder): New scheduling function. | |
| (m32r_sched_variable_issue): New scheduling function. | |
| (direct_return): New codegen function. | |
| (m32r_not_same_reg): New rtl testsing function. | |
| * config/m32r/m32r.md: Fix compile time warnings. | |
| Add support for pre decrement and post increment memory | |
| references. | |
| Add S<cc> patterns. | |
| Add fabs patterns. | |
| Mon Nov 8 22:20:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * global.c (EXECUTE_IF_CONFLICT): Don't define. | |
| (prune_preferences): Use EXECUTE_IF_SET_IN_ALLOCNO_SET instead. | |
| (find_reg): Likewise. | |
| Mon Nov 8 13:16:46 1999 Jason Eckhardt <jle@cygnus.com> | |
| * config/pa/pa.md (fmpynfadd,{sgl,dbl} insns): Use %fr0 rather than 0 | |
| to avoid assembler errors. | |
| Mon Nov 8 15:38:41 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/v850/v850-protos.h: New file: Prototypes for functions | |
| defined in v850.c | |
| * config/v850/v850.h: Move prototypes to v850-protos.h | |
| * config/v850/v850.c: Move prototypes to v850-protos.h | |
| * config/v850/v850.md: Fix compile time warnings. | |
| * config/fr30/fr30-protos.h: New file: Prototypes for functions | |
| defined in fr30.c | |
| * config/fr30/fr30.h: Move prototypes to fr30-protos.h | |
| * config/fr30/fr30.c: Fix compile time warnings. | |
| * config/fr30/fr30.md: Fix compile time warnings. | |
| Mon Nov 8 07:25:37 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (get_containing_scope): Declare it. | |
| * tree.c (get_containing_scope): New fucntion. | |
| (decl_function_context): Use it. | |
| * toplev.c (rest_of_compilation): Use get_containing_scope. | |
| aMon Nov 8 03:03:07 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * Makefile.in (rtl.o): Depend on toplev.h. | |
| Sun Nov 7 20:55:14 1999 Mark Mitchell <mark@codesourcery.com> | |
| * cse.c (delete_trivially_dead_insns): Replace alloca with | |
| xmalloc/xcalloc. | |
| * except.c (update_rethrow_references): Likewise. | |
| (init_eh_nesting_info): Likewise. | |
| * function.c (identify_blocks): Likewise. | |
| * gcse.c (dump_hash_table): Likewise. | |
| * graph.c (print_rtl_graph_with_bb): Likewise. | |
| * loop.c (combine_movables): Likewise. | |
| (move_movables): Likewise. | |
| (count_loop_regs_set): Likewise. | |
| (strength_reduce): Likewise. | |
| * profile.c (compute_branch_probabilities): New function, split | |
| out from ... | |
| (branch_prob): Here. Replace alloca with xmalloc/xcalloc. | |
| * regclass.c (regclass): Likewise. | |
| * regmove.c (regmove_optimize): Likewise. | |
| * toplev.c (compile_file): Likewise. | |
| (main): Don't mess with the stack rlimit. | |
| Sun Nov 7 19:41:17 1999 Catherine Moore <clm@cygnus.com> | |
| * config/elfos.h (ASM_DECLARE_FUNCTION_NAME): Conditionally define. | |
| (ASM_DECLARE_FUNCTION_SIZE): Conditionally define. | |
| Sun Nov 7 10:23:28 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * integrate.c (save_for_inline_nocopy): Clear in_nonparm_insns. | |
| Sun Nov 7 02:58:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * global.c (EXECUTE_IF_CONFLICT): Undo Robert's change. | |
| (EXECUTE_IF_SET_IN_ALLOCNO_SET): Put curleys around CODE in | |
| macro expansion. | |
| Sat Nov 6 23:48:30 1999 Robert Lipe (robertlipe@usa.net) | |
| * global.c (EXECUTE_IF_CONFLICT): Correct quoting typo. | |
| Sat Nov 6 17:34:39 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcse.c (post_dominators): Kill. | |
| (alloc_code_hoist_mem, free_code_hoist_mem); Kill post_dominators. | |
| (compute_code_hoist_data): Use compute_flow_dominators. Do not | |
| pass in a pdom array since we do not need pdoms. | |
| * haifa-sched.c (schedule_insns): Similarly. | |
| * flow.c (compute_dominators): Remove dead function. | |
| (compute_flow_dominators): Do not compute doms or pdoms if the | |
| caller does not request them. Split up loop to build doms and | |
| pdoms. Use a worklist to compute doms and pdoms. | |
| * basic-block.h (compute_dominators): Remove prototype. | |
| Sat Nov 6 11:38:39 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (struct haifa_insn_data, h_i_d): New. | |
| (insn_luid, insn_priority, insn_costs, insn_units): Remove. | |
| (insn_reg_weight, insn_depend, insn_dep_count): Remove. | |
| (insn_blockage, insn_ref_count, line_note, insn_tick): Remove. | |
| (cant_move, fed_by_spec_load, is_load_insn): Remove. | |
| (schedule_region): Remove unused variable. | |
| (schedule_insns): Allocate h_i_d, and not all the separate arrays. | |
| Sat Nov 6 10:00:34 1999 Mark Mitchell <mark@codesourcery.com> | |
| * local-alloc.c (local_alloc): Use xmalloc/xcalloc, not alloca. | |
| (update_equiv_regs): Likewise. | |
| (block_alloc): Likewise. | |
| * reg-stack.c (reg_to_stack): Likewise. | |
| (convert_regs_2): Likewise. | |
| * reload1.c (reload_as_needed): Likewise. | |
| Sat Nov 6 09:57:59 1999 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (dbxout.o): Depend on ggc.h. | |
| (dwarf2out.o): Likewise. | |
| (xcoffout.o): Likewise. | |
| * dbxout.c: Include ggc.h. | |
| (dbxout_init): Register lastfile as a root. | |
| * dwarf2out.c: Include ggc.h. | |
| (dwarf2out_line): Register lastfile as a root. | |
| * xcoffout.c: Include ggc.h. | |
| (xcoffout_source_line): Register xcoff_lastfile as a root. | |
| Sat Nov 6 09:52:09 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (movdf_1, movxf_1): Earlyclobber general regs destination. | |
| Sat Nov 6 07:48:59 1999 Catherine Moore <clm@cygnus.com> | |
| * config/svr4.h (ASM_DECLARE_FUNCTION): Check if already | |
| defined. | |
| (ASM_DECLARE_FUNCTION_SIZE): Likewise. | |
| Fri Nov 5 18:33:39 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * global.c (EXECUTE_IF_SET_IN_ALLOCNO_SET): New macro. | |
| (EXECUTE_IF_CONFLICT): Likewise. | |
| (ALLOCNO_LIVE_P): Avoid signed division. | |
| (SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Likewise. | |
| (prune_preferences, find_reg): Use EXECUTE_IF_CONFLICT. | |
| (record_one_conflict): Use EXECUTE_IF_SET_IN_ALLOCNO_SET. | |
| Fri Nov 5 12:04:02 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (schedule_block): Don't crash if there's no | |
| next insn for an interblock movement. | |
| (add_branch_dependences): Don't allow clobber insns to move either. | |
| Fri Nov 5 10:18:11 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (split_xf): New. | |
| * i386-protos.h: Declare it. | |
| * i386.md (movxf_1): Add general regs alternatives. | |
| (movxf_1+1): New splitter for same. | |
| Fri Nov 5 12:05:52 1999 Nick Clifton <nickc@cygnus.com> | |
| * function.c (purge_addressof_1): Add missing return values. | |
| Fri Nov 5 10:07:25 1999 Nick Clifton <nickc@cygnus.com> | |
| * function.c (is_addressof): New function. Returns true if | |
| the given piece of RTL is an ADDRESSOF. | |
| (purge_addressof_1): Make boolean. Return false if the | |
| ADDRESSOFs could not be purged. | |
| (purge_addressof): If ADDRESSOFs could not be purged from the | |
| notes attached to an insn, remove the offending note(s), | |
| unless they are attached to a libcall. | |
| 1999-11-05 Andreas Jaeger <aj@suse.de> | |
| * genoutput.c (null_operand =): Initialize all fields. | |
| * errors.h: Add extern to prototypes. | |
| Fri Nov 5 01:44:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (m68k-next-nextstep4): Handle Openstep 4.2. | |
| * configure: Rebuilt. | |
| Fri Nov 5 01:24:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * global.c (CONFLICTP, SET_CONFLICT): Avoid signed division. | |
| (mirror_conflicts): New function. | |
| (global_alloc): Call it. | |
| (expand_preferences): Remove redundant CONFLICTP test. | |
| (find_reg, dump_conflicts): Likewise. | |
| (prune_preferences): Process conflicts one word at a time. | |
| Fri Nov 5 01:05:21 1999 Richard Henderson <rth@cygnus.com> | |
| * global.c (build_insn_chain): Use EXECUTE_IF_SET_IN_BITMAP | |
| instead of an explicit loop. | |
| Thu Nov 4 23:07:14 1999 Jim Wilson <wilson@cygnus.com> | |
| * cse.c (cse_insn): Revert Oct 31 change. When computing src_elt, | |
| if REG_RETVAL check succeeds, then put classp in src_elt. | |
| Thu Nov 4 23:48:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.c (pad_to_arg_alignment): Only update argument_pad | |
| if the argument's alignment is greater than STACK_BOUNDARY. | |
| Thu Nov 4 16:44:53 1999 Richard Henderson <rth@cygnus.com> | |
| * bitmap.h (BITMAP_XFREE): New. | |
| * flow.c (life_analysis): Use it. | |
| (life_analysis_1): Free blocks. | |
| * combine.c (undo_commit): New. | |
| (try_combine): Use it. Don't zap undobuf.undos. | |
| (combine_instructions): Don't zap undobuf.undos; free the | |
| undobuf.frees list. | |
| * local-alloc.c (local_alloc): Free qty_phys_num_sugg. | |
| * stmt.c (cost_table_): New. | |
| (estimate_case_costs): Use it instead of xmalloc. | |
| * toplev.c (compile_file): Reuse dumpname memory instead | |
| of strdup'ing it. | |
| Thu Nov 4 16:36:44 1999 Richard Henderson <rth@cygnus.com> | |
| * reg-stack.c (convert_regs_1): Initialize target_stack->top | |
| after verifying an EH edge. | |
| * haifa-sched.c (init_rgn_data_dependences): Correctly | |
| size bb_pending_lists_length when zeroing. | |
| Thu Nov 4 16:36:36 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (diddle_return_value): New. | |
| (expand_function_end): Use it. | |
| * stmt.c (expand_null_return): Likewise. | |
| (expand_value_return): Likewise. | |
| * reg-stack.c (subst_stack_regs_pat): Handle clobbers at top-level. | |
| * reload1.c (reload): Don't remove return value clobbers. | |
| Thu Nov 4 13:33:46 1999 Richard Henderson <rth@cygnus.com> | |
| * rtl.c (read_rtx): Use fatal_with_file_and_line not fatal. | |
| Thu Nov 4 12:49:52 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (cse_main): Use xmalloc, not alloca. | |
| (cse_basic_block): Likewise. | |
| * local-alloc.c (local_alloc): Likewise. | |
| Thu Nov 4 14:22:12 1999 David Billinghurst <David.Billinghurst@riotinto.com.au> | |
| Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * rtl.c: Include toplev.h. | |
| (fatal): Remove declaration. | |
| Thu Nov 4 06:39:47 1999 Jeffrey A Law (law@cygnus.com) | |
| * haifa-sched.c (schedule_block): Fix thinko. | |
| 1999-11-03 James McKelvey <mckelvey@fafnir.com> | |
| * fixinc/fixincl.c(create_file): Allow for systems that do not have | |
| S_IR* defined values | |
| 1999-11-03 Philippe De Muyter <phdm@macqel.be> | |
| * fixlib.c (load_file_data): Do not call `realloc' with a NULL pointer; | |
| call `malloc' instead. | |
| Wed Nov 3 23:05:14 1999 Mark Mitchell <mark@codesourcery.com> | |
| * flags.h (flag_renumber_insns): Declare. | |
| * emit-rtl.c (renumber_insns): Check flag_renumber_insns. Print | |
| renumbering table. | |
| * rtl.h (renumber_insns): Change prototype. | |
| * toplev.c (flag_renumber_insns): Define. | |
| (rest_of_compilation): Pass rtl_dump_file to flag_renumber_insns. | |
| Wed Nov 3 15:11:27 1999 David S. Miller <davem@redhat.com> | |
| * config/sparc/sparc.md: Remove insn type fpsqrt, add fpsqrts | |
| and fpsqrtd. Use them and create fdiv function unit to more | |
| accurately represent fpu sqrt pipeline semantics on UltraSPARC. | |
| * config/sparc/sparc.c: Account for fpsqrt{s,d} changes. | |
| Wed Nov 3 15:11:27 1999 Matteo Frigo <athena@fftw.org> | |
| * config/sparc/sparc.md: Adjust FADD/FMUL result latencies to | |
| 3 on UltraSPARC. | |
| * config/sparc/sparc.c (ultra_schedule_insn): Insert launched | |
| insn into ready list, do not use just a raw swap. | |
| Wed Nov 3 14:51:59 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * rtl.h (renumber_insns): New function. | |
| (remove_unnecessary_notes): Likewise. | |
| * emit-rtl.c (renumber_insns): Define. | |
| (remove_unnecessary_notes): Likewise. | |
| * toplev.c (rest_of_compilation): Remove dead code. | |
| Use renumber_insns and remove_unnecessary_notes. | |
| * gcse.c (struct null_pointer_info): New type. | |
| (get_bitmap_width): New function. | |
| (current_block): Remove. | |
| (nonnull_local): Likewise. | |
| (nonnull_killed): Likewise. | |
| (invalidate_nonnull_info): Take a null_pointer_info as input. | |
| (delete_null_pointer_checks_1): New function. | |
| (delete_null_pointer_checks): Use it. | |
| * haifa-sched.c (find_rgns): Replace uses of alloca with xmalloc. | |
| (split_edges): Likewise. | |
| (schedule_block): Likewise. | |
| (compute_block_backward_dependencies): Likewise. | |
| (schedule_region): Likewise. | |
| (schedule_insns): Likewise. | |
| Wed Nov 3 15:40:23 1999 Catherine Moore <clm@cygnus.com> | |
| * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Provide default. | |
| * emit-rtl.c (gen_label_rtx): Support LABEL_ALTERNATE_NAME. | |
| * final.c (final_scan_insn): Emit LABEL_ALTERNATE_NAME. | |
| * ggc-common.c (ggc_mark_rtx_children): Mark LABEL_ALTERNATE_NAME. | |
| * jump.c (delete_unreferenced_labels): Don't delete if | |
| LABEL_ALTERNATE_NAME is set. | |
| * print-rtl.c (print_rtx): Dump alternate name. | |
| * rtl.def (CODE_LABEL): Change format to "iuuis00s". | |
| * rtl.h (LABEL_ALTERNATE_NAME): Define. | |
| * rtl.texi (LABEL_ALTERNATE_NAME): Document. | |
| * tm.texi (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Document. | |
| Wed Nov 3 15:39:19 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fix-header.c (recognized_extern, recognized_function): Constify | |
| a char*. | |
| * lcm.c (compute_laterin): Remove unused variable `temp_bitmap'. | |
| (pre_edge_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED. | |
| (compute_available): Remove unused variable `last'. | |
| (compute_nearerout): Remove unused variable `temp_bitmap'. | |
| (pre_edge_rev_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED. | |
| Remove unused variable `x'. | |
| * scan.h (recognized_function, recognized_extern): Constify a | |
| char*. | |
| * simplify-rtx.c (simplify_rtx): Remove unused variable `new'. | |
| Wed Nov 3 10:40:53 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * varasm.c (decode_rtx_const): Use XSTR to access the string | |
| of a SYMBOL_REF. | |
| Wed Nov 3 10:10:58 1999 Richard Henderson <rth@cygnus.com> | |
| * c-decl.c (duplicate_decls): Copy DECL_MODE too. | |
| Wed Nov 3 12:12:59 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (eliminate_regs_in_insn): If copying insn, also copy notes. | |
| Wed Nov 3 03:26:28 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (ireg_operand): New function. | |
| * pa.h (PREDICATE_CODES): Handle ireg_operand. | |
| * pa.md (parallel_addb, parallel_movb): Use ireg_operand. | |
| Fix out of date comment. | |
| * pa.md (negdi2): Turn into expander + anonymous pattern. | |
| * reload.c (find_reloads): Fix typos in recent change. | |
| * dwarf2out.c: Do not include ctype.h. | |
| Tue Nov 2 21:53:44 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * regclass.c (record_reg_classes): Always use may_move_cost when | |
| seeing how operand fits with various register classes. | |
| Tue Nov 2 15:38:17 1999 Richard Henderson <rth@cygnus.com> | |
| * resource.c: Revert Oct 26 20:42 and Oct 27 00:56 changes. | |
| * toplev.c: Revert Nov 1 13:22 change. | |
| Tue Nov 2 14:21:37 1999 Jason Eckhardt <jle@cygnus.com> | |
| * config/pa/pa.md (height reduction patterns): Add checks for | |
| overlapping operands to avoid semantic-destroying splits for | |
| height reduction patterns. | |
| Tue Nov 2 15:27:31 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * configure.in (m68k-hp-hpux*, xm_alloca.h): The underscore should | |
| have been an hyphen, fixed. | |
| * configure: Rebuilt. | |
| Tue Nov 2 17:04:36 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/tpe.h: Add prototypes for exported functions. | |
| * config/arm/pe.c: Fix compile time warnings. | |
| * config/arm/semi.h: Fix compile time warnings. | |
| * config/arm/arm.c: Fix compile time warnings. | |
| * config/arm/arm.h: Fix compile time warnings. | |
| * config/arm/arm.md: Fix compile time warnings. | |
| * config/arm/thumb.c: Fix compile time warnings. | |
| * config/arm/thumb.h: Fix compile time warnings. | |
| * config/arm/thumb.md: Fix compile time warnings. | |
| Tue Nov 2 04:10:24 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * jump.c (jump_optimize_1): Swap the incscc and the conditional mode | |
| detection code | |
| * unroll.c (unroll_loop): Remove LOOP notes when loop is | |
| completely unrolled. | |
| Tue Nov 2 16:57:22 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * cse.c (simplify_plus_minus, check_fold_const): Delete declarations. | |
| Tue Nov 2 09:43:00 1999 Catherine Moore <clm@cygnus.com> | |
| * Makefile.in (genattrtab): Don't use (HOST_RTLANAL). | |
| * rtl.h (rtx_equal_p): Move prototype. | |
| * rtl.c (rtx_equal_function_value_matters): Move from | |
| rtlanal.c | |
| (rtx_equal_p): Likewise. | |
| * rtlanal.c (rtx_equal_function_value_matters): Delete. | |
| (rtx_equal_p): Likewise. | |
| Mon Nov 1 23:21:17 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * libgcc2.c (__do_global_dtors): Only do EH frame stuff if | |
| ! HAS_INIT_SECTION. | |
| Mon Nov 1 23:37:38 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcc.1 (PA options): Remove obsolete -mshared-libs options. | |
| * pa.h (ADDR_VEC_ALIGN): Define. | |
| * jump.c (jump_optimize_1): Also move LOOP_VTOP and LOOP_CONT | |
| notes when presented with "if (foo) break; end_of_loop" and | |
| the break sequence gets moved out of the loop. | |
| * unroll.c (unroll_loop): Allocate memory for MAP using xcalloc. | |
| Remove explicit zero initializations of entries within MAP. | |
| Mon Nov 1 18:09:14 1999 Richard Henderson <rth@cygnus.com> | |
| * reg-stack.c (convert_regs_1): Handle EH edges specially. | |
| Mon Nov 1 15:41:01 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * bitmap.h (BITMAP_XMALLOC): New macro. | |
| * flow.c (CLEAN_ALLOCA): Remove. | |
| (delete_unreachable_blocks): Use xmalloc/xcalloc instead of alloca. | |
| (life_analysis): Likewise. | |
| (update_life_info): Don't use CLEAN_ALLOCA. | |
| (life_analysis_1): Use xmalloc/xcalloc instead of alloca. | |
| (calculate_global_regs_live): Likewise. | |
| (print_rtl_with_bb): Likewise. | |
| (verify_flow_info): Likewise. | |
| * global.c (global_alloc): Likewise. | |
| (global_conflicts): Likewise. | |
| * integrate.c (save_for_inline_nocopy): Likewise. | |
| (expand_inline_function): Likewise. | |
| * jump.c (jump_optimize_1): Likewise. | |
| (duplicate_loop_exit_test): Likewise. | |
| (thread_jumps): Likewise. | |
| * loop.c (loop_optimize): Likewise. | |
| (combine_givs): Likewise. | |
| (recombine_givs): Likewise. | |
| * reorg.c (dbr_schedule): Likewise. | |
| * unroll.c (unroll_loop): Likewise. | |
| * combine.c (combine_instructions): Use xmalloc instead of alloca. | |
| Mon Nov 1 13:22:30 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (rest_of_compilation): Don't optimize the CFG | |
| when rebuilding, just before dbr. | |
| Mon Nov 1 14:35:50 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * output.h (assemble_end_function, assemble_destructor, | |
| assemble_constructor, assemble_gc_entry, assemble_global, | |
| assemble_label, output_constant_pool) Constify a char*. | |
| * varasm.c (assemble_destructor, assemble_constructor, | |
| assemble_gc_entry, assemble_end_function, assemble_global, | |
| assemble_label, output_constant_pool): Likewise. | |
| Mon Nov 1 14:22:51 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/thumb.c (thumb_expand_prologue): Add comments | |
| explaining what is goin on in this function. | |
| Mon Nov 1 08:03:15 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * regclass.c (record_reg_classes): In matching case, recompute | |
| costs since the direction of movement is different. | |
| Sun Oct 31 21:59:34 MST 1999 Diego Novillo <dnovillo@cygnus.com> | |
| * resource.c (mark_target_live_regs): For unconditional branches, | |
| the resources found at the branch target should be added to the | |
| resources found so far, not intersected. | |
| Sun Oct 31 15:48:49 1999 Philippe De Muyter <phdm@macqel.be> | |
| * fixinc/fixtests.c, fixinc/fixfixes.c : Keep `#' in first column for | |
| old cpp's. | |
| * fixinc/fixincl.c (fcntl.h) : Do not include this file twice. | |
| (sys/mman.h): Include this file only if #HAVE_MMAP. | |
| (run_compiles): Initialize `esac_fmt' with one old KR string, not | |
| with automatically concatenated ANSI strings. | |
| Sun Oct 31 23:57:07 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc-page.c (struct page_entry): Remove save_num_free_objects. | |
| (DIV_ROUND_UP): Robustify. | |
| (ggc_recalculate_in_use_p): New function. | |
| (release_pages): Don't inline it. | |
| (ggc_alloc_obj): Don't refuse to allocate objects on pages for | |
| outer contexts. | |
| (ggc_pop_context): Use ggc_recalculate_in_use_p. | |
| (clear_marks): Always save in_use_p. | |
| (sweep_pages): Use ggc_recalculate_in_use_p. | |
| (ggc_page_print_statistics): Avoid signed/unsigned comparisons. | |
| Release pages before counting statistics. | |
| Sun Oct 31 23:42:37 1999 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.c (rest_of_compilation): Fix thinko in this change: | |
| Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR> | |
| (rest_of_compilation): If inside an inlined external function, | |
| pretend we are just being declared. | |
| Sun Oct 31 23:03:25 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (calculate_global_regs_live): Fix thinko. | |
| * integrate.c (expand_inline_function): Fix bugs in previous | |
| change from Oct 28, 1999. | |
| Sun Oct 31 20:27:45 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_value_return): Fix typo in this change: | |
| Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| (expand_value_return): Correctly convert VAL when promoting function | |
| return; support RETURN_REG being a PARALLEL. | |
| Sun Oct 31 20:25:42 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * expr.c (readonly_fields_p): Ignore everything except FIELD_DECLs. | |
| Sun Oct 31 20:42:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * hard-reg-set.h (reg_names): Constify a char*. | |
| * regclass.c (reg_names): Likewise. | |
| * regs.h (reg_names): Likewise | |
| * a29k/a29k.c (reg_names): Delete declaration. | |
| * a29k/a29k.h (CONDITIONAL_REGISTER_USAGE): Constify a char*. | |
| * arc/arc.c (arc_save_restore, arc_output_function_prologue, | |
| arc_output_function_epilogue): Likewise. | |
| * elxsi/elxsi.c (reg_names): Likewise. | |
| * gmicro/gmicro.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise. | |
| * m32r/m32r.c (m32r_output_function_epilogue, emit_cond_move): | |
| Likewise. | |
| * m88k/m88k.c (output_function_profiler): Likewise. | |
| * sparc/sparc.c (sparc_flat_output_function_prologue, | |
| sparc_flat_output_function_epilogue): Likewise. | |
| Sun Oct 31 13:32:15 CET 1999 Marc Lehmann <pcg@goof.com> | |
| * toplev.c (rest_of_compilation): Separate the setjmp/vfork clobber | |
| warning from -Wuninitialized and put it under -W. | |
| * function.c (uninitialized_vars_warning): Warn only when the | |
| corresponding flag is set. | |
| Sun Oct 31 01:53:30 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (cse_insn): If an insn has only a single set, SRC_EQV | |
| is nonzero and the single set does not have an elt, then assign | |
| it an elt. | |
| * simplify-rtx.c: New file. | |
| * Makefile.in (OBJS): Add simplify-rtx.o | |
| (simplify-rtx.o): Add dependencies. | |
| * rtl.h (simplify_gen_binary, simplify_rtx): Add prototypes. | |
| * cse.c: Use simplify_gen_binary intead of cse_gen_binary. | |
| (cse_gen_binary, simplify_unary_operation): Delete. | |
| (simplify_binary_operation, simplify_plus_minus): Likewise. | |
| (check_fold_consts, simplify_relation_operation): Likewise. | |
| (simplify_ternary_operation): Likewise. | |
| (delete_trivially_dead_insns): Simplify the contents of the | |
| REG_EQUAL note before trying to substitute it into the source | |
| of the reg-reg copy at the end of a libcall sequence. | |
| * combine.c (combine_simplify_rtx): Renamed from simplify_rtx. All | |
| references/callers changed. | |
| * mn10200.c (mn10200_va_arg): Force the return value into a | |
| register. | |
| * fr30.h (EXTRA_CC_NAMES): Remove obsolete macro. | |
| * cccp.c (macroexpand): Avoid out of range accesses for omitted | |
| arguments. | |
| Sat Oct 30 22:42:50 1999 Stephen L Moshier <moshier@mediaone.net> | |
| * c-lex.c (yylex): Accept 'f' in mantissa of hex float constant. | |
| Sat Oct 30 22:19:26 1999 Jeffrey A Law (law@cygnus.com) | |
| * fold-const.c (fold): Fix thinko when optimizing comparisons | |
| against -0.0. | |
| Sat Oct 30 21:32:17 1999 David Starner <dstarner98@aasaa.ofe.org> | |
| * gcc.texi (Passes): Update front-end files to their current | |
| location. | |
| Sat Oct 30 14:41:40 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Call secondary_reload_class. | |
| (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. | |
| (PREDICATE_CODES): Add addition_operation. | |
| * alpha-protos.h (addition_operation): Declare. | |
| (secondary_reload_class): Likewise. | |
| * alpha.c (addition_operation): New. | |
| (secondary_reload_class): New, from old SECONDARY_INPUT_RELOAD_CLASS. | |
| * alpha.md (adddi3): Turn into expander. | |
| (*lda, *adddi_2): New. | |
| (movsf, movdf patterns): Don't preference integer regs. | |
| (movsi, movdi patterns): Don't preference fp regs. | |
| Sat Oct 30 14:38:22 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (write_switch): Check for duplicate CODE cases. | |
| Sat Oct 30 14:31:48 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-common.c: Update pre-function commentary. | |
| * ggc-page.c: Likewise. | |
| (poison): Remove. | |
| (poison_pages): Use memset directly. | |
| (ggc_alloc_obj): Likewise. Use a different pattern than poison_pages. | |
| (ggc_collect): Poison before sweeping. | |
| * ggc-simple.c: Update pre-function commentary. | |
| (ggc_alloc_obj): Poison nonzeroed memory. | |
| Sat Oct 30 14:28:52 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc-common.c (ggc_print_statistics): Make arguments to fprintf | |
| match format string, even on 64-bit hosts. | |
| * gcc-page.c (ggc_page_print_statistics): Likewise. | |
| Sat Oct 30 14:38:04 1999 Catherine Moore <clm@cygnus.com> | |
| * config/i386/i386.c (ix86_cpu): Revert last patch. | |
| * config/i386/i386.h (ix86_cpu): Ditto. | |
| Fri Oct 29 17:00:42 1999 Jim Wilson <wilson@cygnus.com> | |
| * stor-layout.c (layout_type): When compute TYPE_SIZE_UNIT from | |
| TYPE_SIZE, convert type of result to sizetype. | |
| Fri Oct 29 14:34:17 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (count_or_remove_death_notes): Equate NULL with the | |
| universal set. | |
| * jump.c, reg-stack.c, toplev.c: Revert Oct 27 change. | |
| * toplev.c (rest_of_compilation): Rebuild CFG immediately before | |
| dbr_schedule. | |
| * i386.c (pic_label_no): Delete. | |
| (ix86_attr_length_default): Don't use single_set to peek | |
| inside a parallel. | |
| * recog.c (peephole2_optimize): Allow recog_next_insn to index | |
| the first insn after bb->end. | |
| * i386.md (push mem peeps): Scratch is live after evaluation | |
| of the memory. | |
| (cmp mem peep): Similarly. | |
| Fri Oct 29 11:50:11 1999 Catherine Moore <clm@cygnus.com> | |
| * calls.c (emit_library_call_value): Fix declaration of alignment_pad. | |
| * function.c (pad_to_arg_alignment): Add missing braces. | |
| Fri Oct 29 13:53:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * alpha/alpha-protos.h (literal_section): Add prototype. | |
| (alpha_need_linkage, alpha_start_function,alpha_end_function): | |
| Constify a char*. | |
| * alpha/alpha.c (alpha_ra_ever_killed, set_frame_related_p): Add | |
| prototype. | |
| (alpha_start_function, alpha_end_function, float_strings, | |
| alpha_need_linkage): Constify a char* | |
| * alpha/alpha.h (ASM_OUTPUT_ASCII, ASM_OUTPUT_MI_THUNK): Likewise. | |
| * alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise. | |
| * alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Likewise. | |
| * alpha/vms.h (ASM_OUTPUT_SECTION_NAME): Likewise. | |
| Fri Oct 29 13:49:39 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * flow.c (debug_flow_info): Add prototype. | |
| * gcc.c (main): Likewise. | |
| * gcse.c (expr_reaches_here_p_work, pre_expr_reaches_here_p_work): | |
| Likewise. | |
| * reload1.c (failed_reload, set_reload_reg): Likewise. | |
| * mips-tfile.c (main): Likewise. | |
| (pfatal_with_name, fancy_abort, botch, fatal, catch_signal): Mark | |
| with ATTRIBUTE_NORETURN. | |
| Fri Oct 29 18:16:03 1999 Andrew Haley <aph@cygnus.com> | |
| * config/i386/i386.h (ENCODE_SECTION_INFO): Don't do anything if | |
| DECL is not a memory ref. | |
| Fri Oct 29 09:05:34 1999 Catherine Moore <clm@cygnus.com> | |
| * config/i386/i386.h (ix86_cpu): Remove extern attribute. | |
| * config/i386/i386.c (ix86_cpu): Add extern attribute. | |
| Fri Oct 29 16:30:04 1999 Andrew Haley <aph@cygnus.com> | |
| * config/mips/elf.h: remove NAME__MAIN and SYMBOL__MAIN. | |
| * config/mips/elf64.h: ditto. | |
| Fri Oct 29 08:03:57 1999 Catherine Moore <clm@cygnus.com> | |
| * expr.c (emit_push_insn): New argument alignment_pad. | |
| Update all callers. Adjust stack pointer based on alignment pad. | |
| * function.c (pad_to_arg_alignment): New argument alignment_pad. | |
| Update all callers. Track alignment_pad if boundary > PARM_BOUNDARY. | |
| (locate_and_pad_parm): New argument alignment_pad. Update all | |
| callers. | |
| * expr.h (emit_push_insn): Update prototype. | |
| (locate_and_pad_parm): Update prototype. | |
| * calls.c (arg_data): Add new field alignment_pad. | |
| (initialize_argument_information): Initialize alignment_pad. | |
| Fri Oct 29 02:51:35 1999 Mark Mitchell <mark@codesourcery.com> | |
| * except.c (free_eh_nesting_info): Free the info itself. | |
| * function.c (free_after_compilation): Don't free NULL. | |
| * gcse.c (alloc_pre_mem): Free the temp_bitmap, too. | |
| (pre_edge_insert): Free inserted. | |
| * stmt.c (free_stmt_status): Don't free NULL. | |
| Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR> | |
| * gcov.c (DIR_SEPARATOR): Provide default. | |
| (output_data): Add test for MS-DOS format absolute filename. | |
| (fancy_abort): Correct program name. | |
| (open_files): Open all files in binary mode. | |
| * libgcc2.c (__bb_exit_func): Likewise. | |
| * profile.c (init_branch_prob): Specify binary when opening files. | |
| * flags.h (flag_unwind_tables): New decl. | |
| * toplev.c (flag_unwind_table): New definition. | |
| (f_options): Add -funwind-tables. | |
| (decode_g_option): Clarify warning when unknown -g option is given. | |
| (rest_of_compilation): If inside an inlined external function, | |
| pretend we are just being declared. | |
| * dwarf2out.c (dwarf2out_do_frame): Check -funwind_tables. | |
| (dwarf2out_frame_finish): Likewise. | |
| Fri Oct 29 07:44:26 1999 Vasco Pedro <vp@di.fct.unl.pt> | |
| * fold-const.c (merge_ranges): If not in0, but in1, handle | |
| upper bounds equal like subset case. | |
| Thu Oct 28 19:22:24 1999 Douglas Rupp <rupp@gnat.com> | |
| * dbxout.c (dbxout_parms): Generate a second stabs line for parameters | |
| passed in a register but moved to the stack. | |
| Thu Oct 28 19:12:57 1999 Sam Tardieu <tardieu@act-europe.fr> | |
| * gcc.c (pass_exit_codes, greatest_status): New variables. | |
| (struct option_map): Add entry for "--pass-exit-codes". | |
| (execute): Update greatest_status if error. | |
| (display_help): Add documentation for -pass-exit-codes. | |
| (process_command): Handle -pass-exit-codes. | |
| (main): Look at pass_exit_codes and greatest_status on call to exit. | |
| Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
| * reload.c (find_reloads): Refine test for no input reload | |
| case to not includes reloads emitted after insn. | |
| * function.c (find_temp_slots_from_address): Handle sum involving | |
| a register that points to a temp slot. | |
| (update_temp_slot_address): Make recursive call if both old and | |
| new are PLUS with a common operand. | |
| * calls.c (expand_call): Mark temp slot for result as having | |
| address taken. | |
| * rtlanal.c (reg_referenced_p, case IF_THEN_ELSE): New case. | |
| * gcc.c (process_command): Add standard_exec_prefix with "GCC" | |
| component as well as "BINUTILS". | |
| * integrate.h (copy_rtx_and_substitute): New arg, FOR_LHS. | |
| * integrate.c (copy_rtx_and_substitute): Likewise. | |
| (expand_inline_function, integrate_parm_decls, integrate_decl_tree): | |
| All callers changed. | |
| * unroll.c (inital_reg_note_copy, copy_loop_body): Likewise. | |
| * dbxout.c (dbxout_type, case INTEGER_TYPE_NODE): If can use | |
| gdb extensions, write size of type; also be more consistent | |
| in using references when this is a subtype. | |
| * pa.md (extv, extzv, insv): Use define_expand to reject constant | |
| that is out of range. | |
| * loop.c (unknown_constant_address_altered): New variable. | |
| (prescan_loop): Initialize it. | |
| (note_addr_stored): Set it for RTX_UNCHANGING_P MEM. | |
| (invariant_p, case MEM): Remove handling for volatile and readonly; | |
| check new variable if readonly. | |
| (check_dbra_loop): Chdeck unknown_constant_address_altered. | |
| * cse.c (canon_hash, case MEM): Do not record if BLKmode. | |
| (addr_affects_sp_p): Removed from note_mem_written and only | |
| define #ifdef AUTO_INC_DEC. | |
| * alpha.c (input_operand, case ADDRESSOF): Treat as REG. | |
| * regclass.c (record_reg_classes): Properly handle register move | |
| directions. | |
| * varasm.c (initializer_constant_valid_p, case MINUS_EXPR): | |
| Don't think valid if both operands are invalid. | |
| (struct constant_descriptor): New field RTL. | |
| (mark_const_hash_entry): Mark it. | |
| (record_constant{,_rtx}): Initialize it. | |
| (output_constant_def): Allocate RTL in permanent obstack and | |
| save in table. | |
| ({record,compare}_constant_1): Modes must match for | |
| CONSTRUCTOR of ARRAY_TYPE. | |
| * c-common.h (initializer_constant_valid_p): Delete decl from here. | |
| * output.h (initializer_constant_valid_p): Move decl to here. | |
| * c-common.c (initializer_constant_valid_p): Delete function from here. | |
| * varasm.c (initializer_constant_valid_p): Move function to here. | |
| * tree.h (STRIP_SIGN_NOPS): New macro. | |
| * fold-const.c (optimize_minmax_comparison): New function. | |
| (invert_truthvalue, case WITH_RECORD_EXPR): New case. | |
| (fold): Use STRIP_SIGN_NOPS instead of STRIP_TYPE_NOPS. | |
| (fold, case EQ_EXPR): Call optimize_minmax_comparison and add | |
| cases with ABS_EXPR, NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR, and | |
| widening conversions. | |
| (fold, case LE_EXPR): Rework changing unsigned to signed comparisons | |
| to look at size of mode, not precision of type; also add missing cases. | |
| (optimize_bit_field_compare, decode_field_reference): Don't try to | |
| optimize COMPONENT_REF of a PLACEHOLDER_EXPR. | |
| * dwarf2out.c (ctype.h): Include. | |
| (dwarf2out_set_demangle_name_func): New function. | |
| (size_of_line_info): Deleted. | |
| (output_line_info): Compute size of line info table from difference | |
| of labels. | |
| (base_type_die, add_name_attribute): Call demangle function, if any. | |
| (field_byte_offset): Use bits per word for variable length fields. | |
| (gen_array_type_die): Add array name. | |
| (gen_subprogram_die): Ignore DECL_INLINE if -fno-inline. | |
| (dwarf2out_add_library_unit_info): New function. | |
| * explow.c (set_stack_check_libfunc): New function. | |
| (stack_check_libfunc): New static variable. | |
| (probe_stack_range): Allow front-end to set up a libfunc to call. | |
| * combine.c (simplify_comparison): When making comparison in wider | |
| mode, check for having commuted an AND and a SUBREG. | |
| (contains_muldiv): New function. | |
| (try_combine): Call it when dividing a PARALLEL. | |
| (simplify_rtx, case TRUNCATE): Don't remove for umulsi3_highpart. | |
| (simplify_comparison, case ASHIFTRT): Recognize sign-extension of | |
| a PLUS. | |
| (record_value_for_reg): If TEM is a binary operation with two CLOBBERs, | |
| use one of the CLOBBERs instead. | |
| (if_then_else_cond): If comparing against zero, just return thing | |
| being compared. | |
| * optabs.c (expand_abs): If machine has MAX, ABS (x) is MAX (x, -x). | |
| Don't generate shifts and subtract if have conditional arithmetic. | |
| * rtl.h (delete_barrier): New declaration. | |
| * jump.c (jump_optimize): Set up to handle conditional call. | |
| In conditional arithmetic case, handle CALL_INSN followed by a BARRIER. | |
| (delete_barrier): New function. | |
| * rtl.c (read_rtx): Call fatal if bad RTL code; check for bad mode. | |
| * recog.c (nonmemory_operand): Accept ADDRESSOF. | |
| * tree.c (build_type_attribute_variant): Push to obstack of | |
| ttype around type_hash_canon call. | |
| * expr.c (placeholder_list): Move decl to file scope. | |
| (expand_expr): Don't force access to volatile just because its | |
| address is taken. | |
| If ignoring reference operations, just expand the operands. | |
| (expand_expr, case COMPONENT_REF): Propagate | |
| EXPAND_CONST_ADDRESS to recursive call when expanding inner. | |
| Refine test for using bitfield operations vs pointer punning. | |
| (expand_expr, case CONVERT_EXPR): If converting to | |
| BLKmode UNION_TYPE from BLKmode, just return inner object. | |
| Use proper mode in store_field call. | |
| Properly set sizes of object to store and total size in store_field | |
| call for convert to union. | |
| (expand_expr, case ARRAY_REF): If OP0 is in a register, put it in | |
| memory (like for ADDR_EXPR). Also, don't put constant in register if | |
| we'll want it in memory. | |
| (readonly_fields_p): New function. | |
| (expand_expr, case INDIRECT_REF): Call it if LHS. | |
| (expand_assignment): Handle a RESULT_DECL where | |
| DECL_RTL is a PARALLEL. | |
| (do_jump, case WITH_RECORD_EXPR): New case. | |
| (get_inner_reference): Always go inside a CONVERT_EXPR | |
| and NOP_EXPR if both modes are the same. | |
| (store_field): Use bitfield operations if size of bitsize is not same | |
| as size of RHS's type. | |
| Check for bitpos not a multiple of alignment in BLKmode case. | |
| Do block move in largest possible alignment. | |
| (store_constructor): Set BITSIZE to -1 for variable size and properly | |
| in case of array of BLKmode. | |
| (expand_expr_unaligned): New function. | |
| (do_compare_and_jump): Call it. | |
| * mips/iris5.h (SWITCHES_NEED_SPACES): New macro. | |
| * collect2.c (main): Only allow -ofoo if SWITCHES_NEED_SPACES | |
| does not include 'o'. | |
| * function.c (instantiate_virtual_regs_1, case SET): Handle case where | |
| both SET_DEST and SET_SRC reference a virtual register. | |
| (gen_mem_addressof): Copy RTX_UNCHANGING_P from new REG to old REG. | |
| * integrate.c (expand_inline_function): Handle case of setting | |
| virtual stack vars register (from built in setjmp); when parameter | |
| lives in memory, expand virtual_{stack_vars,incoming_args}_rtx early. | |
| (subst_constant): Add new parm, MEMONLY. | |
| (expand_inline_function, integrate_parm_decls): Pass new parm. | |
| (integrate_decl_tree): Likewise. | |
| (copy_rtx_and_substitute, case MEM): Do copy RTX_UNCHANGING_P. | |
| (try_constants): Call subst_constants twice, with MEMONLY 0 and 1. | |
| (copy_rtx_and_substitute, case SET): Add explicit calls to | |
| copy_rtx_and_substitute for both sides. | |
| * stmt.c (expand_asm_operands): Don't use TREE_STRING_LENGTH for | |
| constraints. | |
| (pushcase{,_range}): Convert to NOMINAL_TYPE after checking for | |
| within INDEX_TYPE, instead of before. | |
| (fixup_gotos): Use f->target_rtl, not the next insn, | |
| since latter may be from a later fixup. | |
| (expand_value_return): Correctly convert VAL when promoting function | |
| return; support RETURN_REG being a PARALLEL. | |
| (expand_return): When checking for result in regs and having | |
| cleanup, consider PARALLEL in DECL_RTL as being in regs. | |
| 1999-10-28 21:27 -0700 Zack Weinberg <zack@bitmover.com> | |
| * cpplib.h (struct cpp_buffer: fname, nominal_fname, | |
| last_nominal_fname): Mark const. | |
| (struct include_hash: name, nshort, control_macro): Mark | |
| const. | |
| (struct macrodef: symnam): Mark const. | |
| (struct if_stack: fname): Mark const. | |
| (is_idchar, is_idstart, is_hor_space, trigraph_table): Delete. | |
| (IStable): New character-syntax array which encompasses all | |
| the old is_foo arrays. | |
| (is_idchar, is_numchar, is_idstart, is_numstart, is_hspace, | |
| is_space): New macros for interrogating IStable. | |
| (check_macro_name): Kill last argument. All callers changed. | |
| * cppinit.c (initialize_char_syntax): Delete. | |
| (is_idchar, is_idstart, is_hor_space, is_space, | |
| trigraph_table): Delete. | |
| (IStable): New. Initialize with clever macros to avoid | |
| information duplication. | |
| (builtin_array): Table of builtins to get rid of explicit list | |
| in initialize_builtins. | |
| (initialize_builtins): Use builtins_array. | |
| (cpp_start_read): Call init_IStable, and set IStable['$'] if | |
| opts->dollars_in_ident. | |
| * cppexp.c: Change all refs to is_xyz[] arrays to use new | |
| is_xyz() macros. | |
| (cpp_parse_expr): Avoid 'format string is not constant' | |
| warning. Use ISGRAPH to identify printable chars. | |
| * cppfiles.c: Change all refs to is_xyz[] arrays to use new | |
| is_xyz() macros. | |
| (read_and_prescan): Map trigraphs to chars with open-coded | |
| if-else-if-... sequence, not a lookup table. | |
| * cpphash.c: Change all refs to is_xyz[] arrays to use new | |
| is_xyz() macros. | |
| * cpplib.c: Change all refs to is_xyz[] arrays to use new | |
| is_xyz() macros. Kill SKIP_ALL_WHITE_SPACE (unused). | |
| (check_macro_name): Remove ability to report an invalid | |
| assertion name, which is never used. | |
| (do_line): Constify a couple of char *'s. | |
| * cppmain.c (main): Call cpp_cleanup before returning. | |
| Thu Oct 28 21:16:35 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc.h (struct ggc_statistics): New type. | |
| (ggc_get_size): New function. | |
| (ggc_print_statistics): Likewise. | |
| * ggc-common.c (ggc_stats): New variable. | |
| (ggc_mark_rtx_children): Keep statistics. | |
| (ggc_mark_tree_children): Likewise. | |
| (ggc_print_statistics): New function. | |
| * ggc-page.c (struct globals): Add bytes_mapped field. | |
| (alloc_anon): Update it. | |
| (release_pages): Likewise. | |
| (ggc_get_size): New function. | |
| (ggc_page_print_statistics): New function. | |
| * ggc-simple.c (ggc_get_size): New function. | |
| Fri Oct 29 06:32:44 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * flow.c (propagate_block): When the last reference to a label | |
| before an ADDR_VEC is deleted because the reference is a dead | |
| store, delete the ADDR_VEC. | |
| Thu Oct 28 12:28:50 1999 Richard Henderson <rth@cygnus.com> | |
| * resource.c (find_free_register): Don't use the frame pointer | |
| if frame_pointer_needed. | |
| Thu Oct 28 10:02:00 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/mips/mips.c (mips_va_arg): Delete gen_jump as emit_jump arg. | |
| (function_arg_pass_by_reference): Check for a NULL pointer in cum. | |
| * config/i960/i960.c (i960_va_start): New locals base, num. | |
| Use INDIRECT_REF instead of ARRAY_REF on valist. | |
| (i960_va_arg): Use INDIRECT_REF instead of ARRAY_REF on valist. | |
| Thu Oct 28 09:45:48 1999 Mark Mitchell <mark@codesourcery.com> | |
| * gcse.c (delete_null_pointer_checks): Fix typo in previous change. | |
| Thu Oct 28 03:37:50 1999 Peter Gerwinski <peter@gerwinski.de> | |
| * tree.def (PLACEHOLDER_EXPR): Update comments. | |
| Thu Oct 28 06:47:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-common.c (check_format_info): Avoid non-literal format string | |
| warnings when `first_arg_num' is zero. | |
| Thu Oct 28 12:28:48 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * rtl.texi: Delete explicit Prev, Up and Next entries in "@node"s. | |
| Thu Oct 28 11:05:13 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * arm.md (casesi_insn): Add a clobber of the condition code | |
| register. | |
| Mon Oct 18 21:16:06 1999 Fred Fish <fnf@be.com> | |
| * tm.texi (CC1PLUS_SPEC): Make it clear in the docs that CC1_SPEC is | |
| used by both cc1 and cc1plus. | |
| Thu Oct 28 10:00:48 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c: Initialize arm_structure_size_boundary to | |
| DEFAULT_STRUCTURE_SIZE_BOUNDARY. | |
| * config/arm/arm.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): Define | |
| to the value 32 if it has not already been defined. | |
| * config/arm/netbsd.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): | |
| Override definition in arm.h with a value of 8. | |
| Thu Oct 28 03:12:02 1999 David Starner <dstarner98@aasaa.ofe.org> | |
| * c-pragma.c (push_alignment): Don't check the return value | |
| of xmalloc. | |
| Thu Oct 28 03:08:38 1999 Matteo Frigo <athena@fftw.org> | |
| * sparc.h (ADJUST_COST): Fix thinko. | |
| Thu Oct 28 02:44:03 1999 Glen Nakamura <glen.nakamura@usa.net> | |
| * cccp.c (rescan): Fixed obp pointer handling around call to | |
| check_expand subroutine. | |
| Thu Oct 28 02:15:22 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcse.c (delete_null_pointer_checks): Only record non-null info | |
| for pseudos when examining stores. | |
| * arm.md (adddi3, adddi_sesidi_di, adddi_sesidi_di): Add | |
| splitters for these patterns. Use "#" for output templates. | |
| (addsi3_carryin_shift): New pattern. | |
| Thu Oct 28 10:20:02 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/rs6000/rs6000.md (movsf): Don't convert a SUBREG | |
| of the function return register into a plain REG until | |
| after function inlining is done. | |
| Wed Oct 27 15:21:46 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): If we did cross-jumping, and | |
| the data will matter, rebuild the CFG. | |
| * reg-stack.c (reg_to_stack): Only (re)build the CFG if | |
| not optimizing. Don't run shorten_branches. | |
| * toplev.c (rest_of_compilation): Run shorten_branches after | |
| reg_to_stack. | |
| Wed Oct 27 12:33:40 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rtl.h (note_stores): Add additional parameter. | |
| * rtlanal.c (reg_set_p_1): Take additional parameter. | |
| (reg_set_last_1): Likewise. | |
| (reg_set_p): Adjust call to note_stores. | |
| (reg_set_last): Likewise. | |
| (note_stores): Pass data parameter to worker function. | |
| * alias.c (record_set): Take additional parameter. | |
| (init_alias_analysis): Pass it. | |
| * caller-save.c (mark_set_regs): Take additional parameter. | |
| (save_call_clobbered_regs): Pass NULL to note_stores. | |
| * combine.c (set_nonzero_bits_and_sign_copies): Take additional | |
| parameter. | |
| (record_dead_and_set_regs_1): Likewise. | |
| (reg_dead_at_p_1): Likewise. | |
| (combine_instructions): Adjust calls to note_stores. | |
| (try_combine): Likewise. | |
| (record_dead_insn): Remove. | |
| (record_dead_and_set_regs): Adjust calls to note_stores. | |
| (reg_dead_at_p): Likewise. | |
| * cse.c (invalidate_skipped_set): Take additional parameter. | |
| (cse_check_loop_start): Likewise. | |
| (cse_check_loop_start_value): Remove. | |
| (cse_set_around_loop): Adjust calls to note_stores. | |
| * flow.c (notice_stack_pointer_modification): Take additional | |
| parameter. Remove duplicate declaration. | |
| (record_volatile_insns): Adjust calls to note_stores. | |
| * gcse.c (record_set_info): Take additional parameter. | |
| (record_last_set_info): Likewise. | |
| (invalidate_nonnull_info): Likewise. | |
| (record_set_insn): Remove. | |
| (compute_sets): Adjust calls to note_stores. | |
| (last_set_insn): Remove. | |
| (compute_hash_table): Adjust calls to note_stores. | |
| (insert_insn_end_bb): Likewise. | |
| (delete_null_pointer_checks): Likewise. | |
| * global.c (mark_reg_store): Take additional parameter. | |
| (mark_reg_clobber): Likewise. | |
| (reg_becomes_live): Likewise. | |
| (global_conflicts): Adjust calls to note_stores. | |
| (build_insn_chain): Likewise. | |
| * integrate.c (note_modified_parmregs): Take additional parameter. | |
| (mark_stores): Likewise. Make it static. | |
| (save_for_inline_nocopy): Adjust calls to note_stores. | |
| (try_constants): Likewise. | |
| * integrate.h (mark_stores): Remove declaration. | |
| * jump.c (mark_modified_reg): Take additional parameter. | |
| (thread_jumps): Adjust calls to note_stores. | |
| * local-alloc.c (validate_equiv_mem_from_store): Take additional | |
| parameter. | |
| (no_equiv): Likewise. | |
| (reg_is_set): Likewise. | |
| (validate_equiv_mem): Adjust calls to note_stores. | |
| (update_equiv_regs): Likewise. | |
| (block_alloc): Likewise. | |
| * loop.c (note_set_pseudo_multiple_uses_retval): Remove. | |
| (note_addr_stored): Take additional parameter. | |
| (note_set_pseudo_multiple_uses): Likewise. | |
| (record_initial): Likewise. | |
| (prescan_loop): Adjust calls to note_stores. | |
| (strength_reduce): Likewise. | |
| (check_dbra_loop): Likewise. | |
| * regmove.c (flags_set_1): Take additional parameter. | |
| (mark_flags_life_zones): Adjust calls to note_stores. | |
| * reload1.c (mark_not_eliminable): Take additional parameter. | |
| (forget_old_reloads_1): Likewise. | |
| (reload_cse_invalidate_rtx): Likewise. | |
| (reload_cse_check_clobber): Likewise. | |
| (reload_combine_note_store): Likewise. | |
| (move2add_note_store): Likewise. | |
| (reload): Adjust calls to note_stores. | |
| (reload_as_needed): Likewise. | |
| (emit_reload_insns): Likewise. | |
| (reload_cse_regs_1): Likewise. | |
| (reload_cse_record_set): Adjust calls to reload_cse_invalidate_rtx. | |
| (reload_combine): Adjust calls to note_stores. | |
| * resource.c (update_live_status): Take additional parameter. | |
| (mark_target_live_regs): Adjust calls to note_stores. | |
| * stupid.c (find_clobbered_regs): Take additional parameter. | |
| (stupid_life_analysis): Adjust calls to note_stores. | |
| Wed Oct 27 19:26:12 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/coff.h (STRUCTURE_SIZE_BOUNDARY): Delete | |
| definition. | |
| * config/arm/elf.h (STRUCTURE_SIZE_BOUNDARY): Delete | |
| definition. | |
| * config/arm/arm.h (STRUCTURE_SIZE_BOUNDARY): Define in terms | |
| of the variable arm_structure_size_boundary. | |
| Wed Oct 27 02:05:58 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * alias.c (init_alias_analysis): Allocate reg_known_value and | |
| reg_known_equiv_p on the heap. Likewise for new_reg_base_value | |
| and reg_seen. | |
| (end_alias_analysis): Free reg_known_value and reg_known_equiv_p. | |
| * cse.c (cse_main): Call end_alias_analysis. | |
| * haifa-sched.c (schedule_insns): Likewise. | |
| * local-alloc. (update_equiv_regs): Likewise. | |
| * reload1.c (reload_cse_regs): Likewise. | |
| Wed Oct 27 01:49:17 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * sparc/sparc.c (sparc_override_options): Clear MASK_FPU_SET. | |
| * sparc/sparc.h (TARGET_SWITCHES): Add "fpu" entry for reverse | |
| mapping from MASK_FPU. | |
| Wed Oct 27 01:42:26 1999 Scott Christley <scottc@net-community.com> | |
| * sparc.md (call): Don't bound structure return size to 0xfff. | |
| Wed Oct 27 00:56:59 1999 Richard Henderson <rth@cygnus.com> | |
| * resource.c (mark_target_live_regs): Check that the target | |
| insn wasn't created after compute_bb_for_insn. | |
| Tue Oct 26 23:15:03 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc-page.c (poison_pages): Don't be overzealous. | |
| Tue Oct 26 23:29:18 1999 Jeffrey A Law (law@cygnus.com) | |
| * alias.c: Update comments for ADDRESS. | |
| (nonlocal_reference_p): Look inside the ADDRESS to determine if | |
| it is a local memory reference. | |
| * c-typeck.c (build_function_call): Check that the built-in | |
| function is of class BUILT_IN_NORMAL before trying to recongize | |
| it as BUILT_IN_ABS. | |
| * calls.c (calls_function_1): Similarly for BUILT_IN_ALLOCA. | |
| * stmt.c (expand_end_cae): Similarly for BUILT_IN_CLASSIFY_TYPE. | |
| Wed Oct 27 00:14:13 1999 Robert Lipe <robertlipe@usa.net> | |
| * gcse.c (expr_reaches_here_p): Use xcalloc and explit free instead | |
| of alloca. | |
| (pre_gcse): Likewise. | |
| (hoist_expr_reaches_here_p): Likewise. | |
| (hoist_code): Likewise. | |
| (pre_expr_reaches_here_p): Replace alloca with xcalloc. Move core | |
| code to ... | |
| (pre_expr_reaches_here_p_work): ... here. | |
| (expr_reaches_here_p): Replace alloca with xcalloc. Move core | |
| code to ... | |
| (expr_reaches_here_p_work): ... here. | |
| Tue Oct 26 20:42:45 1999 Richard Henderson <rth@cygnus.com> | |
| * resource.c (find_basic_block): Delete. | |
| (mark_target_live_regs, incr_ticks_for_insn): Use BLOCK_NUM instead. | |
| (init_resource_info): Call compute_bb_for_insn. | |
| Tue Oct 26 20:21:02 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (merge_blocks_move_predecessor_nojumps): Cope | |
| with already adjacent blocks, but no fallthru. | |
| (merge_blocks_move_successor_nojumps): Simplify. | |
| (debug_flow_info): New. | |
| * toplev.c (rest_of_compilation): Open jump1 dump file before | |
| jump and close after, as opposed to just using dump_rtl. | |
| Wed Oct 27 03:09:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload.h (earlyclobber_operand_p): Declare. | |
| * reload.c (earlyclobber_operand_p): Don't declare. No longer static. | |
| * reload1.c (reload_reg_free_for_value_p): RELOAD_OTHER reloads with | |
| an earlyclobbered output conflict with RELOAD_INPUT reloads - handle | |
| case where the RELOAD_OTHER reload is new. Use earlyclobber_operand_p. | |
| Tue Oct 26 18:23:38 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (emit_block_insn_before): New. | |
| (emit_block_insn_after): New. | |
| * basic-block.h: Declare them. | |
| * bitmap.h: Protect from multiple inclusion. | |
| * recog.c (scratch_operand): Handle VOIDmode correctly. | |
| * rtl.h (JUMP_CROSS_JUMP_DEATH_MATTERS): New. | |
| * builtins.c (expand_builtin_apply_args_1): Remove STACK_REGS hack. | |
| * function.c (assign_parms): Likewise. | |
| * global.c (global_conflicts): Clarify STACK_REGS commentary. | |
| * reg-stack.c (max_uid): Remove. | |
| (blocks, block_begin, block_end, block_drops_in): Remove. | |
| (block_stack_in, block_out_reg_set, block_number): Remove. | |
| (struct block_info_def, BLOCK_INFO): New. | |
| (enum emit_where): New. | |
| (current_block): New. | |
| (BLOCK_NUM): Remove. | |
| (mark_regs_pat, record_label_references): Remove. | |
| (record_reg_life_pat, record_reg_life, find_blocks): Remove. | |
| (nan): New. | |
| (goto_block_pat, print_blocks, dump_stack_info): Remove. | |
| (reg_to_stack): Simplified test for existence of fp code. Use | |
| flow.c code. Call shorten_branches after cross-jump opt. | |
| (check_asm_stack_operands): Renamed from record_asm_reg_life. | |
| Return false if the asm doesn't use stack regs. Don't do life | |
| analysis on the asm. | |
| (emit_pop_insn): Replace function pointer arg `when' with | |
| enum `where'. Update all callers. | |
| (change_stack): Likewise. Update basic block end. | |
| (emit_swap_insn): Use current_block->head to limit reverse search | |
| for start of block. Use emit_block_insn_after. | |
| (subst_stack_regs_pat): Handle USE and CLOBBER patterns. | |
| (subst_asm_stack_regs): Use check_asm_stack_operands. Use direct | |
| structure assignment instead of bcopy. | |
| (print_stack): New. | |
| (convert_regs_entry, convert_regs_exit): New. | |
| (convert_regs_1, convert_regs_2): Split out from convert_regs. | |
| Work on basic blocks and the CFG. | |
| (convert_regs): Use them. | |
| * i386.c (output_fix_trunc): Remove code for DImode input operand | |
| not at top-of-stack. | |
| * i386.c (fix_truncdfdi2, fix_truncsfdi2): Use scratch with | |
| appropriate mode. | |
| (fix_truncdi_1): Allow any mode scratch. | |
| Tue Oct 26 13:30:35 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (TARGET_MEM_FUNCTIONS): Define here. | |
| * linux.h, netbsd.h, vms.h: Not here. | |
| 1999-10-26 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.h (ISA_HAS_64BIT_REGS,ISA_HAS_BRANCHLIKELY, | |
| ISA_HAS_FP4,ISA_HAS_CONDMOVE): New. | |
| (GENERATE_BRANCHLIKELY,HAVE_SQRT_P, | |
| CONDITIONAL_REGISTER_USEAGE): Use them. | |
| * config/mips/mips.c (mips_move_1word,mips_move_2words, | |
| gen_conditional_branch,override_options) : Use them. | |
| * config/mips/mips.md : Use them. | |
| Tue Oct 26 13:09:23 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (zero_extendqihi2): Use SImode register name with andl. | |
| Tue Oct 26 12:35:38 1999 Richard Henderson <rth@cygnus.com> | |
| * integrate.c (function_cannot_inline_p): Don't allow inlining | |
| if setjmp is used. | |
| Tue Oct 26 14:10:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-parse.in (cast_expr): Constify. | |
| * cccp.c (special_symbol): Likewise. | |
| * cse.c (hash_cse_reg_info, cse_reg_info_equal_p): Likewise. | |
| * dwarf2out.c (base_type_die): Likewise. | |
| * global.c (allocno_compare): Likewise. | |
| * local-alloc.c (qty_compare_1, qty_sugg_compare_1): Likewise. | |
| * regclass.c (fix_register): Likewise. | |
| * rtl.h (fix_register): Likewise. | |
| * stupid.c (stupid_reg_compare): Likewise. | |
| * toplev.c (decode_f_option): Likewise. | |
| * tree.c (build_complex_type): Likewise. | |
| Tue Oct 26 18:35:25 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * output.h: Don't unnecessarily conditionalize prototypes on TREE_CODE. | |
| Tue Oct 26 15:42:56 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload.c (find_reloads): Compute mode and nregs fields of all | |
| reloads. | |
| * reload1.c (calculate_needs_all_insns): Simplify a bit. | |
| (calculate_needs): Use precomputed mode/nregs values. | |
| (allocate_reload_reg): Likewise. | |
| Break out two... | |
| (failed_reload, set_reload_reg): ... new functions. | |
| (choose_reload_regs_init): New function, mostly broken out from... | |
| (choose_reload_regs): ... here. Lose all the save_xxx nonsense. | |
| Also lose one #if 0 block. | |
| Tue Oct 26 02:48:32 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * Makefile.in (AR_FOR_TARGET, RANLIB_FOR_TARGET): Fix target name | |
| substitution. | |
| Tue Oct 26 01:27:32 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (BLOCK_TYPE_TAGS): Remove. | |
| (BLOCK_END_NOTE): Likewise. | |
| (BLOCK_LIVE_RANGE_FLAG): Likewise. | |
| (BLOCK_LIVE_RANGE_START): Likewise. | |
| (BLOCK_LIVE_RANGE_END): Likewise. | |
| (tree_block): Remove live_range_flag, live_range_var_flag, and | |
| type_tags. Remove end_note, live_range_start, and live_range_end. | |
| (remember_end_note): Remove prototype. | |
| * tree.c (build_block): Don't set BLOCK_TYPE_TAGS. | |
| * c-decl.c (poplevel): Don't set BLOCK_TYPE_TAGS or call | |
| remember_end_note. | |
| * ggc-common.c (ggc_mark_tree_children): Don't mark | |
| BLOCK_TYPE_TAGS or BLOCK_END_NOTE. | |
| * integrate.c (adjust_copied_decl_tree): Remove. | |
| * print-tree.c (print_node): Don't print BLOCK_TYPE_TAGS. | |
| * stmt.c (last_block_end_note): Remove. | |
| (init_stmt): Don't add a GC root for it. | |
| (expand_fixup): Don't set it. | |
| (remember_end_note): Remove. | |
| (expand_end_bindings): Don't set last_block_end_note. | |
| Tue Oct 26 00:41:54 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (reload_reg_free_for_value_p): Show | |
| RELOAD_FOR_OTHER_ADDRESS reloads can conflict with RELOAD_OTHER | |
| reloads. | |
| Mon Oct 25 23:54:45 1999 Geoff Keating <geoffk@cygnus.com> | |
| * expmed.c (extract_bit_field): Allow for the case of non-integer | |
| objects that are smaller than a word (like SFmode on a 64-bit | |
| machine). | |
| * loop.c (basic_induction_var): A non-integer variable which is | |
| being set by a paradoxical subreg is probably not a biv. | |
| 1999-10-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * prefix.c (translate_name) Check for empty prefix string. | |
| Mon Oct 25 23:10:45 1999 Andreas Schwab <schwab@suse.de> | |
| * Makefile.in (CPP_CROSS_NAME): New variable. | |
| (install-cpp): Use it instead of CPP_INSTALL_NAME for the cross | |
| xcpp. | |
| (uninstall-cpp): Use CPP_INSTALL_NAME and CPP_CROSS_NAME for the | |
| names of the files to be uninstalled. | |
| Mon Oct 25 23:03:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * collect2.c (IS_DIR_SEPARATOR): Define. | |
| (prefix_from_string): Use IS_DIR_SEPARATOR and DIR_SEPARATOR. | |
| * som.h (ASM_DECLARE_FUNCTION_NAME): Set PRIV_LEV for static | |
| functions too. | |
| * haifa-sched.c (add_dependence): Update the true dependency | |
| cache the first time we add a true dependence to the LOG_LINKS chain. | |
| Mon Oct 25 22:27:40 1999 Jim Kingdon <http://developer.redhat.com/> | |
| * fold-const.c (fold): Fix comment. | |
| Mon Oct 25 22:49:34 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * dbxout.c (lastfile, cwd, dbxout_type_method_1, | |
| dbxout_symbol_location, dbxout_symbol_name, dbxout_init, | |
| dbxout_start_new_source_file, dbxout_source_file, | |
| dbxout_source_line, dbxout_finish, dbxout_type_fields, | |
| dbxout_type_methods, dbxout_symbol, dbxout_prepare_symbol): | |
| Constify a char*. | |
| (dbxout_types, dbxout_args, dbxout_symbol): Delete prototypes. | |
| (dbxout_symbol): Mark parameter `local' with ATTRIBUTE_UNUSED. | |
| (dbxout_block): Initialize variable `blocknum'. | |
| * dbxout.h (dbxout_init, dbxout_finish, | |
| dbxout_start_new_source_file, dbxout_source_file, dbxout_types, | |
| dbxout_args, dbxout_source_line): Constify a char*. | |
| * dwarfout.c (dwarf_tag_name, dwarf_attr_name, | |
| dwarf_stack_op_name, dwarf_typemod_name, dwarf_fmt_byte_name, | |
| dwarf_fund_type_name, name_attribute, stmt_list_attribute, | |
| low_pc_attribute, high_pc_attribute, body_begin_attribute, | |
| body_end_attribute, comp_dir_attribute, sf_names_attribute, | |
| src_info_attribute, mac_info_attribute, producer_attribute, | |
| lookup_filename, generate_macinfo_entry, fundamental_type_code, | |
| dwarfout_line, dwarfout_start_new_source_file, dwarfout_define, | |
| dwarfout_undef): Constify a char*. | |
| (add_incomplete_type, retry_incomplete_types): Add prototypes. | |
| * dwarfout.h (dwarfout_define, dwarfout_undef, | |
| dwarfout_start_new_source_file, dwarfout_line): Constify a char*. | |
| 1999-10-25 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.h (MIPS_ISA_DEFAULT): Insure it's defined. | |
| (MULTILIB_ISA_DEFAULT): New. | |
| (MULTILIB_DEFAULTS): Use it. | |
| * config/mips/mips.c (): Remove the now unnecessary definition | |
| of MIPS_ISA_DEFAULT. | |
| * config/mips/elf64.h (MULTILIB_DEFAULTS): Remove the now | |
| unnecessary definition. | |
| Mon Oct 25 22:08:35 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.md (pic_load_addr): Add constraints to operand 1. | |
| 1999-10-25 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/genfixes: Provide a means for specifying -D options to | |
| AutoGen | |
| Mon Oct 25 00:42:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * arm.c (arm_override_options): Correct initialization of | |
| arm_fast_multiply, arm_arch4, arm_arch5, arm_ld_sched, | |
| arm_is_strong, and arm_is_6_or_7. | |
| * loop.c (note_set_pseudo_multiple_uses_retval): New variable. | |
| (note_set_pseudo_multiple_uses): New function. | |
| (check_dbra_loop): Use not_set_pseudo_multiple_uses to determine | |
| if a pseudo set in the loop exit is used elsewhere. | |
| Sun Oct 24 20:52:40 1999 Mark Mitchell <mark@codesourcery.com> | |
| * i386.md (mulsi3): Tweak to work with SCO OSR5 COFF assembler. | |
| Sun Oct 24 21:02:46 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (*lea_0): Collapse addsi_0, addsi_lea_[123] into | |
| a single load-address pattern. | |
| Sun Oct 24 19:33:24 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * haifa-sched.c (schedule_insns): Don't assign LUIDs differently | |
| depending on whether or not line-number notes are present. | |
| Sun Oct 24 20:29:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c (progname, file_buf, default_include, include_file, | |
| macrodef, definition, hashval, wchar_type, user_label_prefix, | |
| directive, out_fname, if_stack, safe_write, index0, get_lintcmd, | |
| expand_to_temp_buffer, is_system_include, base_name, | |
| absolute_filename, read_name_map, open_include_file, | |
| record_control_macro, check_precompiled, check_preconditions, | |
| pcfinclude, pass_thru_directive, create_definition, | |
| check_macro_name, comp_def_part, collect_expansion, | |
| check_assertion, read_token_list, assertion_install, | |
| assertion_lookup, eval_if_expression, conditional_skip, | |
| validate_else, skip_quoted_string, quote_string, macarg1, | |
| error_from_errno, install, lookup, hashf, dump_defn_1, | |
| perror_with_name, pfatal_with_name, main, trigraph_pcp, | |
| check_white_space, rescan, handle_directive, monthnames, | |
| special_symbol, do_include, remap_include_file, write_output, | |
| arglist, do_assert, do_unassert, do_line, do_error, do_once, | |
| do_ident, do_sccs, do_xifdef, skip_if_group, | |
| output_line_directive, macroexpand, macarg, change_newlines, | |
| initialize_builtins, make_definition): Constify a char*. | |
| * pcp.h (stringdef): Likewise. | |
| Sun Oct 24 13:29:28 1999 Richard Henderson <rth@cygnus.com> | |
| * unroll.c (copy_loop_body): Examine SET_DEST of single_set | |
| not of pattern. | |
| Sun Oct 24 13:14:20 1999 Graham <grahams@rcp.co.uk> | |
| Richard Henderson <rth@cygnus.com> | |
| * alias.c: Include ggc.h. | |
| (reg_base_value, new_reg_base_value, reg_base_value_size): Make static. | |
| (record_set): Verify enough room in reg_base_value. | |
| (init_alias_analysis): Allocate reg_base_value with xcalloc. | |
| Register it as a GC root. | |
| (end_alias_analysis): Free reg_base_value. Remove it as a GC root. | |
| * Makefile.in (alias.o): Depend on ggc.h. | |
| * unroll.c (unroll_loop): Verify the insn before a barrier | |
| is a JUMP_INSN before checking JUMP_LABEL. | |
| Sun Oct 24 15:46:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * mips/bsd-5.h (ASM_OUTPUT_ASCII): Constify a char*. | |
| * mips/iris4.h (ASM_OUTPUT_ASCII): Likewise. | |
| * mips/mips-5.h (ASM_OUTPUT_ASCII): Likewise. | |
| * mips/mips.h (ASM_OUTPUT_ASCII): Likewise. | |
| * mips/svr3-5.h (ASM_OUTPUT_ASCII): Likewise. | |
| * mips/svr4-5.h (ASM_OUTPUT_ASCII): Likewise. | |
| Sun Oct 24 15:35:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * output.h (ctors_section, dtors_section, bss_section): Prototype. | |
| * alpha/alpha-interix.h (text_section): Delete prototype. | |
| * alpha/elf.h (text_section): Likewise. | |
| * arm/linux-elf.h (text_section): Likewise. | |
| * arm/linux-telf.h (text_section): Likewise. | |
| * c4x/c4x.h (text_section): Likewise. | |
| * dsp16xx/dsp16xx.h (bss_section): Likewise. | |
| * elfos.h (text_section): Likewise. | |
| * i386/aix386ng.h (text_section): Likewise. | |
| * i386/i386-interix.h (text_section): Likewise. | |
| * i386/sco5.h (text_section): Likewise. | |
| * i386/svr3gas.h (text_section): Likewise. | |
| * nextstep.h (text_section): Likewise. | |
| * psos.h (text_section): Likewise. | |
| * ptx4.h (text_section): Likewise. | |
| * svr3.h (text_section): Likewise. | |
| * svr4.h (text_section, ctors_section, dtors_section): Likewise. | |
| Sun Oct 24 15:20:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * final.c (peephole): Delete prototype. | |
| * gcse.c (process_insert_insn, pre_edge_insert): Add prototypes. | |
| (pre_insert_copies): Remove unused variable `bb'. | |
| * genrecog.c (debug_decision_0, debug_decision_list, main): Add | |
| prototypes. | |
| * output.h (peephole): Add prototype. | |
| Sun Oct 24 11:35:30 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * config/mips/iris6.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Define to | |
| -O0. | |
| Sat Oct 23 21:13:00 1999 Mark Mitchell <mark@codesourcery.com> | |
| * integrate.c (integrate_decl_tree): Tweak setting of DECL_CONTEXT | |
| for inlined declarations. | |
| Fri Oct 22 18:05:43 1999 Jeffrey A Law (law@cygnus.com) | |
| * arm.c (logical_binary_operator): New fucntion. | |
| * arm.h (logical_binary_operator): Declare it. | |
| (PREDICATE_CODES): Handle logical_binary_operator. | |
| * arm.md (anddi3, anddi_zesidi_di, anddi_sesdi_di): Use "#" for | |
| output constraints. Add appropriate splitters. | |
| (anddi_notdi_di, anddi_notzesidi_di, anddi_notsesidi_di): Likewise. | |
| (iordi3, iordi_zesidi_di, iordi_sesidi_di): Likewise. | |
| (xordi3, xordi_zesidi_di, xordi_sesidi_di): Likewise. | |
| Fri Oct 22 23:46:50 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * genoutput.c (struct operand_data): New elt eliminable. | |
| (output_operand_data): Write it. | |
| (scan_operands): Set it for MATCH_OPERAND, clear for other matchers. | |
| (compare_operands): Take it into account. | |
| * recog.h (struct insn_operand_data): New elt eliminable. | |
| * reload1.c (check_eliminable_occurrences, elimination_effects): New | |
| functions. | |
| (old_asm_operands_vec, new_asm_operands_vec): Delete. | |
| (eliminate_regs): Move code that detects changes to elimination | |
| target regs into new function elimination_effects. | |
| Delete one #if 0 block. | |
| Abort for USE, CLOBBER, ASM_OPERANDS and SET. | |
| (eliminate_regs_in_insn): Return immediately for USEs, CLOBBERs, | |
| ADDR_VECs, ADDR_DIFF_VECs and ASM_INPUTs. | |
| Only call eliminate_regs for real operands of the insn, not for parts | |
| of its structure or parts matched by things like match_operator. | |
| Use elimination_effects and check_eliminable_occurrences. Use | |
| copy_insn to duplicate the pattern when not in the final pass. | |
| Fri Oct 22 09:03:44 1999 Mark Mitchell <mark@codesourcery.com> | |
| * i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, | |
| and fld. | |
| 1999-10-22 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/README: document the "mach" machine matching test | |
| * fixinc/fixfixes.c: Implement the #else/#endif label fix | |
| * fixinc/fixtests.c: Implement the #else/#endif label test | |
| * fixinc/inclhack.def: utilize these tests and fixes | |
| * fixinc/inclhack.sh: regen | |
| * fixinc/fixincl.x: regen | |
| * fixinc/fixincl.sh: regen | |
| Thu Oct 21 20:37:19 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (cse.o): Depend on hashtab.h, not splay-tree.h. Also | |
| depend on ggc.h. | |
| Thu Oct 21 20:30:19 1999 Matthias Klose <doko@debian.org> | |
| * gcc.1: Document exit codes. | |
| Thu Oct 21 12:49:05 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * calls.c: Include tm_p.h later, so everything we need is defined. | |
| * expr.c: Likewise. | |
| * function.c: Likewise. | |
| * except.c: Include tm_p.h. | |
| * sparc.c: Likewise. | |
| (dwarf2out_cfi_label): Don't prototype. | |
| (check_return_regs, epilogue_renumber, | |
| ultra_cmove_results_ready_p, ultra_fpmode_conflict_exists, | |
| ultra_find_type, ultra_build_types_avail, ultra_flush_pipeline, | |
| ultra_rescan_pipeline_state, set_extends, ultra_code_from_mask, | |
| ultra_schedule_insn): Add static prototype. | |
| (data_segment_operand, text_segment_operand): Call itself with the | |
| proper number of arguments. | |
| (sparc_flat_save_restore, sparc_v8plus_shift): Constify a char*. | |
| * sparc.h: Move all declarations to sparc-protos.h. | |
| (SELECT_RTX_SECTION): Pass a missing MODE argument to | |
| symbolic_operand. | |
| * sparc/sysv4.h (SELECT_RTX_SECTION): Likewise. | |
| * config/svr4.h (text_section, ctors_section, dtors_section): Add | |
| Prototypes. | |
| (ASM_OUTPUT_SECTION_NAME, UNIQUE_SECTION, | |
| ASM_FINISH_DECLARE_OBJECT, ASM_OUTPUT_LIMITED_STRING, | |
| ASM_OUTPUT_ASCII): Constify a char*. | |
| * sparc-protos.h: New file for sparc prototypes. | |
| Thu Oct 21 12:23:40 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * function.c (record_insns, contains): Always declare and define. | |
| (record_insns): Mark with ATTRIBUTE_UNUSED. | |
| Thu Oct 21 13:03:49 1999 Jonathan Larmour <jlarmour@cygnus.co.uk> | |
| * config/arm/telf.h (ASM_OUTPUT_SECTION_NAME): Add %nobits option | |
| to .section when outputting a .bss section to deal with multiple | |
| .bss input sections (as happens with -fdata-sections) | |
| Also output %progbits, not @progbits so the assembler doesn't treat as | |
| a comment. | |
| * config/arm/unknown-elf.h (ASM_OUTPUT_SECTION_NAME): Likewise | |
| * config/arm/lib1funcs.asm (_call_via_rX): Allow compilation of | |
| thumb parts even when building with non-thumb CPUs, by forcing | |
| thumb mode. | |
| Wed Oct 20 22:57:58 1999 Jeffrey A Law (law@cygnus.com) | |
| * sparc.md (movsf_const_intreg): If splitting, length must be > 1. | |
| (movdf_const_intreg_sp64): Similarly. | |
| * local-alloc.c (update_equiv_regs): Check the correct insn | |
| for pre-existing REG_EQUIV notes. | |
| Wed Oct 20 20:41:46 1999 Mark Mitchell <mark@codesourcery.com> | |
| * cse.c (cse_end_of_basic_block): Don't return the end of a basic | |
| block reached by a branch if we're not going to actually process | |
| this block. | |
| Wed Oct 20 15:18:42 1999 Jim Wilson <wilson@cygnus.com> | |
| * integrate.c (integrate_decl_tree): Set DECL_CONTEXT to 0 if this is | |
| a local extern function declaration. | |
| Wed Oct 20 13:56:01 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (ix86_expand_prologue): Properly wrap USE around | |
| reg for CALL_INSN_FUNCTION_USAGE. | |
| Thu Oct 14 18:51:37 1999 Andrew Haley <aph@cygnus.com> | |
| * config/mips/mips.md (movdf_internal1a): Allow floating-point | |
| move between GP_REGs. | |
| Wed Oct 20 15:36:11 1999 Andrew Haley <aph@cygnus.com> | |
| * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Take account of | |
| the mode size when finding out if an offset is legal. | |
| Wed Oct 20 06:26:58 1999 Richard Henderson <rth@cygnus.com> | |
| * basic-block.h (PROP_*): Move constants from ... | |
| * flow.c: ... here. | |
| (compute_bb_for_insn): Free the array before reallocating. | |
| (update_life_info): New arg PROP_FLAGS; pass on to propagate_block. | |
| (allocate_reg_life_data): Reset all reg variables collected by | |
| propagate_block. | |
| (get_block_head_tail): Don't convert from bb to block. | |
| (get_bb_head_tail): New. Update all callers of get_block_head_tail. | |
| (find_insn_reg_weight): Take block not bb. | |
| (schedule_block): Don't set block num for moved insns. | |
| (schedule_region): Don't update_life_info or find_insn_reg_weight. | |
| (schedule_insns): Do it here instead. | |
| * combine.c (combine_instructions): Invoke compute_bb_for_insn | |
| before update_life_info. | |
| * recog.c (split_all_insns, peephole2_optimize): Update for | |
| new arg to update_life_info. | |
| * rtlanal.c (remove_note): Cope with NULL note. | |
| * toplev.c (rest_of_compilation): Don't invoke recompute_reg_usage | |
| if we did sched1. | |
| Wed Oct 20 10:46:41 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * jump.c (jump_optimize_1): More accurately detect casesi insns. | |
| * flow.c (merge_blocks_move_predecessor_nojumps): Re-order the basic | |
| block records so that merge_blocks_nomove will clean up correctly. | |
| (split_edge): Handle casesi insns. | |
| * gcc-page.c: Try MAP_ANON if we don't have MAP_ANONYMOUS. | |
| Tue Oct 19 23:43:50 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (call, call_value): Do not emit a blockage after restoring | |
| the PIC register. | |
| Tue Oct 19 17:22:39 1999 Mark Mitchell <mark@codesourcery.com> | |
| * c-typeck.c (c_expand_asm_operands): Fix typo. | |
| Tue Oct 19 18:42:58 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * arm.c (fpu_rhs_operand): Verify modes. | |
| (fpu_add_operand): Likewise. | |
| (di_operand): Likewise. | |
| (soft_df_operand): Likewise. | |
| Tue Oct 19 15:26:11 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.c (arm_return_in_memory): APCS rules state that the elements | |
| of a structure returned in a register must be 'integer-like'. | |
| 1999-10-19 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/Makefile.in: Change the generation rules to run `genfixes' | |
| in the source tree when the generated targets are out of date | |
| * fixinc/genfixes: Alter it to run individual fixes for make. | |
| * fixinc/README: rewrite | |
| * fixinc/inclhack.def: moved initial comments to README | |
| Tue Oct 19 14:01:34 1999 Nick Clifton <nickc@cygnus.com> | |
| * toplev.c (main): Do not generate an error message if an | |
| unrecognized command line switch is recognizable by another | |
| language. If extra_warnings are enabled, then generate a | |
| warning message instead. | |
| Tue Oct 19 11:41:12 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * c-pragma.h (PRAGMA_INSERT_ATTRIBUTES): Delete macro. | |
| (insert_pack_attributes): Delete prototype. | |
| * c-pragma.c (default_alignment): New static variable. | |
| (push_alignment): Initialize to current effective alignment. | |
| (pop_alignment): Use to set new alignment. | |
| (insert_pack_attributes): Delete function. | |
| (handle_pragma_token): Set default_alignment as well each time | |
| a #pragma pack(<n>) is encountered. | |
| Tue Oct 19 02:03:00 1999 Jeffrey A Law (law@cygnus.com) | |
| * reg-stack.c (stack_result): Aggregates are not returned in | |
| stack registers. | |
| Tue Oct 19 01:26:48 1999 Alasdair Baird <alasdair@wildcat.demon.co.uk> | |
| * fold-const.c (fold): Fix thinko in x+(-0) -> x transformation. | |
| Mon Oct 18 15:19:41 1999 Richard Henderson <rth@cygnus.com> | |
| * basic-block.h (set_block_num): Declare. | |
| * flow.c (update_life_info): Don't call compute_bb_for_insn | |
| or free_basic_block_vars. | |
| * haifa-sched.c (remove_dependence): Conditionalize on HAVE_cc0. | |
| (insn_orig_block): Remove. | |
| (INSN_BLOCK): Remove. Update all callers to use BLOCK_NUM. | |
| (schedule_block): Keep BLOCK_NUM up-to-date. | |
| (schedule_insns): Use compute_bb_for_insn. | |
| * recog.c (split_all_insns): Likewise. | |
| (peephole2_optimize): Likewise. | |
| Mon Oct 18 18:50:51 1999 Andreas Schwab <schwab@suse.de> | |
| * config/m68k/m68k.h (INITIAL_FRAME_POINTER_OFFSET): Add one word | |
| if the pic register is used. | |
| Mon Oct 18 02:38:46 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-decl.c (pushdecl): Use TYPE_CONTEXT rather than TREE_PERMANENT. | |
| (finish_decl): Duplicate test for TREE_ASM_WRITTEN in else branch of | |
| if that tests TREE_PERMANENT. | |
| Mon Oct 18 01:41:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (invalidate_for_call): Do not remove memory references from | |
| the table here. It's handled elsewhere. | |
| * haifa-sched.c (add_dependence): Protect references to the | |
| true dependency cache with #ifdef INSN_SCHEDULING. | |
| (remove_dependence): Similarly. | |
| * mn10200.md (outline_epilogue_jump): Embed a (return) to indicate | |
| to the cfg code that this is a return instruction. | |
| * mn10300.md (return_internal): Similarly. | |
| * combine.c (get_last_value): If the last set of a register | |
| is after subst_low_cuid, then we can not use it to determine | |
| the register's last value. | |
| Sun Oct 17 11:02:52 1999 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in: Back out previous change. | |
| Sun Oct 17 15:22:50 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (move_operand): Reject (lo_sum (reg) (unspec ...)). | |
| * haifa-sched.c (add_dependence): Only check/update the cache | |
| if it exists. | |
| (remove_dependence): Likewise. | |
| (schedule_insns): Only create the true_dependency_cache if the | |
| average number of instructions in a basic block is very large. | |
| Sun Oct 17 11:02:52 1999 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (ggc-common.o): Depend on genrtl.h. | |
| (ggc-simple.o): Likewise. | |
| (ggc-page.o): Likewise. | |
| Sun Oct 17 02:09:50 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * basic-block.h (pre_edge_lcm, pre_edge_rev_lcm, compute_available): | |
| Prototype for exported functions. | |
| (pre_lcm, pre_rev_lcm): Remove prototypes. | |
| * gcse.c (compute_ae_kill): Add ae_gen and ae_kill as parameters. | |
| (compute_available): Move to lcm.c, and change parameter order. | |
| (one_classic_gcse_pass): Call compute_ae_kill with parameters. | |
| (pre_insert, s_preds, s_succs, num_preds, num_succs): Delete. | |
| (gcse_main): No longer call compute_preds_succs. Rebuild the | |
| set table after reach pre pass. | |
| (pre_insert_map, pre_delete_map, edge_list): New. | |
| (alloc_pre_mem): Allocate edge vectors. | |
| (free_pre_mem): Delete edge vectors. | |
| (compute_pre_data): Call new edge based lcm routines. | |
| (process_insert_insn): New function. | |
| (insert_insn_end_bb): Use it. | |
| (pre_edge_insert): New function. | |
| (pre_insert_copy_insn): Formatting fixes. Update BLOCK_END as | |
| needed. | |
| (pre_insert_copies): Revamp using new edge based lcm outputs. | |
| (pre_delete): Likewise. | |
| (one_pre_gcse_pass): Insert & remove fake edges to the exit | |
| block. | |
| (compute_code_hoist_vbeinout): New new edge based routines. | |
| * lcm.c: Remove all the old LCM functions. Replace with new ones | |
| that work with the new cfg datastructures and work with edges | |
| instead of blocks. | |
| Sun Oct 17 00:44:17 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload.h (struct reload): Add new fields "mode" and "nregs". | |
| * reload1.c: Change all occurrences of reload_mode and reload_nregs | |
| to reference the "mode" and "nregs" field within struct reload. | |
| Sat Oct 16 21:50:28 1999 Jeffrey A Law (law@cygnus.com) | |
| * haifa-sched.c (true_dependency_cache): New. | |
| (add_dependence): Use the true dependency cache to avoid expensive | |
| walks down the LOG_LINKS dependency list. Add entries to the | |
| cache as necessary. | |
| (remove_dependence): Remove entries from the true dependency cache | |
| as needed. | |
| (schedule_insns): Allocate and initialize and free the true | |
| dependency cache. | |
| * haifa-sched.c (schedule_insns): Do not remove inter-block | |
| dependencies anymore. | |
| Sat Oct 16 11:19:52 1999 Richard Henderson <rth@cygnus.com> | |
| * i386/t-cygwin (winnt.o): Depend on RTL_H and TREE_H. | |
| * i386/t-winnt: Likewise. | |
| Sat Oct 16 11:11:54 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-page.c (init_ggc): Work around SunOS unaligned mmap bug. | |
| 1999-10-16 Manfred Hollstein <mhollstein@cygnus.com> | |
| * Makefile.in (LANGUAGES): Omit "proto". | |
| (clean): Remove stale comment about removing unprotoize.c. | |
| Sat Oct 16 11:29:14 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * protoize.c (safe_read, safe_write): Avoid the gcc extension of | |
| using arithmetic on void pointers. | |
| Sat Oct 16 02:48:22 1999 Jeffrey A Law (law@cygnus.com) | |
| * haifa-sched.c (compute_block_forward_dependencies): Only check | |
| for notes, deleted insns and duplicates if ENABLE_CHECKING is defined. | |
| Sat Oct 16 00:07:01 1999 Richard Henderson <rth@cygnus.com> | |
| * gcse.c (hash_expr_1): Add in MEM_ALIAS_SET. | |
| (expr_equiv_p): Reject memories with different alias sets. | |
| Fri Oct 15 15:17:29 1999 Greg McGary <gkm@gnu.org> | |
| * flags.h (flag_bounds_check, flag_bounded_pointers): New extern decls. | |
| * toplev.c (flag_bounds_check, flag_bounded_pointers): New flags. | |
| (f_options): Add "bounded-pointers" and "bounds-check" entries. | |
| * c-lang.c (lang_init_options): Set flag_bounds_check as "unspecified". | |
| (lang_init): Set default for flag_bounds_check if still "unspecified". | |
| Sat Oct 16 13:42:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (HF mode patterns): Add missing modes. | |
| Sat Oct 16 13:37:46 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (movstrqi_small): Utilize parallel move | |
| instructions. | |
| Sat Oct 16 13:26:47 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*db_noclobber, | |
| *decrement_and_branch_until_zero_noclobber): New patterns and | |
| associated splitters. | |
| Sat Oct 16 13:13:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (parallel instruction patterns): Rework | |
| constraints to keep reload happy. | |
| Sat Oct 16 13:03:16 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*absqi2_noclobber, *negqi2_noclobber, | |
| *one_cmplqi2_noclobber, *subqi3_noclobber, *andqi3_255_noclobber, | |
| *andqi3_65535_noclobber, *andnqi3_noclobber, *xorqi3_noclobber): | |
| Add new patterns and associated post-reload splitters. | |
| Sat Oct 16 12:42:12 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_emit_libcall): Use ggc_alloc_string. | |
| Sat Oct 16 12:34:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_rptb_insert): Emit rpts_top pattern | |
| if appropriate. | |
| * config/c4x/c4x.md (rpts_top): New pattern and splitter. | |
| Sat Oct 16 12:26:30 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (src_operand): Check SYMBOL_REF and LABEL_REF | |
| memory mode. | |
| Fri Oct 15 17:02:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (move_operand): Rely on memory_address_p to determine the | |
| validity of non-indexed memory addresses. | |
| * pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow LO_SUM with a symbolic | |
| operand in DFmode and SFmode when generating PA2.0 code. | |
| Fri Oct 15 14:25:19 1999 Richard Henderson <rth@cygnus.com> | |
| * print-rtl.c (print_rtx): Limit last 'u' change to LABEL_REF. | |
| Fri Oct 15 13:48:45 1999 Richard Henderson <rth@cygnus.com> | |
| * mips.c (function_prologue): Fix argument types. | |
| * mips.md (casesi): Use emit_jump_insn for casesi_internal. | |
| (casesi_internal): Write to the scratch register. | |
| 1999-10-15 11:16 -0700 Zack Weinberg <zack@bitmover.com> | |
| * cppexp.c (cpp_parse_escape): Make static. Change second arg | |
| to U_CHAR **. | |
| (parse_charconst): Delete unnecessary cast when calling | |
| cpp_parse_escape. | |
| (cpplib.h): Kill prototype of cpp_parse_escape. | |
| Fri Oct 15 11:02:46 1999 Richard Henderson <rth@cygnus.com> | |
| Based on patch from Michael Gschwind <mikeg@watson.ibm.com>: | |
| * unroll.c (unroll_loop): Cast return value of alloca. | |
| * i370/i370.c: Include function.h and toplev.h. | |
| (i370_label_scan): Remove c++ commented abort. | |
| * i370/i370.h (HANDLE_PRAGMA): Takes three arguments. | |
| (ASM_OUTPUT_LABELREF): Fix TOUPPER/else broken 16 Sept. | |
| * i370/xm-i370.h (HOST_BITS_PER_LONGLONG): Define. | |
| * i370/xm-mvs.h, i370/xm-oe.h: Likewise. | |
| Fri Oct 15 03:01:01 1999 Loren Rittle <ljrittle@acm.org> | |
| * config/t-freebsd: Do not override USER_H. | |
| * ginclude/stddef.h: Generalize check for _MACHINE_ANSI_H_. | |
| Fri Oct 15 02:37:28 1999 Alastair J. Houghton <ajh8@doc.ic.ac.uk> | |
| Mumit Khan <khan@xraylith.wisc.edu> | |
| * c-parse.in (component_decl): Support anonymous struct/union. | |
| (%expect): Update. | |
| * c-parse.y: Regenerate. | |
| * c-parse.c: Likewise. | |
| * objc/objc-parse.y: Likewise. | |
| * objc/objc-parse.c: Likewise. | |
| * c-decl.c (finish_struct): Don't sort the fields. | |
| (field_decl_cmp): Delete unused function. | |
| Fri Oct 15 01:20:52 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.md (movsf_const_intreg): Revert last constraint change. | |
| (movdf_const_intreg_sp32): Likewise. | |
| Fri Oct 15 01:47:51 1999 Vladimir Makarov <vmakarov@loony.cygnus.com> | |
| * cse.c: Include hashtab.h instead of splay-tree.h | |
| (struct cse_reg_info): No longer use variant union. Add new | |
| field "regno". All references changed to avoid union. | |
| (cse_reg_info_used_list, cse_reg_info_used_list_end): New variables. | |
| (free_cse_reg_info): Remove. | |
| (hash_cse_reg_info, cse_reg_info_equal_p): New functions. | |
| (get_cse_reg_info): Revamp to use expandable hash tables instead | |
| of splay trees. Initialize new fields in cse_reg_info structure. | |
| (new_basic_block): Similarly. | |
| Thu Oct 14 23:51:56 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (message_with_line): Prototype. | |
| (validate_pattern): Pass along the set for the dest, not a flag. | |
| Fix non-lvalue message. Don't warn for VOIDmode SET_DEST of CALL. | |
| Check for PC/CC0 as sources. | |
| (nodes_identical): Check for children position match before | |
| allowing the combination. | |
| * rtl.c (read_rtx): Track line number across \\\n. | |
| Thu Oct 14 23:50:25 1999 Richard Henderson <rth@cygnus.com> | |
| * mips.h (SPECIAL_MODE_PREDICATES): New. | |
| * mips.md (*) Use nonimmediate_operand not general_operand for outputs. | |
| (movdi+1, movsi+1): Add output reload constraint. | |
| (casesi_internal): Likewise. Fix commentary. | |
| (return_internal): Use pmode_register_operand. | |
| Thu Oct 14 23:19:34 1999 Richard Henderson <rth@cygnus.com> | |
| * 1750a.md (movstrqi): Add missing output reload constraint. | |
| (call_value): Likewise. | |
| * a29k.md (cpxxx patterns): Add missing match_operator mode. | |
| (jmpfdec): Add missing inout reload constraint. | |
| * elxsi.md (addsi patterns): Add missing output reload constraint. | |
| (move from sp): Use @ alternates. | |
| (call_value): No constraint on output. | |
| * fr30.md (movsi_pop): Add missing output reload constraint. | |
| (movsf_constant_store): Likewise. | |
| (splits): Remove constraints. | |
| (subsi3): Add missing mode. | |
| * i370.md (cmpstrsi+1): Add missing output reload constraint. | |
| (call_value): Likewise. | |
| * i960.md (cmpinc/cmpdec patterns): Add inout reload constraints. | |
| * m32r.h (PREDICATE_CODES): Add seth_add3_operand. | |
| * m32r.md (movsicc_internal): Add output reload constraint. | |
| (movstrsi_internal): Add inout reload constraints. | |
| * m88k.h (reg_names): Don't declare. | |
| (SPECIAL_MODE_PREDICATES): New. | |
| * m88k.md (*): Use register_operand not reg_or_0_operand | |
| on destinations. | |
| * mn10200.h (PREDICATE_CODES): New. | |
| * ns32k.md (ffs pattern): Add output reload constraint. | |
| * pdp11.md (sob pattern): Add inout reload constraint. | |
| * sh.md (splits): Remove constraints. | |
| (indirect_jump_scratch, fpu_switch): Add output reload constraint. | |
| * v850.md (pattern_is_ok_for_epilogue): Likewise. | |
| * vax.md (jgequ pattern): Add inout reload constraint. | |
| Fri Oct 15 00:05:00 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (djgpp): Revert previous patch. | |
| * configure: Rebuit. | |
| * config/i386/djgpp.h: Revert previous patch. | |
| Fri Oct 15 00:00:24 1999 Loren J. Rittle <ljrittle@acm.org> | |
| * fixinc/inclhack.def: Restore patch lost during last merge of | |
| "no_bogosity" branch. | |
| * fixinc/inclhack.sh, fixinc/fixincl.x: Rebuilt. | |
| Thu Oct 14 23:57:56 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * fixincludes: Add a HPUX 11 fix for inttypes.h. | |
| * fixinc/inclhack.def: Same. | |
| * fixinc/inclhack.sh, fixinc/fixincl.sh, fixinc/fixincl.x: Regenerate. | |
| Thu Oct 14 22:51:55 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Accept ADDRESSOF | |
| as the base of a PLUS. | |
| Fri Oct 15 18:36:07 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md: Define mode for remaining unspec operators. | |
| * config/c4x/c4x.c (dst_operand): Use nonimmediate_operand. | |
| Thu Oct 14 22:14:23 1999 Richard Henderson <rth@cygnus.com> | |
| * pa.md (post_stw+1): Use pmode_register_operand. | |
| (dcacheflush, icacheflush): Likewise. | |
| * i386.md (movstricthi_1): Allow r/r. | |
| Thu Oct 14 19:44:08 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * fold-const.c (fold): Convert (or (not arg0) (not arg1)) | |
| to (not (and (arg0) (arg1))). Similary for and. | |
| * fold-const.c (fold): Move bit_rotate code to the EXPR_PLUS case, | |
| fallthrough to associate code. | |
| Convert XOR to OR in code like (a&c1)^(a&c2) where c1 and c2 don't have | |
| bits in common. | |
| * combine.c (simplify_logical): Convert XOR to IOR if operands have | |
| no bits in common; remove XOR to ROTATE conversion. | |
| Fri Oct 15 17:40:11 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (c4x_va_start, c4x_va_arg): Declare. | |
| Fri Oct 15 17:27:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (dst_operand): New. | |
| (PREDICATE_CODES): Update. | |
| * config/c4x/c4x.h (dst_operand): Declare it. | |
| * config/c4x/c4x.md: Define mode for each unspec usage. | |
| (move patterns): Use dst_operand predicate instead of src_operand. | |
| (movqi_update, movqf_update): Delete. | |
| Thu Oct 14 18:48:54 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.c (pmode_register_operand): New. | |
| * recog.h: Declare it. | |
| * genrecog.c (pred_codes): Likewise. | |
| (special_mode_pred_table): Likewise. | |
| (validate_pattern): Don't warn no mode for address_operand. | |
| * print-rtl.c (print_rtx) [LABEL_REF]: Only do full subexpression | |
| if the operand is not insn-like. | |
| Thu Oct 14 19:38:42 1999 Jeffrey A Law (law@cygnus.com) | |
| Sylvian Pion <Sylvain.Pion@sophia.inria.fr> | |
| * fold-const.c (fold): Handle more simplifications allowed by IEEE. | |
| Thu Oct 14 17:30:14 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.md (*): Use {nonimmediate,register}_operand as appropriate | |
| instead of general_operand in a SET_DEST. Use const_double_operand | |
| instead of an explicit test against CONST_DOUBLE. | |
| (movsf_const_lo): Add missing register mode. | |
| (goto_handler_and_restore): Add auxiliary test for Pmode. | |
| (flush): Adjust to use address_operand. | |
| (return_sf_no_fpu): Add missing output constraint. | |
| Thu Oct 14 17:21:26 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.md (call_value_indirect_aix32): Use wildcard match_operand | |
| for call return value. | |
| (call_value_indirect_aix64, call_value_indirect_nt): Likewise. | |
| Thu Oct 14 13:54:25 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * toplev.c (main): Only warn about options for other languages. | |
| * collect2.c (main): Pass -w to sub-gcc. | |
| Thu Oct 14 16:27:50 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (propagate_block): Add call-clobbered registers to | |
| significant too. | |
| * flow.c (propagate_block): Use free_EXPR_LIST_list instead of | |
| zapping mem_set_list. | |
| (invalidate_mems_from_autoinc): Use free_EXPR_LIST_node. | |
| (mark_set_1, mark_used_regs): Likewise. | |
| Thu Oct 14 10:51:49 1999 Richard Henderson <rth@cygnus.com> | |
| * m68k.md (zero_extendsidi2): Add missing output reload constraint. | |
| Wed Oct 13 00:09:18 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
| * invoke.texi: Label -Wbad-function-cast, -Wmissing-prototypes, | |
| -Wnested-externs, -Wstrict-prototypes, and -Wtraditional as C only | |
| options. Also add a new item "C-only Warning Options" to the | |
| option summary. | |
| 1999-10-14 Gavin Romig-Koch <gavin@cygnus.com> | |
| * libgcc2.c (__do_global_dtors): Protect __deregister_frame_info | |
| from multiple calls. | |
| Thu Oct 14 04:54:54 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (call value patterns): Move to the end of the file. | |
| (prologue_set_got, prologue_get_pc): Use register_operand for op 0. | |
| 1999-10-14 Mark Elbrecht <snowball3@bigfoot.com> | |
| * configure.in (djgpp configuration): Define extra_objects.. | |
| * configure: Rebuilt. | |
| * config/i386/djgpp.h (CTORS_SECTION_ASM_OP): Define. | |
| (DTORS_SECTION_ASM_OP): Define. | |
| (INIT_SECTION_ASM_OP): Define. | |
| (FINI_SECTION_ASM_OP): Define. | |
| (DATA_SECTION_ASM_OP): Define. | |
| (TEXT_SECTION_ASM_OP): Define. | |
| (EH_FRAME_SECTION_ASM_OP): Define. | |
| (LINK_COMMAND_SPEC): Remove -Tdjgpp.djl. | |
| (STARTFILE_SPEC): Add crtbegin.o. | |
| (ENDFILE_SPEC): Define and add crtend.o. Move argument -Tdjgpp.djl | |
| to here from LINK_COMMAND_SPEC. | |
| (DO_GLOBAL_CTORS_BODY): Define. | |
| (CRTSTUFF_USE_FINI_SECTION): Define | |
| (HAS_INIT_SECTION): Delete. | |
| Thu Oct 14 05:08:14 1999 Andreas Schwab <schwab@suse.de> | |
| * Makefile.in (all.cross): Depend on xcpp$(exeext). | |
| Thu Oct 14 04:00:40 1999 Richard Henderson <rth@cygnus.com> | |
| * pa.h (PREDICATE_CODES): New. | |
| * genrecog.c (validate_pattern): Condense the destination | |
| non-lvalue message. | |
| Thu Oct 14 03:23:08 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (call-1): Supply missing mode for operator. | |
| (*): Add missing output reload constraints. Remove constraints | |
| from define_splits. | |
| * i386.h (SPECIAL_MODE_PREDICATES): New. | |
| * i386.md (movstricthi_1): Use nonimmediate_operand for op 0. | |
| (movqi_1, movdi_1, movdi_2, some splits): Likewise. | |
| (addsi_lea_3): Add missing mode for op 3. | |
| (prologue_set_got, prologue_get_pc): Add missing modes. | |
| (*) Add missing output reload constraints. | |
| Thu Oct 14 03:59:57 1999 Stephane Carrez <stcarrez@worldnet.fr> | |
| * stor-layout.c (layout_union): Use HOST_WIDE_INT for const_size; | |
| check for member bit-size overflow and use var_size if it occurs. | |
| (layout_record): Use bitsize_int() to define the type size in bits. | |
| Likewise for computation and assignment to DECL_FIELD_BITPOS. | |
| (layout_decl): Likewise when assigning to DECL_SIZE. | |
| Thu Oct 14 02:57:05 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (validate_pattern): Typo last change. Verify | |
| that output operands have output reloads. | |
| Thu Oct 14 01:49:54 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (special_mode_pred_table): New. | |
| (NUM_SPECIAL_MODE_PREDS): New. | |
| (find_operand): New. | |
| (validate_pattern): New argument `insn'. Warn for assignment to | |
| any predicate accepting non-lvalues. Conditionally warn for | |
| match_operand without a mode. Try much harder to match source | |
| and destination modes on a set. | |
| * tm.texi (SPECIAL_MODE_PREDICATES): Document. | |
| Thu Oct 14 02:54:13 1999 Jeffrey A Law (law@cygnus.com) | |
| * fold-const.c (fold): Detect rotates built from BIT_XOR_EXPRs. | |
| Thu Oct 14 02:18:19 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * combine.c (simplify_logical): Recognize xor pattern that encodes | |
| rotation. | |
| Wed Oct 13 23:23:45 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.c (expand_block_move): Use INTVAL, not XINT to access | |
| alignment. | |
| Wed Oct 13 21:47:18 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-page.c (MAP_FAILED): Provide default. | |
| Wed Oct 13 21:41:59 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.c (symbolic_operand): Verify mode; don't accept CONST_DOUBLE. | |
| * sparc.h (PREDICATE_CODES): Update. | |
| Wed Oct 13 21:18:17 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (some_ni_operand): New. | |
| * alpha-protos.h: Declare it. | |
| * alpha.h (PREDICATE_CODES): Update. | |
| * alpha.md (sXaddq reload insns): Use some_ni_operand | |
| for SET_DEST instead of some_operand. | |
| Wed Oct 13 21:04:45 1999 Richard Henderson <rth@cygnus.com> | |
| Jim Wilson <wilson@cygnus.com> | |
| * genrecog.c (maybe_both_true_2): Don't compare modes of | |
| two DT_pred tests. | |
| (process_tree): Elide peephole2_insns. Invoke simplify_tests | |
| after find_afterward. | |
| (debug_decision_1): Dump next and afterward codes. | |
| Wed Oct 13 20:35:16 1999 Richard Henderson <rth@cygnus.com> | |
| * rtl.c (dump_and_abort): Remove. | |
| (fatal_with_file_and_line): New. | |
| (fatal_expected_char): New. | |
| (read_rtx_lineno, read_rtx_filename): New. | |
| (read_skip_spaces): Track line number. | |
| (read_name): Use fatal_with_file_and_line. | |
| (read_rtx): Use fatal_expected_char. Track line number. | |
| * rtl.h (read_rtx_filename, read_rtx_lineno): Declare. | |
| * print-rtl.c (print_rtx): Don't special case LABEL_REF argument | |
| if it isn't a CODE_LABEL. | |
| * genattr.c (main): Set read_rtx_filename. | |
| * genattrtab.c (main): Likewise. | |
| * gencodes.c (main): Likewise. | |
| * genconfig.c (main): Likewise. | |
| * genemit.c (main): Likewise. | |
| * genextract.c (main): Likewise. | |
| * genflags.c (main): Likewise. | |
| * genopinit.c (main): Likewise. | |
| * genoutput.c (main): Likewise. | |
| * genpeep.c (main): Likewise. | |
| * genrecog.c (decision_test.u.insn): Add `lineno'. | |
| (pattern_lineno, error_count): New variables. | |
| (message_with_line): New. | |
| (add_to_sequence): Break out checking code to ... | |
| (validate_pattern): ... here. Detect SET_DEST matching CONST_INT. | |
| (merge_insn): Use message_with_line. | |
| (make_insn_sequence): Use validate_pattern. Record insn lineno. | |
| (main): Set read_rtx_filename, pattern_lineno. Exit early on error. | |
| Wed Oct 13 22:01:35 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * expr.c (store_constructor): Clear union if constructor is empty. | |
| Wed Oct 13 15:19:04 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/rs6000/sysv4.h (CC1_SPEC): Fix errors from Jan 19 change. | |
| Add !endian checks. Change %{...} to %(...). | |
| Wed Oct 13 13:30:34 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (*addsi3_cc): Renamed from addcsi3. | |
| (*addsi3_carry): Renamed from addxsi3. | |
| (*subsi3_cc): Renamed from subcsi3. | |
| (*subsi3_carry): Renamed from subxsi3. | |
| (*xorqi_cc_1): Renamed from xorcqi_1. | |
| (xorqi_cc_ext_1): Renamed from xorcqi_ext_1. | |
| * i386.c (ix86_expand_fp_compare): Update for xorqi_cc_ext_1. | |
| Wed Oct 13 13:10:46 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (ggc-common.o): Depend on RTL_H not RTL_BASE_H. | |
| (ggc-simple.o, ggc-page.o, ggc-none.o, ggc-callbacks.o): Likewise. | |
| 1999-10-13 Brendan Kehoe <brendan@cygnus.com> | |
| * regmove.c (optimize_reg_copy_3): Make sure P is non-nil as we | |
| climb up the chain of insns. | |
| Wed Oct 13 10:20:58 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (write_subroutine): Careful for null trees. | |
| (process_tree): Don't elide empty functions. | |
| Wed Oct 13 10:07:54 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (genrtl.o): Depend on ggc.h. | |
| * configure.in (valloc): Probe for it. | |
| (with-gc): Use ggc-page if valloc present. | |
| * ggc-common.c (ggc_mark_rtx_children): Use ggc_mark_if_gcable. | |
| (ggc_mark_rtvec_children): New from corpse of ggc_mark_rtvec. | |
| (ggc_alloc_string): Moved from ggc-page.c. | |
| * ggc-none.c (ggc_alloc_obj): New. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec): Remove. | |
| * ggc-page.c (sys/mman.h): Only include if HAVE_MMAP. | |
| (struct globals): Likewise for dev_zero_fd. | |
| (init_ggc): Likewise for it's initialization. | |
| (ggc_allocated_p): Move careful dereference from ... | |
| (ggc_lookup_page_table): ... here. Delete. | |
| (lookup_page_table_entry): Don't use ggc_lookup_page_table. | |
| (alloc_anon): Use valloc if no mmap. | |
| (release_pages): Use free if using valloc. | |
| (ggc_alloc_obj): Renamed from alloc_obj. | |
| (ggc_set_mark): Renamed from mark_obj. | |
| (ggc_mark_if_gcable): Renamed from ggc_mark_string_if_gcable. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec): Delete. | |
| (ggc_alloc_tree, ggc_alloc_string, ggc_alloc): Delete. | |
| (ggc_set_mark_rtx, ggc_set_mark_rtvec): Delete. | |
| (ggc_set_mark_tree, ggc_mark_string, ggc_mark): Delete. | |
| (ggc_collect): Use fp printing instead of our own rounding. | |
| * ggc-simple.c (IS_MARKED, IGNORE_MARK): Delete. | |
| (GGC_STRING_MAGIC, GGC_STRING_MAGIC_MARK): Delete. | |
| (GGC_ANY_MAGIC, GGC_ANY_MAGIC_MARK): Delete. | |
| (struct ggc_rtx, struct ggc_rtvec, struct ggc_tree): Delete. | |
| (struct ggc_string, struct ggc_any): Delete. | |
| (offsetof): Provide default definition. | |
| (GGC_BALANCE, GGC_ALWAYS_COLLECT, GGC_ALWAYS_VERIFY): New. | |
| (PTR_KEY): New. | |
| (struct ggc_mem): New, from corpse of ggc_any. | |
| (struct ggc_status): Delete. | |
| (ggc_chain, ggc_allocated_strings, ggc_strings_used): Delete. | |
| (n_rtxs_collected, n_vecs_collected, n_trees_collected): Delete. | |
| (n_strings_collected, n_anys_collected): Delete. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec, ggc_alloc_tree): Delete. | |
| (ggc_alloc_string, ggc_alloc): Delete. | |
| (ggc_free_rtx, ggc_free_rtvec, ggc_free_tree): Delete. | |
| (ggc_free_string, ggc_free_any): Delete. | |
| (ggc_set_mark_rtx, ggc_set_mark_rtvec, ggc_set_mark_tree): Delete. | |
| (ggc_compare_addresses, ggc_mark_string): Delete. | |
| (ggc_mark_string_if_gcable, ggc_mark): Delete. | |
| (search_data): Delete. | |
| (struct globals): New. | |
| (GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED): New. | |
| (tree_insert, tree_lookup): New. | |
| (ggc_alloc_obj, ggc_set_mark, ggc_mark_if_gcable): New. | |
| (clear_marks, sweep_objs): New. | |
| (ggc_collect): Gut. Use clear_marks, sweep_objs. | |
| (init_ggc): Set allocated_last_gc. | |
| (ggc_push_context): Gut. Use G.context. | |
| (ggc_pop_context): Likewise. | |
| (ggc_pop_context_1): New. | |
| (debug_ggc_tree): New. | |
| (debug_ggc_balance, tally_leaves): New. | |
| * ggc.h (ggc_mark_rtvec, ggc_mark_string, ggc_mark): Remove decl. | |
| (ggc_mark_string_if_gcable): Remove decl. | |
| (ggc_mark_rtx, ggc_mark_tree): Use ggc_set_mark. | |
| (ggc_mark_rtvec_children): New. | |
| (ggc_mark_rtvec, ggc_mark_string, ggc_mark): New. | |
| (ggc_mark_if_gcable): New decl. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec): Remove decl. | |
| (ggc_alloc_tree, ggc_alloc): Likewise. | |
| (ggc_set_mark_rtx, ggc_set_mark_rtvec, ggc_set_mark_tree): Likewise. | |
| (ggc_alloc_obj): New decl. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec): New macros. | |
| (ggc_alloc_tree, ggc_alloc): Likewise. | |
| (ggc_set_mark): New decl. | |
| * rtl.h (struct rtx_def): Remove gc_mark. | |
| (struct rtvec_def): Likewise. | |
| * tree.h (struct tree_common): Likewise. | |
| Wed Oct 13 01:44:29 1999 Carol LePage <carolo@hal.com> | |
| * configure.in (sparc-hal-solaris2*): Fix xm_file, xm_defines, | |
| float_format and thread_file definitions. | |
| * configure: Rebuilt. | |
| Wed Oct 13 09:25:03 1999 Niels Möller <nisse@lysator.liu.se> | |
| * extend.texi (Function Names): Document types of function names. | |
| Wed Oct 13 00:45:04 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (reload_reg_free_for_value_p): RELOAD_OTHER reloads with | |
| an earlyclobbered output conflict with RELOAD_INPUT reloads. | |
| Tue Oct 12 23:28:28 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (BOOL_TYPE_SIZE): Don't use INT_TYPE_SIZE / CHAR_TYPE_SIZE. | |
| Tue Oct 12 23:19:32 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (REGISTER_MOVE_COST): Change PR_REG to PR_REGS. | |
| Tue Oct 12 17:09:38 1999 David Edelsohn <edelsohn@gnu.org> | |
| * collect2.c (main): Do prelimnary link on AIX if rflag. | |
| Tue Oct 12 09:45:19 1999 Jonathan Larmour <jlarmour@cygnus.co.uk> | |
| * config/rs6000/eabi-ctors.c (__do_global_ctors): Run through | |
| __CTOR_LIST__ in opposite order, which is the correct order for sorted | |
| constructors. | |
| (__do_global_dtors): similarly for __DTOR_LIST__. | |
| Fri Oct 8 19:46:03 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| Diego Novillo <dnovillo@cygnus.com> | |
| * config/sh/sh.h (REGISTER_MOVE_COST): Handle moves from T_REGS to | |
| FPUL_REGS. | |
| Tue Oct 12 07:38:41 1999 Bruce Korb <autogen@linuxbox.com> | |
| * fixincl/*: Merged "no_bogosity" branch | |
| * fixincl/fixlib.h: protect against doubly defining t_bool | |
| * fixincl/server.h: protect against doubly defining t_bool | |
| Mon Oct 11 20:18:41 1999 Jim Wilson <wilson@cygnus.com> | |
| * genoutput.c: Include toplev.h. | |
| Mon Oct 11 18:56:14 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/sparc/liteelf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
| Undef. | |
| * configure.in (sparclite-*-elf, sparc86x-*-elf): Don't use libgloss.h. | |
| * configure: Regenerate. | |
| Mon Oct 11 16:07:49 1999 Richard Henderson <rth@cygnus.com> | |
| * gcse.c (delete_null_pointer_checks): Returns void. | |
| Mon Oct 11 20:31:51 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * rtl.c (copy_rtx): Don't use accessor macros to copy fields. | |
| * emit-rtl.c (copy_insn_1): Likewise. | |
| Mon Oct 11 13:29:06 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/mips/mips.c (mips_build_va_list): Correct | |
| TREE_CHAIN setting when hard-float. | |
| (mips_va_start): Use corrected setting. | |
| (mips_va_arg): Likewise. Also pass a tree to build of | |
| POSTINCREMENT_EXPR rather than a naked 'int'. | |
| Sun Oct 10 18:27:27 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc.h (ggc_push_context): Fix comment. | |
| (ggc_pop_context): Likewise. | |
| (mark_string_if_gcable): Likewise. | |
| * ggc-common.c (ggc_mark_rtx_children): Use | |
| ggc_mark_string_if_gcable. | |
| * ggc-page.c (ggc_lookup_page_table): New function. | |
| (ggc_allocated_p): Likewise. | |
| (mark_obj): Fix formatting. | |
| (ggc_mark_string_if_gcable): New function. | |
| * ggc-simple.c (ggc_allocated_strings): New variable. | |
| (ggc_strings_used): Likewise. | |
| (ggc_compare_addresses): New function. | |
| (ggc_pop_context): Pop the `any' memory too. | |
| (ggc_mark_string_if_gcable): New function. | |
| (ggc_collect): Initialize and tear down ggc_allocated_strings. | |
| Sun Oct 10 20:05:21 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (movstrsi_?reg): Use preferred rD/rS = r5 form. | |
| (scc patterns): Disable most SImode variants if TARGET_POWERPC64. | |
| * rs6000.c (expand_block_move): Match movstrsi_?reg register | |
| changes. | |
| Sun Oct 10 16:37:01 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_reg_n_calls_crossed): Delete. | |
| (sched_reg_live_length, sched_reg_basic_block): Delete. | |
| (current_block_num, bb_live_regs, old_live_regs): Delete. | |
| (dead_notes, struct sometimes): Delete. | |
| (sched_note_set, birthing_insn_p): Delete. | |
| (adjust_priority): Gut useless reg lifetime code. | |
| (create_reg_dead_note, attach_deaths): Delete. | |
| (attach_deaths_insn, new_sometimes_live): Delete. | |
| (finish_sometimes_live): Delete. | |
| (find_pre_sched_live, find_post_sched_live): Delete. | |
| (update_reg_usage): Delete. | |
| (find_insn_reg_weight): New, from corpse of find_pre_sched_live. | |
| (schedule_insns): Delete reg lifetime code. | |
| (sched_analyze): Use REG_SAVE_NOTE to stuff NOTE_INSN notes away. | |
| (unlink_other_notes): Adjust REG_NOTE commentary. | |
| (reemit_notes): Use REG_SAVE_NOTE. | |
| (schedule_block): Likewise. | |
| (schedule_region): Allocate bitmap of blocks in region. Use | |
| count_or_remove_death_notes. Use update_life_info. | |
| * rtl.h (REG_SAVE_NOTE): New. | |
| * rtl.c (reg_note_name): Update. | |
| Sun Oct 10 16:14:16 1999 Richard Henderson <rth@cygnus.com> | |
| * combine.c (refresh_blocks, need_refresh): New. | |
| (combine_instructions): Allocate refresh_blocks. Invoke | |
| update_life_info if needed. | |
| (distribute_notes): Mark refresh_blocks instead of installing | |
| USE insns. | |
| * flow.c (update_life_info): Remove notes if GLOBAL_RM_NOTES. | |
| * basic_block.h (enum update_life_extent): Add GLOBAL_RM_NOTES. | |
| * Makefile.in (recog.o): Depend on basic-block.h. | |
| Sun Oct 10 12:03:21 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (add_to_sequence): Thinko last change: delete | |
| shadowing allow_const_int variable. | |
| Sun Oct 10 08:40:00 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cppinit.c: Use HAVE_GCC_VERSION instead of explicitly testing | |
| __GNUC__ and __GNUC_MINOR__. | |
| * gansidecl.h: Likewise. | |
| * rtl.c: Likewise. | |
| * rtl.h: Likewise. | |
| * toplev.h: Likewise. | |
| * tree.c: Likewise. | |
| * tree.h: Likewise. | |
| * varray.c: Likewise. | |
| * varray.h: Likewise. | |
| Sun Oct 10 13:28:48 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (find_and_verify_loops): When looking for a BARRIER, don't | |
| use one before a jump table. | |
| * rtl.def (ADDRESS): Change documentation to match reality. | |
| * md.texi: Don't document it. | |
| * gmicro.md (load address pattern): Use 'p' constraint, delete use | |
| of ADDRESS rtx. | |
| * emit-rtl.c (copy_insn_1): Make format_ptr a const char *. | |
| Sun Oct 10 02:41:41 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (add_to_sequence): Move allow_const_int test outside | |
| known predicate block; default allow_const_int true. | |
| (debug_decision_list): New. | |
| Sun Oct 10 00:43:08 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.h (CC1_SPEC): Typo -- use cc1_cpu. | |
| Sat Oct 9 23:26:55 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcse.c (gcse_main): Avoid global optimizations if we have a | |
| large number of basic blocks and the ratio of edges to blocks | |
| is high. | |
| (delete_null_pointer_checks): Likewise. | |
| Sat Oct 9 23:16:01 1999 Ken Raeburn <raeburn@mit.edu> | |
| * c-common.c (check_format_info): Warn if format string isn't a | |
| string literal. | |
| Sat Oct 9 23:04:02 1999 Jonathan Larmour <jlarmour@cygnus.co.uk> | |
| * configure.in (arm*-*-*): Don't let autoconf remove brackets | |
| * configure: regenerate | |
| Sat Oct 9 13:15:53 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (extendsidi2): Turn into a splitter. Allow f/f. | |
| If TARGET_FIX, allow r/f. Remove cvtlq unspec pattern. | |
| (peepholes): Re-enable. | |
| Sat Oct 9 12:18:16 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (flow.o): Depend on TREE_H. | |
| * basic-block.h (REG_SET_EQUAL_P): New. | |
| (XOR_REG_SET): New. | |
| (n_edges): Declare. | |
| (free_regset_vector): Remove declaration. | |
| (flow_delete_insn_chain): Declare. | |
| (enum update_life_extent): New. | |
| (update_life_info, count_or_remove_death_notes): Declare. | |
| * combine.c (distribute_notes) [REG_DEAD]: Stop search at bb->head. | |
| Verify register live at bb->global_live_at_start before adding USE. | |
| * flow.c (HAVE_epilogue, HAVE_prologue): Provide default. | |
| (CLEAN_ALLOCA): New. | |
| (n_edges): New. | |
| (PROP_*): New flags. | |
| (find_basic_blocks_1): Use alloc_EXPR_LIST. | |
| (clear_edges): Zero n_edges. | |
| (make_edge): Increment n_edges. | |
| (split_edge): Don't allocate bb->local_set. Increment n_edges. | |
| (flow_delete_insn_chain): Export. | |
| (delete_block): Decrement n_edges. | |
| (merge_blocks_nomove): Likewise. | |
| (life_analysis): Give life_analysis_1 PROP flags. | |
| (verify_wide_reg_1, verify_wide_reg): New. | |
| (verify_local_live_at_start): New. | |
| (update_life_info): Rewrite to call into propagate_block. | |
| (mark_reg): New. | |
| (mark_regs_live_at_end): After reload, if epilogue as rtl, | |
| always mark stack pointer. Conditionally mark PIC register. | |
| After reload, mark call-saved registers, return regsiters. | |
| (life_analysis_1): Accept PROP flags not remove_dead_code. | |
| Call mark_regs_live_at_end before zeroing regs_ever_live. | |
| Use calculate_global_regs_live. Copy global_live_at_end before | |
| calling final propagate_block. Zero reg_next_use on exit. | |
| (calculate_global_regs_live): New. | |
| (allocate_bb_life_data): Don't allocate bb->local_set. | |
| (init_regset_vector, free_regset_vector): Remove. | |
| (propagate_block): Accept FLAGS not FINAL or REMOVE_DEAD_CODE. | |
| Test flags before every operation. Warn if prologue/epilogue insn | |
| would have been deleted. | |
| (mark_set_regs, mark_set_1): Accept and use FLAGS. | |
| Use alloc_EXPR_LIST. | |
| (mark_used_regs): Accept and use FLAGS, not FINAL. | |
| Remove special handling for RETURN. | |
| (try_pre_increment): Use alloc_EXPR_LIST. | |
| (dump_flow_info): Dump n_edges. | |
| (unlink_insn_chain, split_hard_reg_notes): Remove. | |
| (maybe_add_dead_note, maybe_add_dead_note_use): Remove. | |
| (find_insn_with_note, new_insn_dead_notes): Remove. | |
| (update_n_sets, sets_reg_or_subreg_1, sets_reg_or_subreg): Remove. | |
| (maybe_remove_dead_notes, prepend_reg_notes): Remove. | |
| (replace_insns): Remove. | |
| (count_or_remove_death_notes): New. | |
| (verify_flow_info): Abort on error after all checks. | |
| (remove_edge): Decrement n_edges. | |
| (remove_fake_edges): Tweak format. | |
| * haifa-sched.c (schedule_insns): Use split_all_insns. | |
| * output.h (update_life_info): Remove declaration. | |
| * recog.c (split_all_insns): From the corpse of split_block_insns, | |
| do the whole function block by block. Use update_life_info. | |
| (recog_last_allowed_insn): New. | |
| (recog_next_insn): Mind it. | |
| (peephole2_optimize): Set it. Walk backwards through blocks. | |
| Use update_life_info. | |
| * rtl.h (update_flow_info, replace_insns): Remove declarations. | |
| (split_all_insns): Declare. | |
| * toplev.c (rest_of_compilation): Thread prologue before flow2. | |
| Use split_all_insns. | |
| * i386.md (or -1 peep2s): Disable. | |
| Fri Oct 8 17:49:08 1999 Richard Henderson <rth@cygnus.com> | |
| * config/mips/mips.md (movstrsi+[123]) : Combine these into | |
| a single pattern. Scrap the 'd' versions as unnecessary. | |
| * config/mips/mips.md (tablejump_internal3,tablejump_mips161, | |
| tablejump_mips162,tablejump_internal4): The operands to a | |
| label_ref must be VOIDmode. | |
| Fri Oct 8 16:12:42 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * configure.in (c-mbchar): Append, don't overwrite, `extra_c_flags'. | |
| Fri Oct 8 11:58:34 1999 Richard Henderson <rth@cygnus.com> | |
| * mips.c (mips_va_arg) [EABI]: Return addr_rtx. | |
| Fri Oct 8 11:58:34 1999 Richard Henderson <rth@cygnus.com> | |
| * lists.c (init_EXPR_INSN_LIST_cache): Don't need to zap the | |
| cache every function if ggc_p. | |
| Fri Oct 8 18:46:11 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * jump.c (duplicate_loop_exit_test): Use copy_insn/copy_insn_1 | |
| instead of copy_rtx. Accept sequences that contain asm statements. | |
| * emit-rtl.c (copy_insn_1, copy_insn): New functions. | |
| (copy_insn_scratch_in, copy_insn_scratch_out, copy_insn_n_scratches, | |
| orig_asm_operands_vector, copy_asm_operands_vector, | |
| orig_asm_constraints_vecotr, copy_asm_constraints_vector): New static | |
| variables. | |
| * rtl.h (copy_insn, copy_insn_1): Declare. | |
| Fri Oct 8 13:08:12 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (insn-recog.o): Depend on hard-reg-set.h and resource.h. | |
| * alpha.h (ASM_OUTPUT_MI_THUNK): Pass the correct number of | |
| arguments to `current_file_function_operand'. | |
| * genrecog.c: Include hard-reg-set.h and resource.h in the | |
| generated output file. | |
| * real.c: Include tm_p.h. | |
| Fri Oct 8 18:46:11 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * i386.md (prologue_allocate_stack): Add '=' constraint letter on | |
| output operand. | |
| Thu Oct 7 23:06:50 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.md (fix_truncdfsi2_internal+1): Emit a clobber | |
| before the fctiwz insn. | |
| Thu Oct 7 22:53:00 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (make_lang_type_fn): New function pointer. | |
| (make_lang_type): Call it. | |
| * tree.h (make_lang_type): Declare. | |
| (make_lang_type_fn): Likewise. | |
| * rs6000.c (rs6000_build_va_list): Use make_lang_type. | |
| Thu Oct 7 00:36:17 1999 Diego Novillo <dnovillo@cygnus.com> | |
| * config/rs6000/rs6000.c (secondary_reload_class): For TARGET_ELF | |
| make sure that HIGH instructions are copied into BASE_REGS. | |
| Thu Oct 7 17:02:34 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * expr.c (expand_expr, TARGET_EXPR): Set TREE_USED sooner. | |
| Thu Oct 7 17:01:58 1999 Greg McGary <gkm@gnu.org> | |
| * c-decl.c (finish_struct): Use simpler method of | |
| removing elements of a singly-linked list. | |
| Thu Oct 7 15:23:28 1999 Michael Meissner <meissner@cygnus.com> | |
| * alpha.md (peephole2's): Comment out peephole2's that generate | |
| buggy code. | |
| Thu Oct 7 12:00:53 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (add_to_sequence): Disable mode check for | |
| wildcard matches. | |
| Thu Oct 7 20:14:16 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * ggc-simple.c (init_ggc): Set empty_string. | |
| Thu Oct 7 01:13:15 1999 Richard Henderson <rth@cygnus.com> | |
| * configure.in: Detect mmap. Add --with-gc=foo to select | |
| garbage collector; default to page if mmap available. | |
| * Makefile.in (GGC): Substitute. | |
| Wed Oct 6 23:56:30 1999 Richard Henderson <rth@cygnus.com> | |
| * c-decl.c (ggc_p): Enable. | |
| Wed Oct 6 17:17:08 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * flow.c (verify_flow_info): Make it extern & unconditionally define. | |
| 1999-10-06 Brendan Kehoe <brendan@cygnus.com> | |
| * sparc/sp86x-elf.h (SUBTARGET_SWITCHES): Add missing doc | |
| string for little-endian-data. | |
| Wed Oct 6 16:10:35 1999 Michael Meissner <meissner@cygnus.com> | |
| * varray.h (VARRAY_CHECK): Fix up appropriate revision check, in | |
| case somebody tries to compile --enable-checking code with gcc | |
| 1.34 or such. | |
| Wed Oct 6 12:22:50 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (add_to_sequence): Verify operand to label_ref is | |
| VOIDmode. | |
| Wed Oct 6 10:21:15 1999 Richard Henderson <rth@cygnus.com> | |
| * genconfig.c (main): Disable HAVE_conditional_arithmetic. | |
| * jump.c (jump_optimize_1): Document why. | |
| Wed Oct 6 10:41:56 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * collect2.c (scan_prog_file, scan_libraries): Prototype function | |
| pointers and casts for `int_handler' and `quit_handler'. | |
| * flow.c (verify_flow_info, split_hard_reg_notes, | |
| find_insn_with_note, sets_reg_or_subreg_1, prepend_reg_notes, | |
| remove_edge, remove_fake_successors): Add static prototypes. | |
| (verify_flow_info): Wrap with macro ENABLE_CHECKING. | |
| (mark_set_1): Initialize variable `regno'. | |
| (unlink_insn_chain): Likewise for variable `curr'. | |
| (remove_fake_edges): Remove unused variables `e', `tmp' and `last'. | |
| * loop.c (strength_reduce): Initialize variable | |
| `unrolled_insn_copies'. | |
| (cmp_combine_givs_stats, cmp_recombine_givs_stats): Add static | |
| prototypes. Change these functions to take const PTR parameters | |
| to avoid prototype conflict when used as the comparson argument | |
| for qsort. | |
| (check_dbra_loop): Initialize variable `comparison_val'. | |
| * reload.c (debug_reload_to_stream, debug_reload): Add prototypes. | |
| (get_secondary_mem): Mark parameter `x' with ATTRIBUTE_UNUSED. | |
| (find_valid_class): Initialize variable `best_class'. | |
| (find_reloads): Call memcpy, not bcopy. | |
| * reload1.c (gen_mode_int, dump_needs): Add prototypes. | |
| (hard_reg_use_compare): Don't needlessly cast away const. | |
| (reload_reg_class_lower): Likewise. | |
| (choose_reload_regs): Initialize variable `regno'. | |
| Tue Oct 5 16:34:12 1999 Paul Burchard <burchard@pobox.com> | |
| * ggc-page.c (GGC_ALWAYS_COLLECT): Fix typo when undef'ing. | |
| Tue Oct 5 16:14:40 1999 Michael Meissner <meissner@cygnus.com> | |
| * libgcc1-test.c (toplevel): Include stddef.h to get size_t. | |
| ({,d}discard): Add forward declarations. Declare parameter as | |
| unused. | |
| (main_without_main): Explicitly declare return type to be int. | |
| (memcpy): Properly declare. | |
| * libgcc2.c (toplevel): If inhibit_libc is defined and not | |
| building the trampoline support, declare malloc, free, and | |
| atexit. | |
| (__clear_cache): Mark arguments as potentially unused. | |
| * frame.c (toplevel): If inhibit_libc is defined, declare | |
| malloc and free. | |
| Tue Oct 5 12:00:32 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (make_edge): Accept an optional 2D bitmap in which | |
| to cache edge existence. Update all callers. | |
| (make_label_edge, make_eh_edge): Pass through the edge cache. | |
| (make_edges): Provide the cache. | |
| Tue Oct 5 12:16:49 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * mbchar.c (literal_codeset, local_mbtowc, local_mblen): Constify | |
| a char*. | |
| (local_mbtowc): Change the type of variable `i' from int to size_t. | |
| * mbchar.h (ISSJIS1, ISSJIS2): Use parens around && within ||. | |
| (local_mbtowc, local_mblen, literal_codeset): Constify a char*. | |
| Tue Oct 5 11:34:52 1999 Michael Meissner <meissner@cygnus.com> | |
| * ggc-common.c (toplevel): Reorder includes, so that ggc.h comes | |
| after other includes that define the appropriate types. Include | |
| tm_p.h for getting user prototypes. | |
| * ggc-callbacks.c (toplevel): Ditto. | |
| * ggc-none.c (toplevel): Ditto. | |
| * gcc-page.c (toplevel): Ditto. | |
| * ggc-simple.c (toplevel): Ditto. | |
| Mon Oct 4 16:48:16 1999 Diego Novillo <dnovillo@cygnus.com> | |
| Jonathan Larmour <jlarmour@cygnus.co.uk> | |
| * config/mips/mips.c (mips_move_2words): Split doubles if | |
| ISA >= 3, !TARGET_64BIT, and destination is not an FP register. | |
| Mon Oct 4 21:47:31 1999 Richard Henderson <rth@cygnus.com> | |
| * genrecog.c (struct decision_test): New. | |
| (struct decision): Remove test-related members, sort the rest by size. | |
| (IS_SPLIT): Simplify. | |
| (new_decision, new_decision_test): New. | |
| (add_to_sequence): Use them. No special handling for args of | |
| non-MATCH codes. | |
| (maybe_both_true): Renamed from not_both_true; return sense changed. | |
| (maybe_both_true_1, maybe_both_true_2): New. Broken out | |
| of maybe_both_true and adjusted for decision_test. | |
| (position_merit): Remove. | |
| (nodes_identical, nodes_identical_1): New, broken out of merge_trees. | |
| (merge_accept_insn): New, broken out of merge_trees. | |
| (merge_trees): Use them. No special case for c_test; no node | |
| splitting; use test type instead of position_merit. | |
| (factor_tests): New. | |
| (simplify_tests): New. | |
| (break_out_subroutines): Don't write code now. | |
| (find_afterward): New. | |
| (write_afterward, write_switch, write_cond): New. | |
| (write_action, is_unconditional): New. | |
| (write_node): New. Use them. | |
| (write_tree_1): Rewrite. Use the new functions above. | |
| (write_tree): Remove afterward processing. | |
| (write_subroutine): Simplify function variant emission. | |
| (write_subroutines): New. | |
| (same_codes, clear_codes): Remove. | |
| (same_modes, clear_modes): Remove. | |
| (write_header): New, broken out of main. | |
| (make_insn_sequence): Use new_decision and new_decision_test. | |
| (process_tree): New, broken out of main. | |
| (main): Adjust for merge_trees interface change. | |
| Don't #define operands in the output file. | |
| (record_insn_name): New, broken out of make_insn_sequence. | |
| (debug_decision_2, debug_decision_1, debug_decision_0): New. | |
| (debug_decision): New. | |
| 1999-10-04 21:58 -0700 Zack Weinberg <zack@bitmover.com> | |
| * resource.c (find_free_register): Mark class_str argument const. | |
| * resource.h: Update prototype to match. | |
| * i386.h (PREDICATE_CODES): Add entry for long_memory_operand. | |
| * i386.md: Give all anonymous insns names. | |
| Mon Oct 4 21:12:02 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (merge_blocks): Avoid assing BASIC_BLOCK for non-existent | |
| blocks. | |
| Mon Oct 4 21:01:39 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (dbr_sched_time): Unconditional. | |
| (peephole2_time): New. | |
| (compile_file): Add pass numbers to all of the dump file suffixes. | |
| Dump peephole2_time. Don't dump times for non-applicable passes. | |
| (rest_of_compilation): Add pass numbers to dump file suffixes. | |
| Conditionalize calls to the scheduler. | |
| * invoke.texi: Update. | |
| Mon Oct 4 20:25:13 1999 Anthony Green <green@cygnus.com> | |
| * flow.c (make_edges): Fix insn iteration. | |
| (find_basic_blocks): Assign NULL_RTX, not 0, to rtx. | |
| (find_basic_blocks_1): Fix spelling mistake. | |
| Mon Oct 4 16:56:11 1999 Richard Henderson <rth@cygnus.com> | |
| * tree.c (build1): Set TREE_SIDE_EFFECTS for expressions that | |
| always have side-effects. Use memset not bzero. | |
| (make_node): Likewise. | |
| Mon Oct 4 16:22:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_anon_union_decl): When any of the elements of the | |
| union is addressable, so is the entire union. | |
| Mon Oct 4 11:38:33 1999 Richard Henderson <rth@cygnus.com> | |
| * sbitmap.c (sbitmap_ones): Don't set too many bits. | |
| * bitmap.h (enum bitmap_bits): Add BITMAP_XOR. | |
| * bitmap.c (bitmap_operation): Return true iff TO changed. | |
| (bitmap_equal_p): New. | |
| (bitmap_bit_p): Tidy arithmetic. | |
| (debug_bitmap_file): Likewise. | |
| Mon Oct 4 11:28:37 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (rest_of_compilation): Turn on cse_not_expected | |
| before cse2 instead of after. | |
| Mon Oct 4 09:55:17 1999 Stan Cox <scox@cygnus.com> | |
| * mips.h (GO_IF_LEGITIMATE_ADDRESS): Let leasi/liadi handle large | |
| register offsets. | |
| Mon Oct 4 08:54:12 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * cppinit.c (is_idchar initializer): Loosen tests to accept | |
| gcc 2.>6 and >2. | |
| Mon Oct 4 02:31:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * mips.md: Define conditional move patterns for floating point | |
| operands and DI mode conditions. | |
| Mon Oct 4 02:12:41 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (make_node): Set TREE_SIDE_EFFECTS for expressions that | |
| always have side-effects. | |
| Sun Oct 3 14:14:16 1999 Jeffrey A Law (law@cygnus.com) | |
| * mn10200.c (asm_file_start): Fix typo. | |
| * cppinit.c (is_idchar initializer): Tighten tests for when | |
| to put the table into initialized memory. | |
| * ggc-none.c (ggc_alloc_rtvec): An rtvec is an array of rtx, | |
| not an array of rtunion. | |
| * gcc-page.c (ggc_alloc_rtvec): Similarly. | |
| * gcc-simple (ggc_free_rtvec): Similarly. | |
| * genattrtab.c (simplify_cond): Make TESTS an array of rtxs, instead | |
| of rtunions. | |
| * mbchar.h: Add missing #endif. | |
| * t-fr30 (LIB2FUNCS_EXTRA): Remove definition. | |
| (FPBIT, DPBIT): Define. | |
| Sun Oct 3 12:44:05 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * print-tree.c (print_node, indent_to): Remove redundant prototypes. | |
| * profile.c (instrument_arcs, output_gcov_string, | |
| tablejump_entry_p): Add static prototypes. | |
| (output_gcov_string): Constify a char*. | |
| * regmove.c (replacement_quality, fixup_match_2): Add static | |
| prototypes. | |
| * resource.h (reg_dead_p): Add extern prototype. | |
| * rtl.c (trim_filename): Add static prototype. | |
| * scan-decls.c (skip_to_closing_brace): Likewise. | |
| * stmt.c (expand_decl_cleanup_no_eh): Hide definition. | |
| (expand_end_case): Initialize variable `range'. | |
| (emit_case_nodes): Remove unused prototype `rtx_fn'. | |
| * varasm.c (asm_emit_uninitialised): Add static prototype. | |
| (asm_emit_uninitialised, assemble_variable): Mark parameter with | |
| ATTRIBUTE_UNUSED. | |
| Sun Oct 3 12:24:52 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cpplib.c (if_directive_nameo): Add static prototype. | |
| * cse.c (cse_insn): Remove unused variable `p'. | |
| * except.c (create_rethrow_ref, push_entry, | |
| receive_exception_label, new_eh_region_entry, find_func_region, | |
| clear_function_eh_region, process_nestinfo): Add static prototypes. | |
| (get_reg_for_handler): Hide definition. | |
| (process_nestinfo): Initialize variable `extra_handlers'. | |
| * expr.h (expand_builtin_longjmp): Add extern prototype. | |
| * final.c (final_addr_vec_align, align_fuzz): Add static prototypes. | |
| * function.c (prepare_function_start): Likewise. | |
| (pop_function_context_from): Mark parameter `context' with | |
| ATTRIBUTE_UNUSED. | |
| (push_temp_slots_for_block, flush_addressof): Hide definition. | |
| * gcov.c (init_arc, reverse_arcs, create_program_flow_graph, | |
| solve_program_flow_graph, calculate_branch_probs, | |
| function_summary, main, fancy_abort): Add prototypes. | |
| * gen-protos.c (add_hash, parse_fn_proto, main): Likewise. | |
| (add_hash): Constify a char*. | |
| * ggc-common.c (ggc_mark_rtx_ptr, ggc_mark_tree_ptr, | |
| ggc_mark_tree_varray_ptr, ggc_mark_tree_hash_table_ptr, | |
| ggc_mark_string_ptr, ggc_mark_tree_hash_table_entry): Add prototypes. | |
| * integrate.c (expand_inline_function_eh_labelmap): Likewise. | |
| * lists.c (free_list, zap_lists): Likewise. | |
| Sun Oct 3 12:05:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * alias.c (nonlocal_reference_p): Add static prototype. | |
| * bitmap.c (bitmap_element_allocate): Prototype args in function | |
| pointer cast. | |
| * builtins.c (stabilize_va_list): Add static prototype. | |
| (expand_builtin_va_arg): Constify a char*. | |
| * c-lex.c (getch, put_back, extend_token_buffer_to, | |
| read_line_number, token_getch, token_put_back): Add static | |
| prototypes. | |
| * c-parse.gperf (hash, is_reserved_word): Likewise. | |
| * cccp.c (is_dir_separator): Likewise. | |
| Sat Oct 2 16:07:56 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * graph.h: New file to prototype functions exported by graph.c. | |
| * Makefile.in (graph.o, toplev.o): Depend on graph.h. | |
| * graph.c: Include graph.h. | |
| * toplev.c: Likewise. Remove redundant prototypes. | |
| Sat Oct 2 11:28:33 1999 Krister Walfridsson <cato@df.lth.se> | |
| * invoke.texi: Removed duplicated description for -Q. | |
| Sat Oct 2 11:16:00 1999 Jim Kingdon <http://developer.redhat.com> | |
| * extend.texi: Grammar fix in __extension__ text. | |
| Sat Oct 2 11:06:31 1999 Richard Henderson <rth@cygnus.com> | |
| * md.texi (define_peephole2): New section. | |
| Sat Oct 2 10:57:56 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (mov?i patterns): Fix handling of TARGET_USE_MOV0 | |
| (mov $-1 to or peepholer): Enable for pentium when optimizing for | |
| speed. | |
| Sat Oct 2 10:55:25 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * builtins.c (expand_builtin_strlen): Fix best mode searching loop. | |
| Sat Oct 2 10:53:22 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (ffs expander): Emit Pentium friendly code for | |
| TARGET_PENTIUM. | |
| Sat Oct 2 02:48:21 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * tree.c (build): Don't look at TREE_SIDE_EFFECTS or TREE_RAISES | |
| for non-trees. | |
| (build1): Likewise. | |
| Fri Oct 1 18:01:11 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * i386elf.h (TARGET_DEFAULT): Use symbolic constants. | |
| Fri Oct 1 12:42:53 1999 Andreas Schwab <schwab@suse.de> | |
| * config/m68k/m68k.c (use_return_insn): Return false if the pic | |
| register is in use. | |
| Fri Oct 1 10:56:06 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * md.texi (No Constraints): Delete section. | |
| * Makefile.in (genattrtab.o): Don't depend on "insn-config.h". | |
| * final.c (final_scan_insn): We always have register constraints. | |
| * genattrtab.c: Don't include "insn-config.h". | |
| (write_attr_case): We always have register constraints. | |
| * genconfig.c (register_constraint_flag): Delete. | |
| (walk_insn_part): Don't check whether we have register constraints. | |
| (main): Don't write out "#define REGISTER_CONSTRAINTS". | |
| * genoutput.c (have_constraints): Delete. | |
| (main): Don't set it. | |
| (output_operand_data): We always have constraints. | |
| (scan_operands): Likewise. | |
| (compare_operands): Likewise. | |
| * local-alloc.c (block_alloc): We always have constraints. | |
| (requires_inout): Always compile this function. | |
| * recog.c (extract_insn): We always have constraints. | |
| (constrain_operands, reg_fits_class_p): Always compile these | |
| functions. | |
| * recog.h (struct recog_data): Delete non-REGISTER_CONSTRAINTS | |
| fields. | |
| (struct insn_operand_data): Likewise. | |
| * regclass.c (regclass): We always have constraints. | |
| (record_reg_classes, copy_cost, record_address_regs, | |
| auto_inc_dec_reg_p): Always compile these functions. | |
| * regmove.c (regmove_optimize): We always have constraints. | |
| * reload.c (find_reloads): Likewise. | |
| * reload1.c (reload): Likewise. | |
| (reload_cse_simplify_operands): Likewise. | |
| * i860.c (output_delay_insn): Likewise. | |
| Thu Sep 30 23:04:41 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * iris6.h (BUILD_VA_LIST_TYPE): Define. | |
| Thu Sep 30 18:44:50 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.c (rs6000_build_va_list): Create a TYPE_DECL node | |
| for the va_list record. | |
| Thu Sep 30 18:34:54 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (ix86_adjust_cost): Ignore false ebp dependencies in | |
| prologues. | |
| Thu Sep 30 18:31:36 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * alias.c: Include insn-flags.h. | |
| * Makefile.in (alias.o): Update. | |
| Thu Sep 30 18:21:30 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (ix86_expand_int_movcc): Convert LEU and GTU comparisons | |
| to LTU and GEU. Handle more cases using sbb. | |
| Thu Sep 30 18:18:39 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (truncatexfdf splitters): Do not use subreg. | |
| (fop XFmode patterns): Fix mode in operand testing. | |
| Thu Sep 30 18:04:13 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): Amend last change to test only the | |
| form of the operand, not the insn. | |
| * jump.c (jump_optimize_1) [conditional_move]: Use general_operand | |
| not register_operand to determine when B may need preloading. | |
| Thu Sep 30 17:39:16 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (*): Use nonimmediate not general_operand for SET_DEST. | |
| (ffsdi2, extxl, insxh, mskxh): Add missing DImode to SET_SRC. | |
| (call-value patterns): Move to end of file. | |
| (*): Remove mode from label_ref in (pc) context. | |
| (movstrqi): Use memory not general_operand for BLKmode operands. | |
| (prologue_stack_probe_loop, builtin_longjmp): Add missing mode | |
| to register_operand operands. | |
| (peep2 patterns): Convert from commented-out peephole patterns. | |
| Thu Sep 30 14:39:17 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * tree.h (enum built_in_function): Rename BUILT_IN_DWARF_REG_SIZE | |
| to BUILT_IN_INIT_DWARF_REG_SIZES. | |
| * builtins.c (expand_builtins, case BUILT_IN_INIT_DWARF_REG_SIZES): | |
| Renamed from BUILT_IN_DWARF_REG_SIZE; call | |
| expand_builtin_init_dwarf_reg_sizes. | |
| * c-decl.c (init_decl_processing): Replace __builtin_dwarf_reg_size | |
| with __builtin_init_dwarf_reg_size_table. | |
| * dwarf2out.c (struct reg_size_range): Delete. | |
| (expand_builtin_init_dwarf_reg_sizes): New function. | |
| (expand_builtin_dwarf_reg_size): Delete. | |
| * except.h (expand_builtin_init_dwarf_reg_sizes): Declare. | |
| (expand_builtin_dwarf_reg_size): Don't declare. | |
| * libgcc2.c (dwarf_reg_size_table_initialized): New. | |
| (dwarf_reg_size_table): New. | |
| (init_reg_size_table): New function. | |
| (copy_reg): Use dwarf_reg_size_table. | |
| (eh_context_initialize): Make sure dwarf_reg_size_table is initialized | |
| before use. | |
| Thu Sep 30 05:40:34 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * c-lang.c (finish_file case ndef ASM_OUTPUT_{CON,DE}STRUCTOR): | |
| Correctly build argument list to constructor and destructor functions. | |
| Thu Sep 30 00:13:27 1999 Dirk Zoller <duz@rtsffm.com> | |
| * c-tree.h (warn_float_equal): Declare. | |
| * c-decl.c (warn_float_equal): Define. | |
| (c_decode_option): Recognize -W[no-]float-equal. | |
| * c-typeck.c (build_binary_op): Conditionally warn | |
| about equality tests of floating point types. | |
| * toplev.c (documented_lan_options): Add -W[no-]float-equal. | |
| * invoke.texi: Add docs for -Wfloat-equal warning. | |
| Wed Sep 29 23:43:39 1999 Jeffrey A Law (law@cygnus.com) | |
| * h8300.h (INIT_TARGET_OPTABS): Use init_one_optab instead of | |
| generating RTL directly. | |
| * mips.h (INIT_TARGET_OPTABS): Likewise. | |
| * mn10200.h (INIT_TARGET_OPTABS): Likewise. | |
| * expr.h (init_mov_optab): Delete declaration | |
| * h8300.c (WORD_REG_USED): Update to avoid useless register | |
| saves in interrupt functions and functions which never return. | |
| * cse.c (struct set): Delete inner_dest_loc field. | |
| (cse_insn): Remove assignments to inner_dest_loc field. | |
| Wed Sep 29 16:06:20 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-page.c: Don't include <unistd.h> etc taken care of | |
| by "system.h". Include <sys/mman.h> afterward. | |
| Wed Sep 29 16:05:18 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.c (rs6000_encode_section_info): If ggc_p, use | |
| ggc_alloc_string. | |
| Tue Sep 28 16:45:40 1999 David Edelsohn <edelsohn@gnu.org> | |
| * xcoffout.c (xcoffout_declare_function): Add documentation. | |
| * rs6000.c (num_insns_constant_wide): Use TARGET_POWERPC64 not | |
| TARGET_64BIT. Compare constant to -1, not bit pattern. | |
| (easy_fp_constant): Use TARGET_POWERPC64 not TARGET_64BIT. | |
| (expand_block_move): Allow 8 DImode loads for PowerPC64. Fix | |
| gen_movsi typos. | |
| Tue Sep 28 16:43:14 1999 Nick Clifton <nickc@cygnus.com> | |
| * dwarf2out.c (add_abstract_origin_attribute): Abort if | |
| origin_die is NULL. | |
| (gen_inlined_enumeration_type_die): Do not abort if the type has | |
| not been writeen out. | |
| (gen_inlined_structure_type_die): Do not abort if the type has | |
| not been writeen out. | |
| (gen_inlined_union_type_die): Do not abort if the type has | |
| not been writeen out. | |
| (gen_tagged_type_instantiation_die): Do not abort if the type | |
| has not been written out. | |
| Tue Sep 28 14:33:47 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-decl.c (init_decl_processing): If MD_INIT_BUILTINS is defined, | |
| call it. | |
| * reg-stack.c (straighten_stack): Copy hard reg set with | |
| COPY_HARD_REG_SET. | |
| Tue Sep 28 01:11:05 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c (stabilize_va_list): Stabilize array type va_list | |
| to a pointer type, not the base record type. | |
| (expand_builtin_va_copy): Dereference the pointers explicitly; | |
| use the correct size for the copy. | |
| * rs6000.c (rs6000_va_start): Dereference valist to get to the record. | |
| (rs6000_va_arg): Likewise. | |
| Mon Sep 27 23:27:21 1999 Richard Henderson <rth@cygnus.com> | |
| * rtl.h (struct rtx_def): Move gc_mark to align mode field. | |
| Mon Sep 27 23:20:29 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (struct tree_decl): Use `bclass', not `class', in name of | |
| field. | |
| (DECL_BUILT_IN_CLASS): Adjust accordingly. | |
| Mon Sep 27 23:03:16 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-page.c (GGC_MIN_LAST_ALLOCATED): New. | |
| (init_ggc): Use it instead of a constant. | |
| (ggc_collect): Bound allocated_last_gc by it. | |
| Mon Sep 27 19:06:04 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/fixinc.irix (stdio.h): Hack stdio.h to avoid problems | |
| with va_list. | |
| Mon Sep 27 19:40:17 CEST 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * configure.in (mips*el-*-openbsd*): Don't duplicate default settings. | |
| (mips*-*-openbsd*): Let big endian configuration be a fragment. | |
| * configure: Regen. | |
| * config/mips/openbsd.h: New, OpenBSD little endian target. | |
| * config/mips/openbsd-be.h: New, OpenBSD big endian target fragment. | |
| * config/mips/xm-openbsd.h: New, OpenBSD host. | |
| Mon Sep 27 10:28:48 1999 Andreas Schwab <schwab@suse.de> | |
| * config/m68k/m68k.c (output_function_prologue, | |
| output_function_epilogue): Use | |
| current_function_uses_pic_offset_table instead of regs_ever_live | |
| to decide whether to save/restore pic register. | |
| (legitimize_pic_address): Don't modify regs_ever_live any more. | |
| Sun Sep 26 10:55:36 1999 Mark Mitchell <mark@codesourcery.com> | |
| * function.h (struct function): Add x_dont_save_pending_sizes_p. | |
| * stor-layout.c (variable_size): Don't add sizes to the pending | |
| sizes list if x_dont_save_pending_sizes_p is set. | |
| Sun Sep 26 16:36:52 1999 Robert Lipe (robertlipe@usa.net) | |
| * config/i386/dgux.h (SELECT_RTX_SECTION): Provide dummy argument | |
| for symbolic_operand(). | |
| * config/i386/sco5.h (SELECT_RTX_SECTION): Likewise. | |
| Sun Sep 26 07:37:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * combine.c (gen_rtx_combine): Add missing call to va_end(). | |
| * final.c (asm_fprintf): Likewise. | |
| * genattrtab.c (attr_rtx): Likewise. | |
| Sat Sep 25 13:11:07 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c: Update comments. | |
| (cse_insn): When converting a conditional/computed jump into | |
| an unconditional jump, always make sure a BARRIER immediately | |
| follows the converted jump. Do not delete unreachable code. | |
| (cse_basic_block): Do not delete unreachable code. | |
| * toplev.c (rest_of_compilation): Move call to | |
| delete_trivially_dead_insns after the conditional call to | |
| jump_optimize. | |
| Sat Sep 25 09:03:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * collect2.c (make_temp_file): Don't prototype. | |
| * gcc.c (make_temp_file): Likewise. | |
| * mips.c (mips_make_temp_file): Renamed from `make_temp_file'. | |
| Sat Sep 25 13:42:15 1999 Nick Clifton <nickc@cygnus.com> | |
| * varasm.c (asm_emit_uninitialised): New function: Generate | |
| the assembler statements necessary to declare an uninitialized | |
| variable. | |
| (ASM_EMIT_LOCAL): New macro: Emit a local, uninitialized | |
| variable. | |
| (ASM_EMIT_BSS): New macro: Emit an entry in the bss section. | |
| (ASM_EMIT_COMMON): New macro: Emit an entry in the common | |
| section. | |
| (assemble_variable): Use asm_emit_uninitialised to emit an | |
| uninitialized variable. | |
| Fri Sep 24 17:10:56 1999 Nick Clifton <nickc@cygnus.com> | |
| * combine.c (simplify_comparison): Cope with downshifting a 32 bit | |
| constant on a 64 bit host. Patch supplied by Geoffrey Keating | |
| <geoffk@cygnus.com>. | |
| Fri Sep 24 10:48:10 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * builtins.c (expand_builtin): Use MD_EXPAND_BUILTIN if defined. | |
| * c-common.h (builtin_function): Don't declare. | |
| * c-decl.c (duplicate_decls): Use DECL_BUILT_IN_CLASS rather than | |
| DECL_BUILT_IN. | |
| (pushdecl): Likewise. | |
| (finish_decl): Likewise. | |
| (builtin_function): New arg CLASS. Arg FUNCTION_CODE now of type | |
| int. All callers changed. | |
| Set the builtin's DECL_BUILT_IN_CLASS. | |
| * tree.h (enum built_in_class): New. | |
| (enum built_in_function): Delete NOT_BUILT_IN. | |
| (DECL_FUNCTION_CODE): The corresponding field in tree_decl is now | |
| in a union. | |
| (DECL_SET_FUNCTION_CODE): Likewise. | |
| (DECL_BUILT_IN_CLASS): New macro. | |
| (DECL_BUILT_IN): Use DECL_BUILT_IN_CLASS. | |
| (struct tree_decl): Split builtin function code field into a | |
| struct. | |
| (builtin_function): Declare. | |
| Fri Sep 24 01:45:05 1999 Mark Mitchell <mark@codesourcery.com> | |
| * optabs.c (init_traps): Fix typo in last change. | |
| Fri Sep 24 01:10:11 1999 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.c (rest_of_decl_compilation): Update comment. | |
| Fri Sep 24 11:57:06 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Put the symbol | |
| in .sbss if appropriate. | |
| (EXTRA_SECTION_FUNCTIONS): Add sbss. | |
| (SBSS_SECTION_ASM_OP): New macro. | |
| * config/mips/linux.h (EXTRA_SECTION_FUNCTIONS): Add sbss. | |
| (EXTRA_SECTIONS): Add in_sbss. | |
| * config/mips/mips.h: Prototype sbss_section. | |
| Thu Sep 23 18:18:55 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_start_bindings): Don't allow cleanup instructions | |
| to disappear. | |
| Thu Sep 23 18:07:01 1999 Mark Mitchell <mark@codesourcery.com> | |
| * optabs.c (init_traps): Register trap_rtx as a GC root. | |
| Thu Sep 23 17:41:47 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/mips/mips.c (function_arg_pass_by_reference): Define | |
| unconditionally, since it's called unconditionally. | |
| Thu Sep 23 13:40:02 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * toplev.c (documented_lang_options): Add -fshort-wchar. | |
| * c-decl.c (c_decode_option): Likewise. | |
| (init_decl_processing): If -fshort-wchar, use 'short unsigned int' | |
| for wchar_t. | |
| * c-common.c, c-lex.c: Get WCHAR_TYPE_SIZE from wchar_type_node. | |
| * gcc.c (default_compilers): If -fshort-wchar, | |
| override __WCHAR_TYPE__. | |
| * tm.texi (C Dialect Options): Add -fshort-wchar. | |
| * dwarf2out.c (output_aranges): Use DW_AT_location to find the | |
| symbol for a variable. | |
| * cpplib.h (CPP_PREPROCESSED): New macro. | |
| * cpplib.c (handle_directive): Don't complain about `# NUMBER' if | |
| we're seeing this input for a second time. | |
| Thu Sep 23 12:54:49 1999 Alex Samuel <samuel@codesourcery.com> | |
| * emit-rtl.c (init_emit_once): Initialize modes first. | |
| Sun Sep 19 01:23:23 1999 Alex Samuel <samuel@codesourcery.com> | |
| * config/i386/i386.c (pic_label_name): Change to char pointer. | |
| (global_offset_table): New variable. | |
| (load_pic_register): Fill global_offset_table if it hasn't | |
| already been done. Allocate pic_label_name dynamically. | |
| * ggc.h (empty_string): New variable. | |
| * ggc-simple.c (empty_string): Likewise. | |
| (init_ggc): Allocate empty_string and add as root. | |
| * stmt.c (digit_strings): New variable. | |
| (init_stmt): Add last_block_end_note as root. Allocate and | |
| initialize digit_strings. | |
| (expand_asm_operands): Use empty_string instead of string | |
| constant. Use digit_strings instead of string constants. | |
| * profile.c (init_arc_profiler): Allocate string with | |
| ggc_alloc_string instead of xmalloc. | |
| (output_func_start_profiler): Likewise. | |
| * c-typeck.c (digest_init): Check if init is error_mark_node. | |
| Thu Sep 23 12:59:14 1999 Alex Samuel <samuel@codesourcery.com> | |
| Richard Henderson <rth@cygnus.com> | |
| * ggc-page.c: New file. | |
| * Makefile.in (ggc-page.o): New. | |
| Thu Sep 23 13:55:21 1999 Jeffrey A Law (law@cygnus.com) | |
| * invoke.texi: Document -fdelete-null-pointer-checks | |
| * toplev.c (flag_delete_null_pointer_checks): New. | |
| (f_options): Add entry for -fdelete-null-pointer-checks. | |
| (rest_of_compilation): Conditionalize null pointer check | |
| elimination on flag_delete_null_pointer_checks. | |
| (main): If -O2 or greater, enable -fdelete-null-pointer-checks | |
| 1999-09-23 10:56 -0700 Zack Weinberg <zack@bitmover.com> | |
| * iso646.h, stdarg.h, stdbool.h, stddef.h, varargs.h: Add | |
| copyright notice and special exception to GPL. | |
| Thu Sep 23 13:40:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * abi64.h (mips_function_value): Add prototype arguments. | |
| * mips-protos.h: New file with mips prototypes. | |
| * mips.c: Include "tm_p.h". | |
| (mktemp, lookup_name): Add prototype arguments. | |
| (extern_list, string_constant, mips_fill_delay_slot, | |
| mips_output_external, mips_output_external_libcall, | |
| mips_output_filename, mips_declare_object, function_prologue, | |
| mips_expand_prologue, function_epilogue, mips16_constant, | |
| build_mips16_function_stub, mips_output_conditional_branch): | |
| Constify a char*. | |
| (mips_va_start): Remove unused variable `u'. | |
| (mips_va_arg): Cast value to unsigned when comparing against one. | |
| (trace): Delete. | |
| (save_restore_insns, mips_expand_prologue): Add missing arg in | |
| call to `large_int'. | |
| * mips.h: Move prototypes to mips-protos.h. | |
| (data_section, memory_address_p, rdata_section, | |
| readonly_data_section, simple_epilogue_p, text_section): Delete | |
| prototypes delcared elsewhere. | |
| (mips_epilogue_delay_slots, print_options): Delete unused decls. | |
| (trace): Delete. | |
| (GO_PRINTF, GO_PRINTF2): Call fprintf, not trace. | |
| * mips.md: Delete extra args in call to `mips_move_2words'. | |
| * xm-iris6.h (alloca): Add prototype argument. | |
| * genpeep.c: Include "tm_p.h" in generated output file. | |
| Thu Sep 23 10:36:55 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * basic-block.h (find_edge_index): Change parameters. | |
| * flow.c (verify_edge_list): Pass basic_block parameters to | |
| find_edge_index instead of integers. | |
| Thu Sep 23 15:54:12 1999 Nick Clifton <nickc@cygnus.com> | |
| * combine.c (simplify_comparison): Use an unsigned shift to adjust | |
| the constant. | |
| Thu Sep 23 08:46:21 1999 Guy Harris <guy@netapp.com> | |
| * gcc.1: Fix a formatting error. | |
| Wed Sep 22 16:10:21 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de> | |
| * install.texi (Configurations): Remove pyramid. Add fr30, i686, | |
| i786, mn10200, mn10300, pdp11, v850. | |
| Thu Sep 23 07:37:13 1999 Dan Nicolaescu <dann@ics.uci.edu> | |
| * libgcc2.c (num_digits): Add prototype with | |
| __attribute__((const)). | |
| (__terminate): Add prototype. | |
| Thu Sep 23 05:32:06 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c, dbxout.c, varasm.c: Include tm_p.h. | |
| * alpha/alpha.c (print_operand): Fix type of `code'. | |
| (alpha_output_filename): Constify. | |
| * alpha/alpha.h: Move all function declarations ... | |
| * alpha/alpha-protos.h: ... here. New file. | |
| * alpha/elf.h (CONST_SECTION_FUNCTION): Prototype the function. | |
| (SECTION_FUNCTION_TEMPLATE): Likewise. | |
| Thu Sep 23 11:15:36 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * expmed.c (do_cmp_and_jump): Pass ccp_jump to can_compare_p. | |
| * expr.c (expand_expr): Likewise. | |
| (do_jump): Likewise. | |
| (do_store_flag): Pass ccp_store_flag to can_compare_p. | |
| * expr.h (enum optab_index): Add cbranch, cmov, cstore optabs and | |
| accessor macros. | |
| (enum can_compare_purpose): New. | |
| (can_compare_p): Adjust prototype. | |
| (prepare_cmp_insn, prepare_operand): Declare. | |
| * genopinit.c (optabs): Add cbranch_optab, cmov_optab, cstore_optab. | |
| * optabs.c (cmp_available_p): Deleted. | |
| (expand_abs): Pass ccp_jump to can_compare_p. | |
| (can_compare_p): New arg PURPOSE. Check for combined optabs. | |
| (prepare_cmp_insn): No longer static. Add arg PURPOSE. | |
| Call can_compare_p rather than cmp_available_p. | |
| (prepare_operand): No longer static. | |
| (emit_cmp_and_jump_insn): Check for and use cbranch patterns. | |
| (emit_cmp_and_jump_insns): Pass ccp_jump to prepare_cmp_insn. | |
| (expand_float): Fix a slightly broken emit_cmp_insn/emit_jump_insn | |
| sequence to use emit_cmp_and_jump_insns. | |
| (init_optabs): Initialize cbranch_optab, cmov_optab, cstore_optab. | |
| Wed Sep 22 17:58:01 1999 Stan Cox <scox@cygnus.com> | |
| * mips.h (GO_IF_LEGITIMATE_ADDRESS): Don't accept large | |
| register offsets; let LEGITIMIZE_ADDRESS load it into a register. | |
| (LEGITIMIZE_ADDRESS): Use plus_constant to avoid | |
| (plus (reg) (const_int 0)) | |
| * mips.md (call_internal3c): New pattern for -mips16 -mlong-calls. | |
| Wed Sep 22 17:55:31 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (expand_block_move): DImode loads and stores require | |
| word-aligned displacements. Increment address registers with | |
| adddi3 on 64-bit platform. Use TARGET_POWERPC64 not TARGET_64BIT. | |
| Wed Sep 22 17:35:55 1999 Michael Meissner <meissner@cygnus.com> | |
| * dwarf2out.c (base_type_die): Use the name __unknown__ if there | |
| is no name for the base type, rather than segfault. If we are | |
| writing out a complex integer type, use DW_ATE_lo_user. | |
| * expr.c (emit_move_insn_1): If we are copying a complex that fits | |
| in one word or less (complex char, complex short, or on 64 bit | |
| systems complex float) to/from a hard register, copy it through | |
| memory instead of dying in gen_{real,imag}part. If we have a | |
| short complex type, prevent inlining since it allocates stack | |
| memory. | |
| * tree.c (build_complex_type): If we are writing dwarf2 output, | |
| generate a name for complex integer types. | |
| Wed Sep 22 11:34:08 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * basic-block.h (add_noreturn_fake_exit_edges): Use correct name. | |
| * flow.c (remove_edge): Remove extra whitespace. | |
| (remove_fake_edges): Fix comment. | |
| (add_noreturn_fake_exit_edges): Use the correct name. | |
| Wed Sep 22 16:12:40 BST 1999 Nathan Sidwell <nathan@acm.org> | |
| * Makefile.in (INTL_MOSTLYCLEAN, INTL_CLEAN): New variables. | |
| (mostlyclean): Depend on INTL_MOSTLYCLEAN. | |
| (clean): Depend on INTL_CLEAN. | |
| (maintainer-clean): Adjust. | |
| Wed Sep 22 10:18:56 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * configure.in (AC_PREREQ): Bump to 2.13. | |
| (AC_C_STRINGIZE): Call this instead of using a custom macro. | |
| * gansidecl.h (HAVE_STRINGIZE): Define, if stage2 gcc && __STDC__. | |
| * system.h (HAVE_STRINGIZE): Test this instead of HAVE_CPP_STRINGIFY. | |
| * acconfig.h (HAVE_CPP_STRINGIFY): Delete. | |
| * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Delete. | |
| (HAVE_STRINGIZE): Define. | |
| Wed Sep 22 06:25:15 1999 Jim Kingdon <http://developer.redhat.com> | |
| * c-parse.in: save and restore warn_pointer_arith on __extension__ | |
| along with pedantic. | |
| (SAVE_WARN_FLAGS, RESTORE_WARN_FLAGS): Added. | |
| Set the type of extension to itype rather than $<itype>1 kludge. | |
| * extend.texi (Alternate Keywords): Adjust documentation. | |
| * c-parse.c, c-parse.y, objc-parse.c, objc-parse.y: Rebuilt. | |
| Wed Sep 22 06:06:57 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c, pa.h, pa.md: Support multiple assembler dialects in | |
| most assembler templates. | |
| * pa.c (hppa_legitimize_address): Handle full offsets for PA2.0 | |
| FP loads and stores. | |
| (following_call): Always return zero for the PA8000. | |
| * pa.h (GO_IF_LEGITIMATE_ADDRESS): Handle full offsets for PA2.0 | |
| FP loads and stores. | |
| (LEGITIMIZE_RELOAD_ADDRESS): Similarly. | |
| * pa.h (BRANCH_COST): Define. | |
| * pa.md (return, return_internal): Use bve for PA2.0. | |
| * pa.md (fused multiply): Add variants which reduce height for the | |
| fused multiply, but which still generate 2 insns. | |
| (fnegabs): Similarly. | |
| * pa.md (subsi3): Turn into an expander. Create two anonymous | |
| patterns. One for PA2.0 one for PA1.x. Use mtsarcm for PA2.0. | |
| * pa.h (EXTRA_CONSTRAINT): Handle 'S'. | |
| * pa.md (floatunssisf2, floatunssidf2): Generate different RTL | |
| for TARGET_PA_20. | |
| (floatunssidf2_pa20, floatunssisf2_pa20): New patterns for PA2.0 | |
| code generation. | |
| (floatunsdisf2, floatunsdidf2, fixuns_truncsfsi2): Likewise. | |
| (fixuns_truncdfsi2, fixuns_truncsfdi2, fixuns_truncdfsi2): Likewise. | |
| * regclass.c (init_regs): Add "top_of_stack" as a garbage | |
| collection root. | |
| * flow.c (record_active_eh_regions): Terminate loop after finding | |
| the last insn in the last basic block. | |
| Wed Sep 22 20:25:00 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md: Delete parallel instruction peepholes. | |
| Wed Sep 22 19:59:19 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_add_gc_roots): Add tree roots. | |
| Wed Sep 22 19:56:25 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_process_after_reload): Rework machdep insn | |
| splitting to not use output template. | |
| Wed Sep 22 19:50:12 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (EXPAND_BUILTIN_VA_START): Call c4x_va_start. | |
| * config/c4x/c4x.c (c4x_va_start): New function. | |
| Tue Sep 21 18:40:01 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * genrecog.c (not_both_true): Handle correctly cases when called for | |
| tests with different positions in the insn. | |
| Tue Sep 21 18:29:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * machmode.h (HOST_PTR_PRINTF): Move from here ... | |
| * system.h (HOST_PTR_PRINTF): ... to here. | |
| * mips-tfile.c: Don't include machmode.h. | |
| * Makefile.in (MACHMODE_H): New variable. Update to use it. | |
| (mips-tfile.o): Don't depend on machmode.h. | |
| Tue Sep 21 18:27:34 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * haifa-sched.c (sched_analyze): Rename local variable `region' to | |
| avoid conflicts with typedef struct `region' at the top level scope. | |
| Tue Sep 21 14:14:50 1999 Richard Henderson <rth@cygnus.com> | |
| * basic-block.h (basic_block): Add eh_beg, eh_end. | |
| * flow.c (entry_exit_blocks): Update. | |
| (find_basic_blocks): Don't allocate bb_eh_end, or pass it around. | |
| Call new functions. | |
| (find_basic_blocks_1): Don't record eh_list at each bb. Use | |
| lists.c functions to allocate insn lists. | |
| (make_edges): Use eh_beg+eh_end, not the lists. Split out EH | |
| edge creation ... | |
| (make_eh_edge): ... here. New. | |
| (move_stray_eh_region_notes): New. | |
| (record_active_eh_regions): New. | |
| (delete_unreachable_blocks): Split out block merging ... | |
| (try_merge_blocks): ... here. New. | |
| (merge_blocks_move_predecessor_nojumps): Remove edge arg. | |
| Dump debugging data. | |
| (merge_blocks_move_successor_nojumps): Likewise. | |
| (merge_blocks): Use eh_beg+eh_end to validate block movement. | |
| Tue Sep 21 11:15:03 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de> | |
| * extend.texi (Bound member functions): Document unbound pmf | |
| conversion. | |
| Tue Sep 21 14:55:11 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * flow.c (split_edge): Handle insertion on a fallthrough edge which | |
| has the EXIT_BLOCK as a dest. | |
| Tue Sep 21 14:51:23 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * flow.c (remove_edge): New function to remove an edge from the | |
| flow graph. | |
| (remove_fake_successors): New function to remove fake successor edges. | |
| (remove_fake_edges): New function to remove all fake edges from the | |
| flow graph. | |
| (add_fake_exit_edges): New function to add fake edges from all blocks | |
| with no successors to the exit block. | |
| * basic-block.h (remove_fake_edges, add_fake_exit_edges): Add | |
| prototypes for new functions. | |
| Tue Sep 21 14:49:53 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * config/mips/elf64.h (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): | |
| Use Pmode to determine whether to output .dword or .word. | |
| Tue Sep 21 11:04:34 1999 Alex Samuel <samuel@codesourcery.com> | |
| * tree.c (built_in_filename): New variable. | |
| (BUILT_IN_FILENAME): New macro. | |
| (init_tree_codes): Allocate built_in_filename. | |
| (make_node): Use built_in_filename instead of string constant. | |
| Tue Sep 21 14:13:27 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in: Add fr30 target. | |
| * configure: Regenerate. | |
| * config/fr30: New directory. | |
| * config/fr30/crti.asm: New file. | |
| * config/fr30/fr30.c: New file. | |
| * config/fr30/crtn.asm: New file. | |
| * config/fr30/fr30.h: New file. | |
| * config/fr30/fr30.md: New file. | |
| * config/fr30/lib1funcs.asm: New file. | |
| * config/fr30/t-fr30: New file. | |
| * config/fr30/xm-fr30.h: New file. | |
| Tue Sep 21 06:45:31 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (merge_blocks_move_successor_nojumps): Delete the | |
| BARRIER at the end of the successor, not the BARRIER before | |
| the successor. | |
| * pa.c (pa_add_gc_roots): Fix thinko in last change. | |
| Tue Sep 21 05:29:17 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * stmt.c (any_pending_cleanups): Don't crash when | |
| current_function->stmt is unset. | |
| Tue Sep 21 00:59:49 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * emit-rtl.c (init_emit_once): Initialize const_int_rtx before | |
| other initializations that may use it for relative offsets. | |
| Mon Sep 20 21:43:25 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/i386/sol2.h (PREFERRED_DEBUGGING_TYPE): Use stabs. | |
| (ASM_SPEC): Moved from sol2dbg.h. Added work-around for gas. | |
| * config/i386/sol2dbg.h: Removed. | |
| * config/i386/sol2gas.h: New file, to enable gas work-around. | |
| * configure.in: Use i386/sol2gas.h on Solaris/x86 --with-gas. | |
| Don't use sol2dbg.h. | |
| * configure: Rebuilt. | |
| Mon Sep 20 13:29:41 1999 Mark Mitchell <mark@codesourcery.com> | |
| * invoke.texi (-fthis-is-variable): Remove documentation. | |
| Mon Sep 20 12:59:16 1999 Richard Henderson <rth@cygnus.com> | |
| * basic-block.h (compute_bb_for_insn): Declare. | |
| * flow.c (compute_bb_for_insn): Export. Don't accept the varray | |
| to use; set size of basic_block_for_insn directly. | |
| (find_basic_blocks): Update. | |
| Mon Sep 20 15:11:54 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * flow.c (verify_flow_info): Fix typo, "abort;" -> "abort ();". | |
| Mon Sep 20 14:56:34 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * crtstuff.c (ON_EXIT): Delete empty macro definition. | |
| (__do_global_ctors_aux): Call atexit(), not ON_EXIT(). | |
| Mon Sep 20 15:25:35 1999 Nick Clifton <nickc@cygnus.com> | |
| * c-decl.c (c_decode_option): Extend comment. | |
| Mon Sep 20 14:43:37 1999 Nick Clifton <nickc@cygnus.com> | |
| * toplev.c (progname): Make 'const char *' | |
| (flag_print_mem): Move out of main. | |
| (version_flag): Move out of main. | |
| (filename): Move out of main. | |
| (debug_args): Remove g prefix from options. | |
| (documented_lang_options): Remove cpplib specific options. | |
| (display_help): Add g prefix to debug options. | |
| (check_lang_option): Delete this function. | |
| (decode_d_option): New function: Decode -d... option. | |
| (decode_f_option): New function: Decode -f... option. | |
| (decode_W_option): New function: Decode -W... option. | |
| (decode_g_option): New function: Decode -g... option. | |
| (independent_decode_option): New function: Decode a language | |
| independent command line option. | |
| (main): Invoke lang_decode_option and then | |
| independent_decode_option on each command line option in | |
| turn. | |
| Mon Sep 20 05:41:36 1999 Jeffrey A Law (law@cygnus.com) | |
| Revert this change. Gavin's patch to operand_equal_p is a better fix. | |
| * fold-const.c (fold_range_test): Do not try to fold the range | |
| test if the rhs or lhs has side effects. | |
| * basic-block.h (compute_flow_dominators): Declare. | |
| * gcse.c (alloc_code_hoist_mem): New function. | |
| (free_code_hoist_mem, compute_code_hoist_vbeinout): Likewise. | |
| (compute_code_hoist_data, hoist_expr_reaches_here_p): Likewise. | |
| (hoist_code, one_code_hoisting_pass): Likewise. | |
| (gcse_main): If optimizing for size, then hoist expressions | |
| computed in multiple dominated basic blocks. | |
| * gcse.c (invalid_nonnull_info): New function. | |
| (delete_null_pointer_checks): Likewise. | |
| * rtl.h (delete_null_pointer_checks): Declare. | |
| * toplev.c (rest_of_compilation): Call delete_null_pointer_checks. | |
| * flow.c (merge_blocks_move_predecessor_nojumps): New function. | |
| (merge-blocks_move_successor_nojumps): Likewise. | |
| (merge_blocks): Allow merging of some blocks, even if it requires | |
| physical movement of the blocks, but not if it requires new jumps. | |
| * bitmap.c (debug_bitmap_file): Renmaed from bitmap_debug_file. | |
| Callers and prototype changed. | |
| * bitmap.h: Fix debug_bitmap and debug_bitmap_file prototypes. | |
| Mon Sep 20 06:56:32 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/sparc/sol2.h (LINK_SPEC): Avoid the duplication of | |
| -YP when both -p and -pg are present. From i386/sol2.h. | |
| Mon Sep 20 10:49:05 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * Makefile.in (distclean): Delete tm_p.h. | |
| * configure.in: Create a new file, "tm_p.h", from a list in | |
| "tm_p_file". For ix86 systems, set up "tm_p_file" to include | |
| "i386/i386-protos.h". | |
| * alias.c: Include "tm_p.h". | |
| * c-typeck.c: Likewise. | |
| * calls.c: Likewise. | |
| * cse.c: Likewise. | |
| * emit-rtl.c: Likewise. | |
| * explow.c: Likewise. | |
| * expmed.c: Likewise. | |
| * expr.c: Likewise. | |
| * final.c: Likewise. | |
| * flow.c: Likewise. | |
| * fold-const.c: Likewise. | |
| * function.c: Likewise. | |
| * gcse.c: Likewise. | |
| * global.c: Likewise. | |
| * haifa-sched.c: Likewise. | |
| * integrate.c: Likewise. | |
| * jump.c: Likewise. | |
| * local-alloc.c: Likewise. | |
| * loop.c: Likewise. | |
| * optabs.c: Likewise. | |
| * recog.c: Likewise. | |
| * reg-stack.c: Likewise. | |
| * regclass.c: Likewise. | |
| * regmove.c: Likewise. | |
| * reload.c: Likewise. | |
| * reload1.c: Likewise. | |
| * reorg.c: Likewise. | |
| * resource.c: Likewise. | |
| * stmt.c: Likewise. | |
| * stor-layout.c: Likewise. | |
| * toplev.c: Likewise. | |
| * tree.c: Likewise. | |
| * unroll.c: Likewise. | |
| * genattrtab.c (main): Make generated file include "tm_p.h". | |
| * genemit.c (main): Likewise. | |
| * genoutput.c (main): Likewise. | |
| * genrecog.c (main): Likewise. | |
| * i386.h: Delete all prototypes. | |
| * i386.c: Include "tm_p.h". | |
| (ix86_attr_length_default): Call constant_call_address_operand | |
| with correct number of arguments. | |
| * i386-protos.h: New file. | |
| * i386.md (unnamed patterns): Call constant_call_address_operand | |
| with correct number of arguments. | |
| (exception_receiver): Call load_pic_register with correct number | |
| of arguments. | |
| Sun Sep 19 14:18:39 1999 Richard Henderson <rth@cygnus.com> | |
| * c-pragma.c (mark_align_stack): Dereference the void* properly. | |
| Sun Sep 19 09:03:40 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rtl.h (insns_safe_to_move_p): New function. | |
| * loop.c (find_and_verify_loops): Use it. | |
| * rtlanal.c (insns_safe_to_move_p): Define it. | |
| Sun Sep 19 02:54:33 1999 Richard Henderson <rth@cygnus.com> | |
| * c-pragma.c: Include ggc.h. | |
| * Makefile.in (c-pragma.o): Update. | |
| Sat Sep 18 16:01:18 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/i386/sol2.h (CPP_SPEC): Support -[p]threads | |
| (LIB_SPEC): Likewise. | |
| (LINK_SPEC): Do not assert -z text with -shared -mimpure-text. | |
| Reindent -YP/-p/-pg. | |
| Copied from config/sparc/sol2.h. | |
| Sat Sep 18 11:52:43 1999 Richard Henderson <rth@cygnus.com> | |
| * c-pragma.c (mark_align_stack): New. | |
| (init_pragma): New. | |
| * c-pragma.h (init_pragma): Declare it. | |
| * c-lex.c (init_parse): Call it. | |
| Sat Sep 18 15:20:38 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * configure.in: Pick up thread library on Solaris/x86 just | |
| like on Solaris/sparc. | |
| * configure: Rebuilt. | |
| Sat Sep 18 11:15:58 1999 Alex Samuel <samuel@codesourcery.com> | |
| * rtl.h (global_rtx_index): New enum. | |
| (global_rtl): Change to array of rtx. | |
| (pc_rtx, cc0_rtx): Redefine accordingly. | |
| (cc0_rtx, stack_pointer_rtx, frame_pointer_rtx): Likewise. | |
| (hard_frame_pointer_rtx, arg_pointer_rtx): Likewise. | |
| (virtual_incoming_args_rtx, virtual_stack_vars_rtx): Likewise. | |
| (virtual_outgoing_args_rtx, virtual_cfa): Likewise. | |
| (const_int_rtx): Change to array of rtx. | |
| (const0_rtx, const1_rtx, const2_rtx, constm1_rtx): Redefine | |
| accordingly. | |
| * emit-rtl.c (global_rtl): Change to array of rtx. | |
| (const_int_rtx): Change to aray of rtx. | |
| (gen_rtx_CONST_INT): Redefine accordingly. | |
| (init_emit_once): Allocate and initialize global_rtl. Likewise | |
| for const_int_rtx. Add both as GC roots. | |
| * genattrtab.c (global_rtl): Update declaration. | |
| 1999-09-17 Ulrich Drepper <drepper@cygnus.com> | |
| * Makefile (USER_H): Add iso646.h back. | |
| Sat Sep 18 01:07:21 1999 Jeffrey A Law (law@cygnus.com) | |
| * haifa-sched.c (sched_analyze): Use free_INSN_LIST_list instead of | |
| zapping the LOG_LINKS of sched_before_next_call. | |
| * pa.h (INSN_SETS_ARE_DELAYED): Delete. | |
| * pa.c (insn_refs_are_delayed): Renamed from | |
| insn_sets_and_refs_are_delayed. | |
| Fri Sep 17 15:19:01 1999 Mark Mitchell <mark@codesourcery.com> | |
| * functiion.h (struct function): Add x_whole_function_mode_p. | |
| (retrofit_block): Declare. | |
| * function.c (retrofit_block): New function. | |
| (identify_blocks): Add assertions. Allow an incomplete set of | |
| block notes if we're still generating code for the function. | |
| * integrate.c: Include loop.h. | |
| (expand_inline_function): Call find_loop_tree_blocks to map block | |
| notes to blocks when in whole-function mode. Use retrofit_block | |
| to insert new BLOCKs for the inlined function, rather than | |
| insert_block. | |
| * stmt.c (expand_fixup): Likewise. Don't use pushlevel/polevel. | |
| * Makefile.in (integrate.o): Depend on loop.h. | |
| Fri Sep 17 15:11:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (warn_about_unused_variables): Declare. | |
| * stmt.c (warn_about_unused_variables): New function, split out | |
| from ... | |
| (expand_end_bindings): Here. | |
| Fri Sep 17 15:07:37 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (preserve_subexpressions_p): Don't crash when | |
| current_function->stmt is unset. | |
| Fri Sep 17 15:03:16 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_start_bindings): Allow callers to pass a flag | |
| indicating that no NOTE_INSN_BLOCK_BEG note is required. | |
| (expand_start_target_temps): Use it. | |
| * except.c (expand_eh_region_start_for_decl): Likewise. | |
| * expr.c (expand_expr): Likewise. | |
| Fri Sep 17 15:05:27 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * fold-const.c (operand_equal_p): Pay attention to side effects. | |
| Fri Sep 17 11:14:17 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * libgcc2.c (L_exit): Check for ON_EXIT, not HAVE_ON_EXIT. | |
| * sparc/sunos4.h (HAVE_ON_EXIT): Remove. | |
| * tlink.c (scan_linker_output): Look for keywords before accepting | |
| a mangled name in quotes. | |
| Thu Sep 16 16:47:08 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha/alpha-interix.h (DWARF2_UNWIND_INFO): Define to zero. | |
| * alpha/osf2or3.h (DWARF2_UNWIND_INFO): Likewise. | |
| Thu Sep 16 16:35:41 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md: Revert Thu Nov 26 change that came in through the | |
| last gcc2 merge: reinstate (plus (plus ...)) reload patterns. | |
| Avoid earlyclobber when possible. | |
| Thu Sep 16 18:44:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * libgcc2.c (__do_global_ctors): Call atexit with one arg. | |
| * sparc/sunos4.h (on_exit): Wrap prototype parameters in PARAMS(). | |
| Define HAVE_ON_EXIT. | |
| Thu Sep 16 18:06:35 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h (CTYPE_CONV, TOUPPER, TOLOWER): New macros. Use | |
| CTYPE_CONV in all ctype macros. | |
| * cccp.c (initialize_char_syntax): Use uppercase ctype macro | |
| from system.h. | |
| * cexp.y (initialize_random_junk): Likewise. | |
| * c4x.c (c4x_interrupt_function_p, c4x_handle_pragma): Likewise. | |
| * i370.c (handle_pragma): Likewise. | |
| * i370.h (ASM_OUTPUT_LABELREF, ASM_OUTPUT_ASCII): Likewise. | |
| * v850.c (override_options): Likewise. | |
| * doprint.c (_doprnt): Likewise. | |
| * fixinc/fixincl.c (main, quoted_file_exists, extract_quoted_files): | |
| Likewise. | |
| * fixinc/server.c (load_data): Likewise. | |
| * fold-const.c (real_hex_to_f): Likewise. | |
| * genattr.c (write_upcase, gen_attr): Likewise. | |
| * genattrtab.c (convert_const_symbol_ref, evaluate_eq_attr, | |
| write_upcase): Likewise. | |
| * genemit.c (print_code): Likewise. | |
| * genopinit.c (gen_insn): Likewise. | |
| * genpeep.c (print_code): Likewise. | |
| * genrecog.c (print_code): Likewise. | |
| * optabs.c (init_libfuncs): Likewise. | |
| Thu Sep 16 14:03:32 1999 Mark Mitchell <mark@codesourcery.com> | |
| * haifa-sched.c (sched_analyze): Keep the list of notes organized | |
| in pairs. | |
| (reemit_notes): Likewise. | |
| Thu Sep 16 11:50:52 1999 Alex Samuel <samuel@codesourcery.com> | |
| * ggc.h (ggc_root): Move to ggc-common.c. | |
| (roots): Remove. | |
| (ggc_mark_rtx, ggc_mark_tree): Change to macro. | |
| (ggc_mark_rtvec, ggc_mark_tree_varray): Declare extern. | |
| (ggc_mark_tree_hash_table, ggc_mark_string, ggc_mark): Likewise. | |
| (ggc_mark_roots, ggc_mark_rtx_children, ggc_mark_tree_children): New. | |
| * ggc-common.c (ggc_root): Move from ggc.h. | |
| (roots): Declare, static. | |
| (ggc_mark_rtx, ggc_mark_tree): Renamed to... | |
| (ggc_mark_rtx_children, ggc_mark_tree_children): Don't check for | |
| null or check/set mark bit. | |
| (ggc_mark_roots): New. | |
| * ggc-simple.c (ggc_collect): Call ggc_mark_roots. | |
| Thu Sep 16 11:37:32 1999 Richard Henderson <rth@cygnus.com> | |
| * m32r.c: Include toplev.h. | |
| (*): Add ATTRIBUTE_UNUSED as needed to arguments. | |
| (gen_compare): Rename swap_p to must_swap to match uses. | |
| Add default abort case. | |
| (m32r_output_function_epilogue): Remove unused variables. | |
| (m32r_print_operand): Use HOST_WIDE_INT_PRINT_HEX. | |
| * m32r.h (PROTO, STDIO_PROTO): Rename XPROTO; unconditionally | |
| define to empty parameter list. Update all uses. | |
| (predicate decls): Use enum machine_mode not int. | |
| * m32r.md (movsi): Call abort, not fatal_insn. | |
| (zero_branch_insn, rev_zero_branch_insn): Add default abort case. | |
| 1999-09-14 Andrew Haley <aph@cygnus.com> | |
| * config/mips/mips.md (movsi_usw): if operand 1 is const_int 0, | |
| use $0 instead of 0. | |
| Thu Sep 16 10:53:36 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (order_regs_for_reload): Move hard_reg_n_uses | |
| computation out of loop over hard regs. | |
| Wed Sep 15 21:37:06 1999 Mark Mitchell <mark@codesourcery.com> | |
| * function.c (identify_blocks): Don't shadow a variable in an | |
| outer scope. | |
| * integrate.c (integrate_decl_tree): Don't use pushlevel, | |
| pushdecl, or poplevel to build up the new BLOCK tree. | |
| (expand_inline_function): Likewise. | |
| (integrate_parm_decls): Likewise. | |
| Wed Sep 15 21:20:38 1999 Mark Mitchell <mark@codesourcery.com> | |
| * c-typeck.c (qualify_type): Merge qualifiers from both types. | |
| 1999-09-15 Brad Lucier <lucier@math.purdue.edu> | |
| * toplev.c: Allow -f[no-]math-errno to set (clear) flag_errno_math | |
| * invoke.texi: Document this change. | |
| Wed Sep 15 17:56:00 1999 Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (free_emit_status): Don't check DECL_DEFER_OUTPUT. | |
| Free the struct. | |
| (mark_emit_status): Renamed from mark_emit_state. | |
| * except.c (mark_eh_status): Renamed from mark_eh_state. | |
| Check not null before marking. | |
| (free_eh_status): New. | |
| * expr.c (mark_expr_status, free_expr_status): New. | |
| * function.c (free_machine_status): New. | |
| (free_after_parsing): New. | |
| (free_after_compilation): Move bits to free_after_parsing; call | |
| free_eh_status, free_expr_status; zero the marked members of the | |
| function state. | |
| (prepare_function_start): No can_garbage_collect. | |
| Call init_eh_for_function. | |
| (expand_dummy_function_end): Free up current_function state. | |
| (mark_function_status): Renamed from mark_function_state. | |
| (mark_function_chain): No can_garbage_collect. Call mark_expr_status. | |
| * function.h (struct function): No can_garbage_collect. | |
| (free_machine_status, free_after_parsing): Declare. | |
| (free_eh_status, free_expr_status): Declare. | |
| * ggc.h (mark_expr_status): Declare. | |
| * stmt.c (free_stmt_status): Free the struct. | |
| (mark_stmt_status): Renamed from mark_stmt_state. | |
| (init_stmt): Don't call init_eh. | |
| (init_stmt_for_function): Don't call init_eh_for_function. | |
| * toplev.c (compile_file): Call init_eh. | |
| (rest_of_compilation): Free basic block info before ggc_collect. | |
| Call free_after_parsing; conditionally call free_after_compilation. | |
| * varasm.c (mark_varasm_status): Renamed from mark_varasm_state. | |
| Check not null before marking. | |
| (free_varasm_status): Don't check DECL_DEFER_OUTPUT. Free the struct. | |
| Wed Sep 15 17:53:16 1999 Richard Henderson <rth@cygnus.com> | |
| * c-lex.c (yylex): Initialize warn. | |
| Wed Sep 15 18:35:38 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (emit_move_sequence): Properly set the mode of the scratch | |
| register when performing secondary reloads for the SAR register. | |
| Wed Sep 15 15:51:52 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rtl.h (NOTE_BLOCK_NUMBER): Replace with ... | |
| (NOTE_BLOCK): New macro. | |
| (NOTE_BLOCK_LIVE_RANGE_BLOCK): Remove. | |
| * function.h (identify_blocks): Change prototype. | |
| * function.c (identify_blocks): Simplify. | |
| (reorder_blocks): Likewise. | |
| * ggc-common.c (ggc_mark_rtx): Mark the BLOCK associated with a | |
| NOTE_INSN_BLOCK_{BEG,END}. | |
| * haifa-sched.c (sched_analyze): Don't put NOTE_BLOCK_NUMBER on | |
| the list of saved notes if the note isn't a | |
| NOTE_INSN_BLOCK_{BEG,END}. | |
| (move_insn1): Use NOTE_EH_HANDLER in comment, rather than | |
| NOTE_BLOCK_NUMBER. | |
| (reemit_notes): Adjust recreation of notes to reflect new saved | |
| note structure. | |
| * print-rtl.c (print_rtx): Print the address of the BLOCK when | |
| printing a block note. | |
| * stmt.c (block_vector): Remove. | |
| (find_loop_tree_blocks): Simplify. | |
| (unroll_block_trees): Likewise. | |
| * tree.h (reorder_block): Change prototype. | |
| Wed Sep 15 14:39:35 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * gbl-ctors.h: Lose HAVE_ATEXIT. Don't define ON_EXIT. | |
| * libgcc2.c: Lose obsolete defn of WEAK_ALIAS. | |
| (__bb_init_func, __bb_init_prg): Use atexit instead of ON_EXIT. | |
| (__do_global_dtors): Likewise. Don't mess with _exit_dummy_decl. | |
| (atexit, exit): Simplify. | |
| * tm.texi: Document NEED_ATEXIT and ON_EXIT. Remove HAVE_ATEXIT. | |
| * config/lots: Remove defns of HAVE_ATEXIT. | |
| Wed Sep 15 10:25:12 1999 Mark Mitchell <mark@codesourcery.com> | |
| * calls.c (precompute_arguments): Fix typo in comment. | |
| * expr.c (preexpand_calls): Don't preexpand the cleanup in a | |
| TARGET_EXPR. | |
| Wed Sep 15 09:59:59 1999 Mark Mitchell <mark@codesourcery.com> | |
| * dsp16xx.c (override_options): Fix typos in GC root registration. | |
| Wed Sep 15 15:23:28 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/linux-elf.h (MAKE_DECL_ONE_ONLY): Copy definition | |
| from config/svr4.h. | |
| (UNIQUE_SECTION_P, UNIQUE_SECTION): Likewise. | |
| (FUNCTION_PROFILER): Redefine appropriately for Linux. | |
| (CC1_SPEC): Likewise. | |
| Wed Sep 15 10:09:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * genattr.c (main): Add extern prototype. Call return, not exit. | |
| * genattrtab.c (main): Likewise. | |
| * gencheck.c (main): Likewise. | |
| * gencodes.c (main): Likewise. | |
| * genconfig.c (main): Likewise. | |
| * genemit.c (main): Likewise. | |
| * genextract.c (main): Likewise. | |
| * genflags.c (main): Likewise. | |
| * gengenrtl.c (main): Likewise. | |
| * genopinit.c (main): Likewise. | |
| * genoutput.c (main): Likewise. | |
| * genpeep.c (main): Likewise. | |
| * genrecog.c (main): Likewise. | |
| * genattr.c (get_insn_name): Mark parameter with ATTRIBUTE_UNUSED. | |
| * genattrtab.c (get_insn_name): Likewise. | |
| * gencodes.c (get_insn_name): Likewise. | |
| * genconfig.c (get_insn_name): Likewise. | |
| * genemit.c (get_insn_name): Likewise. | |
| * genextract.c (get_insn_name): Likewise. | |
| * genflags.c (get_insn_name): Likewise. | |
| * genopinit.c (get_insn_name): Likewise. | |
| * genpeep.c (get_insn_name): Likewise. | |
| * gencheck.c (usage): Add static prototype. | |
| * genextract.c (print_path): Constify a char*. | |
| * genopinit.c (optabs): Likewise. | |
| * genoutput.c (operand_data, data, output_predicate_decls, | |
| compare_operands): Likewise. | |
| * genrecog.c (write_tree): Add default case in switch. | |
| Wed Sep 15 09:59:16 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * rtl.h (get_insn_name, print_rtl_with_bb): Add prototypes. | |
| * print-rtl.c (get_insn_name): Remove prototype. | |
| * toplev.h (progname): Declare const. | |
| * toplev.c (init_decl_processing, init_obstacks, init_tree_codes, | |
| init_regs, init_optabs, init_stmt, init_reg_sets, dump_flow_info, | |
| dump_sched_info, dump_local_alloc, regset_release_memory, | |
| print_rtl, print_rtl_with_bb, rest_of_decl_compilation, | |
| error_with_file_and_line, error_with_decl, error_for_asm, error, | |
| fatal, warning_with_file_and_line, warning_with_decl, warning, | |
| pedwarn, pedwarn_with_decl, pedwarn_with_file_and_line, sorry): | |
| Remove redundant prototypes. | |
| (notice, check_lang_option, report_file_and_line, vnotice, | |
| mark_file_stack): Add static prototype. | |
| (set_fatal_function): Add prototype. | |
| (vnotice, report_file_and_line, set_fatal_function, | |
| check_lang_option): Constify a char*. | |
| (main): Prototype. Call return, not exit. | |
| Wed Sep 15 09:50:18 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * aclocal.m4 (AC_GCC_C_LONG_DOUBLE): New macro. | |
| * configure.in (AC_GCC_C_LONG_DOUBLE): Call it. | |
| * gansidecl.h (HAVE_LONG_DOUBLE): Define if gcc for stage2. | |
| * ggc-simple.c (HAVE_LONG_DOUBLE): Test before using long double. | |
| Wed Sep 15 11:04:43 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * function.c (assign_parms): Delete arg SECOND_TIME. Don't test it, | |
| behave as if it's zero in all cases. | |
| (expand_function_start): Adjust call to assign_parms. | |
| * tree.h (assign_parms): Adjust prototype. | |
| * objc/objc-act.c (hack_method_prototype): Adjust call to | |
| assign_parms. | |
| Tue Sep 14 21:47:06 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (FIXED_BASE_PLUS_P): Do not consider referneces to | |
| arg_pointer_rtx fixed if the argument pointer register is | |
| not fixed. | |
| (NONZERO_BASE_PLUS_P): Likewise. | |
| Tue Sep 14 20:26:02 1999 Richard Henderson <rth@cygnus.com> | |
| * rtl.def (match_insn, match_insn2): Remove match_insn; rename | |
| match_insn2 to match_insn. | |
| * genrecog.c (add_to_sequence): Rename MATCH_INSN2. | |
| Tue Sep 14 20:10:29 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (USER_H): Remove va-foo.h. | |
| * ginclude/{va-alpha.h,va-arc.h,va-c4x.h,va-clipper.h,va-h8300.h, | |
| va-i860.h,va-i960.h,va-m32r.h,va-m88k.h,va-mips.h,va-mn10200.h, | |
| va-mn10300.h,va-pa.h,va-ppc.h,va-pyr.h,va-sh.h,va-sparc.h, | |
| va-spur.h,va-v850.h}: Remove. | |
| Tue Sep 14 19:43:16 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc/sparc.md (eligible_for_return_delay): New attribute. | |
| (in_return_delay): Use it instead of match_insn. | |
| Tue Sep 14 23:05:37 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * config/alpha/va_list.h (va-alpha.h): Do not include. | |
| (__gnuc_va_list): Typedef as in varargs.h. | |
| Tue Sep 14 18:14:03 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-common.c (ggc_mark_tree): Mark DECL_SOURCE_FILE and | |
| DECL_LIVE_RANGE_RTL. | |
| Tue Sep 14 16:47:08 1999 Mark Mitchell <mark@codesourcery.com> | |
| * except.c (expand_eh_region_start_for_decl): Use NOTE_EH_HANDLER, | |
| not NOTE_BLOCK_NUMBER. | |
| (expand_eh_region_end): Likewise. | |
| (find_exception_handler_labels): Likewise. | |
| (scan_region): Likewise. | |
| (exception_optimize): Likewise. | |
| (update_rethrow_references): Likewise. | |
| (set_insn_eh_region): Likewise. | |
| * final.c (final_scan_insn): Likewise. | |
| * flow.c (make_edges): Likewise. | |
| * integrate.c (expand_inline_function): Likewise. | |
| * print-rtl.c (print_rtx): Likewise. | |
| Tue Sep 14 16:30:16 1999 Richard Henderson <rth@cygnus.com> | |
| * ginclude/stdarg.h, ginclude/varargs.h: Implement in | |
| terms of builtin functions and types. | |
| * mips.c (mips_build_va_list): New. | |
| (mips_va_start, mips_va_arg): New. | |
| * mips.h (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START, EXPAND_BUILTIN_VA_ARG): New. | |
| * sh.c (sh_builtin_saveregs): Use get_varargs_alias_set. | |
| (sh_build_va_list, sh_va_start, sh_va_arg): New. | |
| * sh.h (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START, EXPAND_BUILTIN_VA_ARG): New. | |
| Tue Sep 14 16:20:24 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.h (struct recog_data): Make dup_num, operand_address_p, | |
| n_operands, n_dups, n_alternatives `char' instead of `unsigned char'. | |
| (struct insn_data): Likewise with n_operands, n_dups, | |
| n_alternatives, output_format. | |
| * regclass.c (scan_one_insn): Cast n_operands to int before | |
| arithmetic inside comparison. | |
| Tue Sep 14 15:13:36 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (compile_function): Unconditionally emit nop. | |
| Tue Sep 14 14:41:47 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * haifa-sched.c (actual_hazard): Move declaration of variable | |
| `this_cost' into the scope where it is used. | |
| Tue Sep 14 14:14:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-pragma.c (handle_pragma_token): Wrap variables `name' and | |
| `value' in HANDLE_PRAGMA_WEAK. Wrap variable `align' in | |
| HANDLE_PRAGMA_PACK||HANDLE_PRAGMA_PACK_PUSH_POP. | |
| * genrecog.c (make_insn_sequence): Call memset, not bzero. | |
| * jump.c (find_insert_position): Don't declare or define unless | |
| !HAVE_conditional_arithmetic. | |
| (returnjump_p_1, delete_prior_computation): Add static prototypes. | |
| * mips-tdump.c (fatal, fancy_abort, main): Add extern prototypes. | |
| * recog.c (offsettable_address_p): Prototype function pointer. | |
| (preprocess_constraints): Call memset, not bzero. | |
| * tree.c (tree_node_kind_names): Constify a char*. Make static. | |
| (gcc_obstack_init): Don't declare. | |
| (fix_sizetype): Add static prototype. | |
| (gcc_obstack_init): Use prototype casts in call to _obstack_begin. | |
| (tree_cons): Call memset, not bzero. | |
| * varasm.c (remove_from_pending_weak_list): Wrap declaration and | |
| definition in macro ASM_WEAKEN_LABEL. | |
| (mark_const_hash_entry): Add static prototype. | |
| Tue Sep 14 12:22:50 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-lex.c (handle_generic_pragma): Remove unused variable `c'. | |
| * unroll.c (find_common_reg_term, subtract_reg_term, | |
| loop_find_equiv_value): Add static prototypes. | |
| (unroll_loop): Wrap variable `prev' in macro HAVE_cc0. | |
| (copy_loop_body): Remove unreachable break statement. | |
| * sparc.c (sparc_va_arg): Remove unused variable `tmp'. | |
| * sparc.h (sparc_va_start, sparc_va_arg): Add extern prototypes. | |
| Tue Sep 14 15:28:00 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| Undo some changes from the gcc2 merge: | |
| * rtl.def (CONSTANT_P_RTX): Fix the comment for this rtx code. | |
| * emit-rtl.c (gen_rtx_REG): Don't test special reg rtx's for null | |
| pointers. | |
| Undo this change: | |
| Sat Oct 3 07:20:28 1998 Stephen L Moshier <moshier@world.std.com> | |
| * emit-rtl.c (gen_lowpart_common): Disable optimization of | |
| initialized float-int union if the value is a NaN. | |
| Tue Sep 14 04:03:44 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * gthr-win32.h: New file. | |
| * i386/winnt.c (i386_pe_valid_decl_attribute_p): Recognize | |
| shared as a valid attribute. | |
| * i386/cygwin.h (ASM_OUTPUT_SECTION): Handle shared attribute. | |
| * extend.texi: Document `shared' variable attribute. | |
| Tue Sep 14 04:01:46 1999 Loren Rittle <ljrittle@acm.org> | |
| * configure.in: Handle --enable-threads on FreeBSD. | |
| * configure: Rebuit. | |
| Tue Sep 14 03:58:44 1999 Andreas Jaeger <aj@arthur.rhein-neckar.de> | |
| * configure.in: Add crtbeginS.o, crtendS.o for mips-linux; add | |
| thread support. | |
| * configure: Rebuilt. | |
| Tue Sep 14 03:47:23 1999 Joel Sherrill <joel@OARcorp.com> | |
| Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca> | |
| Rosimildo DaSilva <rdasilva@connecttel.com> | |
| * configure.in (m68k-*-rtemscoff*): Added. | |
| * configure.in (mips64orion-*-rtems*): Converted to ELF. | |
| * configure.in (sparc-*-rtemsaout*): Added as alias for old | |
| sparc-rtems configuration. | |
| * configure.in (sparc-*-rtemself*): Added. | |
| * configure.in (sparc-*-rtems*): Now ELF not a.out. | |
| * config/i386/rtems.h: Added comment. | |
| * config/sparc/rtemself.h: New file. | |
| * configure.in (m68k-rtemself): Added. | |
| * config/elfos.h: Added ifndef wrapper for DWARF2_DEBUGGING_INFO | |
| and DWARF_DEBUGGING_INFO. | |
| * config/m68k/crti.s: New file. | |
| * config/m68k/crtn.s: New file. | |
| * config/m68k/t-crtstuff: New file. | |
| * config/m68k/rtemself.h: New file. | |
| * configure.in (i[[34567]]86-*-rtemself*): Now uses crtstuff for | |
| global ctor/dtor and C++ exception handling. | |
| * config/i386/rtemself.h: Now uses crtstuff (crti.o + crtbegin.o) | |
| for STARTFILE_SPEC and crtstuff (crtend.o + crtn.o) for | |
| ENDFILE_SPEC. | |
| * config/i386/t-rtems-i386: New File. | |
| Tue Sep 14 09:47:41 1999 Andreas Schwab <schwab@suse.de> | |
| * stmt.c (expand_end_case): Return right away if the case stack is | |
| empty. | |
| Tue Sep 14 01:47:19 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (version.c): Remove rule incorrectly brought in from | |
| the gcc2 merge. | |
| Tue Sep 14 01:42:27 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * Makefile.in: Prepend $(SHELL) to move-if-change calls. | |
| * msdos/top.sed: Take into account a prepended $(SHELL) to | |
| move-if-change. | |
| * winnt/config-nt.sed: Likewise. Kill bogus substitution. | |
| * objc/Make-lang.in: Prepend $(SHELL) to move-if-change calls. | |
| Tue Sep 14 01:38:52 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * regmove.c (fixup_match_1): Don't change an unchanging register. | |
| (stable_but_for_p): Renamed to: | |
| (stable_and_no_regs_but_for_p). Reject unchanging registers too. | |
| Changed all callers. | |
| Tue Sep 14 01:33:15 1999 Andreas Schwab <schwab@suse.de> | |
| * loop.c (strength_reduce): Don't call reg_used_between_p if the | |
| insn from BL2 is after the insn from BL. | |
| Mon Sep 13 21:06:01 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.h (INSN_OUTPUT_FORMAT_*): New. | |
| (struct insn_data): Merge `template' and `outfun' into `output'. | |
| Add `output_format'. | |
| * genoutput.c (INSN_OUTPUT_FORMAT_*): New. | |
| (struct data): Remove `outfun'; add `output_format'. | |
| (name_for_index): Remove declaration. | |
| (output_insn_data): Handle output formats. | |
| (process_template): Emit the bare array for @. | |
| (gen_expand, gen_split): Set output_format to NONE. | |
| * output.h (get_insn_template): Declare. | |
| * final.c (get_insn_template): New. | |
| (final_scan_insn): Use it. | |
| * toplev.c (compile_file): Likewise. | |
| * c4x/c4x.c (c4x_process_after_reload): Likewise. | |
| * i860/i860.c (output_delayed_branch): Likewise. | |
| (output_delay_insn): Likewise. | |
| 1999-09-13 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
| * rtl.c (obstack_alloc_rtx): Removed. | |
| 1999-09-13 17:03 -0700 Zack Weinberg <zack@bitmover.com> | |
| * config/gmicro/gmicro.md: Disable move DF->DI anonymous pattern. | |
| Mon Sep 13 15:21:46 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (call_insn_operand): Reject const_int. | |
| (expander_call_insn_operand): Use call_insn_operand. | |
| Mon Sep 13 17:44:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcc.c (getrusage): Wrap prototype arguments in PROTO(). | |
| 1999-09-13 12:18 -0700 Zack Weinberg <zack@bitmover.com> | |
| * config/i370/i370.md (mulsi, divsi, modsi anonymous insns): | |
| Use DImode operation. | |
| 1999-09-13 12:13 -0700 Zack Weinberg <zack@bitmover.com> | |
| * gcc.c: Include sys/resource.h. | |
| (report_times): New flag. | |
| (execute): If report_times is set, calculate and report the | |
| CPU time consumed by each subprocess. | |
| (rus, prus): New globals. | |
| (option_map): Add --time. | |
| (display_help): Document -time. | |
| (process_command): Set report_times if -time is given. | |
| Turn off -pipe if -time is given. | |
| * invoke.texi: Document new option -time. | |
| * configure.in: Check for getrusage. Check if we have to | |
| prototype getrusage. | |
| * acconfig.h: Add NEED_DECLARATION_GETRUSAGE. | |
| * configure: Regenerate. | |
| * config.in: Regenerate. | |
| Mon Sep 13 12:57:06 1999 Dave Brolley <brolley@cygnus.com> | |
| * cppinit.c (append_include_chain): Initialize 'next' and 'alloc' | |
| fields. | |
| Mon Sep 13 10:01:33 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/fp-bit.c: Define L_thenan_sf or L_thenan_df (as | |
| appropriate) if FINE_GRAINED_LIBRARIES is not defined. | |
| (nan): Return _thenan_sf or _thenan_df as appropriate. | |
| (L_thenan_sf): Define _thenan_sf. | |
| (L_thenan_df): Define _thenan_df. | |
| * Makefile.in (FPBIT_FUNCS): Add _thenan_sf. | |
| (DPBIT_FUNCS): Add _thenan_df. | |
| Mon Sep 13 09:38:53 1999 Andreas Schwab <schwab@suse.de> | |
| * tree.c (fix_sizetype): Exchange the types for TYPE_SIZE and | |
| TYPE_SIZE_UNIT. | |
| Sun Sep 12 23:28:20 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (gcc.o, gccspec.o, cppspec.o): Depend on gcc.h. | |
| * gcc.h: New file. | |
| (lang_specific_driver): Don't take a function pointer parameter. | |
| All callers changed. | |
| * gcc.c: Include gcc.h. | |
| (do_spec, fancy_abort,lang_specific_driver,lang_specific_pre_link, | |
| lang_specific_extra_outfiles, fatal): Don't declare. | |
| (multilib_defaults_raw): Constify. | |
| (read_specs): Call memset, rather than bzero. | |
| (main): Call return, not exit. | |
| (lookup_compiler): Call memcpy, not bcopy. | |
| (fatal): Make extern. | |
| * cppspec.c: Include gcc.h. | |
| (lang_specific_driver): Initialize variable `quote'. Constify a | |
| char*. All calls to the function pointer parameter now | |
| explicitly call `fatal'. | |
| * gccspec.c (lang_specific_driver): Include gcc.h. | |
| Sun Sep 12 19:52:10 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * arm.c (note_invalid_constants): Use recog_data.operand_type | |
| for recog_op_type. | |
| Sun Sep 12 15:53:20 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * tree.h (build_common_tree_nodes, build_common_tree_nodes_2): | |
| Declare. | |
| * reload.h (reload_in, reload_out, reload_in_reg, reload_out_reg, | |
| reload_reg_class, reload_inmode, reload_outmode, reload_optional, | |
| reload_nongroup, reload_inc, reload_opnum, reload_secondary_p, | |
| reload_secondary_in_reload, reload_secondary_out_reload, | |
| reload_secondary_in_icode, reload_secondary_out_icode, | |
| reload_reg_rtx, reload_when_needed): Delete declarations. | |
| (struct reload): New structure. | |
| (rld): Declare new array. | |
| * reload.c (reload_in, reload_out, reload_in_reg, reload_out_reg, | |
| reload_reg_class, reload_inmode, reload_outmode, reload_optional, | |
| reload_nongroup, reload_inc, reload_opnum, reload_secondary_p, | |
| reload_secondary_in_reload, reload_secondary_out_reload, | |
| reload_secondary_in_icode, reload_secondary_out_icode, | |
| reload_reg_rtx, reload_when_needed): Delete definitions. | |
| (rld): New array. | |
| (whole file): Replace uses of the deleted arrays with uses of rld. | |
| * reload1.c (whole file): Replace uses of the deleted arrays with | |
| uses of rld. | |
| (choose_reload_regs): Copy in/out of save_reload_reg_rtx with | |
| explicit loops, not with bcopy. | |
| Sun Sep 12 05:00:24 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.h (insn_template, insn_outfun, insn_n_operands, insn_n_dups, | |
| insn_n_alternatives, insn_operand_constraint, insn_operand_address_p, | |
| insn_operand_mode, insn_operand_strict_low, insn_operand_predicate, | |
| insn_name): Delete and consolidate into new structures. | |
| (insn_operand_predicate_fn): New. | |
| (insn_output_fn): New. | |
| (insn_gen_fn): New. | |
| (struct insn_operand_data): New. | |
| (struct insn_data): New. | |
| (insn_data): New. | |
| (OUT_FCN): Update for insn_data change. | |
| * builtins.c (expand_builtin_strlen): Likewise. | |
| (expand_builtin_memcmp): Likewise. | |
| * combine.c (make_extraction, simplify_comparison): Likewise. | |
| * cse.c (canon_reg, cse_insn): Likewise. | |
| * explow.c (allocate_dynamic_stack_space, probe_stack_range): Likewise. | |
| * expmed.c (store_bit_field, extract_bit_field): Likewise. | |
| (emit_store_flag): Likewise. | |
| * expr.c (convert_move, emit_block_move): Likewise. | |
| (clear_storage, emit_push_insn, expand_increment): Likewise. | |
| (do_store_flag): Likewise. | |
| * expr.h (GEN_FCN): Likewise. | |
| (insn_gen_function): Die. | |
| * final.c (final_scan_insn): Update for insn_data change. | |
| (output_asm_name): Likewise. | |
| * function.c (fixup_var_refs_1): Likewise. | |
| * loop.c (check_dbra_loop): Likewise. | |
| * optabs.c (expand_binop, expand_twoval_binop): Likewise. | |
| (expand_unop, expand_complex_abs, emit_unop_insn): Likewise. | |
| (prepare_cmp_insn, prepare_operand, emit_indirect_jump): Likewise. | |
| (emit_conditional_move, gen_add2_insn, gen_sub2_insn): Likewise. | |
| * recog.c (validate_replace_rtx_1, extract_insn): Likewise. | |
| * regmove.c (gen_add3_insn): Likewise. | |
| * reload.c (push_secondary_reload, combine_reloads): Likewise. | |
| (find_reloads, find_reloads_address_1): Likewise. | |
| (debug_reload_to_stream): Likewise. | |
| * reload1.c (emit_reload_insns, gen_reload): Likewise. | |
| * stmt.c (expand_end_case): Likewise. | |
| * toplev.c (compile_file): Likewise. | |
| * c4x/c4x.c (c4x_process_after_reload): Likewise. | |
| * i860/i860.c (output_delayed_branch, output_delay_insn): Likewise. | |
| * print-rtl.c (insn_name_ptr): Remove declaration. | |
| (get_insn_name): Declare. | |
| (print_rtx): Use it. | |
| * genoutput.c (insn_name_ptr): Remove. | |
| (next_operand_number): New. | |
| (struct operand_data): New. | |
| (null_operand, odata, odata_end): New. | |
| (struct data): Use struct operand_data. | |
| (idata, idata_end): Renamed from insn_data and end_of_insn_data. | |
| (get_insn_name): Renamed from name_for_index. | |
| (output_prologue): Define NO_MD_PROTOTYPES. | |
| (output_predicate_decls): Break out from output_epilogue. | |
| Iterate over the operands list. | |
| (output_operand_data): Break out from output_epilogue. Emit | |
| just the operands list. | |
| (output_insn_data): Break out from output_epilogue. Emit just | |
| the insn data. | |
| (output_epilogue): Remove. | |
| (output_get_insn_name): New. | |
| (constraints, op_n_alternatives, predicates, address_p): Die. | |
| (modes, strict_low, seen): Die. | |
| (scan_operands): Take new param `d' instead of writing to | |
| seven global variables. | |
| (compare_operands): New. | |
| (place_operands): New. | |
| (validate_insn_alternatives): Update for struct data change. | |
| (gen_insn): Don't zero or copy 7 global arrays. Update for | |
| scan_operands; call place_operands. | |
| (gen_peephole, gen_expand, gen_split): Likewise. | |
| (main): Update for new output routines. | |
| * genattr.c (insn_name_ptr): Remove. | |
| (get_insn_name): New function. | |
| * genattrtab.c, gencodes.c, genconfig.c, genemit.c: Likewise. | |
| * genextract.c, genflags.c, genopinit.c, genpeep.c: Likewise. | |
| * genrecog.c: Likewise. | |
| * alpha.md (adddi3): Make `pattern' array static. | |
| Sun Sep 12 22:05:21 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (c4x_rpts_cycles_string, | |
| c4x_cpu_version_string): Constify char *. | |
| * config/c4x/c4x.c (c4x_rpts_cycles_string, | |
| c4x_cpu_version_string): Likewise. | |
| Sat Sep 11 23:28:33 1999 Richard Henderson <rth@cygnus.com> | |
| * tree.c (save_tree_status): Revert 10 Sep change. | |
| (restore_tree_status): Likewise. Call obstack_free with NULL | |
| before freeing the obstack proper. | |
| Sat Sep 11 23:23:46 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (cse_main): If gc'ing, collect around cse_basic_block. | |
| * ggc-simple.c (ggc_pop_context): Fold outstanding bytes into | |
| surrounding context. | |
| Sat Sep 11 19:52:43 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (type_hash_canon): Put all types in the hash-table, when | |
| GC'ing. | |
| Sat Sep 11 18:37:04 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.h (struct recog_data, recog_data): New. | |
| (recog_foo variables): Kill. | |
| * recog.c (recog_operand, recog_operand_loc): Kill. | |
| (recog_dup_loc, recog_dup_num, recog_n_operands): Kill. | |
| (recog_n_dups, recog_n_alternatives, recog_operand_mode): Kill. | |
| (recog_constraints, recog_op_type, recog_operand_address_p): Kill. | |
| (recog_data): Define. | |
| (extract_insn): Update all recog_foo references to use recog_data. | |
| (preprocess_constraints, constrain_operands): Likewise. | |
| * final.c (final_scan_insn, cleanup_subreg_operands): Likewise. | |
| * genattrtab.c (main): Likewise. | |
| * genextract.c (main): Likewise. | |
| * genoutput.c: Likewise. | |
| * genrecog.c (write_subroutine, main): Likewise. | |
| * local-alloc.c (block_alloc): Likewise. | |
| * reg-stack.c (record_asm_reg_life, subst_asm_stack_regs): Likewise. | |
| * regclass.c (scan_one_insn, record_reg_classes): Likewise. | |
| * regmove.c (regmove_optimize, find_matches, fixup_match_1): Likewise. | |
| * reload.c (find_reloads, find_reloads_toplev): Likewise. | |
| * reload1.c (maybe_fix_stack_asms, eliminate_regs_in_insn): Likewise. | |
| (reload_cse_simplify_operands): Likewise. | |
| * arc/arc.c (arc_final_prescan_insn): Likewise. | |
| * arm/arm.c (note_invalid_constants, arm_final_prescan_insn): Likewise. | |
| * h8300/h8300.c (notice_update_cc): Likewise. | |
| * i386/i386.c (ix86_attr_length_default, ix86_agi_dependant): Likewise. | |
| * i860/i860.c (output_delayed_branch, output_delay_insn): Likewise. | |
| * mn10200/mn10200.c (notice_update_cc): Likewise. | |
| * mn10300/mn10300.c (notice_update_cc): Likewise. | |
| * romp/romp.c (update_cc): Likewise. | |
| * sparc/sparc.c (check_pic): Likewise. | |
| * v850/v850.c (notice_update_cc): Likewise. | |
| * genemit.c (main): Don't declare recog_operand. | |
| Sat Sep 11 12:41:55 1999 Alex Samuel <samuel@codesourcery.com> | |
| * ggc.h (rtvec_def): Forward declare. | |
| (tree_node): Likewise. | |
| (ggc_root): Define. | |
| (roots): Declare. | |
| (ggc_set_mark_rtx): Add prototype. | |
| (ggc_set_mark_rtvec): Likewise. | |
| (ggc_set_mark_tree): Likewise. | |
| * ggc-simple.c (ggc_root): Don't define. | |
| (roots): Don't declare. | |
| (ggc_mark_rtx): Remove. | |
| (ggc_mark_rtvec): Likewise. | |
| (ggc_mark_tree): Likewise. | |
| (ggc_mark_varray): Likewise. | |
| (ggc_mark_tree_hash_table_entry): Likewise. | |
| (ggc_mark_tree_hash_table): Likewise. | |
| (ggc_set_mart_rtx): New function. | |
| (ggc_set_mark_rtvec): Likewise. | |
| (ggc_set_mark_tree): Likewise. | |
| (ggc_add_root): Remove. | |
| (ggc_add_rtx_root): Likewise. | |
| (ggc_remove_tree_root): Likewise. | |
| (ggc_add_string_root): Likewise. | |
| (ggc_add_tree_varray_root): Likewise. | |
| (ggc_add_tree_hash_table_root): Likewise. | |
| (ggc_del_root): Likewise. | |
| (ggc_mark_rtx_ptr): Likewise. | |
| (ggc_mark_tree_ptr): Likewise. | |
| (ggc_mark_string_ptr): Likewise. | |
| (ggc_mark_tree_varray_ptr): Likewise. | |
| (ggc_mark_tree_hash_table_ptr): Likewise. | |
| * ggc-common.c: New file. | |
| * Makefile.in (OBJS): Add ggc-common.o. | |
| (ggc-common.o): List dependencies. | |
| 1999-09-10 22:37 -0700 Zack Weinberg <zack@bitmover.com> | |
| * cppalloc.c (xstrdup): Use memcpy. | |
| * cpperror.c (cpp_print_containing_files): Don't use | |
| cpp_notice. | |
| * cpplib.c (conditional_skip): Set temp->lineno. | |
| (do_endif): Make error message less obscure. | |
| (if_directive_name): New function. | |
| (cpp_get_token [case EOF]): Unwind the if stack and generate | |
| error messages for each unterminated conditional in this file. | |
| (parse_string): Do not behave differently if -traditional. | |
| Fri Sep 10 14:04:07 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c (expand_builtin_va_arg): Cope with an array-type | |
| va_list decomposing to pointer-type. | |
| * rs6000.c (rs6000_va_start) Unwrap the ARRAY_TYPE to get at fields. | |
| (rs6000_va_arg): Likewise. | |
| Fri Sep 10 13:21:21 1999 Jim Wilson <wilson@cygnus.com> | |
| * except.c (start_dynamic_handler): Compute size using | |
| STACK_SAVEAREA_MODE. | |
| Fri Sep 10 16:01:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * protoize.c: Remove various __STDC__ and POSIX hacks. Don't | |
| include directory headers. Don't define strrchr. Don't provide | |
| my_* replacement functions. Prefer PTR over `pointer_type'. | |
| Don't prototype system functions. Don't redefine getopt. | |
| (shortpath, fancy_abort, notice, savestring, dupnstr, substr, | |
| safe_read, safe_write, save_pointers, restore_pointers, | |
| is_id_char, in_system_include_dir, directory_specified_p, | |
| file_excluded_p, unexpand_if_needed, abspath, check_aux_info, | |
| find_corresponding_lparen, referenced_file_is_newer, | |
| save_def_or_dec, munge_compile_params, gen_aux_info_file, | |
| process_aux_info_file, identify_lineno, check_source, | |
| seek_to_line, forward_to_next_token_char, output_bytes, | |
| output_string, output_up_to, other_variable_style_function, | |
| find_rightmost_formals_list, do_cleaning, careful_find_l_paren, | |
| do_processing, is_syscalls_file, rename_c_file, find_extern_def, | |
| find_static_definition, connect_defs_and_decs, add_local_decl, | |
| add_global_decls, needs_to_be_converted, visit_each_hash_node, | |
| add_symbol, lookup, free_def_dec, find_file, reverse_def_dec_list, | |
| edit_fn_declaration, edit_formals_lists, edit_fn_definition, | |
| scan_for_missed_items, edit_file, string_list_cons): Add static | |
| prototypes. | |
| (standard_exec_prefix, target_machine, target_version, | |
| default_syscalls_dir, string_list, string_list_cons, find_file, | |
| do_cleaning): Constify a char*. | |
| (safe_read, safe_write): Use PTR, not a char*. | |
| (is_id_char): Take an int, not a char. | |
| (main): Add prototype. Call return, not exit. | |
| Fri Sep 10 16:48:26 1999 Andrew Haley <aph@cygnus.com> | |
| * tree.c (type_hash_lookup): Check for equal TYPE_ALIGN fields | |
| when comparing types. | |
| Fri Sep 10 08:43:32 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.c (basic_induction_var): Typo NULL_RTX -> NULL. | |
| (strength_reduce): Release the varrays from the no-bivs early exit. | |
| * reload1.c (order_regs_for_reload): Init hard_reg_n_uses before | |
| the loop over the registers. | |
| * tree.c (save_tree_status): Set maybepermanent_firstobj NULL | |
| for a new obstack. | |
| (restore_tree_status): Check that instead when freeing the obstack. | |
| Wed Sep 8 16:12:04 1999 Andrew Haley <aph@cygnus.com> | |
| * alias.c (rtx_equal_for_memref_p): Allow CONST_DOUBLEs to be used | |
| as pointers. | |
| Fri Sep 10 11:58:55 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * i386.md (ashlqi3): For NON_QI_REG_P regs, use sall. Fix some | |
| operand size modifiers. | |
| Fri Sep 10 10:32:32 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-common.c (c_common_nodes_and_builtins): Don't build | |
| va_list_type_node. | |
| * c-common.h (enum c_tree_index and related accesor macros): Remove | |
| everything now declared in tree.h. | |
| * c-decl.c (CHAR_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE, | |
| LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE, WCHAR_UNSIGNED, FLOAT_TYPE_SIZE, | |
| DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE): Don't provide defaults. | |
| (error_mark_node, void_type_node, char_type_node, integer_type_node, | |
| unsigned_type_node, ptr_type_node, va_list_type_node, | |
| integer_zero_node, null_pointer_node, integer_one_node): Delete. | |
| (init_decl_processing): Call build_common_tree_nodes and | |
| build_common_tree_nodes_2 instead of building their nodes here. | |
| Don't add roots for these nodes. | |
| * stor-layout.c (size_zero_node, size_one_node): Delete. | |
| (set_sizetype): Make a new node for bitsizetype each time. | |
| * tree.c (global_trees): New variable. | |
| (init_obstacks): Add a gc root for it. | |
| (CHAR_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE, | |
| LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE, FLOAT_TYPE_SIZE, | |
| DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE): Provide defaults. | |
| (build_common_tree_nodes): New function. | |
| (fix_sizetype): New function. | |
| (build_common_tree_nodes_2): New function. | |
| * tree.h (enum tree_index): New. | |
| (global_trees): Declare. | |
| Add accessor macros for all nodes now moved to global_trees. | |
| Delete their declarations. | |
| Thu Sep 9 20:15:46 1999 Richard Henderson <rth@cygnus.com> | |
| * c-decl.c (finish_function): When processing a nested function, | |
| push and pop GC context around rest_of_compilation. | |
| Thu Sep 9 16:42:06 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (override_options): Remove ppro, pentium2, and p2 as aliases. | |
| Default ix86_arch to PROCESSOR_I386. | |
| * i386.h (CC1_CPU_SPEC): Don't add -march=foo. Remove -mno-foo. | |
| (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): Delete. | |
| (CPP_CPU_DEFAULT_SPEC): Define to __tune_foo__. | |
| (CC1_CPU_SPEC): Make -march=foo define __foo__, and provide | |
| __tune_foo__ if no -mcpu. Make -mcpu=bar define __tune_bar__. | |
| (EXTRA_SPECS): Remove deleted specs. | |
| Thu Sep 9 16:03:06 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (assign_stack_local_1): Allocate from | |
| function->x_frame_offset, not frame_offset. | |
| Thu Sep 9 14:36:31 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc.h (lang_cleanup_tree): Remove. | |
| * gcc-simple.c (ggc_free_tree): Don't call lang_cleanup_tree. | |
| * ggc-callbacks.c (lang_cleanup_tree): Remove. | |
| * c-decl.c (finish_struct): Use ggc_alloc to allocate | |
| TYPE_LANG_SPECIFIC when garbage collecting. | |
| (lang_mark_tree): Mark TYPE_LANG_SPECIFIC. | |
| (lang_cleanup_tree): Remove. | |
| Thu Sep 9 14:23:02 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * defaults.h (EH_FRAME_SECTION, EH_FRAME_SECTION_ASM_OP): Define here. | |
| * crtstuff.c: Not here. | |
| * dwarf2out.c: Or here. | |
| * libgcc2.c (__do_global_ctors, __do_global_dtors): Handle EH frame | |
| info. | |
| Thu Sep 9 09:40:58 1999 Mark Mitchell <mark@codesourcery.com> | |
| * function.h (free_after_compilation): Remove decl parameter. | |
| (free_varasm_status0: Likewise. | |
| (free_emit_status): Likewise. | |
| (free_stmt_status): Likewise. | |
| (free_after_compilation): Likewise. | |
| (init_lang_status): New variable. | |
| (free_lang_status): Likewise. | |
| * emit-rtl.c (free_emit_status): Make decl parameter implicit. | |
| * function.c (init_lang_status): New variable. | |
| (free_lang_status): Likewise. | |
| (push_function_context_to): Don't set function::decl here. | |
| (free_after_copmilation): Make decl parameter implicit. Call | |
| free_lang_status if defined. | |
| (prepare_function_start): Call init_lang_status if defined. | |
| (init_function_start): Set function::decl here. | |
| * profile.c (output_func_start_profiler): Don't call pushdecl | |
| until we've actually started the function. | |
| * stmt.c (free_stmt_status): Make decl parameter implicit. | |
| * toplev.c (rest_of_compilation): Don't pass decl to | |
| free_after_compilation. | |
| * varasm.c (free_varasm_status): Likewise. | |
| Thu Sep 9 17:23:19 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * except.c (call_get_eh_context): Add root when allocating static | |
| tree variable. | |
| Thu Sep 9 15:24:59 BST 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * arm.c: Include "ggc.h". | |
| (arm_add_gc_roots): New function. | |
| (arm_override_options): Call it. | |
| (aof_pic_entry): Add a GC root for aof_pic_label when it's allocated. | |
| * arm.md (define_asm_attributes): Add a pool_range attribute. | |
| Thu Sep 9 12:32:57 BST 1999 Nathan Sidwell <nathan@acm.org> | |
| * extend.texi (Volatiles): New node. | |
| Thu Sep 9 03:37:31 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-simple.c (IS_MARKED, IGNORE_MARK): New. | |
| (GGC_ANY_MAGIC, GGC_ANY_MAGIC_MARK): New. | |
| (struct ggc_any): Replace `mark' with `magic_mark'. | |
| (ggc_alloc_string): Use memcpy, not bcopy. | |
| (ggc_alloc_any): Set magic_mark. Update bytes_alloced_since_gc. | |
| (ggc_free_{rtx,rtvec,tree,string}): Mark inline. | |
| (ggc_free_any): New. | |
| (ggc_mark_string): Use IGNORE_MARK. Calc back to struct gcc_string. | |
| (ggc_mark): Use IGNORE_MARK. Abort if magic doesn't match. | |
| (ggc_collect): Re-enable collection avoidance. Use GGC_ANY_MARK. | |
| Use IS_MARKED. Use ggc_free_any. | |
| 1999-09-09 Scott Bambrough <scottb@netwinder.org> | |
| * config/arm/linux-elf.h: define NO_IMPLICIT_EXTERN_C | |
| Thu Sep 9 01:55:21 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (main): Always init_ggc. | |
| Wed Sep 8 23:53:22 1999 Richard Henderson <rth@cygnus.com> | |
| * except.c (find_all_handler_type_matches): Free the list if | |
| we found no matches. | |
| * combine.c (SUBST): Break out to a real function do_SUBST. | |
| (SUBST_INT): Likewise. | |
| * gcse.c (free_pre_mem): Free `temp_bitmap'. | |
| (pre_insert): Free `inserted'. | |
| * loop.c (basic_induction_var): Always set `location'. | |
| * function.c (expand_function_end): Add initial_trampoline as a root. | |
| * rtl.h (init_varasm_once): Declare. | |
| * toplev.c (compile_file): Call it. | |
| * ggc-simple.c (ggc_mark_string_ptr): New. | |
| (ggc_add_string_root): New. | |
| (ggc_collect): Disable collection avoidance temporarily. | |
| * ggc.h (ggc_add_string_root): Declare. | |
| * except.c (create_rethrow_ref): Use ggc_alloc_string. | |
| * optabs.c (init_libfuncs): Likewise. | |
| * varasm.c (named_section): Use ggc_alloc_string. | |
| (make_function_rtl): Likewise. | |
| (make_decl_rtl): Likewise. | |
| (assemble_static_space): Likewise. | |
| (assemble_trampoline_template): Likewise. | |
| (output_constant_def): Likewise. | |
| (force_const_mem): Likewise. | |
| (mark_const_hash_entry): New. | |
| (mark_pool_sym_hash_table): New. | |
| (mark_varasm_state): Use it. | |
| (init_varasm_once): New. | |
| * expr.h (init_one_libfunc): Declare. | |
| * optabs.c (init_one_libfunc): New. | |
| (init_optabs): Use it. | |
| * config/gofast.h: Likewise. | |
| * config/sparc/sol2.h (INIT_SUBTARGET_OPTABS): Likewise. | |
| * config/sparc/sparc.h (INIT_TARGET_OPTABS): Likewise. | |
| Thu Sep 9 13:46:06 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * Makefile.in (cppexp.o): Depend on cpphash.h. | |
| * cppexp.c (cpp_lex): Handle `defined (xxx)' for poisoned xxx. | |
| Include cpphash.h. | |
| * cpphash.c (special_symbol): Handle plain `xxx' for poisoned xxx. | |
| * cpplib.c (do_define): Generalize to handle poisoned definitions, | |
| redefining poisoned identifiers, etc. | |
| (do_undef): Don't allow poisoned identifiers to be undefined. | |
| (do_pragma): Add #pragma poison. | |
| (do_xifdef): Handle `#ifdef xxx' for poisoned xxx. | |
| * cccp.c: Add T_POISON node type. | |
| (special_symbol): Handle `defined(xxx)' and plain `xxx' for | |
| poisoned xxx. | |
| (do_define): Generalize to handle poisoned definitions, | |
| redefining poisoned identifiers, etc. | |
| (do_undef): Don't allow poisoned identifiers to be undefined. | |
| (do_pragma): Add #pragma poison. | |
| (do_xifdef): Handle `#ifdef xxx' for poisoned xxx. | |
| * c-pragma.c (handle_pragma_token): Ignore #pragma poison. | |
| * c-pragma.h: Add ps_poison state. We now always have generic | |
| pragmas. | |
| Wed Sep 8 20:30:42 1999 Mark Mitchell <mark@codesourcery.com> | |
| * ggc.h (ggc_alloc): New function. | |
| (ggc_mark): Likewise. | |
| * ggc-simple.c (ggc_any): New structure. | |
| (ggc_status): Add anys. | |
| (n_anys_collected): New variable. | |
| (ggc_alloc): Define. | |
| (ggc_mark): Likewise. | |
| (ggc_collect): Collect the anys. | |
| Wed Sep 8 20:15:14 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-decl.c (mark_binding_level): Make static to match prototype. | |
| Wed Sep 8 16:41:27 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (new_insn_dead_notes): Don't early out for preexisting regs. | |
| Wed Sep 8 16:07:52 1999 Richard Henderson <rth@cygnus.com> | |
| * gengenrtl.c (CONST_DOUBLE_FORMAT): Take the size REAL_ARITHMETIC | |
| will use into account. Expand the max width to 5. | |
| * rtl.c: Likewise. | |
| Wed Sep 8 16:01:14 1999 Richard Henderson <rth@cygnus.com> | |
| * ggc-simple.c (ggc_free_rtx): Poison the correct amount | |
| for the rtx length. | |
| Wed Sep 8 15:23:54 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (call value patterns): Remove the result predicates. | |
| Wed Sep 8 13:35:38 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (stmp-fixinc): Remove extraneous exit 1 from | |
| last change. | |
| Wed Sep 8 15:32:16 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h (sbrk, malloc, calloc, realloc): Backup prototypes | |
| changed from extern char *, to extern PTR. Also fix typo in | |
| NEED_DECLARATION_REALLOC test. | |
| * mips-tdump.c (malloc, calloc, realloc): Don't prototype. | |
| Wed Sep 8 11:40:47 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gansidecl.h (__attribute__, ATTRIBUTE_UNUSED_LABEL, | |
| ATTRIBUTE_UNUSED, ATTRIBUTE_NORETURN, ATTRIBUTE_PRINTF, | |
| ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2, ATTRIBUTE_PRINTF_3, | |
| ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5, GENERIC_PTR): Delete. | |
| * c-decl.c (field_decl_cmp): Use PTR instead of GENERIC_PTR. | |
| * cccp.c (pcfinclude): Likewise. | |
| * global.c (allocno_compare): Likewise. | |
| * haifa-sched.c (rank_for_schedule): Likewise. | |
| * local-alloc.c (qty_sugg_compare_1, qty_compare_1): Likewise. | |
| * reload1.c (hard_reg_use_compare, reload_reg_class_lower): Likewise. | |
| * stupid.c (stupid_reg_compare): Likewise. | |
| * tree.c (_obstack_allocated_p): Likewise. | |
| * varray.h (varray_data_tag, VARRAY_GENERIC_PTR_INIT): Likewise. | |
| 1999-09-08 Bruce Korb autogen@linuxbox.com | |
| * Makefile.in: Give the hapless gperf user a hint about | |
| why "gperf -F" fails. | |
| Wed Sep 8 04:43:22 1999 Richard Henderson <rth@cygnus.com> | |
| * lists.c: Include ggc.h. | |
| (zap_lists): New. | |
| (init_EXPR_INSN_LIST_cache): Install it. | |
| * ggc-simple.c (init_ggc): Absorb the old init. | |
| (ggc_push_context): Use xcalloc. | |
| (ggc_alloc_rtx, ggc_alloc_rtvec, ggc_alloc_tree): Likewise. | |
| (ggc_collect): Add [rvts] tags to the collection stats. | |
| Wed Sep 8 11:14:25 1999 Andreas Schwab <schwab@suse.de> | |
| * cccp.c (main): Fix handling of -include and -imacros options. | |
| Wed Sep 8 02:23:08 1999 Jeffrey A Law (law@cygnus.com) | |
| * cpplib.c (cpp_push_buffer): Fix order of arguments. | |
| Wed Sep 8 04:44:09 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * rtl.h (obstack_alloc_rtx): Removed, it's now static in | |
| genrtl.c. | |
| Wed Sep 8 00:33:43 1999 Alasdair Baird <alasdair@wildcat.demon.co.uk> | |
| * flow.c (insn_dead_p): Use XEXP rather than SUBREG_REG. | |
| * haifa-sched.c (sched_analyze_1): Use XEXP rather than SUBREG_REG | |
| and SET_DEST. Update comment. | |
| Wed Sep 8 18:55:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c: Include ggc.h. | |
| (c4x_add_gc_roots): New function. | |
| (c4x_override_options): Call c4x_add_gc_roots. | |
| Wed Sep 8 00:00:16 1999 Richard Henderson <rth@cygnus.com> | |
| * defaults.h (TARGET_ESC): Move ... | |
| * system.h: ... here, where Linas had it in the first place. Silly me. | |
| Tue Sep 7 23:46:35 1999 Linas Vepstas <linas@linas.org> | |
| * c-common.c: Use ISGRAPH, ISLOWER, toupper. | |
| * c-lex.c, cccp.c, cexp.c, cexp.y, cppexp.c, dwarf2out.c, genattr.c, | |
| genattrtab.c, genemit.c, genextract.c, genpeep.c, tree.c: Likewise. | |
| * system.h (IN_CTYPE_DOMAIN): Define to 1 if HOST_EBCDIC. | |
| * defaults.h (TARGET_ESC): Add default. | |
| Tue Sep 7 23:36:59 1999 Linas Vepstas <linas@linas.org> | |
| * configure.in: add i370-*-openedition, i370-*-mvs and | |
| i370-*-linux targets | |
| Tue Sep 7 23:31:53 1999 Mark Mitchell <mark@codesourcery.com> | |
| * dsp16xxx.c: Include ggc.h | |
| (override_options): Mark GC roots. | |
| * mn10200.c: Include ggc.h. | |
| (asm_file_start): Mark GC roots. | |
| * tahoe.c: Include ggc.h. | |
| (extensible_operand): Mark GC roots. | |
| Tue Sep 7 23:23:15 1999 Linas Vepstas <linas@linas.org> | |
| * README: Add section discussing status of ELF ABI. | |
| * i370.c: Fix misc spelling mistakes. | |
| (i370_label_scan): Updated notes, exception handling. | |
| (i370_function_prolog): Simplify ELF stack handling. | |
| * i370.h: (FIXED_REGISTERS): Free up r12 for ELF. | |
| (STACK_GROWS_DOWNWARD): ELF stack grows down. | |
| (ASM_DECLARE_FUNCTION_NAME): Fix crazy malloc size. | |
| * i370.md: (movdi): Add notes. | |
| (floatsidf2): Use stack not rtca for scratch float area. | |
| (iorsi3): Correct operand constraints. | |
| * x-oe: Restore TAROUTOPTS which are used by pax. | |
| Tue Sep 7 22:39:18 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rs6000.c: Include ggc.h. | |
| (rs6000_add_gc_roots): New function. | |
| (override_options): Call it. | |
| Tue Sep 7 22:09:03 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (alpha_compare): New. | |
| (alpha_compare_op0, alpha_compare_op1, alpha_compare_fp_p): Remove. | |
| * alpha.c: Likewise for the definitions. | |
| (alpha_emit_conditional_branch): Update for alpha_compare. | |
| (alpha_emit_conditional_move): Likewise. | |
| * alpha.md (cmpdf, cmpdi): Likewise. | |
| (setcc patterns): Likewise. Zero alpha_compare after use. | |
| (sne): Optimize (x != 0) into (0U < x). | |
| Tue Sep 7 21:55:02 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (alpha_eh_epilogue_sp_ofs): Remove. | |
| (struct machine_function): Declare; add eh_epilogue_sp_ofs. | |
| (INIT_EXPANDERS): Remove. | |
| * alpha.c: Include ggc.h. | |
| (alpha_eh_epilogue_sp_ofs, alpha_return_addr_rtx): Remove. | |
| (alpha_init_machine_status, alpha_mark_machine_status): New. | |
| (override_options): Install them. | |
| (struct machine_function): Moved to alpha.h. | |
| (alpha_save_machine_status, alpha_restore_machine_status): Remove. | |
| (alpha_init_expanders): Remove. | |
| (alpha_return_addr): Adjust to use current_function->machine. | |
| (alpha_ra_ever_killed): Likewise. | |
| (alpha_expand_epilogue): Likewise. | |
| * alpha.md (eh_epilogue): Likewise. | |
| Wed Sep 8 14:34:42 1999 Ian Piumarta <piumarta@prof.inria.fr> | |
| Melissa O'Neill <oneill@cs.sfu.ca> | |
| Geoffrey Keating <geoffk@cygnus.com> | |
| * config/rs6000/rs6000.c (first_reg_to_save): Don't save fixed or | |
| call-used registers (call-saved registers must still be contiguous | |
| and end with r31, of course). | |
| Tue Sep 7 21:41:38 1999 Richard Henderson <rth@cygnus.com> | |
| * c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to. | |
| (self_promoting_type_p): Delete. | |
| (self_promoting_args_p): Move ... | |
| * c-common.c: ... here. | |
| (c_common_nodes_and_builtins): Initialize lang_type_promotes_to. | |
| (simple_type_promotes_to): New. | |
| * builtins.c (lang_type_promotes_to): New. | |
| (expand_builtin_va_arg): Use it to give diagnostic for illegal types. | |
| * c-tree.h (C_PROMOTING_INTEGER_TYPE_P): Move ... | |
| * c-common.h: ... here. | |
| (self_promoting_args_p, simple_type_promotes_to): Declare. | |
| * c-decl.c (duplicate_decls): Use simple_type_promotes_to. | |
| (grokdeclarator): Likewise. | |
| * tree.h (lang_type_promotes_to): Declare. | |
| Tue Sep 7 17:15:21 1999 Mark Mitchell <mark@codesourcery.com> | |
| Add some machine-dependent GC roots. | |
| * sparc.c: Include ggc.h. | |
| (sparc_add_gc_roots): New function. | |
| (mark_ultrasparc_pipeline_state): Likewise. | |
| (override_options): Call sparc_add_gc_roots. | |
| * pa.c: Include ggc.h. | |
| (pa_add_gc_roots): New function. | |
| (mark_deferred_plabels): Likewise. | |
| (override_options): Call pa_add_gc_roots. | |
| * mips.c: Include ggc.h. | |
| (mips_add_gc_roots): New function. | |
| (override_options): Use it. | |
| Tue Sep 7 11:39:41 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cpperror.c (cpp_file_line_for_message): Constify a char*. | |
| * cppexp.c (parse_number, parse_charconst, cpp_lex, | |
| cpp_parse_expr): Add static prototypes. | |
| (parse_charconst): Don't cast away const-ness. | |
| (token): Constify a char*. | |
| * cppfiles.c (file_name_list, include_hash, find_include_file, | |
| finclude, initialize_input_buffer): Constify a char*. | |
| (file_cleanup, find_position): Add static prototypes. | |
| * cpphash.c (macro_cleanup, macarg, timestamp, special_symbol, | |
| collect_expansion): Add static prototypes. | |
| (cpp_install, create_definition, monthnames): Constify a char*. | |
| * cpphash.h (cpp_install): Likewise. | |
| * cppinit.c (known_suffixes, default_include, | |
| dump_special_to_buffer, NAME, cpp_start_read, cpp_finish): Likewise. | |
| (base_name, dump_special_to_buffer, initialize_dependency_output): | |
| Add static prototypes. | |
| * cpplib.c (my_strerror): Constify a char*. | |
| (null_underflow, null_cleanup, skip_comment, copy_comment, | |
| copy_rest_of_line, handle_directive, pass_thru_directive, | |
| get_directive_token, read_line_number, cpp_print_file_and_line, | |
| v_cpp_error, v_cpp_warning, v_cpp_error_with_line, | |
| v_cpp_warning_with_line, detect_if_not_defined, | |
| consider_directive_while_skipping): Add static prototypes. | |
| (pass_thru_directive, check_macro_name, cpp_expand_to_buffer, | |
| cpp_pedwarn_with_file_and_line): Constify a char*. | |
| * cpplib.h (cpp_options, include_hash, progname, definition, | |
| cpp_pedwarn_with_file_and_line, cpp_expand_to_buffer, | |
| check_macro_name, cpp_pfatal_with_name, cpp_file_line_for_message, | |
| find_include_file, deps_output, include_hash): Constify a char*. | |
| * cppmain.c (progname): Constify. | |
| (main): Add prototype. Use return, not exit. | |
| * fix-header.c (fatal, add_symbols, lookup_std_proto, write_lbrac, | |
| recognized_macro, check_macro_names, read_scan_file, write_rbrac, | |
| inf_skip_spaces, inf_read_upto, inf_scan_ident, inf_scan_ident, | |
| check_protection): Add static prototype. | |
| (xfree): Remove. | |
| (progname, recognized_macrom, recognized_extern): Constify a char*. | |
| (main): Add prototype. | |
| * gen-protos.c (progname): Constify a char*. | |
| Tue Sep 7 00:47:52 1999 Mark Mitchell <mark@codesourcery.com> | |
| * emit-rtl.c (free_emit_status): Take decl as a parameter. | |
| (init_emit_once): Add more GC roots. | |
| * except.c (mark_func_eh_entry): New function. | |
| (mark_eh_node): Mark false_label and rethrow_label. | |
| (init_eh): Add more GC roots. | |
| * function.c (free_after_compilation): Take decl as a parameter. | |
| Call free_stmt_status. | |
| (mark_function_state): Don't assume x_parm_reg_stack_loc is | |
| non-NULL. | |
| * function.h (free_after_compilation): Change prototype. | |
| (free_varasm_status): Likewise. | |
| (free_emit_status): Likewise. | |
| (free_stmt_status): New function. | |
| * ggc-simple.c (rtx, vecs, trees, strings, bytes_alloced_since_gc): | |
| Remove, replacing with ... | |
| (ggc_status): New structure. | |
| (ggc_chain): New variable. | |
| (init_gcc): Define. | |
| (ggc_push_context): New function. | |
| (ggc_pop_context): Likewise. | |
| (ggc_alloc_rtx): Adjust for use of ggc_chain. | |
| (ggc_alloc_rtvec): Likewise. | |
| (ggc_alloc_tree): Likewise. | |
| (ggc_alloc_string): Likewise. | |
| (ggc_mark_rtx): Mark NOTE_SOURCE_FILE and NOTE_RANGE_INFO. | |
| (ggc_mark_tree): Give language-dependent code a chance to mark | |
| `x' nodes. | |
| (ggc_mark_tree_varray): Handle empty arrays. | |
| (ggc_collect): Adjust for use of ggc_chain. Clear | |
| bytes_alloced_since_last_gc. | |
| * ggc.h (ggc_pop_context): New function. | |
| (ggc_push_context): Likewise. | |
| * print-tree.c (print_node): Don't print obstacks when GC'ing. | |
| * stmt.c (free_stmt_status): New function. | |
| (init_stmt_for_function): Clear last_expr_value. | |
| * toplev.c (rest_of_compilation): Always call free_after_compilation. | |
| Conditionalize call to ggc_collect. | |
| (main): Call init_ggc. | |
| * tree.c (push_obstacks): Do the push, even when GC'ing. | |
| (push_obstacks_nochange): Likewise. | |
| (pop_obstacks): Liekwise. | |
| * varasm.c (free_varasm_status): Take decl as a parameter. | |
| Tue Sep 7 08:15:49 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.h (MULTILIB_ENDIAN_DEFAULT) : New macro. | |
| (MULTILIB_ENDIAN_DEFAULT) : Use the new macro. | |
| * config/mips/elf64.h (MULTILIB_DEFAULTS) : Use the new macro. | |
| * config/mips/r3900.h (MULTILIB_DEFAULTS) : Use the new macro. | |
| Tue Sep 7 03:42:45 1999 Mark Klein (mklein@dis.com) | |
| * pa/x-pa-mpeix: New file for the MPE port. | |
| * pa/quadlib.asm: New file for long double support. | |
| * configure.in: Add hppa1.0-*-mpeix for MPE port. | |
| * configure: Rebuilt. | |
| Tue Sep 7 10:08:40 1999 Andreas Schwab <schwab@suse.de> | |
| * final.c (shorten_branches): Fix last change. | |
| Tue Sep 7 00:30:32 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (ASM_OUTPUT_DOUBLE_INT): Delete. | |
| Mon Sep 6 22:44:47 1999 Jeffrey A Law (law@cygnus.com) | |
| * Merge from gcc2 snapshot Jan 9, 1999. See FSFChangeLog for | |
| details. | |
| Mon Sep 6 22:31:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-aux-info.c (concat): Don't define. | |
| * cccp.c (my_strerror): Likewise. All callers changed to use | |
| xstrerror instead. | |
| (do_include): Call xstrdup, not xmalloc/strcpy. | |
| (grow_outbuf): Don't check if xrealloc returns NULL, it can't. | |
| (xmalloc, xrealloc, xcalloc, xstrdup): Don't define. | |
| * collect2.c (my_strsignal): Likewise. All callers changed to use | |
| strsignal instead. | |
| (locatelib): Call xstrdup, not xmalloc/strcpy. | |
| * 1750a.h (ASM_OUTPUT_INTERNAL_LABEL): Call xmalloc, not malloc. | |
| * dsp16xx.c (override_options): Call xstrdup, not xmalloc/strcpy. | |
| * i370.h (ASM_DECLARE_FUNCTION_NAME): Call xmalloc, not malloc. | |
| * mips.c (build_mips16_call_stub): Call xstrdup, not xmalloc/strcpy. | |
| * cppinit.c (cpp_options_init): Call xcalloc, not xmalloc/bzero. | |
| * dwarfout.c (dwarfout_init): Call concat, not xmalloc/strcpy/... | |
| * except.c (new_eh_region_entry): Call xmalloc/xrealloc, not | |
| malloc/realloc. | |
| (find_all_handler_type_matches): Likewise. Don't check return | |
| value. | |
| (get_new_handler, init_insn_eh_region, process_nestinfo): Call | |
| xmalloc, not malloc. | |
| (init_eh_nesting_info): Likewise. Call xcalloc, not xmalloc/bzero. | |
| * gcc.c (xstrerror, xmalloc, xrealloc): Don't define. | |
| (init_spec): Call xcalloc, not xmalloc/bzero. | |
| (set_spec): Call xstrdup, not save_string. | |
| (record_temp_file): Call xstrdup, not xmalloc/strcpy. | |
| (find_a_file): Call xstrdup, not xmalloc/strcpy. | |
| (process_command): Call xstrdup, not save_string. | |
| (main): Call xcalloc, not xmalloc/bzero. | |
| * gcov.c (xmalloc): Don't define. | |
| (create_program_flow_graph): Call xcalloc, not xmalloc/bzero. | |
| (scan_for_source_files): Call xstrdup, not xmalloc/strcpy. | |
| (output_data): Call xcalloc, not xmalloc/bzero. | |
| * haifa-sched.c (schedule_insns): Call xcalloc, not xmalloc/bzero. | |
| * mips-tdump.c (xmalloc): Don't define. | |
| (print_symbol): Call xmalloc, not malloc. | |
| (read_tfile): Call xcalloc, not calloc. | |
| * mips-tfile.c (xfree, my_strsignal, xmalloc, xcalloc, xrealloc): | |
| Don't define. All callers of xfree/my_strsignal changed to use | |
| free/strsignal instead. | |
| (allocate_cluster): Call xcalloc, not calloc. | |
| * objc/objc-act.c (lang_init): Call concat, not xmalloc/strcpy/... | |
| Fix memory leak, free allocated memory. | |
| * prefix.c (translate_name): Call xstrdup, not save_string. | |
| (update_path): Likewise. | |
| * profile.c (branch_prob): Call xstrdup, not xmalloc/strcpy. | |
| * protoize.c (xstrerror, xmalloc, xrealloc, xfree, savestring2): | |
| Don't define. Callers of xfree/savestring2 changed to use | |
| free/concat instead. | |
| * reload1.c (reload): Call xcalloc, not xmalloc/bzero. | |
| (init_elim_table): Likewise. | |
| * resource.c (init_resource_info): Likewise. | |
| * stupid.c (stupid_life_analysis): Likewise. | |
| * toplev.c (xmalloc, xcalloc, xrealloc, xstrdup): Don't define. | |
| (open_dump_file): Call concat, not xmalloc/strcpy/... | |
| (clean_dump_file): Likewise. | |
| (compile_file): Call xstrdup, not xmalloc/strcpy. | |
| Mon Sep 6 15:04:55 1999 Richard Henderson <rth@cygnus.com> | |
| * v850.h (EXPAND_BUILTIN_VA_ARG): New. | |
| * v850.c (v850_va_arg): New. | |
| Tue Sep 7 09:36:01 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * haifa-sched.c: Tidy comments. | |
| Mon Sep 6 14:30:13 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * Makefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o. | |
| (c-parse.o, c-decl.o, c-lang.o, c-lex.o, c-common.o, | |
| $(out_object_file)): Depend on ggc.h. | |
| * c-common.c: Include "ggc.h". | |
| (combine_strings): If doing GC, use ggc_alloc_string. | |
| * c-decl.c: Include "ggc.h". | |
| (ggc_p): Define with value 0. | |
| (mark_binding_level): New function. | |
| (init_decl_processing): Add GC roots. | |
| (mark_c_function_context): New function. | |
| (lang_mark_false_label_stack): New function. | |
| (lang_mark_tree): New function. | |
| (lang_cleanup_tree): New function. | |
| * c-lang.c: Include "ggc.h". | |
| (lang_init): Call c_parse_init. | |
| * c-lex.c: Include "ggc.h". | |
| (check_linenum): If doing GC, don't copy filenames to permanent | |
| obstack. | |
| * c-parse.in: Include "ggc.h". | |
| (c_parse_init): New function. | |
| * c-tree.h (c_parse_init, mark_c_function_context): Declare. | |
| * objc/Make-lang.in (objc-parse.o): Depend on ggc.h. | |
| * except.c (mark_eh_state): Mark more state. | |
| * function.c (mark_function_state): Likewise. | |
| * ggc-simple.c (ggc_alloc_rtvec): Bring in sync with non-gc version. | |
| (ggc_alloc_string) [GGC_DUMP]: Fix typo. | |
| * toplev.c (mark_file_stack): New function. | |
| (compile_file): If doing GC, use ggc_alloc_string on input filename. | |
| (main): Add root for input_file_stack. | |
| * i386.c: Include "ggc.h". | |
| (ix86_mark_machine_status): New function. | |
| (override_options): Set mark_machine_status. | |
| Mon Sep 6 15:26:23 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * tree.c (copy_node): Copy node contents also if doing GC. | |
| Mon Sep 6 08:42:06 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * collect2.c (scan_libraries): Fix double-thinko :-). | |
| Mon Sep 6 02:42:36 1999 Jeffrey A Law (law@cygnus.com) | |
| * collect2.c (scan_libraries): Fix thinko. | |
| * cse.c (delete_trivially_dead_insns): Do not skip the last | |
| insn if it is a real insn. | |
| Sun Sep 5 18:57:42 1999 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (ggc-simple.o): Depend on hash.h. | |
| * ggc.h (ggc_add_tree_hash_table_root): Declare. | |
| (ggc_mark_tree_varray): Likewise. | |
| (ggc_mark_tree_hash_table): Likewise. | |
| * ggc-simple.c: Include hash.h. | |
| (ggc_mark_tree_hash_table_ptr): New function. | |
| (ggc_mark_tree_hash_table_entry): Likewise. | |
| (ggc_mark_tree_hash_table): Likewise. | |
| (ggc_add_tree_hash_table_root): Likewise. | |
| * varray.h (const_equiv_data): Use struct rtx_def *, rather than | |
| rtx, when defining fields. | |
| Sun Sep 5 18:57:42 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | |
| * profile.c (output_func_start_profiler): Remove apparently | |
| nonsensical call to start_sequence. | |
| Sun Sep 5 17:34:33 1999 Richard Henderson <rth@cygnus.com> | |
| * clipper/clipper.c (clipper_va_start): Fix typos. | |
| * pyr/pyr.c (pyr_build_va_list, pyr_va_start, pyr_va_arg): New stubs. | |
| * spur/spur.c (spur_build_va_list, spur_va_start): New stubs. | |
| (spur_va_arg): New stub. | |
| * configure.in: Comment out pyramid. | |
| Sun Sep 5 19:11:01 1999 Michael Meissner <meissner@cygnus.com> | |
| * i386.h (MASK_{DEBUG_{ADDR,ARG},INTEL_SYNTAX}): Move so these | |
| don't conflict with the bits that win32, cygwin, and dgux | |
| defines. | |
| Sun Sep 5 09:31:56 1999 Richard Henderson <rth@cygnus.com> | |
| Bernd Schmidt <bernds@cygnus.co.uk> | |
| * integrate.c (function_cannot_inline_p): Do not inline | |
| functions with forced labels. | |
| Sun Sep 5 00:35:17 1999 Richard Henderson <rth@cygnus.com> | |
| Bernd Schmidt <bernds@cygnus.co.uk> | |
| Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (ggc-simple.o): Depend on varray.h. | |
| (rtl.o): Depend on ggc.h. | |
| (genattrtab.o): Depend on ggc.h. | |
| (print-tree.o): Likewise. | |
| (fold-const.o): Likewise. | |
| * emit-rtl.c (sequence_element_free_list): Remove, and all references. | |
| (make_insn_raw): Don't cache insns when GC'ing. | |
| (emit_insn_before): Likewise. | |
| (emit_insn_after): Likewise. | |
| (emit_insn): Likewise. | |
| (start_sequence): Use xmalloc to allocate the sequence_stack. | |
| (end_sequence): Add free to free it. | |
| (gen_sequence): Don't cache insns when GC'ing. | |
| (clear_emit_caches): Don't use sequence_element_free_list. | |
| (init_emit): Use xcalloc, not xmalloc+bzero. | |
| * fold-const.c (size_int_wide): Kill the cache, when GC'ing. | |
| * function.c (pop_function_context_from): Use free to free the | |
| fixup_var_refs_queue. | |
| (put_reg_into_stack): Allocate it with xmalloc. | |
| * genattrtab.c: Include ggc.h. | |
| (operate_exp): Don't use obstack_free when GC'ing. | |
| (simplify_cond): Likewise. | |
| (simplify_text_exp): Likewise. | |
| (optimize_attrs): Likewise. | |
| * gengenrtl.c (gendef): Use ggc_alloc_rtx to allocate RTL, when | |
| GC'ing. | |
| (gencode): Generate a #include for ggc.h. | |
| * ggc-callbacks.c (ggc_p): Define it to zero. | |
| * ggc-none.c (ggc_p): Likewise. | |
| * ggc-simple.c: Include varray.h. | |
| (ggc_mark_tree_varray): New function. | |
| (ggc_add_tree_varray_root): Likewise. | |
| (ggc_mark_tree_varray_ptr): Likewise. | |
| * ggc.h (ggc_p): Declare. | |
| (varray_head_tag): Likewise. | |
| (ggc_add_tree_varray_root): Declare. | |
| * print-tree.c (print_node): Don't check for TREE_PERMANENT | |
| inconsistencies when GC'ing. | |
| * rtl.c: Include ggc.h. | |
| (rtvec_alloc): Use ggc_alloc_rtvec when GC'ing. | |
| (rtx_alloc): Use ggc_alloc_rtx when GC'ing. | |
| (rtx_free): Don't call obstack_free when GC'ing. | |
| * toplev.c (rest_of_compilation): Call ggc_collect after every | |
| pass, if GC'ing. | |
| * tree.c (push_obstacks): Do nothing, if GC'ing. | |
| (pop_obstacks_nochange): Likewise. | |
| (pop_obstacks): Likewise. | |
| (make_node): Use ggc_alloc_tree when GC'ing. | |
| (copy_node): Likewise. | |
| (get_identifier): Use ggc_alloc_string when GC'ing. | |
| (build_string): Likewise. | |
| (make_tree_vec): Use ggc_alloc_tree when GC'ing. | |
| (tree_cons): Likewise. | |
| (build1): Likewise. | |
| (type_hash_canon): Don't call obstack_free when GC'ing. | |
| Sat Sep 4 21:52:32 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (schedule_block): Use next_nonnote_insn instead | |
| of NEXT_INSN when examining speculative insns for SCHED_GROUP_P. | |
| Sat Sep 4 20:40:19 1999 Richard Henderson <rth@cygnus.com> | |
| Bernd Schmidt <bernds@cygnus.co.uk> | |
| Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (stor-layout.o): Depend on ggc.h. | |
| (expr.o): Depend on ggc.h. | |
| (profile.o): Depend on ggc.h. | |
| (stor-layout.o): Depend on ggc.h. | |
| * emit-rtl.c (init_emit_once): Add gc roots. | |
| * expr.c: Include ggc.h. | |
| (emit_block_move): Add gc roots. | |
| (clear_storage): Likewise. | |
| * expr.h (init_stor_layout_once): New function. | |
| * profile.c: Include ggc.h. | |
| (init_arc_profiler): profiler_label is a root. | |
| * scan.c (make_sstring_space): Trust xrealloc to function | |
| correctly with first parameter NULL. | |
| * stor-layout.c: Include ggc.h. | |
| (set_sizetype): Add gc root. | |
| (init_stor_layout_once): New function. | |
| * toplev.c (compile_file): Call it. | |
| Sat Sep 4 19:26:25 1999 Richard Henderson <rth@cygnus.com> | |
| Bernd Schmidt <bernds@cygnus.co.uk> | |
| Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (tree.o): Depend on ggc.h. | |
| (varasm.o): Likewise. | |
| (function.o): Likewise. | |
| (stmt.o): Likewise. | |
| (except.o): Likewise. | |
| (optabs.o): Likewise. | |
| (emit-rtl.o): Likewise. | |
| * emit-rtl.c: Include ggc.h. | |
| (sequence_element_free_list): Remove, and all references. | |
| (mark_sequence): New functions. | |
| (mark_emit_state): New function. | |
| * except.c: Include ggc.h. | |
| (mark_eh_node, mark_eh_stack, mark_eh_queue): New functions. | |
| (mark_tree_label_node): New functions. | |
| (mark_eh_state): New function. | |
| * function.c: Include ggc.h. | |
| (mark_temp_slot, mark_function_chain): New functions. | |
| (mark_function_state): New function. | |
| (init_function_once): New function. | |
| * function.h (init_function_once): New function. | |
| * ggc-callbacks.c (lang_mark_false_label_stack): New function. | |
| * ggc.h (label_node): Declare. | |
| (eh_status, emit_status, stmt_status, varasm_status): Likewise. | |
| (lang_mark_false_label_stack): New function. | |
| (mark_temp_slot): Remove declaration. | |
| (mark_function_chain): Likewise. | |
| (mark_eh_state): Adjust prototype. | |
| (mark_stmt_state, mark_emit_state, mark_varasm_state, mark_optab): | |
| Likewise. | |
| * optabs.c: Include ggc.h. | |
| (mark_optab): New function. | |
| (init_optabs): Add gc roots. | |
| * stmt.c: Include ggc.h. | |
| (mark_cond_nesting, mark_loop_nesting): New functions. | |
| (mark_block_nesting, mark_case_nesting, mark_goto_fixup): Likewise. | |
| (mark_stmt_state): New function. | |
| * toplev.c (compile_file): Call init_function_once. | |
| * tree.c: Include ggc.h. | |
| (type_hash): Move declaration earlier in file. | |
| (TYPE_HASH_SIZE, type_hash_table): Likewise. | |
| (init_obstacks): Add gc roots. | |
| (mark_type_hash): New function. | |
| * varasm.c: Include ggc.h. | |
| (mark_pool_constant): New function. | |
| (mark_varasm_state): New function. | |
| Sat Sep 4 22:28:56 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * ggc-simple.c (ggc_root, ggc_collect): Wrap prototype with PROTO. | |
| Sat Sep 4 18:01:45 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-decl.c (struct language_function): Renamed from struct c_function. | |
| Delete elt NEXT. | |
| (c_function_chain): Delete. | |
| (push_c_function_context): New arg F. Don't warn about nested | |
| functions here. Fill LANGUAGE elt of F. Delete code to update | |
| c_function_chain. Don't call push_function_context. | |
| (pop_c_function_context): New arg F. Restore from there instead of | |
| from c_function_chain. Don't call pop_function_context. Clear out | |
| LANGUAGE field of F when done. | |
| * c-lang.c: Include "function.h" | |
| (lang_init): Initialize save_lang_status and restore_lang_status. | |
| * c-parse.in (nested_function, nested_function_notype): Warn about | |
| nested functions. Call push_function_context/pop_function_context | |
| instead of the _c_ variants. | |
| * c-tree.h (push_c_function_context, pop_c_function_context): Update | |
| prototype. | |
| * Makefile.in (c-lang.o): Update dependencies. | |
| * emit-rtl.c (init_emit): Use xmalloc to allocate regno_reg_rtx, | |
| regno_pointer_flag, regno_pointer_align. | |
| (gen_reg_rtx): Use xrealloc to enlarge them. | |
| (free_emit_status): New function. | |
| * function.c (mark_machine_status, mark_lang_status): New variables. | |
| (assign_stack_local_1): Renamed from assign_outer_stack_local. Merge | |
| in some bits from assign_stack_local. All callers changed to use new | |
| name. | |
| (assign_stack_local): Just call assign_stack_local_1. | |
| (free_after_compilation): New function. | |
| (put_reg_into_stack): Simplify to always call assign_stack_local_1. | |
| (trampoline_address): Likewise. | |
| (assign_parms): Use xcalloc/xrealloc to allocate parm_reg_stack_loc. | |
| (prepare_function_start): Explicitly clear some more variables. | |
| * function.h (struct function): New elt can_garbage_collect. | |
| (mark_machine_status, mark_lang_status): Declare variables. | |
| (free_after_compilation, free_emit_status, free_varasm_status, | |
| init_varasm_status): Declare functions. | |
| * toplev.c (rest_of_compilation): Call free_after_compilation when | |
| done with the current function. | |
| * varasm.c (free_varasm_status): New function. | |
| Sat Sep 4 17:15:13 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.h (EXPAND_BUILTIN_VA_START): Define. | |
| (EXPAND_BUILTIN_VA_ARG): Define. | |
| * sparc.c (sparc_va_start): New. | |
| (sparc_va_arg): New. | |
| Sun Sep 5 11:11:59 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (DBR_OUTPUT_SEQEND): Use XVECEXP not XEXPs. | |
| Sun Sep 5 10:13:19 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (CALLER_SAVE_PROFITABLE): Disable. | |
| Sat Sep 4 13:44:01 1999 Mark Mitchell <mark@codesourcery.com> | |
| * Makefile.in (C_AND_C_OBJS): Add gcc-callbacks.o. | |
| (OBJS): Add $(GGC). | |
| (ggc-callbacks.o): New target. | |
| * ggc-callbacks.c: New file. | |
| Sat Sep 4 22:53:13 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * expr.h: Collapse individual optab and libfunc vars to arrays. | |
| (optab_index, libfunc_index): New enumerations. | |
| (optab_table, libfunc_table): New arrays. | |
| Add accessor macros for both. | |
| * optabs.c (optab_table, libfunc_table): New. | |
| Delete declarations for individual optab and libfunc vars. | |
| Sat Sep 4 12:57:17 1999 Richard Henderson <rth@cygnus.com> | |
| * i386/sco5.h (RETURN_POPS_ARGS): Name change ix86_return_pops_args. | |
| Sat Sep 4 11:19:52 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (GGC, GGC_LIB): New. | |
| (HOST_RTL): Include ggc-none.o. | |
| (ggc-simple.o): New target. | |
| (ggc-none.o): Likewise. | |
| * tree.h (tree_common): Add gc_mark. | |
| * rtl.h (struct rtx_def): Steal a bit from code to make gc_mark. | |
| (struct rtvec_def): Add gc_mark. | |
| * emit-rtl.c (global_rtl): Update static initializers to contain | |
| enough initializers. | |
| * ggc.h, ggc-none.c, ggc-simple.c: New files. | |
| * toplev.c (gc_time): New variable. | |
| (all_time): New variable. | |
| (compile_file): Print gc time. | |
| (print_time): Calculate percentage of the whole. | |
| Sat Sep 4 13:11:01 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| Change obstack memory management and varasm constant pool handling so | |
| that nested functions are treated like any other functions. | |
| * function.c (init_machine_status): New variable. | |
| (push_function_context_to): Set contains_functions for the outer | |
| function. Don't call save_varasm_status. | |
| (pop_function_context_from): Don't call restore_varasm_status. Don't | |
| set current_function_contains_functions. | |
| (prepare_function_start): Call init_varasm_status rather than | |
| init_const_rtx_hash_table. Call (*init_machine_status) if the pointer | |
| is non-null. | |
| * function.h (struct function) Add field varasm. Delete fields | |
| inline_obstacks, inl_emit, const_rtx_hash_table, first_pool, | |
| last_pool, const_rtx_sym_hash_table, pool_offset, const_double_chain. | |
| (init_machine_status): Declare. | |
| (save_varasm_status, restore_varasm_status): Delete declarations. | |
| (save_tree_status, restore_tree_status): Delete last argument. | |
| * integrate.c (initialize_for_inline): Lose arg COPY. Delete copying | |
| code. All callers changed. | |
| (copy_decl_list, copy_decl_tree, copy_decl_rtls, copy_for_inline, | |
| save_constants_in_decl_trees, restore_constants, save_constants, | |
| save_for_inline_eh_labelmap, save_for_inline_copying): Delete | |
| functions. | |
| (inlining): New variable. | |
| (reg_map, label_map, insn_map, orig_asm_operands_vector, | |
| copy_asm_operands_vector, copy_asm_constraints_vector): Delete | |
| variables. | |
| (save_for_inline_nocopy): Don't save constants. | |
| Don't set inl_emit field in current_function. | |
| (expand_inline_function): Use emit field, not inl_emit, of the inlined | |
| function. Set new variable inlining before | |
| calling copy_rtx_and_substitute. | |
| (copy_rtx_and_substitute): In MEM and SYMBOL_REF cases, handle | |
| constant pool references if inlining is nonzero. | |
| Delete ADDRESS and (most of the) CONST cases. | |
| (output_inline_function): Save and restore current_function/ | |
| current_function_decl. Delete restore_constants code. Don't call | |
| init_const_rtx_hash_table. | |
| * output.h (init_const_rtx_hash_table): Don't declare. | |
| * rtl.h (struct function): Declare. | |
| (get_pool_constant_for_function, get_pool_mode_for_function): Declare. | |
| * toplev.c (rest_of_compilation): Don't treat nested functions or | |
| functions containing them specially. Delete all code to deal with | |
| save_for_inline_copying. | |
| * tree.c (toplev_inline_obstacks, extra_inline_obstacks, | |
| inline_obstacks): Delete variables. | |
| (save_tree_status): Lose arg CONTEXT. All callers changed. | |
| Simply allocate a new function_maybepermanent_obstack for the new | |
| function, delete all the special cases. | |
| Don't save inline_obstacks. | |
| (restore_tree_status): Lose arg CONTEXT. All callers changed. | |
| Delete special handling for function_maybepermanent_obstack; simply | |
| free it if empty. | |
| Don't restore inline_obstacks. | |
| (permanent_allocation): Delete code that frees inline_obstacks. | |
| (print_inline_obstack_statistics): Delete function. | |
| (dump_tree_statistics): Don't call it. | |
| * varasm.c (struct varasm_status): New. | |
| (const_rtx_hash_table, const_rtx_sym_hash_table, first_pool, | |
| last_pool, pool_offset, const_double_chain): Delete global | |
| variables, replace with accessor macros. | |
| (immed_double_const): Don't walk const_double_chain outside a | |
| function, but don't treat nested functions specially anymore. | |
| (immed_real_const_1): Likewise. | |
| (clear_const_double_mem): Don't treat nested functions specially. | |
| (init_const_rtx_hash_table): Deleted, code moved to init_varasm_status. | |
| (save_varasm_status, restore_varasm_status): Delete functions. | |
| (init_varasm_status): New function. | |
| (force_const_mem): Don't treat nested functions specially. | |
| (find_pool_constant): Accept new arg F, search for constants in | |
| that function's pool rather than the current one. All callers | |
| changed. | |
| (get_pool_constant_for_function, get_pool_mode_for_function): New | |
| functions. | |
| * i386.c (init_386_machine_status): New function, mostly from | |
| clear_386_stack_locals. | |
| (struct machine_functions): Rename element names to avoid name | |
| clashes. | |
| (pic_label_rtx, pic_label_name, i386_stack_locals): New accessor | |
| macros, replacing global variables. | |
| (clear_386_stack_locals, save_386_machine_status, | |
| restore_386_machine_status): Delete functions. | |
| (override_options): Initialize init_machine_status. | |
| * i386.h (INIT_EXPANDERS): Delete macro. | |
| (save_386_machine_status, restore_386_machine_status, | |
| clear_386_stack_locals): Delete declarations. | |
| Sat Sep 4 16:56:28 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (rptb_init): Renamed from *rptb_init. | |
| (doloop_begin): Simplify pattern and use emit_jump_insn. | |
| (doloop_end): Simplify pattern, switch operand order, | |
| and use emit_jump_insn. | |
| Fri Sep 3 19:02:38 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | |
| * function.h (struct function): Add new element LANGUAGE. | |
| (save_lang_status): Declare new variable. | |
| (restore_lang_status): Likewise. | |
| * function.c (save_lang_status): Define. | |
| (restore_lang_status): Likewise. | |
| (push_function_context_to): Call language-specific save function. | |
| (pop_function_context_from): Call language-specific restore function. | |
| Fri Sep 3 01:16:18 1999 Alasdair Baird <alasdair@wildcat.demon.co.uk> | |
| * i386.md (movsf_1): Check REG_P before use of REGNO. | |
| (movdf_1): Likewise. | |
| (movxf_1): Likewise. | |
| (extendsfdf2): Likewise. | |
| (extendsfxf2): Likewise. | |
| (extenddfxf2): Likewise. | |
| Sat Sep 4 11:37:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_emit_move_sequence): Do not force large | |
| constants into memory. | |
| (c4x_shiftable_constant): New function. | |
| * config/c4x/c4x.c (LEGITIMATE_CONSTANT_P): Allow any CONST_INT. | |
| (c4x_shiftable_constant): Declare. | |
| * config/c4x/c4x.md (loadqi_big_constant, loadhi_big_constant, | |
| ashlqi3_noclobber): Add new patterns and associated splitters. | |
| Fri Sep 3 16:22:17 1999 Richard Henderson <rth@cygnus.com> | |
| * dbxout.c (dbxout_init): Use xcalloc instead of xmalloc+bzero. | |
| * dwarf2out.c (dwarf2out_frame_init): Likewise. | |
| * final.c (shorten_branches): Likewise. | |
| * global.c (global_alloc): Likewise. | |
| * haifa-sched.c (build_control_flow): Likewise. | |
| * stmt.c (check_for_full_enumeration_handling): Likewise. | |
| (estimate_case_costs): Likewise. | |
| Fri Sep 3 15:49:56 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rtl.h (RTL_CHECKC2): Fix typo in last change. | |
| Fri Sep 3 15:13:34 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (propagate_block): Use XEXP not SET_DEST for a USE. | |
| (recompute_reg_usage): Likewise. | |
| * rtlanal.c (find_regno_fusage): Likewise. | |
| * rtl.c (rtl_check_failed_code1): New function. | |
| (rtl_check_failed_code2): New. | |
| * rtl.h (RTL_CHECK1, RTL_CHECK2, RTVEC_ELT): Parenthesize args. | |
| (RTL_CHECKC1, RTL_CHECKC2): New. | |
| (XC*): New accessor macros. | |
| (NOTE_*, LABEL_NAME, LABEL_NUSES, ADDRESSOF_REGNO): Use them. | |
| (ADDRESSOF_DECL, JUMP_LABEL, LABEL_REFS, LABEL_NEXTREF): Likewise. | |
| (CONTAINING_INSN, REGNO, INTVAL, SUBREG_REG, SUBREG_WORD): Likewise. | |
| (ASM_OPERANDS_*, MEM_ALIAS_SET, SET_SRC, SET_DEST): Likewise. | |
| (TRAP_*, RANGE_INFO_*): Likewise. | |
| Fri Sep 3 15:10:20 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (tlink.o): Don't depend on toplev.h. | |
| * collect2.c (c_file, o_file, export_file, import_file, ldout, | |
| output_file, nm_file_name, ldd_file_name, strip_file_name, | |
| c_file_name, prefix_list, libexts, is_ctor_dtor, find_a_file, | |
| add_prefix, prefix_from_env, prefix_from_string, do_wait, | |
| fork_execute, maybe_unlink, add_to_list, | |
| extract_init_priority, write_list, dump_list, | |
| dump_prefix_list, write_list_with_asm, write_c_file, | |
| write_c_file_stat, write_c_file_glob, scan_prog_file, | |
| scan_libraries, is_in_list, resolve_lib_name, use_import_list, | |
| ignore_library, extract_string, notice, dump_file, target_machine, | |
| collect_wait, collect_execute, libname, locatelib, aix_std_libs, | |
| read_file, print_load_command): Constify a char*. | |
| (fdopen, error, fatal, fatal_perror): Don't prototype. | |
| (my_strerror): Remove. All callers use xstrerror instead. | |
| (xcalloc, xmalloc, xrealloc, xstrdup, putenv): Remove definitions. | |
| (main): Add prototype. Constify lots of char* ptrs. Change calls | |
| to xcalloc/strcpy/strcat/... to one call to concat. | |
| (main, scan_prog_file, scan_libraries): Use an intermediate | |
| `const char **' to build an argv array. | |
| (mapfile, libselect, libcompare, locatelib): Add prototypes. | |
| * collect2.h (collect_execute, collect_wait, dump_file, | |
| file_exists): Constify a char*. | |
| (ldout, c_file_name, temporary_obstack, permanent_obstack, | |
| temporary_firstobj, vflag, debug): Add extern declarations. | |
| (fancy_abort, error, notice, fatal, fatal_perror): Add prototypes. | |
| * tlink.c: Don't include toplev.h. | |
| (vflag, debug, ldout, c_file_name, temporary_obstack, | |
| permanent_obstack, temporary_firstobj): Don't declare. | |
| (tlink_execute, frob_extension, symbol_hash_lookup, | |
| file_hash_lookup, demangled_hash_lookup, tlink_init, freadsym, | |
| recompile_files, read_repo_files, demangle_new_symbols, | |
| scan_linker_output): Constify a char*. | |
| (symbol_hash_newfunc, file_hash_newfunc, demangled_hash_newfunc, | |
| do_tlink): Mark parameters with ATTRIBUTE_UNUSED. | |
| Fri Sep 3 18:09:24 1999 Andrew Haley <aph@cygnus.com> | |
| * config/m68k/m68kelf.h: Set USE_GAS; this makes gcc generate jbsr | |
| (relative) rather than jsr (absolute) subroutine call insns. | |
| * config/m68k/m68k-coff.h: Ditto. | |
| Fri Sep 3 17:24:31 1999 Richard Earnshaw <rearnsha@arm.com> | |
| * arm.c (note_invalid_constants): No need to ignore ASMs, we can | |
| now rework these too. | |
| (arm_reorg): If an insn can't reach the end of the current pool, | |
| ensure that we emit that pool before the insn. | |
| Fri Sep 3 09:14:32 1999 Marc Espie <espie@tetto.liafa.jussieu.fr> | |
| * tlink.c (scan_linker_output): Skip the initial underscore in | |
| a mangled name if appropriate. | |
| Fri Sep 3 01:28:33 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * objc/objc-act.c (objc_tree_code_type, objc_tree_code_length, | |
| objc_tree_code_name, synth_id_with_class_suffix, warn_with_method, | |
| error_with_ivar, gen_declarator, create_builtin_decl, | |
| my_build_string, generate_descriptor_table, generate_ivars_list, | |
| generate_dispatch_table, check_protocols, TAG_GETCLASS, | |
| TAG_GETMETACLASS, TAG_MSGSEND, TAG_MSGSENDSUPER, TAG_EXECCLASS, | |
| dump_base_name, lang_decode_option, build_encode_expr, | |
| start_class, finish_class, encode_pointer, really_start_method, | |
| gen_declaration, dump_interface, handle_class_ref, handle_impent): | |
| Constify. | |
| (objc_demangle, objc_printable_name, generate_struct_by_value_array): | |
| Add static prototypes. | |
| (build_objc_string_decl, build_selector_reference_decl, | |
| encode_bitfield, build_class_reference_decl): Remove unused | |
| parameter, all callers changed. | |
| (maybe_objc_method_name): Mark with ATTRIBUTE_UNUSED. | |
| (objc_printable_name): Likewise. Change second parameter to type int. | |
| (init_objc): Use memcpy, not bcopy, to avoid casts. | |
| Thu Sep 2 21:49:52 1999 Richard Henderson <rth@cygnus.com> | |
| * reload1.c (eliminate_regs_in_insn): Avoid eliminating the | |
| reg notes on a deleted insn. | |
| * gcse.c (hash_expr_1): Use XWINT on a CONST_DOUBLE. | |
| Thu Sep 2 20:18:12 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.c (ix86_attr_length_default): Handle TYPE_FXCH. | |
| Thu Sep 2 22:00:08 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * stmt.c (expand_asm_operands): Fix index into inout_mode when | |
| reading it. | |
| Thu Sep 2 13:00:48 1999 Richard Henderson <rth@cygnus.com> | |
| * stmt.c (expand_asm_operands): Invoke MD_ASM_CLOBBERS if present. | |
| * tm.texi (MD_ASM_CLOBBERS): Document it. | |
| Thu Sep 2 10:22:40 1999 Richard Henderson <rth@cygnus.com> | |
| * dwarf2out.c (dwarf2out_line): Constify `lastfile'. | |
| * except.c (expand_rethrow): Remove unused variable. | |
| * expr.c (do_jump_by_parts_greater_rtx): Likewise. | |
| * flow.c (replace_insns): Likewise. | |
| (create_edge_list, verify_edge_list): Likewise. | |
| * gcse.c (cprop_cc0_jump): Protect declaration with HAVE_cc0. | |
| * genemit.c (gen_expand): Only emit `operands[N]' decl if there | |
| is special code to run. | |
| (main): Don't define operands to emit_operand. | |
| * genrecog.c (main): Don't emit an empty peephole2_insn function. | |
| * rtl.h (NOTE_BASIC_BLOCK): Use X0BBDEF. | |
| * alpha/alpha.h (normal_memory_operand): Declare. | |
| (reg_no_subreg_operand): Declare. | |
| * alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC. | |
| Thu Sep 2 10:19:20 1999 Richard Henderson <rth@cygnus.com> | |
| * c-parse.in (compstmt_primary_start): New, broken out of first | |
| part of compstmt handling in primary. | |
| (primary): Use it. Add an error clause. | |
| (compstmt_nostart): Renamed from compstmt; remove all | |
| initial invocations of compstmt_start. | |
| (compstmt): New. | |
| Thu Sep 2 01:35:50 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * protoize.c (gen_aux_info_file): Let pexecute call choose_temp_base if | |
| needed. | |
| Thu Sep 2 00:43:59 1999 Finn Hakansson <finn@axis.com> | |
| * combine.c (simplify_shift_const): Remove extra semicolon. | |
| * dwarf2out.c (remove_AT): Likewise. | |
| * expmed.c (expand_mult): Likewise. | |
| * gcov.c (create_program_flow_graph): Likewise. | |
| * reorg.c (mostly_true_jump): Likewise. | |
| Thu Sep 2 00:06:43 1999 Jeffrey A Law (law@cygnus.com) | |
| * fold-const.c (fold_range_test): Do not try to fold the range | |
| test if the rhs or lhs has side effects. | |
| * combine.c (simplify_rtx): Recognize another case of a synthesized | |
| sign extension. | |
| * varasm.c (mark_constant_pool): When marking indirect references, | |
| only look at SYMBOL_REFs. | |
| * except.c (expand_fixup_region_end): Do not peek at | |
| INSN_UID (node->entry->outer_context) for flag_new_exceptions. | |
| Thu Sep 2 13:52:53 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * flags.h: New variables align_loops, align_loops_log, | |
| align_jumps, align_jumps_log, align_labels, align_labels_log, | |
| align_functions, align_functions_log. | |
| * toplev.c: Define them. | |
| (f_options): Handle -falign-* when they have no argument. | |
| (main): Add logic to set variables for -falign-functions, | |
| -falign-jumps, -falign-labels, -falign-loops. | |
| Make it -fsched-verbose=<n> and -finline-limit=<n>. | |
| (display_help): Change help to match options. | |
| * final.c (LABEL_ALIGN): Default to align_labels_log. | |
| (LABEL_ALIGN_MAX_SKIP): Default to align_labels-1. | |
| (LOOP_ALIGN): Default to align_loops_log. | |
| (LOOP_ALIGN_MAX_SKIP): Default to align_loops-1. | |
| (LABEL_ALIGN_AFTER_BARRIER): Default to align_jumps_log. | |
| (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Default to align_jumps-1. | |
| * varasm.c (assemble_start_function): Handle align_functions. | |
| * config/sparc/sparc.h: Don't declare sparc_align_*. | |
| Don't provide LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN. | |
| (DEFAULT_SPARC_ALIGN_FUNCS): Delete; take functionality into | |
| sparc.c. | |
| (FUNCTION_BOUNDARY): Fix incorrect use---it's not just a request, | |
| it's a promise. | |
| * config/sparc/sparc.c: Delete sparc_align_loops, | |
| sparc_align_jumps, sparc_align_funcs and the corresponding string | |
| variables. | |
| (sparc_override_options): Default align_functions on ultrasparc. | |
| Delete -malign-* handling. | |
| * config/mips/mips.c (override_options): On 64-bit targets, | |
| try to align code to 64-bit boundaries. | |
| (print_operand): New substitution, %~, | |
| which aligns labels to align_labels_log. | |
| * config/mips/mips.md (div_trap_normal): Use %~. | |
| (div_trap_mips16): Likewise. | |
| (abssi): Likewise. | |
| (absdi2): Likewise. | |
| (ffssi2): Likewise. | |
| (ffsdi2): Likewise. | |
| (ashldi3_internal): Likewise. | |
| (ashrdi3_internal): Likewise. | |
| (lshrdi3_internal): Likewise. | |
| (casesi_internal): Likewise. | |
| Wed Sep 1 21:13:48 1999 Richard Henderson <rth@cygnus.com> | |
| Merge new ia32 backend from the branch! | |
| * i386.h, i386.c, i386.md, reg-stack.c, i386/unix.h: Many changes. | |
| See ChangeLog.P2 on new_ia32_branch for details. | |
| * rtl.h (stack_regs_mentioned_p): Delete prototype. | |
| * i386/cygwin.h (SUBTARGET_PROLOGUE): No more do_rtl. | |
| * i386/win32.h (SUBTARGET_PROLOGUE): Likewise. | |
| * i386/gas.h (ASM_FILE_START): Define. | |
| * i386/winnt.c (i386_pe_valid_decl_attribute_p): Update | |
| for name change of ix86_valid_decl_attribute_p. | |
| (i386_pe_valid_type_attribute_p): Similarly. | |
| Wed Sep 1 18:21:23 1999 Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (init_emit_once): Don't use GET_MODE_WIDER_MODE | |
| to step through CC modes. | |
| Wed Sep 1 20:18:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * regmove.c (fixup_match_1): Don't move INSN in front of P if | |
| it would end up in the shadow of a live flags regsiter. | |
| Wed Sep 1 11:32:00 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c: Fix many indentation problems. | |
| * reload.c: Likewise. | |
| Tue Aug 31 22:08:03 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * alias.c (non_local_reference_p): Constify fmt. | |
| Tue Aug 31 23:19:35 1999 Michael Meissner <meissner@cygnus.com> | |
| * config/i386/xm-cygwin.h (HAVE_DOS_BASED_FILE_SYSTEM): Define. | |
| Tue Aug 31 16:44:52 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (delete_trivially_dead_insns): Do not delete stores to | |
| the internal_arg_pointer. | |
| Tue Aug 31 13:35:42 1999 Richard Henderson <rth@cygnus.com> | |
| Merge peephole2 from new_ia32_branch: | |
| * Makefile.in (STAGESTUFF): Add *.peephole2. | |
| (mostlyclean): Likewise. | |
| (recog.o): Depend on resource.h. | |
| * final.c (peephole): Conditionalize decl on HAVE_peephole. | |
| (final_scan_insn): Likewise for the invocation of peephole. | |
| * genconfig.c (main): Look for peephole and peephole2 patterns. | |
| Emit HAVE_peephole* accordingly. | |
| * genpeep.c (main): Conditionalize entire output on HAVE_peephole. | |
| * flags.h (flag_peephole2): Declare. | |
| * toplev.c: New pass peephole2. New flag -fpeephole2. | |
| * genattrtab.c (main): Count DEFINE_PEEPHOLE2. | |
| * gencodes.c (main): Likewise. | |
| * genextract.c (main): Likewise. | |
| * genoutput.c (main): Likewise. | |
| * genemit.c (max_operand_1): Look for the max scratch operand. | |
| (gen_rtx_scratch): New. | |
| (gen_exp): Use it, and pass on new arg subroutine_type. | |
| (gen_expand): Take max scratch into account. | |
| (gen_split): Emit peephole2 functions. | |
| (output_peephole2_scratch): New. | |
| (main): Include hard-reg-set.h and resource.h. Handle peephole2. | |
| * genrecog.c (routine_type): Add PEEPHOLE2. | |
| (IS_SPLIT): New. | |
| (make_insn_sequence): Match outer parallel for peep2. Discard | |
| top level scratches and dups. | |
| (add_to_sequence): New args insn_type and top. Update all callers. | |
| Handle toplevel peep2 matching insns. | |
| (write_subroutine): Handle peep2. | |
| (write_tree_1): Likewise. | |
| (write_tree): Likewise. | |
| (main): Likewise. | |
| (change_state): New arg afterward. Update all callers. | |
| Handle matching separate insns. | |
| * recog.c (recog_next_insn): New. | |
| (peephole2_optimize): New. | |
| * rtl.def (DEFINE_PEEPHOLE2): New. | |
| * resource.c (find_free_register): New argument last_insn. Use it | |
| to find a register available through the entire span. | |
| * resource.h (find_free_register): Update prototype. | |
| Tue Aug 31 11:51:06 1999 Jim Kingdon <http://developer.redhat.com> | |
| * i386.c (output_strlen_unroll): Don't write xops[7] | |
| label if it wasn't set. | |
| 1999-08-31 12:44 -0700 Zack Weinberg <zack@bitmover.com> | |
| * cpplib.c (struct directive): Const-ify name pointer and | |
| function pointer prototype. | |
| (validate_else, do_define, do_line, do_include, do_undef, | |
| do_error, do_pragma, do_ident, do_if, do_xifdef, do_else, | |
| do_elif, do_endif, do_sccs, do_assert, do_unassert, | |
| do_warning): Const-ify second arg. | |
| (directive_table): Mark const. Reorder entries by frequency | |
| of usage, record statistics. | |
| 1999-08-31 12:20 -0700 Zack Weinberg <zack@bitmover.com> | |
| * rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and | |
| bounds- check RTL accesses if --enable-checking. | |
| (RTVEC_ELT): Bounds check if --enable-checking. | |
| (XWINT, XINT, XSTR, XEXP, XVEC, XMODE, XBITMAP, XTREE, | |
| XBBDEF): Use RTL_CHECK1/RTL_CHECK2 as appropriate. | |
| (XVECEXP, XVECLEN): Define in terms of XVEC, RTVEC_ELT, and | |
| GET_NUM_ELEM. | |
| (X0WINT, X0INT, X0STR, X0EXP, X0VEC, X0MODE, X0BITMAP, X0TREE, | |
| X0BBDEF, X0ADVFLAGS): New macros for accessing '0' slots of RTXes. | |
| (ADDR_DIFF_VEC_FLAGS): Use X0ADVFLAGS. | |
| (NOTE_SOURCE_FILE): Use X0STR. | |
| (NOTE_BLOCK_NUMBER, NOTE_EH_HANDLER, LABEL_NUSES, | |
| MEM_ALIAS_SET): Use X0INT. | |
| (NOTE_RANGE_INFO, NOTE_LIVE_INFO, NOTE_BASIC_BLOCK, | |
| JUMP_LABEL, LABEL_REFS, LABEL_NEXTREF, CONTAINING_INSN): | |
| Use X0EXP. | |
| * real.h (CONST_DOUBLE_CHAIN): Use X0EXP. | |
| * rtl.c (copy_rtx, copy_most_rtx): Copy '0' slots with X0WINT. | |
| (rtl_check_failed_bounds, rtl_check_failed_type1, | |
| rtl_check_failed_type2, rtvec_check_failed_bounds): New | |
| functions. | |
| (fancy_abort): Fix comment. | |
| * cse.c (canon_hash): Read CONST_DOUBLE data slots with XWINT. | |
| (cse_insn): Decrement LABEL_NUSES for jump target before | |
| deleting jump insn. | |
| * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use X0EXP for slot 1. | |
| * final.c (alter_subreg): Compute regno before changing x to | |
| REG; set REGNO(x) after changing it. | |
| * flow.c (count_basic_blocks): Use XWINT to inspect EH_REGION | |
| notes containing CONST_INTs. | |
| (delete_eh_regions): Use NOTE_EH_HANDLER. | |
| * function.c (put_reg_into_stack): Make reg a MEM before | |
| initializing it. | |
| (fixup_var_refs_insns): Save REG_NOTES (insn) in case we | |
| delete insn. | |
| (gen_mem_addressof): Make reg a MEM before initializing it. | |
| * integrate.c (copy_rtx_and_substitute): Copy '0' slots with | |
| X0WINT. | |
| * local-alloc.c (update_equiv_regs): Zap REG_NOTES before | |
| deleting an insn, not after. | |
| (block_alloc): Only look at PATTERN(insn) if we have to, and | |
| only if it's format class 'i'. | |
| * loop.c (check_dbra_loop): Check bl->biv->add_val is a | |
| CONST_INT before using its INTVAL. | |
| * print-rtl.c (print_rtx): Use X0STR. | |
| * regmove.c (fixup_match_1): Don't look at PATTERN of | |
| non-class-'i' insn chain elements. | |
| * reload.c (loc_mentioned_in_p): Take address of | |
| in->fld[1].rtx directly. | |
| * reload1.c (reload): Change reg to a MEM before initializing | |
| it. | |
| * varasm.c (mark_constant_pool): Skip CONST_DOUBLES, which | |
| have no names. | |
| * config/i386/i386.md (decrement_and_branch_if_zero): Fix typo. | |
| Fri Aug 20 13:43:41 1999 Andrew Haley <aph@cygnus.com> | |
| * config/mips/mips.c (machine_dependent_reorg): Force a | |
| barrier to output the local constant pool if a barrier hasn't | |
| been found at a natural point in the instruction stream. | |
| Mon Aug 30 22:04:36 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-parse.in (language_string): Constify. | |
| * dwarf2out.c (language_string): Remove declaration. | |
| * dwarfout.c (language_string): Likewise. | |
| * toplev.c (language_string, init_parse, finish_parse): Likewise. | |
| * tree.h (language_string, init_parse, finish_parse): Declare. | |
| * i386/sun386.h (language_string): Remove declaration. | |
| * mips.h (language_string): Likewise. | |
| * nextstep.h (language_string): Likewise. | |
| * nextstep21.h (language_string): Likewise. | |
| * rs6000.c (language_string): Likewise. | |
| Mon Aug 30 20:56:08 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (OBJS, PROTO_OBJS): Remove getpwd.o. | |
| (getpwd.o): Remove target. | |
| * getpwd.c: Delete file. Its in libiberty now. | |
| * dbxout.c (getpwd): Don't prototype. | |
| * dwarf2out.c (getpwd): Likewise | |
| * dwarfout.c (getpwd): Likewise | |
| * final.c (getpwd): Likewise. | |
| * protoize.c (getpwd): Likewise. | |
| Mon Aug 30 20:21:34 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cse.c: (fold_rtx): Cast to HOST_WIDE_INT in left shift. | |
| Mon Aug 30 16:07:49 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (new_insn_dead_notes): Use sets_reg_or_subreg not | |
| mark_set_resources. | |
| Mon Aug 30 12:23:53 1999 Jim Wilson <wilson@cygnus.com> | |
| * fixinc/Makefile.in (subdir): New. | |
| (fixincl.x, inclhack.sh, fixincl.sh): Use cp instead of $(CP). | |
| (Makefile): New. | |
| Mon Aug 30 01:02:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * emit-rtl.c (copy_rtx_if_shared): A MEM which references | |
| virtual_stack_vars_rtx or virtual_incoming_args_rtx can not | |
| be shared. | |
| * invoke.texi: Fix typo. | |
| * dwarf2out.c (mem_loc_descriptor): New argument MODE. All callers | |
| changed. Handle autoincrement addressing modes. | |
| * integrate.c (copy_rtx_and_substitute): Handle internal_arg_pointer | |
| just like we would the virtual incoming args register when | |
| integrating. | |
| Sun Aug 29 23:17:54 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.h (ASM_FILE_START): Specify complete filename, including | |
| path, in .file directive. | |
| Sun Aug 29 05:06:43 1999 Russ Allbery <rra@stanford.edu> | |
| * gcc.texi (External Bugs): Remove obsolete note about Perl on | |
| SunOS. | |
| 1999-08-29 08:38 -0700 Zack Weinberg <zack@bitmover.com> | |
| * stdbool.h: Make the typedef name _Bool, with bool a #defined | |
| alias. | |
| Sun Aug 29 09:36:50 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * tree.c (tree_code_name): Constify a char*. | |
| * tree.h (tree_code_name, decl_printable_name): Likewise. | |
| * function.h (struct function): Likewise. | |
| * toplev.c (decl_name, decl_printable_name): Likewise. | |
| * vax/vms.h (MAYBE_VMS_FUNCTION_PROLOGUE): Likewise. | |
| * objc/objc-act.c (decl_printable_name): Remove redundant prototype. | |
| (init_objc): Remove function pointer cast. | |
| Sun Aug 29 05:01:17 1999 John David Anglin <dave@hiauly1.hia.nrc.ca> | |
| * pa.md (interspace_jump): New pattern. | |
| (builtin_longjmp): New expander. | |
| 1999-08-29 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * fp-bit.c (add, sub, multiply, divide, compare, _eq_f2, _ne_f2, | |
| _gt_f2, _ge_f2, _lt_f2, _le_f2, float_to_si, float_to_usi, negate, | |
| sf_to_df, df_to_sf): Fix potential problem with alias analysis. | |
| Sun Aug 29 04:30:52 1999 John Wehle (john@feith.com) | |
| * jump.c (delete_prior_computation): Also check calls | |
| to constant functions. Don't bother checking for a | |
| REG_UNUSED note before adding it. | |
| (delete_computation): Handle multi-word hard registers | |
| when synthesizing missing REG_DEAD notes for a register | |
| which is both set and used by an insn. | |
| 1999-08-29 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * loop.c (this_loop_info): New variable. | |
| (loop_has_call, loop_has_volatile, loop_has_tablejump, | |
| loop_continue, loops_enclosed): Replace with fields in this_loop_info. | |
| All uses updated. | |
| (prescan_loop, strength_reduce): New argument loop_info. All callers | |
| updated. | |
| (scan_loop): New variable loop_info, initialize to address of | |
| this_loop_info. | |
| (prescan_loop): Set loop_info->vtop if find NOTE_INSN_LOOP_VTOP. | |
| Delete variable loop_has_multiple_exit targets and replace with | |
| field in this_loop_info. | |
| (find_and_verify_loops): Rename this_loop to this_loop_num. | |
| (strength_reduce): Delete loop_iteration_info. Replace variable | |
| loop_info with function argument of same name. | |
| (insert_bct): Rework test for loop being completely unrolled. | |
| * loop.h (struct loop_info): New fields num, loops_enclosed, | |
| has_call, has_volatile, has_tablejump, has_multiple_exit_targets, | |
| has_indirect_jump, and cont. Redefine use of unroll_number. | |
| (loop_unroll_number): Delete. | |
| * unroll.c (unroll_loop): Store loop unroll count in unroll_number | |
| field of loop_info. | |
| (loop_iterations): Delete variable vtop and instead use | |
| loop_info->vtop computed in prescan_loop. | |
| Sun Aug 29 03:27:23 1999 Scott Weikart <scott@igc.apc.org> | |
| * fix-header.c (main): Do not pass a null pointer to strcmp. | |
| Sun Aug 29 03:18:48 1999 William Bader (william@nscs.fast.net) | |
| * configure.in (i[34567]86-*-sco3.2v4*): Target does not truncate | |
| filenames. | |
| * configure: Rebuilt. | |
| Sat Aug 28 19:36:05 1999 Jeffrey A Law (law@cygnus.com) | |
| * jump.c (jump_optimize_1): Do not delete assignments to | |
| internal_arg_pointer. | |
| * cse.c (delete_trivially_dead_insns): Always consider a set of | |
| the internal_arg_pointer live. | |
| Sat Aug 28 16:24:31 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (flow_delete_insn_chain): Rename from delete_insn_chain. | |
| (update_life_info) [REG_WAS_0]: Search the original insns rather | |
| than the new insns for the note. Fix typos finding note_dest. | |
| If no dest found, discard the note rather than abort. | |
| [REG_NOALIAS]: Handle as REG_NO_CONFLICT. | |
| (replace_insns): Remove the old insn list after update_life_info | |
| not before. | |
| Sat Aug 28 16:20:12 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_analyze): Clear LOG_LINKS before calling | |
| sched_analyze_insn. | |
| (sched_analyze_1): Let add_dependence care for not adding dups. | |
| (sched_analyze_2): Likewise. | |
| (add_branch_dependences): Likewise. | |
| Sat Aug 28 15:58:16 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/winnt.c (export_list): New type. | |
| (exports_head): Rename to | |
| (export_head): this. | |
| (i386_pe_record_exported_symbol): Add is_data flag. | |
| (i386_pe_asm_file_end): Emit directive for exported variables. | |
| * i386/cygwin.h (i386_pe_record_exported_symbol): Update | |
| prototype. | |
| * i386/cygwin.h (ASM_OUTPUT_COMMON): Specify symbol type. | |
| (ASM_DECLARE_OBJECT_NAME): Likewise. | |
| (ASM_DECLARE_FUNCTION_NAME): Likewise. | |
| * i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise. | |
| Fri Aug 27 15:35:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (fold_rtx): Work around bug in Sun V5.0 compilers. | |
| * pa.c (emit_move_sequence): Do not stop on SUBREG_WORD of an | |
| operand. | |
| Fri Aug 27 14:01:19 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * config/openbsd.h: Define SET_ASM_OP. | |
| * tm.texi: cross-reference SET_ASM_OP in the index. | |
| 1999-08-27 13:27 -0700 Zack Weinberg <zack@bitmover.com> | |
| * rtl.c: Define CONST_DOUBLE_FORMAT to the appropriate format | |
| for a CONST_DOUBLE, at compile time. Initialize rtx_length | |
| and class_narrowest_mode at compile time. Kill init_rtl. | |
| Mark rtx_length, mode_class, mode_size, mode_unit_size, | |
| mode_wider_mode, mode_mask_array, class_narrowest_mode, and | |
| rtx_format as const. Kill all references to EXTRA_CC_MODES or | |
| EXTRA_CC_NAMES. | |
| * rtl.def (CONST_DOUBLE): Use CONST_DOUBLE_FORMAT macro for | |
| format. | |
| * rtl.h: Declare rtx_length and rtx_format as const. | |
| * machmode.def: Define CC(). Use CC() to define CCmode. If | |
| EXTRA_CC_MODES is defined, expand it here. | |
| * machmode.h: Declare mode_class, mode_size, mode_unit_size, | |
| mode_wider_mode, mode_mask_array, and class_narrowest_mode as | |
| const. Kill all references to EXTRA_CC_MODES. | |
| * toplev.c: Don't prototype or call init_rtl. | |
| * optabs.c: Don't call init_mov_optab. | |
| * genemit.c: Don't generate init_mov_optab. Don't call | |
| init_rtl. | |
| * gengenrtl.c: Duplicate calculation of CONST_DOUBLE_FORMAT | |
| here. | |
| * genattr.c, genattrtab.c, gencodes.c, genconfig.c, | |
| genextract.c, genflags.c, genopinit.c, genoutput.c, genpeep.c, | |
| genrecog.c: Don't call init_rtl. | |
| * arc.h, arm.h, c4x.h, i386.h, i960.h, m88k.h, pa.h, pdp11.h, | |
| rs6000.h, sparc.h: Don't define EXTRA_CC_NAMES. Use CC() in | |
| definition of EXTRA_CC_MODES. | |
| * md.texi: Kill ref to EXTRA_CC_NAMES. | |
| * tm.texi: Document new way to define EXTRA_CC_MODES. | |
| * genrecog.c: Do not look up the name of a define_split. | |
| (Unrelated bugfix.) | |
| Fri Aug 27 17:03:42 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/v850/v850.md: Fix typo introduced by previous delta. | |
| Fri Aug 27 09:48:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcc.c (fatal): Make definition static to match prototype. | |
| Fri Aug 27 10:33:35 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * combine.c (get_last_value): Don't look for earlier sets if the last | |
| known set is somewhere in between the insns being combined. | |
| Fri Aug 27 10:03:12 BST 1999 Nathan Sidwell <nathan@acm.org> | |
| * configure.in: Don't use shell ! to negate exit codes | |
| * configure: Regenerate | |
| Fri Aug 27 09:36:17 1999 Andreas Schwab <schwab@suse.de> | |
| * function.c (assign_stack_temp_for_type): Fix change of Mar 5 for | |
| the fact that ALIGN is measured in bits, not bytes. | |
| 1999-08-27 00:27 -0700 Zack Weinberg <zack@bitmover.com> | |
| * errors.c: New file; defines functions error, warning, and | |
| fatal, variables have_error and progname. | |
| * errors.h: New file; prototypes and decls for stuff in errors.c. | |
| * Makefile: Add rules to build errors.o and | |
| $(HOST_PREFIX)errors.o. Link genconfig, gencodes, genemit, | |
| genopinit, genrecog, genextract, genpeep, genattr, and | |
| genoutput with errors.o. Add errors.h to deps of genconfig.o, | |
| gencodes.o, genemit.o, genopinit.o, genrecog.o, genextract.o, | |
| genpeep.o, genattr.o, and genoutput.o. | |
| * genconfig.c, gencodes.c, genemit.c, genopinit.c, genrecog.c, | |
| genextract.c, genpeep.c, genattr.c: Include errors.h. Don't | |
| define or prototype fatal. Set progname at beginning of main. | |
| * genoutput.c: Likewise, and don't define or prototype error | |
| either. | |
| * c-typeck.c (c_expand_start_case): Return immediately if exp | |
| is an ERROR_MARK. | |
| * fold-const.c (operand_equal_p): Return immediately if arg1 | |
| or arg0 are ERROR_MARKs. | |
| * stor-layout.c (layout_type [case RECORD_TYPE]): Ignore | |
| fields of type ERROR_MARK when calculating if the record can | |
| go in a register. | |
| Fri Aug 27 01:03:48 1999 Jim Kingdon <http://developer.redhat.com> | |
| with much help from Jeffrey A Law and Richard Henderson | |
| * i386.md: In the 6 insns which call output_fix_trunc, | |
| earlyclobber operands[0]. | |
| Fri Aug 27 01:01:51 1999 Philip Blundell <pb@nexus.co.uk> | |
| * jump.c (duplicate_loop_exit_test): Call reg_scan_update after | |
| creating new registers. | |
| 1999-08-26 23:09 -0700 Zack Weinberg <zack@bitmover.com> | |
| * i386.h: Declare ix86_cpu_string, ix86_arch_string, | |
| i386_reg_alloc_order, i386_regparm_string, | |
| i386_align_loops_string, i386_align_jumps_string, | |
| i386_align_funcs_string, i386_preferred_stack_boundary_string, | |
| and i386_branch_cost_string as type "const char *". | |
| * i386.c: Define all above strings as type "const char *". | |
| Thu Aug 26 20:36:30 1999 Jim Wilson <wilson@cygnus.com> | |
| * dwarf2out.c (output_aranges): Check DWARF_OFFSET_SIZE not PTR_SIZE | |
| when emitting alignment padding. Emit padding byte of 0 instead of 4. | |
| Thu Aug 26 18:11:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (array_type_nelts): Don't create RTL_EXPRs from | |
| SAVE_EXPRs unless the SAVE_EXPRs have already been expanded. | |
| Thu Aug 26 19:33:23 1999 Jim Wilson <wilson@cygnus.com> | |
| * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Add default definition. | |
| (debug_dwarf): Add DWARF2_ASM_LINE_DEBUG_INFO support. | |
| (dwarf2out_line, dwarf2out_finish): Likewise. | |
| * tm.texi (DWARF2_ASM_LINE_DEBUG_INFO): Add documentation. | |
| Thu Aug 26 16:10:56 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * tree.c (lang_unsave_expr_now) : Correct return type. | |
| * tree.h (lang_unsave_expr_now) : Same. | |
| Thu Aug 26 13:12:29 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (cint_ok_for_move): Use CONST_INT_OK_FOR_LETTER_P macros | |
| instead of duplicating code. | |
| Thu Aug 26 18:32:32 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * gcse.c (hash_scan_insn): Don't scan obvious no-ops. | |
| 1999-08-26 09:42 -0700 Zack Weinberg <zack@bitmover.com> | |
| * tree.h: fancy_abort always takes three args. | |
| * resource.c: Move include of system.h before toplev.h. | |
| Thu Aug 26 09:46:16 1999 Nick Clifton <nickc@cygnus.com> | |
| * dwarf2out.c (mem_loc_descriptor): Accept LABEL_REFs as well | |
| as SYMBOL_REFs. | |
| 1999-08-25 22:10 -0700 Zack Weinberg <zack@bitmover.com> | |
| * system.h: Don't redefine abort or trim_filename. | |
| * rtl.h: Define abort to fancy_abort (__FILE__, __LINE__, 0) | |
| or fancy_abort (__FILE__, __LINE__, __FUNCTION__) depending on | |
| whether or not __FUNCTION__ is available. | |
| * tree.h: Duplicate rtl.h's definition of abort, for files | |
| that don't include rtl.h. Delete all code to perform type | |
| checking with a compiler other than GCC. | |
| * varray.h: Delete all code to perform type checking with a | |
| compiler other than GCC. Make VARRAY_CHECK() always evaluate | |
| its arguments exactly once, using a statement expression. | |
| Adjust the VARRAY_<type> accessor macros to match. | |
| * toplev.h (fatal_insn, fatal_insn_not_found): Kill. | |
| (_fatal_insn, _fatal_insn_not_found): New fns, take info on | |
| caller's location. Define fatal_insn and fatal_insn_not_found | |
| as macros that use _fatal_insn and _fatal_insn_not_found. | |
| (fancy_abort, trim_filename): Kill prototypes. | |
| * rtl.c (trim_filename): Move here from toplev.c. | |
| (fancy_abort): New function. | |
| (DIR_SEPARATOR): Provide default definition. | |
| * tree.c (tree_check_failed, tree_class_check_failed): Go | |
| through fancy_abort. | |
| (tree_check, tree_class_check, cst_or_constructor_check, | |
| expr_check): Delete. | |
| * varray.c (varray_check_failed): New function. | |
| * toplev.c (fatal_insn, fatal_insn_not_found): Replace with | |
| _fatal_insn and _fatal_insn_not_found. Go through | |
| fancy_abort. | |
| (trim_filename, fancy_abort): Delete. | |
| * builtins.c (expand_builtin_args_info): Report ICE with abort. | |
| * except.c (start_catch_handler): Report ICE with error/abort | |
| combo. | |
| * final.c (output_operand_lossage): Likewise. | |
| * flow.c (verify_flow_info): Likewise. | |
| * gcc.c: Prototype fatal. | |
| * gengenrtl.c: Undef abort after including rtl.h not system.h. | |
| * genattr.c, genattrtab.c, genemit.c, genextract.c, | |
| genflags.c, genopinit.c, genoutput.c, genpeep.c, genrecog.c: | |
| Don't define fancy_abort. | |
| Wed Aug 25 17:56:59 1999 Richard Henderson <rth@cygnus.com> | |
| * optabs.c (emit_cmp_and_jump_insns): Be more thorough in | |
| canonization. | |
| Wed Aug 25 15:35:55 1999 Richard Henderson <rth@cygnus.com> | |
| * m88k.h (VERSION_INFO2): Kill. | |
| (VERSION_STRING): Kill. | |
| (TM_RCS_ID): Kill. | |
| (VERSION_INFO1): Tidy. | |
| (TARGET_VERSION): Update. | |
| * m88k/dgux.h (VERSION_INFO2): Kill. | |
| (ASM_FIRST_LINE): Adjust for death of VERSION_STRING. | |
| * m88k/luna.h (VERSION_INFO1): Tidy. | |
| * m88k/sysv4.h (VERSION_INFO1): Likewise. | |
| * m88k.c (out_rcs_id, tm_rcs_id): Kill. | |
| (output_file_start): Adjust for death of VERSION_STRING. | |
| 1999-08-25 13:51 -0700 Jim Meyering <meyering@ascend.com> | |
| * cpplib.c (detect_if_not_defined): New function. | |
| (do_if): Use it to detect potential once-only headers. | |
| Wed Aug 25 14:00:18 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * c-common.c (combine_strings): Always set TREE_CONSTANT. | |
| Wed Aug 25 15:27:22 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * combine.c (nonzero_bits) : Allow single-ly set registers to be | |
| anywere in the function only if they are pseudos and set before | |
| being used (not live at the start of the function). | |
| (num_sign_bit_copies) : Same. | |
| (get_last_value_validate) : Same. | |
| (get_last_value) : Same. | |
| Wed Aug 25 11:13:29 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.c (express_from): Try harder to unify (* c N) and (* c M) | |
| where N and M are constant and N is an integer multiple of M. | |
| Wed Aug 25 13:55:47 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * sbitmap.h (sbitmap_intersection_of_succs): Add prototype. | |
| (sbitmap_intersection_of_preds, sbitmap_union_of_succs, | |
| sbitmap_union_of_preds): Add prototypes. | |
| * sbitmap.c (sbitmap_intersection_of_succs): New function to compute | |
| the intersection of successors with the new flow graph structures. | |
| (sbitmap_intersection_of_preds): New function to compute the | |
| intersection of predecessors with the new flow graph structures. | |
| (sbitmap_union_of_succs): New function to compute the union of | |
| successors with the new flow graph structures. | |
| (sbitmap_union_of_preds): New function to compute the union of | |
| predecessors with the new flow graph structures. | |
| * gcse.c (compute_rdm, compute_available): Use new sbitmap routines. | |
| (expr_reaches_here_p): Use edge and basic_block structures instead | |
| of s_preds and s_succs. | |
| (compute_cprop_avinout): Use new sbitmap routines. | |
| (pre_expr_reaches_here_p): Use edge and basic_block structures instead | |
| of s_preds and s_succs. | |
| * flow.c (compute_flow_dominators): Compute dominators using | |
| edges and basic blocks instead of s_preds and s_succs. | |
| Wed Aug 25 13:41:47 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * lists.c (unused_insn_list, unused_expr_list): New file for | |
| maintaining various types of lists. New statics for maintaining a | |
| cache of available INSN_LIST and EXPR_LIST nodes. | |
| (free_list): Static function for freeing a list of INSN/EXPR nodes. | |
| (alloc_INSN_LIST): Function to get a free INSN_LIST node. | |
| (alloc_EXPR_LIST): Function to get a free EXPR_LIST node. | |
| (init_EXPR_INSN_LIST_cache): Initialize the cache lists. | |
| (free_EXPR_LIST_list): Free an entire list of EXPR_LIST nodes. | |
| (free_INSN_LIST_list): Free an entire list of INSN_LIST nodes. | |
| (free_EXPR_LIST_node): Free an individual EXPR_LIST node. | |
| (free_INSN_LIST_node): Free an individual INSN_LIST node. | |
| * haifa-sched.c (unused_insn_list, unused_expr_list): Moved to flow.c | |
| (free_list, alloc_INSN_LIST, alloc_EXPR_LIST): Moved to flow.c | |
| (remove_dependence, free_pending_lists): Use new global routines. | |
| (flush_pending_lists, sched_analyze_insn): Use new global routines. | |
| (sched_analyze, compute_block_backward_dependences): Use new routines. | |
| (sched_analyze_1, sched_analyze_2): Use new routines. | |
| (schedule_insns): Use new global routines. | |
| * rtl.h (init_EXPR_INSN_LIST_cache, free_EXPR_LIST_list): Add function | |
| prototypes. | |
| (free_INSN_LIST_list, free_EXPR_LIST_node): Add prototypes. | |
| (free_INSN_LIST_node, alloc_INSN_LIST, alloc_EXPR_LIST): Add function | |
| prototypes. | |
| * toplev.c (rest_of_compilation): Initialize node cache. | |
| * Makefile.in (OBJS): Add lists.o to list of object files. | |
| (lists.o): Add dependencies. | |
| Wed Aug 25 17:31:56 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/v850/v850.md: Fix compile time warning messages. | |
| * config/v850/v850.c: Fix compile time warning messages. | |
| * config/v850/v850.h: Fix compile time warning messages. | |
| Wed Aug 25 09:44:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * genattr.c (gen_attr): Add prototype arguments for get_attr_*(). | |
| Remove unused prototype for `init_lengths'. | |
| Wed Aug 25 09:32:31 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * calls.c (emit_call_1): Mark parameter `stack_size' with | |
| ATTRIBUTE_UNUSED. | |
| (expand_call): Initialize variable `insn'. | |
| (emit_library_call): Likewise for variable `high_to_save'. | |
| (emit_library_call_value): Likewise. | |
| (store_one_arg): Likewise for variables `lower_bound' and | |
| `upper_bound'. | |
| * combine.c (try_combine): Likewise for variables `i2_code_number' | |
| and `other_code_number'. | |
| (find_split_point): Likewise for variables `pos', `unsignedp' and | |
| `inner'. | |
| (simplify_if_then_else): Likewise for variables `op' and `c1'. | |
| (simplify_and_const_int): Remove unused variable `width'. | |
| (merge_outer_ops): Likewise. | |
| * cse.c (simplify_binary_operation): Cast an INTVAL() to `unsigned | |
| HOST_WIDE_INT' when comparing against one. | |
| (simplify_relational_operation): Likewise. | |
| (cse_insn): Initialize variables `src_eqv_volatile', | |
| `src_eqv_in_memory', `src_eqv_in_struct', `src_eqv_hash' and `sets'. | |
| * final.c (init_final): Constify parameter `filename'. | |
| (final_start_function): Mark parameter `optimize' with | |
| ATTRIBUTE_UNUSED. | |
| (profile_function): Likewise for parameters `first' and `optimize'. | |
| (output_source_line): Likewise for parameter `file'. | |
| * integrate.c (subst_constants): Cast a value to `size_t' when | |
| comparing against one. | |
| (mark_stores): Initialize variable `mode'. Cast a value to | |
| `size_t' when comparing against one. | |
| * integrate.h (MAYBE_EXTEND_CONST_EQUIV_VARRAY): Likewise. | |
| * loop.c (move_movables): Initialize variable `first'. | |
| (strength_reduce): Likewise for variable `increment'. | |
| (check_dbra_loop): Likewise for variable `comparison_val'. Cast a | |
| value to `size_t' when comparing against one. | |
| (load_mems): Initialize variable `end_label'. | |
| * output.h (init_final): Constify parameter. | |
| * reload.c (decompose): Initialize variable `base'. | |
| * reload1.c (reload): Likewise for variable `is_scalar'. | |
| (spill_hard_reg): Mark parameter `dumpfile' with ATTRIBUTE_UNUSED. | |
| (choose_reload_regs): Initialize variable `mode'. | |
| (emit_reload_insns): Likewise for variable `store_insn'. | |
| (reload_cse_noop_set_p): Mark parameter `insn' with | |
| ATTRIBUTE_UNUSED. | |
| (reload_combine): Initialize variable `set'. | |
| * unroll.c (unroll_loop): Likewise for variable `local_label'. | |
| (copy_loop_body): Cast a value to `size_t' when comparing against | |
| one. | |
| * varasm.c (assemble_variable): Initialize variable `size_tree'. | |
| (const_hash): Add an `else abort()' in an if-else-if-else sequence. | |
| (remove_from_pending_weak_list): Mark parameter `name' with | |
| ATTRIBUTE_UNUSED. | |
| Wed Aug 25 11:18:39 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * toplev.c (rest_of_compilation): Use decl_printable_name when opening | |
| gcse dump file. | |
| Wed Aug 25 10:57:12 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/telf.h (ASM_WEAKEN_LABEL): Define. | |
| (ASM_DECLARE_FUNCTION_NAME): Define. | |
| (TYPE_ASM_OP, SIZE_ASM_OP, TYPE_OPERAND_FORMAT, | |
| ASM_DECLARE_RESULT, ASM_DECLARE_OBJECT_NAME, | |
| ASM_FINISH_DECLARE_OBJECT, ASM_DECLARE_FUNCTION_SIZE): Define if | |
| not already defined. | |
| Wed Aug 25 01:36:11 1999 John David Anglin <dave@hiauly1.hia.nrc.ca> | |
| * calls.c (emit_call_1): Use call_pop/call_value_pop for all values | |
| of n_popped when call/call_value are not defined. | |
| Wed Aug 25 01:25:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * tm.texi: GNU CC -> GCC conversion. | |
| (CC1_SPEC): Indicate it is used for all language front ends. | |
| Tue Aug 24 23:43:03 1999 Mark Mitchell <mark@codesourcery.com> | |
| * flow.c (delete_block): Spell NOTE_INSN_EH_REGION_BEG and | |
| NOTE_INSN_EH_REGION_END correctly. | |
| Tue Aug 24 23:26:44 1999 Michael Tiemann <tiemann@holodeck.cygnus.com> | |
| Jeff Law <law@cygnus.com> | |
| * loop.c (strength_reduce): Automatically unroll loops if the | |
| unrolled loop size is smaller than the rolled loop size. | |
| * loop.c (insert_bct): Replace use of sdiv_optab with asr_optab | |
| and delete comment that code should be rewritten. | |
| Tue Aug 24 22:56:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * haifa-sched.c (find_rgns): Mark a block found during the DFS search | |
| as reachable. | |
| * haifa-sched.c (get_visual_tbl_length): Fix off-by-one error. | |
| Tue Aug 24 22:41:06 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * fixinc/mkfixinc.sh: Don't fix uwin headers. | |
| * i386/uwin.h (MD_STARTFILE_PREFIX): Define. | |
| (LINK_SPEC): Add -u _main when building executables. | |
| (ASM_DECLARE_FUNCTION): Update from Cygwin. | |
| (ASM_FILE_END): Use the default for ix86-pe. | |
| * i386/xm-uwin.h (HAVE_BCOPY): Undefine. | |
| Tue Aug 24 20:49:47 1999 Art Haas <ahaas@neosoft.com> | |
| * final.c (output_addr_const): Handle case where ASM_OPEN_PAREN | |
| and ASM_CLOSE_PAREN are empty strings. | |
| Wed Aug 25 12:46:22 1999 Fred Fish <fnf@cygnus.com> | |
| Geoffrey Keating <geoffk@cygnus.com> | |
| * Makefile.in (PREPROCESSOR_DEFINES): New macro. | |
| (protoize.o): Use PREPROCESSOR_DEFINES and DRIVER_DEFINES. | |
| (unprotoize.o): Ditto. | |
| (test-protoize-simple): Don't define STD_PROTO_DIR. | |
| * protoize.c: Use PARAMS rather than PROTO. Minor whitespace | |
| changes to make 'test-protoize-simple' pass. | |
| (STD_PROTO_DIR): Remove define. | |
| (STANDARD_EXEC_PREFIX): Supply default define. | |
| (standard_exec_prefix): New variable, init to STANDARD_EXEC_PREFIX. | |
| (target_machine): New variable, init to DEFAULT_TARGET_MACHINE. | |
| (target_version): New variable, init to DEFAULT_TARGET_VERSION. | |
| (GET_ENV_PATH_LIST): New macro. | |
| (default_syscalls_dir): No longer initialized to STD_PROTO_DIR. | |
| (do_processing): Initialize default_syscalls_dir using new | |
| macros. Use it to initialize syscalls_absolute_filename. | |
| Tue Aug 24 16:58:15 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): Do cmov opt on any single-set; force | |
| B into a register before emit_conditional_move. | |
| Tue Aug 24 15:37:03 1999 Richard Henderson <rth@cygnus.com> | |
| * fold-const.c (fold): Reassociate (+ (+ (* a b) c) (* d e)) | |
| as (+ (+ (* a b) (* d e)) c). Factor a common power-of-two | |
| multiplicand out of (+ (* a b) (* c d)). | |
| Tue Aug 24 11:46:10 1999 Bob Manson <manson@cygnus.com> | |
| Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (split_hard_reg_notes): Move to flow.c | |
| (new_insn_dead_notes): Likewise. | |
| (update_n_sets): Likewise. | |
| (update_flow_info): Move to flow.c, renamed to update_life_info; | |
| extend to handle multiple source insns. | |
| * flow.c: Include resource.h | |
| (unlink_insn_chain): New. | |
| (split_hard_reg_notes): New. | |
| (maybe_add_dead_note): New. | |
| (maybe_add_dead_note_use): New. | |
| (find_insn_with_note): New. | |
| (new_insn_dead_notes): New. | |
| (update_n_sets): New. | |
| (sets_reg_or_subreg_1, sets_reg_or_subreg): New. | |
| (maybe_remove_dead_notes): New. | |
| (update_life_info): New. | |
| (prepend_reg_notes): New. | |
| (replace_insns): New. | |
| * output.h (update_life_info): Declare. | |
| * recog.c (split_block_insns): Use update_life_info. | |
| * resource.c (find_free_register): Use reg_alloc_order, don't use | |
| fixed regs, make sure the mode is supported, don't use new regs. | |
| (reg_dead_p): New. | |
| * rtl.h (replace_insns): Declare. | |
| Tue Aug 24 13:48:39 1999 Nathan Sidwell <nathan@acm.org> | |
| * expr.c (expand_expr): Cope with COND_EXPRs with one | |
| non-returning branch. | |
| Mon Aug 23 22:28:16 1999 Mark Mitchell <mark@codesourcery.com> | |
| * expr.c (store_expr): Always pass down the target, even when not | |
| doing CSE. | |
| 1999-08-24 Nick Clifton <nickc@cygnus.com> | |
| * configure.in: Define target_cpu_default for v850 targets. | |
| * configure: Regenerate | |
| * config/v850/v850.h (TARGET_CPU_generic): Define. | |
| (GO_IF_LEGITIMATE_ADDRESS): Insist that SImode and larger constant | |
| addresses are 4 byte aligned. | |
| * config/v850/v850.c (print_operand): Cope with 'R' format DFmode | |
| addresses. | |
| Tue Aug 24 09:32:07 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * genattr.c (function_unit_desc): Constify a char*. Add prototype. | |
| (main): Add prototypes. | |
| * genattrtab.c (substitute_address, write_const_num_delay_slots, | |
| attr_eq, attr_numeral, attr_equal_p, attr_copy_rtx): Prototype. | |
| (write_attr_get): Emit prototypes along with function definition. | |
| (write_eligible_delay): Mark a parameter with ATTRIBUTE_UNUSED. | |
| (write_complex_function): Emit static prototype along with | |
| function definition. | |
| * genemit.c (gen_split): Emit prototypes along with function | |
| definition. | |
| * genoutput.c (output_epilogue): Add prototype to `insn_outfun'. | |
| Likewise for predicates and `insn_operand_predicate'. | |
| (process_template): Emit static prototype along with function | |
| definition. | |
| * genrecog.c (make_insn_sequence): Constify a char*. Add | |
| prototypes for get_split_*(). | |
| (write_subroutine): Emit prototypes along with function | |
| definition. | |
| Tue Aug 24 12:35:20 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * gcse.c (find_avail_set): Follow chains of register-register copies. | |
| Use oprs_not_set_p to guarantee that the returned value can be | |
| substituted. | |
| (cprop_insn): Don't verify the return value of find_avail_set with | |
| oprs_not_set_p. | |
| * gcse.c (cprop_jump): New function, broken out of cprop_insn. | |
| (cprop_cc0_jump): New function. | |
| (cprop_insn): Break out new function cprop_jump and use it. | |
| Also use cprop_cc0_jump for machines with CC0. | |
| (cprop): Don't crash if cprop_insn turned the insn into a NOTE. | |
| * tree.h (current_function_calls_setjmp, | |
| current_function_calls_longjmp): Delete declarations. | |
| * dsp16xx.c: Include "function.h". | |
| * elxsi.c: Likewise. | |
| * gmicro.c: Likewise. | |
| * h8300.c: Likewise. | |
| * i370.c: Likewise. | |
| * m32r.c: Likewise. | |
| * mn10200.c: Likewise. | |
| * mn10300.c: Likewise. | |
| * ns32k.c: Likewise. | |
| * spur.c: Likewise. | |
| * v850.c: Likewise. | |
| * rtl.h (rtx_equal_function_value_matters): Declare. | |
| * toplev.c (rtx_equal_function_value_matters): Don't declare. | |
| * cse.c: Likewise. | |
| * function.c: Likewise. | |
| * emit-rtl.c: Likewise. | |
| Tue Aug 24 02:47:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * expr.c (convert_move): Fix arguments to TRULY_NOOP_TRUNCATION | |
| call. | |
| 1999-08-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * jump.c (delete_barrier_successors) Match (set (pc) (pc)) insn | |
| exactly. | |
| Mon Aug 23 23:35:52 1999 Matthias Klose <doko@cs.tu-berlin.de> | |
| * cpp.texi: Add a node documenting macro varargs (copied | |
| from extend.texi). | |
| 1999-08-23 22:23 -0700 Zack Weinberg <zack@bitmover.com> | |
| * cppspec.c: Put a null pointer at the end of the new argv. | |
| Mon Aug 23 21:23:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in: Remove code to select/de-select the haifa | |
| scheduler. Every scheduled port gets haifa now. | |
| * configure: Rebuilt. | |
| * flags.h, genattrtab.c, rtl.h, toplev.c: Remove HAIFA ifdefs. | |
| * sched.c Deleted. | |
| * Makefile.in: Corresponding changes. | |
| Mon Aug 23 16:04:13 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * optabs.c (prepare_cmp_insn): Turn COMPARISON arg into a pointer. | |
| All callers changed. | |
| (prepare_float_lib_cmp): Likewise. | |
| Use FLOAT_LIB_COMPARE_RETURNS_BOOL. | |
| * expr.h (emit_float_lib_cmp): Delete declaration. | |
| * tm.texi (FLOAT_LIB_COMPARE_RETURNS_BOOL): Document. | |
| * sparc.h (FLOAT_LIB_COMPARE_RETURNS_BOOL): Define. | |
| * sparc.md (bcc and scc patterns): Don't handle TFmode comparisons | |
| specially. | |
| (cmptf): Now conditional on TARGET_HARD_QUAD. | |
| Fri Aug 20 17:52:27 1999 Jim Wilson <wilson@cygnus.com> | |
| * resource.c (mark_target_live_regs): Use | |
| PIC_OFFSET_TABLE_REG_CALL_CLOBBERED. | |
| Fri Aug 20 19:07:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * rtl.c (rtx_class, note_insn_name, reg_note_name): Constify. | |
| * rtl.h (rtx_class, reg_note_name, note_insn_name): Likewise. | |
| * genopinit.c (gen_insn): Use accessor macro, not `rtx_class'. | |
| Fri Aug 20 18:53:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * rtl.h (rtx_format): Constify a char*. | |
| * rtl.c (rtx_format): Likewise. | |
| (copy_rtx, copy_most_rtx, read_rtx): Likewise. | |
| (init_rtl): Use accessor macro, not `rtx_format'. | |
| * alias.c (rtx_equal_for_memref_p, find_symbolic_term): Constify a | |
| char*. | |
| * caller-save.c (mark_referenced_regs): Likewise. | |
| * combine.c (subst, make_compound_operation, known_cond, | |
| gen_rtx_combine, update_table_tick, get_last_value_validate, | |
| use_crosses_set_p, mark_used_regs_combine, move_deaths): Likewise. | |
| * cse.c (rtx_cost, mention_regs, canon_hash, exp_equiv_p, | |
| refers_to_p, canon_reg, fold_rtx, cse_process_notes, | |
| count_reg_usage): Likewise. | |
| * emit-rtl.c (gen_rtx, copy_rtx_if_shared, reset_used_flags): | |
| Likewise. | |
| * final.c (leaf_renumber_regs_insn): Likewise. | |
| * flow.c (mark_used_regs, find_use_as_address, dump_flow_info, | |
| dump_edge_info, count_reg_references): Likewise. | |
| * function.c (fixup_var_refs_1, walk_fixup_memory_subreg, | |
| fixup_stack_1, purge_addressof_1, instantiate_virtual_regs_1): | |
| Likewise. | |
| * gcse.c (oprs_unchanged_p, hash_expr_1, expr_equiv_p, | |
| oprs_not_set_p, expr_killed_p, compute_transp, find_used_regs, | |
| add_label_notes): Likewise. | |
| * genattrtab.c (attr_rtx, attr_copy_rtx, encode_units_mask, | |
| clear_struct_flag, count_sub_rtxs, count_alternatives, | |
| compares_alternatives_p, contained_in_p, walk_attr_value, | |
| write_expr_attr_cache): Likewise. | |
| * genconfig.c (walk_insn_part): Likewise. | |
| * genemit.c (max_operand_1, gen_exp): Likewise. | |
| * genextract.c (walk_rtx): Likewise. | |
| * genflags.c (num_operands): Likewise. | |
| * genoutput.c (scan_operands): Likewise. | |
| * genpeep.c (match_rtx): Likewise. | |
| * genrecog.c (add_to_sequence): Likewise. | |
| * haifa-sched.c (may_trap_exp, sched_analyze_2, attach_deaths): | |
| Likewise. | |
| * integrate.c (save_constants, copy_for_inline, | |
| copy_rtx_and_substitute, subst_constants, restore_constants): | |
| Likewise. | |
| * jump.c (mark_jump_label, invert_exp, redirect_exp, | |
| rtx_renumbered_equal_p, rtx_equal_for_thread_p): Likewise. | |
| * local-alloc.c (contains_replace_regs, memref_referenced_p): | |
| Likewise. | |
| * loop.c (record_excess_regs, rtx_equal_for_loop_p, | |
| add_label_notes, replace_call_address, count_nonfixed_reads, | |
| invariant_p, find_single_use_in_loop, find_mem_givs, | |
| find_life_end, maybe_eliminate_biv_1, update_reg_last_use): | |
| Likewise. | |
| * print-rtl.c (reg_names, print_rtx): Likewise. | |
| * recog.c (validate_replace_rtx_1, find_single_use_1): Likewise. | |
| * reg-stack.c (stack_regs_mentioned_p, record_label_references, | |
| record_reg_life_pat, swap_rtx_condition, goto_block_pat, | |
| print_blocks): Likewise. | |
| * regclass.c (fix_register, record_address_regs, | |
| reg_scan_mark_refs): Likewise. | |
| * regmove.c (stable_but_for_p): Likewise. | |
| * reload.c (loc_mentioned_in_p, operands_match_p, | |
| find_reloads_toplevsubst_reg_equivs, find_reloads_address_1, | |
| copy_replacements, refers_to_regno_for_reload_p, | |
| refers_to_mem_for_reload_p, find_inc_amount, regno_clobbered_p, | |
| reload_when_needed_name, reg_class_names, debug_reload_to_stream): | |
| Likewise. | |
| * reload1.c (eliminate_regs, scan_paradoxical_subregs, | |
| delete_address_reloads_1, count_occurrences, | |
| reload_cse_mem_conflict_p, reload_combine_note_use, | |
| add_auto_inc_notes): Likewise. | |
| * resource.c (mark_referenced_resources, mark_set_resources): | |
| Likewise. | |
| * rtlanal.c (rtx_unstable_p, rtx_varies_p, rtx_addr_varies_p, | |
| reg_mentioned_p, regs_set_between_p, modified_between_p, | |
| modified_in_p, refers_to_regno_p, reg_overlap_mentioned_p, | |
| rtx_equal_p, volatile_insn_p, volatile_refs_p, side_effects_p, | |
| may_trap_p, inequality_comparisons_p, replace_rtx, replace_regs, | |
| jmp_uses_reg_or_mem, for_each_rtx, regno_use_in): Likewise. | |
| * sched.c (sched_analyze_2, attach_deaths): Likewise. | |
| * stupid.c (stupid_mark_refs): Likewise. | |
| * unroll.c (remap_split_bivs): Likewise. | |
| * varasm.c (mark_constants): Likewise. | |
| * a29k/a29k.c (uses_local_reg_p): Likewise. | |
| * alpha/alpha.c (summarize_insn): Likewise. | |
| * arm/arm.c (symbol_mentioned_p, label_mentioned_p, | |
| eliminate_lr2ip): Likewise. | |
| * arm/thumb.c (symbol_mentioned_p, label_mentioned_p): Likewise. | |
| * i386/i386.c (symbolic_reference_mentioned_p, copy_all_rtx, | |
| reg_mentioned_in_mem): Likewise. | |
| * ns32k/ns32k.c (global_symbolic_reference_mentioned_p, | |
| symbolic_reference_mentioned_p): Likewise. | |
| * romp/romp.c (unsigned_comparisons_p, hash_rtx): Likewise. | |
| * sh/sh.c (regs_used, mark_use): Likewise. | |
| * vax/vax.c (vax_rtx_cost): Likewise. | |
| Fri Aug 20 18:38:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * machmode.h (mode_name): Constify a char*. | |
| * rtl.c (mode_name): Likewise. | |
| * genopinit.c (gen_insn): Use accessor macro, not `mode_name'. | |
| * optabs.c (init_libfuncs): Constify a char*. | |
| * print-tree.c (mode_name): Remove redundant declaration. | |
| (print_node): Use accessor macro, not `mode_name'. | |
| * reload1.c (dump_needs): Constify a char*. Use accessor macro, | |
| not `mode_name'. | |
| (new_spill_reg): Constify a char*. | |
| * tree.c (mode_name): Remove redundant declaration. | |
| Fri Aug 20 18:31:26 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * rtl.c (rtx_name): Constify a char*. | |
| * rtl.h (rtx_name, fix_sched_param): Likewise. | |
| * gmicro/gmicro.c (rtx_name): Remove redundant declaration. | |
| (mypr): Use accessor macro, not `rtx_name'. | |
| * genemit.c (print_code): Constify a char*. | |
| * genopinit.c (gen_insn): Use accessor macro, not `rtx_name'. | |
| * genpeep.c (print_code): Constify a char*. | |
| * genrecog.c (print_code): Likewise. | |
| * graph.c (start_fct, start_bb, node_data, draw_edge, end_fct, | |
| end_bb): Add static prototype. | |
| (draw_edge): Constify a char*. | |
| (end_bb): Remove unused parameter. | |
| * haifa-sched.c (fix_sched_param, safe_concat, print_exp | |
| print_block_visualization): Constify a char*. | |
| Fri Aug 20 15:02:10 1999 Mark Mitchell <mark@codesourcery.com> | |
| * c-common.c (c_get_alias_set): Update comment. | |
| 1999-08-20 Andreas Jaeger <aj@arthur.rhein-neckar.de> | |
| * linux.h (LIB_SPEC): Added. | |
| Fri Aug 20 22:32:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (STARTFILE_SPEC): Don't def. | |
| 1999-08-19 18:43 -0700 Zack Weinberg <zack@bitmover.com> | |
| * tree.c (expr_check): Fix typo in last change. | |
| 1999-08-19 14:44 -0700 Zack Weinberg <zack@bitmover.com> | |
| * rtl.def (NOTE): Change format to "iuu0n". | |
| (ADDR_DIFF_VEC): Change format to "eEee0". | |
| (ADDRESSOF): Change format to "eit". | |
| * rtl.h (rtvec): Make "elem" an array of rtx, not rtunion. | |
| (RTVEC_ELT): Change to match. | |
| (XVECEXP): Use XVEC and RTVEC_ELT. | |
| (INSN_UID, INSN_CODE, CODE_LABEL_NUMBER, NOTE_LINE_NUMBER, | |
| ADDRESSOF_REGNO, REGNO, SUBREG_WORD): Use XINT. | |
| (PREV_INSN, NEXT_INSN, PATTERN, REG_NOTES, | |
| CALL_INSN_FUNCTION_USAGE, SUBREG_REG, SET_SRC, SET_DEST, | |
| TRAP_CONDITION, TRAP_CODE): Use XEXP. | |
| (INTVAL): Use XWINT. | |
| (ADDRESSOF_DECL): Use XTREE. | |
| (SET_ADDRESSOF_DECL): Delete. | |
| (NOTE_DECL_NAME, NOTE_DECL_CODE, NOTE_DECL_RTL, | |
| NOTE_DECL_IDENTIFIER, NOTE_DECL_TYPE): Kill. These have been | |
| ifdefed out since 2.6 at least. | |
| (gen_rtvec_vv): Delete prototype. | |
| * rtl.h (rtvec_alloc): rt->elem is now an array of rtx, | |
| not rtunion. | |
| (copy_most_rtx): Handle 't' format letter. | |
| * emit-rtl.c (gen_rtvec_v): rt_val->elem is an array of rtx. | |
| (gen_rtvec_vv): Delete function. All callers changed to use | |
| gen_rtvec_v instead. | |
| * print-rtl.c (print_rtx): Move special casing of NOTEs to | |
| the '0' format letter. | |
| * function.c (gen_mem_addressof): Don't use | |
| SET_ADDRESSOF_DECL; provide `decl' to gen_rtx_ADDRESSOF | |
| instead. | |
| * integrate.c (copy_rtx_and_substitute): Likewise. | |
| Copy 't' slots with XTREE. | |
| (subst_constants): Treat 't' slots like '[swi]' slots. | |
| * cse.c (canon_hash, exp_equiv_p): Treat 't' slots like '0' slots. | |
| * jump.c (rtx_equal_for_thread_p): Likewise. | |
| * rtlanal.c (rtx_equal_p): Likewise. | |
| * stmt.c (expand_end_case): gen_rtx_ADDR_DIFF_VEC now takes | |
| only four arguments. | |
| * gengenrtl.c (type_from_format): Provide correct types for | |
| 'b' and 't' slots. | |
| * tree.h [ENABLE_CHECKING] (TREE_CHECK, TREE_CLASS_CHECK): | |
| If a recent gcc is in use (always in stage2 and beyond), use | |
| statement expressions, so we don't make a function call unless | |
| the check fails. Evaluate arguments exactly once. | |
| (CHAIN_CHECK, DO_CHECK, DO_CHECK1, TREE_CHECK1, | |
| TREE_CLASS_CHECK1, TYPE_CHECK1, DECL_CHECK1, CST_CHECK1): | |
| Delete. | |
| (CST_OR_CONSTRUCTOR_CHECK, EXPR_CHECK): Redefine such that | |
| they evaluate their arguments exactly once, irrespective of | |
| the compiler in use. | |
| * tree.c [ENABLE_CHECKING]: Define whichever set of functions | |
| is used by the currently-enabled check macros. This is: | |
| (tree_check_failed, tree_class_check_failed): For gcc. | |
| (tree_check, tree_class_check, cst_or_constructor_check, | |
| expr_check): For other compilers. | |
| * gencheck.c: Do not define any *_CHECK1 macros. | |
| Thu Aug 19 14:42:38 1999 Mike Stump <mrs@wrs.com> | |
| Mark Mitchell <mark@codesourcery.com> | |
| * c-common.c (c_get_alias_set): Fix support for pointers and | |
| references. | |
| Thu Aug 19 11:51:22 EDT 1999 John Wehle (john@feith.com) | |
| * alias.c: Include tree.h. | |
| (nonlocal_reference_p, mark_constant_function): New functions. | |
| * flow.c (life_analysis): Call mark_constant_function. | |
| * rtl.h (mark_constant_function): Declare it. | |
| Thu Aug 19 15:02:01 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/rs6000/rs6000.c (rs6000_override_options): Fix test for | |
| unrecognizable switches. | |
| Wed Aug 18 23:31:57 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (recombine_givs): Set ix field after sorting. | |
| (recombine_givs): Remove bogus index / giv lockstep looping. | |
| Wed Aug 18 18:20:40 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * expmed.c (emit_store_flag): If UNSIGNEDP, call unsigned_condition | |
| on CODE. | |
| (emit_store_flag_force): Use do_compare_rtx_and_jump. | |
| (do_cmp_and_jump): Formatting fixes. | |
| * expr.c (do_compare_and_jump): Renamed from compare; changed to call | |
| do_compare_rtx_and_jump instead of compare_from_rtx. | |
| (do_compare_rtx_and_jump): New function; mostly copied from | |
| compare_from_rtx. | |
| (do_jump_for_compare): Delete. | |
| (expand_expr): Use do_compare_rtx_and_jump when handling MAX_EXPR and | |
| MIN_EXPR. | |
| (do_jump): Use do_compare_and_jump or do_compare_rtx_and_jump instead | |
| of compare/do_jump_for_compare pairs. | |
| (do_jump_by_parts_greater): Use do_jump_by_parts_greater_rtx. | |
| (do_jump_by_parts_greater_rtx): Use do_compare_rtx_and_jump instead of | |
| compare_from_rtx/do_jump_for_compare pairs. | |
| (do_jump_by_parts_equality): Likewise. | |
| (do_jump_by_parts_equality_rtx): Likewise. | |
| * expr.h (do_compare_rtx_and_jump): Declare. | |
| * optabs.c (prepare_cmp_insn): New function, contains most of the code | |
| that used to be in emit_cmp_insn. | |
| (cmp_available_p): New function. | |
| (prepare_operand): New function. | |
| (emit_cmp_and_jump_insn_1): New function, contains some code that used | |
| to be in emit_cmp_insn. | |
| (prepare_float_lib_cmp): Renamed from emit_float_lib_cmp; change some | |
| parameters to be pointers; don't emit final compare but modify some of | |
| the values pointed to by the args so the caller can perform the | |
| correct comparison. | |
| (expand_binop): Call emit_store_flag_force with signed forms of | |
| comparison code. | |
| (expand_abs): Use do_compare_rtx_and_jump instead of compare_from_rtx/ | |
| emit_jump_insn pair. | |
| (emit_cmp_and_jump_insn): Use prepare_cmp_insn and | |
| emit_cmp_and_jump_insn_1. Call emit_queue. | |
| (emit_cmp_insn): Just call emit_cmp_and_jump_insns with zero for LABEL | |
| arg. | |
| * flow.c (tidy_fallthru_edge): If HAVE_cc0, verify insn before a | |
| jump sets cc0 before deleting it. | |
| * integrate.c (expand_inline_function): Likewise. | |
| * unroll.c (unroll_loop): Similar changes in several places. | |
| (copy_loop_body): If HAVE_cc0, verify insn before a jump sets cc0 | |
| before deleting it. | |
| Wed Aug 18 06:37:44 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * Makefile.in (insn-recog.o): Update dependencies. | |
| * genrecog.c (main): Make generated file include "function.h". | |
| Sat Aug 14 00:54:57 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * cse.c (cse_insn): Call never_reached_warning when a jump is | |
| changed to be unconditional. | |
| * flags.h: Declare warn_notreached. | |
| * flow.c (delete_block): Call never_reached_warning when | |
| a block is deleted. | |
| * jump.c (delete_barrier_successors): Call never_reached_warning | |
| when we delete everything after a BARRIER. | |
| (never_reached_warning): New function. | |
| * rtl.h: Declare never_reached_warning. | |
| * toplev.c (warn_notreached): New variable. | |
| (lang_independent_options): Set warn_notreached | |
| when -Wunreachable-code. | |
| (compile_file): We need line numbers for -Wunreachable-code. | |
| Tue Aug 17 22:06:11 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * haifa-sched.c (insn_unit): Fix typo on out of range test. | |
| * sched.c (insn_unit): Likewise. | |
| Tue Aug 17 21:57:23 1999 Andreas Schwab <schwab@suse.de> | |
| * combine.c (distribute_notes): Handle REG_EH_RETHROW. | |
| Tue Aug 17 17:39:43 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * flow.c (create_edge_list): Use xmalloc, not malloc. | |
| Tue Aug 17 01:40:54 1999 Loren Rittle <ljrittle@acm.org> | |
| * fixinc/inclhack.def (no_double_slash): Do not trash single-line | |
| C-style comments. Do not lose the character before double slash. | |
| Mon Aug 16 18:08:22 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * basic-block.h (struct edge_list): Stucture to maintain a vector | |
| of edges. | |
| (EDGE_INDEX_NO_EDGE, EDGE_INDEX, INDEX_EDGE_PRED_BB, INDEX_EDGE_SUCC_BB, | |
| INDEX_EDGE, NUM_EDGES): New Macros for accessing edge list. | |
| (create_edge_list, free_edge-List, print_edge_list, verify_edge_list): | |
| New function prototypes. | |
| * flow.c (create_edge_list): Function to create an edge list. | |
| (free_edge_list): Discards memory used by an edge list. | |
| (print_edge_list): Debug output showing an edge list. | |
| (verify_edge_list): Internal consistency check for an edge list. | |
| (find_edge_index): Function to find an edge index for a pred and succ. | |
| Mon Aug 16 11:56:36 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.c (type_hash_add): Use permalloc to allocate nodes in the | |
| hashtable. | |
| Mon Aug 16 17:04:15 1999 Jorn Rennecke <amylaar@cygnus.co.uk> | |
| * mips.h (CLASS_CANNOT_CHANGE_SIZE): Define. | |
| Fri Aug 13 15:20:43 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
| * config/i386/freebsd.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. | |
| Fri Aug 13 10:21:28 1999 Nick Clifton <nickc@cygnus.com> | |
| * toplev.c (rest_of_compilation): Allow machine dependent | |
| reorganization pass to place information into the RTL dump | |
| file if it so wishes. | |
| Sun Aug 15 12:41:21 1999 Jim Wilson <wilson@cygnus.com> | |
| * explow.c (hard_function_value): Use VOIDmode instead of | |
| MAX_MACHINE_MODE. | |
| * stmt.c (expand_return): Likewise. | |
| * stor-layout.c (get_best_mode): Likewise. | |
| * genemit.c (gen_expand): If next is MATCH_PAR_DUP, then output | |
| emit call instead of emit_insn call. | |
| Sat Aug 14 15:04:06 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * configure.in: Handle --disable/enable-win32-registry. | |
| * install.texi: Document --disable/enable-win32-registry. | |
| * acconfig.h (ENABLE_WIN32_REGISTRY): New macro. | |
| (WIN32_REGISTRY_KEY): New macro. | |
| * prefix.c: Use to enable/disable win32-specific code. | |
| (lookup_key): Use versioned key. | |
| * configure: Regenerate. | |
| * config.in: Likewise. | |
| Fri Aug 13 17:41:55 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * cpplib.c (read_line_number): New fn, split out of... | |
| (do_line): Here. | |
| Fri Aug 13 14:18:27 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| tree.c (lang_unsave_expr_now) : New. | |
| (unsave_expr_now): Call lang_unsave_expr_now. | |
| tree.h (lang_unsave_expr_now) : New. | |
| Fri Aug 13 00:49:46 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * toplev.c (flag_new_exceptions): On by default. | |
| 1999-08-13 Michael Meissner <meissner@cygnus.com> | |
| * Makefile.in (GCC_FOR_TARGET): Move -B./ after the tooldir -B. | |
| Fri Aug 13 01:29:57 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * dwarfout.c (fundamental_type_code): Return FT_boolean for | |
| INTEGER_TYPE with precision==1, it's __java_boolean. | |
| Thu Aug 12 23:51:04 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * global.c (prune_preferences): Move some invariants out of the | |
| inner loop. | |
| Thu Aug 12 15:30:29 1999 Jesse Perry (jap@unx.dec.com) | |
| * configure.in (alpha*-dec-osf*): Add osf5. | |
| Sun Aug 1 22:24:03 1999 Philip Blundell <philb@gnu.org> | |
| * configure.in: Rework handling of ARM GNU/Linux slightly. | |
| (arm*-*-linux-gnuoldld): New target. | |
| * configure: Regenerate. | |
| * install.texi (Configurations): Add arm-*-linux-gnu{oldld} and | |
| arm-*-elf. Mention that arm-*-linux-gnuaout is obsolete. | |
| * config/arm/linux-oldld.h: New file. | |
| * config/arm/linux-elf26.h: Don't include linux-elf.h. | |
| (TARGET_DEFAULT, SUBTARGET_LINK_SPEC, SUBTARGET_EXTRA_ASM_SPEC): | |
| Don't define. | |
| * config/arm/linux-elf.h (ASM_SPEC): Define. | |
| (TARGET_DEFAULT, SUBTARGET_EXTRA_LINK_SPEC, | |
| SUBTARGET_EXTRA_ASM_SPEC, CPP_APCS_PC_DEFAULT): Add definitions | |
| for 26-bit APCS and old linker. | |
| (CPP_PREDEFINES): Define `__arm__'; don't define `arm' or | |
| `arm_elf'. | |
| (FP_DEFAULT): Define to FP_SOFT3 for all machines. | |
| * config/arm/linux-aout.h (CPP_PREDEFINES): Define `__arm__'; | |
| don't define `arm' or `arm_elf'. | |
| * config/arm/t-linux (EXTRA_MULTILIB_PARTS, MULTILIB_OPTIONS, | |
| MULTILIB_DIRNAMES): Define. Fix typo in comment. | |
| Thu Aug 12 10:14:47 1999 Andreas Schwab <schwab@suse.de> | |
| * rtl.texi: Fix typo. | |
| Wed Aug 11 23:50:57 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * invoke.texi (C++ Dialect Options): Add -fms-extensions. | |
| Wed Aug 11 12:59:37 1999 Mark Mitchell <mark@codesourcery.com> | |
| * extend.texi (C++ Signatures): Remove node. | |
| * invoke.texi: Remove discussion of -fhandle-signatures, | |
| signature, sigof, __signature__, and __sigof__. | |
| Wed Aug 11 03:38:25 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (JAVAGC): Removed. | |
| Wed Aug 11 02:13:26 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/cygwin.h (ASM_OUTPUT_ALIGNED_BSS): Define. | |
| 1999-08-11 Mark Elbrecht <snowball3@bigfoot.com> | |
| * i386/djgpp.h (ASM_OUTPUT_ALIGNED_BSS): Define. | |
| 1999-08-11 Richard Earnshaw (rearnsha@arm.com) | |
| * emit-rtl.c (mark_reg_pointer): Don't increase the alignment of | |
| a register that is already known to be a pointer. | |
| 1999-08-11 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/inclhack.tpl: Only install assert.h conditionally. | |
| * fixinc/inclhack.sh: Regenerated. | |
| * fixinc/fixincl.sh: Regenerated. | |
| Wed Aug 11 00:34:22 1999 Joe Buck <jbuck@synopsys.com> | |
| * invoke.texi: s/GNU CC/GCC/ for consistency with gcc.texi. | |
| Fix documentation of -ansi flag to describe its C++ behavior. | |
| Remove bogus reference to GCC 2.9. | |
| Tue Aug 10 17:19:02 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/sh/sh.c (machine_dependent_reorg): Only call PUT_MODE on | |
| note if it is non-NULL. | |
| Tue Aug 10 10:47:42 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * except.h (eh_nesting_info): Add new structure definition. | |
| (init_eh_nesting_info, free_eh_nesting_info): Add function prototypes. | |
| (reachable_handlers, update_rethrow_references): Add function | |
| prototypes. | |
| * rtl.h (struct rtvec_def): Update comments. REG_EH_RETHROW takes | |
| a rethrow symbol instead of an integer exception region number. | |
| * flow.c (Make_edges): Use new exception nesting routines to determine | |
| which handlers are reachable from a CALL or asynchronous insn. | |
| Don't add an edge for calls with a REG_EH_REGION of -1 to non-local | |
| goto receivers. | |
| (delete_eh_regions): Update rethrow labels, and don't delete | |
| regions which are the target of a rethrow. | |
| * except.c (struct func_eh_entry): Add rethrow_ref field, now we can | |
| avoid overloading the SYMBOL_REF_USED flag. | |
| (rethrow_symbol_map): Use new rethrow_ref field. | |
| (rethrow_used): Use new rethrow_ref field. | |
| (expand_rethrow): REG_EH_RETHROW now has a SYMBOL_REF instead | |
| of an integer. Fix formatting. | |
| (output_exception_table_entry): Use new rethrow_ref field. | |
| (can_throw): Check for EH_REGION_NOTE before deciding | |
| whether a CALL can throw or not. | |
| (scan_region): Call rethrow_used() instead of accessing data structure. | |
| (update_rethrow_references): New function to make sure only regions | |
| which are still targets of a rethrow are flagged as such. | |
| (process_nestinfo): New static function to initialize a handler | |
| list for a specific region. | |
| (init_eh_nesting_info): New function to allocate and initialize | |
| the list of all EH handlers reachable from all regions. | |
| (reachable_handlers): New function to retrieve the list of handlers | |
| reachable from a specific region and insn. | |
| (free_eh_nesting_info): New function to dispose of a list of | |
| reachable handlers. | |
| Tue Aug 10 10:39:31 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * flow.c (split_edge): Set JUMP_LABEL field. | |
| (commit_one_edge_insertion): Set head correctly for insert_before. | |
| When inserting insns, update insn block numbers if allocated. | |
| Tue Aug 10 09:26:07 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * dwarf2out.c (dwarf2out_frame_debug_expr, add_incomplete_type, | |
| retry_incomplete_types): Add static prototype. | |
| (stripattributes, dwarf_cfi_name, ASM_OUTPUT_DWARF_STRING, | |
| dwarf_tag_name, dwarf_attr_name, dwarf_form_name, | |
| dwarf_stack_op_name, dwarf_type_encoding_name, add_AT_string, | |
| dwarf2_name, add_name_attribute, lookup_filename, dwarf2out_line, | |
| dwarf2out_start_source_file, dwarf2out_define, dwarf2out_undef): | |
| Constify a char*. | |
| * dwarf2out.h (dwarf2out_define, dwarf2out_undef, | |
| dwarf2out_start_source_file, dwarf2out_line): Likewise. | |
| Tue Aug 10 09:21:46 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * output.h (assemble_name): Constify a char*. | |
| * varasm.c (UNIQUE_SECTION, assemble_start_function, | |
| assemble_variable, assemble_name): Likewise. | |
| * dwarf2out.c (ASM_NAME_TO_STRING): Likewise. | |
| * arm/pe.c (arm_pe_unique_section): Likewise. | |
| * i386/cygwin.h (STRIP_NAME_ENCODING): Likewise. | |
| * i386/i386-interix.h (STRIP_NAME_ENCODING): Likewise. | |
| * i386/interix.c (i386_pe_unique_section): Likewise. | |
| * i386/win32.h (STRIP_NAME_ENCODING): Likewise. | |
| * i386/winnt.c (i386_pe_unique_section): Likewise. | |
| * m32r/m32r.h (ASM_OUTPUT_LABELREF): Likewise. | |
| * mn10200/mn10200.h (ASM_OUTPUT_LABELREF): Likewise. | |
| * mn10300/mn10300.h (ASM_OUTPUT_LABELREF): Likewise. | |
| * pa/pa.c (output_call): Likewise. | |
| * pa/pa.h (ASM_OUTPUT_MI_THUNK): Likewise. | |
| * pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Likewise. | |
| * rs6000/rs6000.c (rs6000_output_load_toc_table, output_toc): | |
| Likewise. | |
| * rs6000/rs6000.h (RS6000_OUTPUT_BASENAME, STRIP_NAME_ENCODING): | |
| Likewise. | |
| * rs6000/sol2.h (ASM_OUTPUT_SOURCE_LINE): Likewise. | |
| * rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME, ASM_OUTPUT_INT, | |
| STRIP_NAME_ENCODING, ASM_OUTPUT_LABELREF): Likewise. | |
| * v850/v850.h (ASM_OUTPUT_LABELREF): Likewise. | |
| Mon Aug 9 19:54:05 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * real.c (GET_REAL, PUT_REAL): Use memcpy instead of bcopy. | |
| Mon Aug 9 19:36:00 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * tree.h (lang_identify): Constify a char*. | |
| (print_error_function): Add extern prototype. Constify a char*. | |
| * c-lang.c (lang_identify): Constify a char*. | |
| * objc/objc-act.c (lang_identify): Constify a char*. | |
| Mon Aug 9 16:21:53 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * genpeep.c (main): Make generated file include "function.h". | |
| * arm.c (function_really_clobbers_lr): Delete INLINE_HEADER case. | |
| Mon Aug 9 10:08:50 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * Makefile.in: Update dependencies. | |
| * alias.c: Include "function.h" | |
| * c-decl.c: Likewise. | |
| * caller-save.c: Likewise. | |
| * calls.c: Likewise. | |
| * combine.c: Likewise. | |
| * cse.c: Likewise. | |
| * explow.c: Likewise. | |
| * final.c: Likewise. | |
| * global.c: Likewise. | |
| * graph.c: Likewise. | |
| * local-alloc.c: Likewise. | |
| * loop.c: Likewise. | |
| * optabs.c: Likewise. | |
| * profile.c: Likewise. | |
| * recog.c: Likewise. | |
| * regclass.c: Likewise. | |
| * regmove.c: Likewise. | |
| * reload.c: Likewise. | |
| * reorg.c: Likewise. | |
| * resource.c: Likewise. | |
| * sched.c: Likewise. | |
| * stupid.c: Likewise. | |
| * config/1750a/1750a.c: Likewise. | |
| * config/a29k/a29k.c: Likewise. | |
| * config/arc/arc.c: Likewise. | |
| * config/arm/arm.c: Likewise. | |
| * config/arm/thumb.c: Likewise. | |
| * config/c4x/c4x.c: Likewise. | |
| * config/clipper/clipper.c: Likewise. | |
| * config/convex/convex.c: Likewise. | |
| * config/fx80/fx80.c: Likewise. | |
| * config/i860/i860.c: Likewise. | |
| * config/m68k/m68k.c: Likewise. | |
| * config/m88k/m88k.c: Likewise. | |
| * config/mips/mips.c: Likewise. | |
| * config/pdp11/pdp11.c: Likewise. | |
| * config/pyr/pyr.c: Likewise. | |
| * config/romp/romp.c: Likewise. | |
| * config/sh/sh.c: Likewise. | |
| * config/tahoe/tahoe.c: Likewise. | |
| * config/vax/vax.c: Likewise. | |
| * config/we32k/we32k.c: Likewise. | |
| * config/sparc/sparc.c: Include "function.h". | |
| (mem_min_alignment): Test current_function rather than | |
| regno_pointer_align. | |
| * config/pa/pa.c: Likewise. | |
| (compute_frame_size): Delete declaration of | |
| current_function_outgoing_args_size. | |
| * config/arc/arc.h (current_function_varargs): Delete declaration. | |
| * config/elxsi/elxsi.h (current_function_calls_alloca): Delete | |
| declaration. | |
| * config/i370/i370.h (current_function_outgoing_args_size): Delete | |
| declaration. | |
| * config/i386/i386.h (FINALIZE_PIC): Delete declaration of | |
| current_function_uses_pic_offset_table. | |
| * config/m68k/a-ux.h (FUNCTION_EXTRA_EPILOGUE): Delete declaration | |
| of current_function_returns_pointer. | |
| * config/m68k/altos3068.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m68k/linux.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m68k/m68kv4.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m68k/mot3300.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m68k/pbb.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m68k/tower-as.h (FUNCTION_EXTRA_EPILOGUE): Likewise. | |
| * config/m88k/m88k.c: Include "function.h" | |
| (call_used_regs, current_function_pretend_args_size, | |
| current_function_outgoing_args_size, frame_pointer_needed): Delete | |
| declarations. | |
| * config/m88k/m88k.h (current_function_pretend_args_size): Delete | |
| declaration. | |
| * config/mips/mips.h (current_function_calls_alloca): Delete | |
| declaration. | |
| * config/mn10200/mn10200.h (current_function_needs_context, | |
| rtx_equal_function_value_matters): Delete declarations. | |
| * config/ns32k/ns32k (current_function_uses_pic_offset_table, | |
| flag_pic): Delete declarations. | |
| * config/pa/pa.h (current_function_pretend_args_size, | |
| current_function_decl): Delete declarations. | |
| * config/pa/som.h (current_function_varargs): Delete declaration. | |
| * config/pdp11/pdp11.h (current_function_pretend_args_size): Delete | |
| declaration. | |
| * config/pyr/pyr.h (current_function_pretend_args_size, | |
| current_function_args_size, current_function_calls_alloca): Delete | |
| declarations. | |
| * config/sh/sh.h (current_function_varargs): Delete declaration. | |
| * config/sparc/sparc.h (current_function_outgoing_args_size, | |
| current_function_calls_alloca, current_function_decl): Delete | |
| declarations. | |
| * config/spur/spur.h (current_function_pretend_args_size, | |
| current_function_calls_alloca): Delete declarations. | |
| * config/v850/v850.c (current_function_outgoing_args_size): Delete | |
| declaration. | |
| * config/vax/vms.h (current_function_name): Delete declaration. | |
| * gcse.c: Include "function.h". | |
| (current_function_name, current_function_calls_setjmp): Delete | |
| declarations. | |
| * haifa-sched.c: Include "function.h". | |
| (forced_labels): Delete declaration. | |
| * jump.c: Likewise. | |
| * reg-stack.c: Likewise. | |
| * reload1.c: Likewise. | |
| * genemit.c (main): Make generated file include function.h. | |
| * genoutput.c (output_prologue): Likewise. | |
| * builtins.c (saveregs_value, apply_args_value): Delete variables. | |
| * emit-rtl.c (reg_rtx_no, first_label_num, first_insn, last_insn, | |
| sequence_rtl_expr, cur_insn_uid, last_linenum, last_filename, | |
| regno_pointer_flag, regno_pointer_flag_length, regno_pointer_align, | |
| regno_reg_rtx, sequence_stack): Delete variables. Add accessor | |
| macros for some of them. | |
| (emit_filename, emit_lineno): Delete declarations. | |
| (gen_reg_rtx): Use memset/memcpy instead of bzero/bcopy. Access | |
| regno_pointer_* variables through current_function. | |
| (gen_inline_header_rtx): Delete function. | |
| (save_emit_status): Delete function. | |
| (set_new_last_label_num): New function. | |
| (clear_emit_caches): New function. | |
| (restore_emit_status): Just clear last_labelnum and call | |
| clear_emit_caches. | |
| (get_last_insn_anywhere): Variable sequence_stack is now accessed | |
| through macro seq_stack. | |
| (add_insn_after): Likewise. | |
| (add_insn_before): Likewise. | |
| (remove_insn): Likewise. | |
| (pop_topmost_sequence): Likewise. | |
| (in_sequence_p): Likewise. | |
| (start_sequence_for_rtl_expr): Likewise. | |
| (start_sequence): Likewise, and likewise for | |
| sequence_rtl_expr/seq_rtl_expr. | |
| (push_topmost_sequence): Likewise. | |
| (end_sequence): Likewise. | |
| (init_virtual_regs): Now takes a "struct emit_status *" argument. | |
| All callers changed. Store into that pointer instead of globals. | |
| (init_emit): Allocate emit elt of current_function. | |
| Changes for sequence_rtl_expr/sequence_stack renaming. | |
| Call clear_emit_caches instead of doing it in-line. | |
| Access regno_pointer_* variables through current_function. | |
| (init_emit_once) Don't clear sequence_stack. | |
| * expr.c (pending_stack_adjust, inhibit_defer_pop, pending_chain): | |
| Delete variables. | |
| (arg_pointer_save_area): Delete declaration. | |
| (finish_expr_for_function): Renamed from init_queue; no longer static. | |
| (init_expr): Don't call init_queue. | |
| (save_expr_status, restore_expr_status): Delete functions. | |
| (expand_expr): Changes to reflect new layout of struct function. | |
| Don't access current_function_check_memory_usage when current_function | |
| is 0. | |
| * expr.h (forced_labels, save_expr_regs, saveregs_value, | |
| apply_args_value, current_function_calls_alloca, inhibit_defer_pop, | |
| current_function_outgoing_args_size, current_function_arg_offset_rtx, | |
| current_function_uses_const_pool, function_call_count, | |
| current_function_uses_pic_offset_table, nonlocal_labels, | |
| current_function_internal_arg_pointer, nonlocal_goto_stack_level, | |
| current_function_check_memory_usage, nonlocal_goto_handler_slots, | |
| pending_stack_adjust, target_temp_slot_level, temp_slot_level): Delete | |
| declarations. | |
| (finish_expr_for_function): Declare. | |
| * flags.h (current_function_has_nonlocal_label, | |
| current_function_has_nonlocal_goto, current_function_is_thunk, | |
| current_function_has_computed_jump): Delete declarations. | |
| * flow.c (forced_labels): Delete declaration. | |
| * function.c (current_function_pops_args, | |
| current_function_returns_struct, current_function_returns_pcc_struct, | |
| current_function_needs_context, current_function_calls_setjmp, | |
| current_function_calls_longjmp, current_function_has_nonlocal_label, | |
| current_function_has_nonlocal_goto, current_function_is_thunk, | |
| current_function_has_computed_jump, current_function_calls_alloca, | |
| current_function_contains_functions, current_function_returns_pointer, | |
| current_function_epilogue_delay_list, current_function_args_size, | |
| current_function_pretend_args_size, current_function_arg_offset_rtx, | |
| current_function_outgoing_args_size, current_function_varargs, | |
| current_function_stdarg, current_function_args_info, cleanup_label, | |
| current_function_name, current_function_uses_const_pool, | |
| current_function_instrument_entry_exit, current_function_return_rtx, | |
| current_function_uses_pic_offset_table, nonlocal_labels, | |
| current_function_internal_arg_pointer, current_function_cannot_inline, | |
| current_function_check_memory_usage, function_call_count, | |
| nonlocal_goto_handler_slots, nonlocal_goto_handler_labels, | |
| nonlocal_goto_stack_level, return_label, save_expr_regs, | |
| stack_slot_list, rtl_expr_chain, tail_recursion_label, temp_slots, | |
| tail_recursion_reentry, arg_pointer_save_area, frame_offset, | |
| context_display, trampoline_list, parm_birth_insn, invalid_stack_slot, | |
| last_parm_insn, max_parm_reg, parm_reg_stack_loc, sequence_rtl_expr, | |
| temp_slot_level, var_temp_slot_level, target_temp_slot_level): | |
| Delete variables. | |
| (push_function_context_to): Don't save them. Don't call | |
| save_storage_status, save_emit_status or save_expr_status. | |
| (pop_function_context_from): Don't restore them. Don't call | |
| restore_storage_status or restore_expr_status. | |
| (get_func_frame_size): New function. | |
| (get_frame_size): Use it. | |
| (assign_outer_stack_local): Reflect some member name changes in struct | |
| function. | |
| (put_reg_into_stack): Likewise. | |
| (assign_stack_temp_for_type): sequence_rtl_expr was renamed to | |
| seq_rtl_expr. | |
| (fixup_var_refs): Likewise. | |
| (fix_lexical_addr): Likewise. | |
| (trampoline_address): Likewise. | |
| (prepare_function_start): Clear field inlinable of current_function. | |
| (init_function_for_compilation): New function. | |
| (expand_dummy_function_end): New function. | |
| (expand_function_end): Call finish_expr_for_function. | |
| * function.h (struct emit_status): New; fields moved here from struct | |
| function and from global variables. Add accessor macros for some of | |
| the fields. | |
| (struct expr_status): Likewise. | |
| (REGNO_POINTER_ALIGN, REGNO_POINTER_FLAG): Moved here from regs.h. | |
| (struct function): Add fields expr and emit, inlinable, inl_emit, | |
| original_arg_vector, original_decl_initial, inl_last_parm_insn, | |
| inl_max_label_num. Add many comments. | |
| Add accessor macros for all elts of struct function that no longer | |
| have a global variable. | |
| (cleanup_label, return_label, frame_offset, tail_recursion_label, | |
| tail_recursion_reentry, arg_pointer_save_area, rtl_expr_chain, | |
| stack_slot_list): Delete declarations. | |
| (get_func_frame_size): Declare. | |
| (save_expr_status, restore_expr_status, save_emit_status, | |
| save_storage_status, restore_storage_status): Delete declarations. | |
| (init_virtual_regs): Declare. | |
| * output.h (current_function_pops_args, | |
| current_function_returns_struct, current_function_returns_pcc_struct, | |
| current_function_needs_context, current_function_calls_setjmp, | |
| current_function_calls_longjmp, current_function_calls_alloca, | |
| current_function_has_nonlocal_label, current_function_varargs, | |
| current_function_has_computed_jump, current_function_returns_pointer, | |
| current_function_contains_functions, current_function_args_size, | |
| current_function_pretend_args_size, current_function_stdarg, | |
| current_function_outgoing_args_size, current_function_args_info, | |
| current_function_name, current_function_return_rtx, | |
| current_function_epilogue_delay_list, | |
| current_function_uses_const_pool, current_function_cannot_inline): | |
| Delete declarations. | |
| * regs.h (reg_rtx_no, regno_pointer_flag, regno_pointer_flag_length, | |
| regno_reg_rtx): Delete declaration. | |
| (REGNO_POINTER_FLAG): Delete macro. | |
| * stmt.c (expand_goto): Changes to reflect that some fields in struct | |
| function were renamed. | |
| * stor-layout.c (save_storage_status, restore_storage_status): Delete | |
| functions. | |
| * toplev.c: Include "function.h". | |
| (current_function_decl): Delete declaration. | |
| (compile_file): Call init_dummy_function_start and | |
| expand_dummy_function_end around some initializations that need to | |
| emit rtl. | |
| (rest_of_compilation): Use DECL_SAVED_INSNS properly. | |
| Call init_function_for_compilation. | |
| * unroll.c: Include "function.h" | |
| (unroll_loop): Access regno_pointer_* variables through | |
| current_function. | |
| * tree.h (struct tree_decl): Add elt f to saved_insns member. | |
| (DECL_SAVED_INSNS): use it. | |
| (expand_dummy_function_end): Declare. | |
| (init_function_for_compilation): Declare. | |
| * calls.c (calls_function_1): Change use of DECL_SAVED_INSNS now | |
| that it's no longer an INLINE_HEADER. | |
| (expand_call): Likewise. | |
| * integrate.c (finish_inline): Delete function. | |
| (max_parm_reg, parm_reg_stack_loc): Delete declarations. | |
| (initialize_for_inline): Delete min_labelno, max_labelno and max_reg | |
| args. Don't generate an INLINE_HEADER rtx, just return the arg | |
| vector. All callers changed. | |
| (save_for_inline_copying): Create a duplicate struct emit_status to | |
| hold the emit state for compiling the current function. Use this and | |
| the other new fields in struct function that are for integration | |
| instead of an INLINE_HEADER. | |
| Use memcpy instead of bcopy. | |
| Store the current struct function in DECL_SAVED_INSNS of fndecl. | |
| (save_for_inline_nocopy): Similar changes, except no new emit_status | |
| is needed here. | |
| (expand_inline_function): Get information from function structure, | |
| not from an inline header rtx. | |
| (output_inline_function): Lose code to extract the necessary | |
| information from an inline header; simply put back the function | |
| structure into current_function. Clear its inlinable elt. | |
| * rtl.def (INLINE_HEADER): Delete. | |
| * rtl.h: Delete all accessors for an INLINE_HEADER. | |
| (gen_inline_header_rtx): Delete declaration. | |
| (regno_reg_rtx, regno_pointer_align, nonlocal_goto_handler_labels): | |
| Delete declarations. | |
| (REGNO_POINTER_ALIGN): Delete. | |
| (clear_emit_caches): Declare. | |
| (set_new_last_label_num): Declare. | |
| Mon Aug 9 01:52:24 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * print-tree.c (print_node): Print base for OFFSET_TYPEs. | |
| * except.c (expand_eh_region_start_for_decl): Always start a new block. | |
| * stmt.c (is_eh_region): Make sure current_function is present, too. | |
| Mon Aug 9 01:15:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (HARD_REGNO_MODE_OK): Correctly handle FPregs, even when | |
| for 64bit PA targets. | |
| * pa.h (SELECT_SECTION): Define. | |
| * som.h (SELECT_SECTION): Delete. | |
| Sun Aug 8 15:13:20 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * alias.c (init_alias_analysis): Wrap call to | |
| `prologue_epilogue_contains' within HAVE_prologue||HAVE_epilogue. | |
| 1999-08-07 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/inclhack.def(irix_asm_apostrophe): IRIX 5.2's | |
| <sys/asm.h> contains an asm comment with an apostrophe | |
| * fixinc/inclhack.sh: regen | |
| * fixinc/fixincl.x: regen | |
| Sat Aug 7 19:37:07 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (init_function_start): Clear prologue & epilogue. | |
| (prologue_epilogue_contains): New function. | |
| * alias.c (init_alias_analysis): Use it. | |
| * rtl.h (prologue_epilogue_contains): Declare it. | |
| Sat Aug 7 19:32:16 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (onlyjump_p): New function. | |
| * rtl.h: Declare it. | |
| * flow.c (delete_unreachable_blocks): Use onlyjump_p instead | |
| of condjump_p in calling tidy_fallthru_edge and merge_blocks. | |
| Sat Aug 7 17:09:36 1999 Richard Henderson <rth@cygnus.com> | |
| * global.c (build_insn_chain): Use EXECUTE_IF_SET_IN_REG_SET | |
| to invert loops. Simplify block scanning. | |
| Sat Aug 7 02:11:13 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * gcse.c (hash_scan_set): Treat SYMBOL_REFs like CONST_INTs. | |
| (cprop_insn): Treat SYMBOL_REFs like CONST_INTs. | |
| 1999-08-07 Jonathan Larmour <jlarmour@cygnus.co.uk> | |
| * config/sparc/liteelf.h: New file to support sparclite-elf target | |
| * config/sparc/t-sp86x: New file to support sparc86x targets | |
| * config/sparc/sp86x-aout.h: New file to support sparc86x-aout target | |
| * config/sparc/sp86x-elf.h: New file to support sparc86x-elf target | |
| * configure.in: Support above target triplets | |
| * configure: Regenerated | |
| Sat Aug 7 01:39:27 1999 Philippe De Muyter <phdm@macqel.be> | |
| * fixinc/server.c (server_setup): Do not prefix function used as | |
| parameter with `&'. | |
| Sat Aug 7 00:21:20 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (movhi and movqi patterns): Correct predicate for !BWX. | |
| Remove fp reg alternatives. | |
| Sat Aug 7 00:06:54 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefiin (TAROUTOPTS): Kill. | |
| (install-headers-tar): Use "xpf" for tar headerfile extraction | |
| * i370/x-oe (TAROUTOPTS): Delete. | |
| * m68k/x-apollo68 (TAROUTOPTS): Delete. | |
| * m68k/x-hp320 (TAROUTOPTS): Delete. | |
| * m68k/x-hp320g (TAROUTOPTS): Delete. | |
| * gcc.texi: Update bug reporting text. | |
| 1999-08-6 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
| * reg-stack.c (change_stack) Fixed problem with negative array index. | |
| Fri Aug 6 23:08:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * extend.texi, install.texi: Fix spelling mistakes. | |
| * Makefile.in (PREMADE_ATTRTAB_MD, PREMADE_ATTRTAB): Delete. | |
| (s-attrtab); No longer try to use pre-made insn-attrtab file. | |
| * mips/t-bsd: Delete references to obsolete PREMADE_ATTRTAB and | |
| PREMADE_ATTRTAB_MD. | |
| * mips/t-ecoff: Likewise. | |
| * mips/t-elf: Likewise. | |
| * mips/t-mips: Likewise. | |
| * mips/t-osfrose: Likewise. | |
| * mips/t-r3900: Likewise. | |
| * mips/t-svr3: Likewise. | |
| * mips/t-svr4: Likewise. | |
| * mips/t-ultrix: Likewise. | |
| * gcc.texi: Document recommend means to provide software floating | |
| point libraries in libgcc.a | |
| 1999-08-06 Jason Merrill <jason@yorick.cygnus.com> | |
| * c-lex.c (yylex): We can have a number with no digits. | |
| Fri Aug 6 16:53:55 EDT 1999 John Wehle (john@feith.com) | |
| * jump.c (delete_prior_computation): New function, broken | |
| out of delete_computation. Check for side effects with | |
| side_effects_p instead of FIND_REG_INC_NOTE. Handle | |
| multi-word hard registers. | |
| (delete_computation): Use it. Check for side effects with | |
| side_effects_p instead of FIND_REG_INC_NOTE. Synthesize a | |
| missing REG_DEAD note for a register which is both set and | |
| used by an insn. | |
| Fri Aug 6 11:05:29 1999 Jeffrey A Law (law@cygnus.com) | |
| * elf.h (TEXT_SPACE_P, FUNCTION_NAME_P): Delete. | |
| (ASM_GLOBALIZE_LABEL, ASM_OUTPUT_INT, ASM_OUTPUT_DOUBLE_INT): Likewise. | |
| (ASM_FILE_START): Import _mcount with the right type. | |
| (ASM_DECLARE_FUNCTION_NAME): Define. | |
| (ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define. | |
| * pa.c (output_function_prologue): Always emit the function's label | |
| here. | |
| * pa.h (TEXT_SPACE_P): Define. | |
| (FUNCTION_NAME_P, ENCODE_SECTION_INFO, STRIP_NAME_ENCODING): Likewise. | |
| (ASM_OUTPUT_INT, ASM_OUTPUT_DOUBLE_INT, ASM_GLOBALIZE_LABEL): Likewise. | |
| * som.h (TEXT_SPACE_P): Delete. | |
| (FUNCTION_NAME_P, ENCODE_SECTION_INFO, STRIP_NAME_ENCODING): Likewise. | |
| (ASM_GLOBALIZE_LABEL, ASM_OUTPUT_INT): Likewise. | |
| Thu Aug 5 19:29:39 1999 Jim Wilson <wilson@cygnus.com> | |
| * expr.c (emit_group_load): Allow src to be a CONCAT. | |
| Thu Aug 5 22:27:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * config/sh/lib1funcs.asm (___movstrSI0): Change or r0,r0,r0 to nop. | |
| (___mulsi3): Use '!' comment character. | |
| Thu Aug 5 13:34:14 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (maybe_fix_stack_asms): Also declare P as "const char *". | |
| Thu Aug 5 02:40:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcc.c: Update URLs and mail addresses. | |
| * gcc.texi: Likewise. | |
| Thu Aug 5 01:14:13 1999 Daniel Jacobowitz <drow@false.org> | |
| * rs6000.c (current_file_function_operand): Return zero for | |
| weak functions. | |
| (rs6000_encode_section_info): Do not set SYMBOL_REF_FLAG for | |
| weak symbols. | |
| * rs6000.h (ENCODE_SECTION_NIFO): Do not set SYMBOL_REF_FLAG | |
| for weak symbols. | |
| Thu Aug 5 00:56:30 1999 Geoffrey Keating <geoffk@cygnus.com> | |
| * rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic, always | |
| allocate space in the stack frame for the PIC register. | |
| Thu Aug 5 00:20:47 1999 Jeffrey A Law (law@cygnus.com) | |
| * m68k.md (xordi3, anddi3): These patterns are not available on | |
| the coldfire. | |
| Wed Aug 4 23:39:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * real.c (GET_REAL): Don't violate ANSI/ISO aliasing rules. | |
| (PUT_REAL): Likewise. | |
| Wed Aug 4 20:45:04 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * final.c (shorten_branches): Don't add an alignment for loops | |
| that have no label inside. | |
| Wed Aug 4 16:39:24 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * builtins.c (expand_builtin_memcmp, expand_builtin_strcmp): Wrap | |
| prototypes in macro HAVE_cmpstrsi. | |
| * cpplib.c (cpp_get_token): Remove unused label `op3'. | |
| * emit-rtl.c (operand_subword): Remove unused variable | |
| `bits_per_word'. | |
| * rtl.c (shallow_copy_rtx): Remove unused variable `format_ptr'. | |
| * tree.c (chainon): Wrap variable `t2' in macro ENABLE_CHECKING. | |
| Wed Aug 4 13:29:23 1999 Zack Weinberg <zack@bitmover.com> | |
| * cpphash.c (macroexpand): Delete leading whitespace when arg | |
| is concatenated before. | |
| (unsafe_chars): Correct test for whether + and - can extend a | |
| token. | |
| * cppinit.c (cpp_start_read): Do dependencies for | |
| -include/-imacros files also. | |
| * cpplib.c (cpp_scan_buffer): In no-output mode, don't bother | |
| tokenizing non-directive lines. | |
| (cpp_expand_to_buffer): Temporarily disable no-output mode. | |
| * cppmain.c: In no-output mode, just call cpp_scan_buffer for | |
| the input file. | |
| Wed Aug 4 12:53:44 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * expr.c (expand_expr, case PLUS_EXPR): Fix parallel case, too. | |
| * c-lex.c: Sync with C++ frontend. | |
| (linemode): New variable. | |
| (parse_float): imag, conversion_errno, and type are output only. | |
| (yylex): Adjust. Move initial '.' case into main switch. | |
| Use linemode. | |
| (handle_generic_pragma): Just deal with tokens. | |
| (readescape): Use ISXDIGIT and ISGRAPH. | |
| * c-parse.in: Add END_OF_LINE token. | |
| * c-lex.c (lang_init): Generalize. | |
| (nextchar): Remove. Replace uses with UNGETC. | |
| (skip_white_space): Handle linemode here. Optimize for cpplib. | |
| (skip_white_space_on_line): Remove. | |
| (extend_token_buffer_to): New fn. | |
| (extend_token_buffer): Use it. | |
| (read_line_number, check_newline): Just deal with tokens. | |
| (token_getch, token_put_back): New fns. | |
| (yylex): Use them. More cpplib optimizations. Simplify. | |
| Wed Aug 4 12:53:44 1999 Michael Tiemann <tiemann@holodeck.cygnus.com> | |
| Jason Merrill <jason@yorick.cygnus.com> | |
| * c-lex.c (init_parse): Set cpp_token to CPP_DIRECTIVE. | |
| (consume_string): Make this smart about USE_CPPLIB. | |
| (check_newline): Rewrite to be intelligent about USE_CPPLIB. | |
| (yylex): Rewrite to be intelligent about USE_CPPLIB. | |
| Also, clean up cases where we redundantly set token_buffer[0]. | |
| (read_line_number): New fn. | |
| (ignore_escape_flag): New variable. | |
| Wed Aug 4 13:12:17 1999 Jeffrey A Law (law@cygnus.com) | |
| * a29k/t-a29kbare: Fix some comments. | |
| (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c | |
| (FPBIT, DPBIT): Define. | |
| * a29k/t-vx29k: Likewise. | |
| * arc/t-arc: Likewise. | |
| * arm/t-arm-elf: Likewise. | |
| * arm/t-bare: Likewise. | |
| * arm/t-pe: Likewise. | |
| * arm/t-pe-thumb: Likewise. | |
| * arm/t-semi: Likewise. | |
| * arm/t-thumb: Likewise. | |
| * arm/t-thumb-elf: Likewise. | |
| * arm/t-thumb-linux: Likewise. | |
| * h8300/t-h8300: Likewise. | |
| * i960/t-i960: Likewise. | |
| * i960/t-vxworks960: Likewise. | |
| * m32r/t-m32r: Likewise. | |
| * mips/t-ecoff: Likewise. | |
| * mips/t-elf: Likewise. | |
| * mips/t-r3900: Likewise. | |
| * pa/t-pro: Likewise. | |
| * rs6000/t-aix43: Likewise. | |
| * rs6000/t-beos: Likewise. | |
| * rs6000/t-newas: Likewise. | |
| * rs6000/t-ppccomm: Likewise. | |
| * rs6000/t-rs6000: Likewise. | |
| * rs6000/t-winnt: Likewise. | |
| * rs6000/t-xnewas: Likewise. | |
| * rs6000/t-xrs6000: Likewise. | |
| * sh/t-sh: Likewise. | |
| * sparc/t-elf: Likewise. | |
| * sparc/t-sparcbare: Likewise. | |
| * sparc/t-sparclite: Likewise. | |
| * sparc/t-splet: Likewise. | |
| * v850/t-v850: Likewise. | |
| * mn10200/t-mn10200: Fix comments. | |
| * mn10300/t-mn10300: Likewise. | |
| * pa.md (divsi3, udivsi3, modsi3, umodsi3 expanders): Clobber a new | |
| dummy operand. Allocate a new pseudo for the dummy operand. | |
| (divsi3, udivsi3, modis3, umodsi3 patterns): Corresponding changes. | |
| * pa.md (movqi, movhi patterns): Do not expose FP regs to regclass. | |
| Wed Aug 4 11:53:55 1999 Tom Tromey <tromey@cygnus.com> | |
| * configure: Rebuilt. | |
| * configure.in: Removed --enable-java-gc option and JAVAGC subst. | |
| Wed Aug 4 09:06:14 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * recog.c (preproces_constraints): Zero recog_op_alt before | |
| processing the constraints. | |
| * arm.c (typedef minipool_node): Renamed from pool_node. | |
| (minipool_vector, minipool_size, minipool_vector_label): Similarly. | |
| (add_minipool_constant): New function. | |
| (dump_minipool): New function. | |
| (find_barrier): Remove special case for getting the insn size of | |
| an insn that references the constant pool. | |
| (minipool_fixup): New structure. | |
| (push_minipool_barrier): New function. | |
| (push_minipool_fix): New function. | |
| (note_invalid_constants): New function. | |
| (add_pool_constant, dump_table, fixit, broken_move): Delete. | |
| (arm_reorg): Rewrite code to fix up the constant pool into a | |
| series of mini-pools embedded in the insn stream. | |
| (arm_output_epilogue): New function, made mainly from the body | |
| of output_func_epilogue. | |
| (output_func_epilogue): Move insn generation part of epilogue code | |
| to arm_output_epilogue. | |
| * arm.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Delete. | |
| * arm.md (pool_range): New attribute. | |
| (zero_extendqidi2): Add attribute pool_range. | |
| (zero_extend_hisi_insn, load_extendqisi, extendhisi_insn, | |
| extendqihi_insn, extendqisi_insn, movdi, movsi_insn, pic_load_addr, | |
| pic_load_addr_based_insn, movhi_insn_arch4, movhi_insn_littleend, | |
| movhi_insn_bigend, loadhi_si_bigend, movsf_hard_insn, movsf_soft_insn, | |
| movdf_hard_insn, movdf_soft_insn, movxf_hard_insn): Likewise. | |
| (epilogue): New expand. | |
| (epilogue_insn): New insn. Call arm_output_epilogue. | |
| * arm.c (arm_poke_function_name): Undo change of July 17. Tidy up. | |
| * arm.h (TARGET_SWITCHES): Add missing doc string for TARGET_DEFAULT. | |
| Mon Aug 2 19:18:44 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. | |
| 1999-08-04 Mark Elbrecht <snowball3@bigfoot.com> | |
| * config/i386/djgpp.h (BSS_SECTION_ASM_OP): Define. | |
| Wed Aug 4 02:15:32 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (delete_insn): Delete the addr_vec when deleting a tablejump. | |
| Wed Aug 4 01:48:08 1999 Jim Kingdon <http://developer.redhat.com> | |
| * global.c: Fix comment. | |
| Wed Aug 4 01:43:01 1999 Ian Lance Taylor <ian@zembu.com> | |
| * gcc.c (access_check): New static function. | |
| (find_a_file): Use it when searching a directory list. | |
| * collect2.c (find_a_file): Don't accept directories found when | |
| searching a directory list. | |
| Wed Aug 4 01:40:43 1999 Philippe De Muyter <phdm@macqel.be> | |
| * tlink.c (symbol_hash_lookup): Do not prefix functions used as | |
| function parameters with `&'. | |
| (file_hash_lookup, demangled_hash_lookup, tlink_init): Ditto. | |
| Wed Aug 4 01:08:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (delete_unreachable_blocks): Do not call merge_blocks | |
| or tidy_fallthru_edge if the last insn in the block is not | |
| an unconditional jump or a simple conditional jump. | |
| Tue Aug 3 20:21:20 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * Makefile.in (c-decl.o): Depends on defaults.h. | |
| Tue Aug 3 14:14:52 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for | |
| PA1.1 and above. | |
| (CLASS_MAX_NREGS): Likewise. | |
| Tue Aug 3 03:51:20 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (cse_insn): Fix dumb thinko in last change. | |
| Tue Aug 3 10:36:13 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * reload1.c (maybe_fix_stack_asms): Declare CONSTRAINTS as | |
| "const char *". | |
| Mon Aug 2 23:45:45 1999 Hans-Peter Nilsson <hp@bitrange.com> | |
| * dwarf2out.c (add_location_or_const_value_attribute): Correct | |
| test for sizes of passed and declared parameter types. | |
| Tue Aug 3 00:03:41 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fixincludes: Fix the return type of bsearch, char* -> void*. | |
| * fixinc/inclhack.def: Likewise. | |
| Mon Aug 2 18:29:32 1999 Mark Mitchell <mark@codesourcery.com> | |
| * invoke.texi (-fdump-translation-unit): New option. | |
| Mon Aug 2 17:54:19 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.h (PROMOTE_PROTOTYPES): Move ... | |
| * defaults.h: ... to here. | |
| * c-decl.c: Include defaults.h instead of expr.h. | |
| * c-typeck.c: Include defaults.h. | |
| Mon Aug 2 17:10:24 1999 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.h (errorcount): Declare. | |
| (warningcount): Likewise. | |
| (sorrycount): Likewise. | |
| * c-lex.c (errorcount): Don't declare. | |
| * dwarf2out.c (errorcount): Don't declare. | |
| Mon Aug 2 17:02:08 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * config/libgloss.h: Add a note discouraging use with ELF. | |
| * configure.in: Don't use libgloss.h for ELF targets. | |
| Always use_collect2 on a.out targets. | |
| Mon Aug 2 16:27:42 1999 Jim Wilson <wilson@cygnus.com> | |
| * combine.c (force_to_mode, case LSHIFTRT): Add goto shiftrt. | |
| (force_to_mode, case ASHIFTRT): Add shiftrt label. | |
| Tue Aug 3 00:45:02 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, update | |
| reg note of NEXT->insn. | |
| 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> | |
| * real.c (PUT_REAL): Clear unused bytes if long double is IEEE quad. | |
| 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> | |
| * c-decl.c (get_parm_info, store_parm_decls): Change all uses of | |
| PROMOTE_PROTOTYPES, so that it tests it as a C expression. | |
| Ensure expr.h is included. | |
| * c-typecheck.c (convert_arguments): Ditto. | |
| * expr.h: Supply default for PROMOTE_PROTOTYPES (0). | |
| * config/arc/arc.h: Define PROMOTE_PROTOTYPES to 1. | |
| * config/convex/convex.h: Ditto. | |
| * config/dsp16xx/dsp16xx.h: Ditto. | |
| * config/fx80/fx80.h: Ditto. | |
| * config/gmicro/gmicro.h: Ditto. | |
| * config/i370/i370.h: Ditto. | |
| * config/i386/i386.h: Ditto. | |
| * config/m32r/m32r.h: Ditto. | |
| * config/m68k/m68k.h: Ditto. | |
| * config/m88k/m88k.h: Ditto. | |
| * config/mips/mips.h: Ditto. | |
| * config/pa/pa.h: Ditto. | |
| * config/pyr/pyr.h: Ditto. | |
| * config/tahoe/tahoe.h: Ditto. | |
| * config/we32k/we32k.h: Ditto. | |
| * config/sparc/sparc.h: Define PROMOTE_PROTOTYPES | |
| based on arch size. | |
| * config/i1750a/i1750a.h: Define PROMOTE_PROTOTYPES to 0. | |
| * config/i860/paragon.h: Remove PROMOTE_PROTOTYPES | |
| from comment. | |
| * tm.texi: Document new usage of PROMOTE_PROTOTYPES. | |
| 1999-08-02 Richard Henderson <rth@cygnus.com> | |
| * m32r.c (m32r_setup_incoming_varargs): Use get_varargs_alias_set | |
| for the register spill block. | |
| (m32r_va_arg): New. | |
| * m32r.h (EXPAND_BUILTIN_VA_ARG): New. | |
| (EXPAND_BUILTIN_SAVEREGS): Delete #if 0 code. | |
| * m32r.h (INT8_P): Don't short-cut test with (unsigned). | |
| (INT16_P, CMP_INT16_P, UINT16_P): Likewise. | |
| (UPPER16_P, UINT24_P, INT32_P, UINT5_P): Likewise. | |
| 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> | |
| * config/sparc/linux.h: Define WCHAR_TYPE as "int" and undef | |
| MAX_WCHAR_TYPE defined in sparc.h. | |
| * config/sparc/linuxaout.h: Likewise. | |
| * config/sparc/linux64.h: Likewise. | |
| Also default to -mvis if CPU is UltraSPARC. | |
| 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> | |
| * config/sparc/sparc.h (ASM_DECLARE_REGISTER_GLOBAL): New macro. | |
| (RTX_OK_FOR_OLO10): Likewise. | |
| (GO_IF_LEGITIMATE_ADDRESS): If assembler supports offsetable | |
| %lo(), allow it in addresses... | |
| (PRINT_OPERAND_ADDRESS): ... and print it appropriately. | |
| * config/sparc/sparc.md (sethi_di_medlow_embmedany_pic): sethi %lo() | |
| does not make sense. | |
| * config/sparc/sparc.c (sparc_hard_reg_printed): New array. | |
| (sparc_output_scratch_registers): New function. | |
| (output_function_prologue, sparc_flat_output_function_prologue): Use | |
| it. | |
| * varasm.c (make_decl_rtl): Use ASM_DECLARE_REGISTER_GLOBAL if | |
| defined. | |
| * tm.texi (ASM_DECLARE_REGISTER_GLOBAL): Document it. | |
| * configure.in: Add check for .register pseudo-op support in as and | |
| check for offsetable %lo(). | |
| * acconfig.h: Add templates for the above checks. | |
| * configure: Regenerate. | |
| 1999-08-02 Richard Henderson <rth@cygnus.com> | |
| * sparc/linux64.h (TARGET_DEFAULT): Remove MASK_APP_REGS. | |
| * sparc/sol2-sld-64.h (TARGET_DEFAULT): Likewise. | |
| * sparc/sol2.h (TARGET_DEFAULT): Likewise. | |
| Mon Aug 2 23:46:45 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, fix up | |
| reg_biv_class. | |
| 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> | |
| * config/float-sparc.h: New file. | |
| * configure.in: Use float_format=sparc for sparc-*-linux-gnulibc1, | |
| sparc-*-linux-gnu and sparc64-*-linux*. | |
| 1999-08-02 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.c (rs6000_va_list): Type is an array. | |
| (rs6000_va_start): Don't doubly adjust for varargs. | |
| (rs6000_va_arg): Evaluate long long GPR adjustment. | |
| Mon Aug 2 16:15:57 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000/aix43.h (SUBTARGET_SWITCHES): Use -m64 and -m32 instead of | |
| -maix64 and -maix32. | |
| (ASM_SPEC, ASM_CPU_SPEC, CPP_SPEC, CPP_CPU_SPEC, LIB_SPEC, | |
| LINK_SPEC): Change appropriately. | |
| * rs6000/rs6000.c (short_cint_operand): Use CONST_OK_FOR_LETTER_P. | |
| (u_short_cint_operand): Likewise. | |
| * rs6000/rs6000.md (movdi splitters): Add TARGET_POWERPC64 support | |
| for 64-bit hosts. | |
| * rs6000/t-aix43 (MULTILIB): Change to -m64. | |
| * invoke.texi (RS/6000 Submodel): Document 64-bit processor options. | |
| Mon Aug 2 16:15:57 1999 Geoff Keating <geoffk@cygnus.com> | |
| * rs6000/rs6000.c (num_insns_constant_wide): Correct | |
| for type promotion. | |
| (add_operand): Get test correct for 64-bit HOST_WIDE_INT. | |
| (non_add_cint_operand): Likewise. | |
| (logical_operand): Likewise. | |
| (non_logical_cint_operand): Likewise. | |
| (print_operand): Correct printf()s for 64-bit HOST_WIDE_INT. | |
| (print_operand_address): Correct printf() for 64-bit HOST_WIDE_INT. | |
| (rs6000_select_rtx_section): Suppress warning. | |
| (small_data_operand): Suppress warning. | |
| (rs6000_got_register): Suppress warning. | |
| * rs6000/rs6000.md (andsi3): HOST_WIDE_INT is a signed | |
| type, so `J' is generally the wrong constraint for a SImode value; | |
| use `L' instead. | |
| (andsi3_internal2): Likewise. | |
| (andsi3_internal3): Likewise. | |
| (iorsi3_internal1): Likewise. | |
| (xorsi3_internal1): Likewise. | |
| (movsi): Likewise. | |
| (movsf_softfloat): Likewise. | |
| (scc insns): Likewise. | |
| (movsi+2): Preserve sign bits of SImode constant. | |
| (floatsidf2_internal+1): Sign-extend SImode constant correctly. | |
| (movdf+1): Sign-extend properly. | |
| (movdi_32+1): Sign-extend properly. | |
| (scc insns): Sign-extend properly. | |
| * md.texi (RS/6000 EXTRA_CONSTRAINTS): Update documentation for J, | |
| K, L, and T. | |
| 1999-08-02 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (override_options): Move ev6 alpha_tp frobbing out of | |
| -mcpu parsing code. | |
| (print_operand): Notice alpha_fptm not alpha_tp for sw completion. | |
| * alpha.md (all fp insns): Likewise. | |
| 1999-08-02 Nick Clifton <nickc@cygnus.com> | |
| * config/v850/v850.h (STRICT_ALIGNMENT): Only define if not | |
| already defined. | |
| Mon Aug 2 03:38:33 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (legitimize_pic_address): Clarify comments. Do not call the | |
| pic_load_label generator directly. | |
| * pa.md (pic_load_label): Clarify comments. Remove modes on operands. | |
| No longer a named pattern. | |
| Mon Aug 2 09:38:10 1999 Nick Clifton <nickc@cygnus.com> | |
| * explow.c (force_reg): Call force_operand if X does not | |
| satisfy general_operand. | |
| Mon Aug 2 01:34:22 1999 Jeffrey A Law (law@cygnus.com) | |
| * fix-header.c (main): When testing for CONTINUED, use string | |
| equality, not pointer equality. | |
| Mon Aug 2 01:27:24 1999 Dan Nicolaescu <dann@ics.uci.edu> | |
| * sparc.c (sparc_block_profiler): Use the %g2 register, not %o0. | |
| Sun Aug 1 22:46:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * cse.c (cse_insn): Fix loop which deletes insns after a jump | |
| that has become an unconditional jump. | |
| * m68k.c (output_function_prologue): Fix typo in CPU32 case. | |
| (output_function_epilogue): Similarly. | |
| Sun Aug 1 20:14:00 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * tree.h (init_dummy_function_start): Declare. | |
| Sun Aug 1 12:55:31 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * stmt.c (emit_filename, emit_lineno, expr_stmts_for_value, | |
| last_expr_type, last_expr_value, block_start_count, block_stack, | |
| stack_block_stack, cond_stack, loop_stack, case_stack, nesting_stack, | |
| nesting_depth, goto_fixup_chain): Delete global vars; now allocated | |
| dynamically in stmt elt of struct function for each function. | |
| (struct nesting): Rename function_call_count elt to n_function_calls, | |
| target_temp_slot_level to block_target_temp_slot_level. All users | |
| changed. | |
| (struct stmt_status): New structure definition. | |
| Add many accessor macros for stmt_status elements which previously | |
| were global variables. | |
| (init_stmt_for_function): Allocate stmt elt for current_function. | |
| Reflect that block_start_count was renamed to | |
| current_block_start_count. | |
| (save_stmt_status, restore_stmt_status): Delete functions. | |
| (preserve_subexpressions_p): Don't access loop_stack when outside | |
| a function. | |
| (expand_start_bindings): Reflect that block_start_count was renamed to | |
| current_block_start_count. | |
| (expand_fixup): Likewise. | |
| (expand_decl): Don't access block_stack when outside a function. | |
| (expand_decl_cleanup): Likewise. | |
| (expand_dcc_cleanup): Likewise. | |
| (expand_dhc_cleanup): Likewise. | |
| (expand_anon_union_decl): Likewise. | |
| (set_file_and_line_for_stmt): New function. | |
| (in_control_zone_p): New function. | |
| * function.h (struct function): Add new elt stmt. | |
| Delete elts block_stack, stack_block_stack, cond_stack, loop_stack, | |
| case_stack, nesting_stack, nesting_depth, block_start_count, | |
| last_expr_type, last_expr_value, expr_stmts_for_value, emit_filename, | |
| emit_lineno, goto_fixup_chain. | |
| (save_eh_status, restore_eh_status, save_stmt_status, | |
| restore_stmt_status): Delete declarations. | |
| * function.c (push_function_context_to): Don't call save_stmt_status. | |
| (pop_function_context_to): Don't call restore_stmt_status. | |
| * tree.h (in_control_zone_p): Declare. | |
| * rtl.h (set_file_and_line_for_stmt): Declare. | |
| * emit-rtl.c (emit_line_note): Don't set emit_filename/emit_lineno; | |
| call set_file_and_line_for_stmt. | |
| Thu Jul 31 12:34:45 1999 Joe Buck <jbuck@synopsys.com> | |
| * gcc.texi: Use terms "GNU Compiler Collection" and "GCC". | |
| Also update copyright. | |
| Sat Jul 31 11:10:07 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-pragma.c: Don't include "except.h". | |
| * emit-rtl.c: Likewise. | |
| * stor-layout.c: Likewise. | |
| * tree.c: Likewise. | |
| * varasm.c: Likewise. | |
| * flow.c: Include "function.h". | |
| * tree.h (init_dummy_function_start): Declare new function. | |
| * except.h (struct eh_status): New structure. | |
| (struct label_node, struct eh_entry): Declare even if tree.h hasn't | |
| been included. | |
| (eh_return_stub_label, ehstack, catchstack, ehqueue, | |
| catch_clauses, false_label_stack, caught_return_label_stack, | |
| protect_list, current_function_ehc): Add accessor macros for the | |
| corresponding fields in current_function->eh; delete declarations | |
| for all items that used to be declared here. | |
| * except.c (eh_return_stub_label, ehstack, catchstack, ehqueue, | |
| catch_clauses, false_label_stack, caught_return_label_stack, | |
| protect_list, current_function_ehc): Delete variables. | |
| (init_eh_for_function): Allocate current_function->eh. | |
| (save_eh_status, restore_eh_status): Delete functions. | |
| * function.h (struct function): Add fields next_global and eh. | |
| Delete all exception handling related fields. | |
| * function.c (current_function): New variable. | |
| (all_functions): New variable. | |
| (push_function_context_to): Don't allocate a struct function, | |
| use current_function instead. Call init_dummy_function_start when | |
| outside a function. Clear current_function before returning. | |
| (pop_function_context_from): Restore current_function. | |
| Don't free the restored struct function. | |
| (prepare_function_start): New function. | |
| (init_dummy_function_start): New function. | |
| (init_function_start): Break out some code into prepare_function_start | |
| and call it here. | |
| * stmt.c (save_stmt_status): Don't call save_eh_status. | |
| (restore_stmt_status): Don't call restore_eh_status. | |
| * Makefile.in: Update dependencies. | |
| Sat Jul 31 04:10:01 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (compute_frame_size): Use STARTINg_FRAME_OFFSET instead | |
| of depending on a magic constant value. Update comments. | |
| (hppa_expand_prologue): Similarly. | |
| * pa.md (reload_indi, reload_outdi): Allow any register for the | |
| original reload register. | |
| Fri Jul 30 19:41:35 1999 Jim Wilson <wilson@cygnus.com> | |
| * cccp.c (print_help): Change marcos to macros. | |
| 1999-07-30 Richard Henderson <rth@cygnus.com> | |
| * c-typeck.c (initializer_constant_valid_p): Move ... | |
| * c-common.c (initializer_constant_valid_p): ... here. Use | |
| FOO_TYPE_P instead of tests against TREE_CODE. Allow subtraction | |
| of label addresses. | |
| * c-common.h (initializer_constant_valid_p): Declare. | |
| * c-tree.h (initializer_constant_valid_p): Remove. | |
| Fri Jul 30 16:33:42 1999 Mathias Froehlich <frohlich@na.uni-tuebingen.de> | |
| * config/i386/sol2-c1.asm: Align the stack. | |
| * config/i386/sol2-gc1.asm: Likewise. | |
| 1999-07-30 Vladimir Makarov <vmakarov@loony.cygnus.com> | |
| * config/sparc/sparc.h (ASM_CPU32_DEFAULT_SPEC): Change -Av8 onto | |
| -Asparclite for sparc86x. | |
| (CPP_CPU32_DEFAULT_SPEC, CPP_CPU_SPEC): Remove -D__sparc_v8__ for | |
| sparc86x. | |
| (ASM_CPU_SPEC): Use -Asparclite for sparc86x. | |
| Fri Jul 30 14:53:56 1999 Jakub Jelinek <jj@ultra.linux.cz> | |
| * config/sparc/linux64.h (CC1_SPEC): Preserve CPU specified by | |
| the user if using the non-default arch size in BI_ARCH configuration. | |
| * config/sparc/sol2-sld-64.h (CC1_SPEC): Ditto. | |
| * config/sparc/sparc.md (cmp_mul_set, cmp_udiv_cc_set): | |
| Fix patterns so that they actually match. | |
| (cmp_sdiv_cc_set): Ditto, also don't require g0 to be zero. | |
| (mulsidi3_sp64, const_mulsidi3_sp64): New patterns. | |
| (const_mulsidi3_sp32): Renamed from const_mulsidi3, only on | |
| TARGET_HARD_MUL32. | |
| (mulsidi3): Reflect this in the expand. | |
| (smulsi3_highpart): Only on TARGET_ARCH32. | |
| (umulsidi3_sp64, const_umulsidi3_sp64): New patterns. | |
| (const_umulsidi3_sp32): Renamed from const_umulsidi3. | |
| (umulsidi3): Reflect this in the expand. | |
| (umulsi3_highpart): Only on TARGET_ARCH32. | |
| (divsi3_sp32): Renamed from divsi3, only on TARGET_ARCH32, | |
| don't require g0 to be zero. | |
| (udivsi3_sp32): Renamed from udivsi3, only on TARGET_ARCH32. | |
| ({,u}divsi3): New expands. | |
| ({,u}divsi3_sp64): New patterns. | |
| (after lshrdi3_v8plus): Four new patterns to help combiner | |
| optimizing nested mixed mode shifts. | |
| * config/sparc/sparc.c (sparc_override_options): Use deprecated | |
| v8 instructions if optimizing for UltraSPARC I, II, IIi, as it | |
| speed things up. Don't use them by default on plain v9 in 64bit | |
| mode, according to what SPAMv9 sais. | |
| * config/sparc/sparc.h: Fix comments, e.g. Linux already preserves | |
| top 32 bits of %[og][0-7] in signal handlers. | |
| Also, TARGET_HARD_MUL32 now is only true for TARGET_ARCH32. | |
| Fri Jul 30 03:00:41 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (zvdep_imm32): Renamed from zvdep_imm. | |
| (ashlsi3): Corresponding changes. | |
| * pa.c (compute_zdepwi_operands): Renamed from compute_zdepi_operands. | |
| Thu Jul 29 18:37:13 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (FIRST_PARM_CALLER_OFFSET): Delete. | |
| Thu Jul 29 19:01:58 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * arm.h (Hint): Delete macro. | |
| Substitute HOST_WIDE_INT for Hint in some prototypes. | |
| * arm.c: Substitute HOST_WIDE_INT for Hint in one prototype. | |
| Thu Jul 29 09:21:42 1999 Nick Clifton <nickc@cygnus.com> | |
| * builtins.c (expand_builtin_setjmp): Use force_operand to | |
| make sure that the buffer address is in a suitable form to be | |
| passed to force_reg. | |
| Wed Jul 28 12:50:48 1999 Geoff Keating <geoffk@cygnus.com> | |
| * config/mips/mips.c: system.h handles MIN and MAX, don't undefine | |
| them here. | |
| Wed Jul 28 13:18:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (indirect_jump): Remove mode from match_operand. Verify | |
| proper mode in the condition string. | |
| (icacheflush, dcacheflush): Remove modes from match_operands. | |
| * pa.c (emit_move_sequence): Always convert scratch_reg to the | |
| proper mode before using it. | |
| * pa.md (adddi3, subdi3): Turn into a define_expand/define_insn | |
| pair. | |
| * pa.c (store_reg): Do not call add_high_const generator directly. | |
| (load_reg, set_reg_plus_d): Likewise. | |
| * pa.md (add_high_const): No longer a named pattern. | |
| * pa.c (legitimize_address): Consistently use Pmode rather than | |
| SImode. Do not call gen_pic2_highpart directly anymore. | |
| * pa.md (pic2_highpart): No longer a named pattern. | |
| (pic2_lo_sum): Similarly. Reformat to make more readable. | |
| * pa.md (call, call_value): Use "word_mode" instead of "SImode" as | |
| needed. | |
| * README: Update. | |
| Wed Jul 28 11:28:04 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * builtins.c (expand_builtin): Typo in call to expand_builtin_ffs. | |
| Wed Jul 28 11:23:48 1999 Richard Henderson <rth@cygnus.com> | |
| * pa.c (hppa_builtin_saveregs): Use get_varargs_alias_set | |
| and tag the spill mems. | |
| (hppa_va_start): New. | |
| (hppa_va_arg): New. | |
| * pa.h (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| Wed Jul 28 11:22:21 1999 Richard Henderson <rth@cygnus.com> | |
| * mn10300.c (mn10300_builtin_saveregs): Use get_varargs_alias_set | |
| and tag the spill mems. | |
| (mn10300_va_start): New. | |
| (mn10300_va_arg): New. | |
| * mn10300.h (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| Wed Jul 28 11:20:19 1999 Richard Henderson <rth@cygnus.com> | |
| * mn10200.c (mn10200_va_arg): New. | |
| * mn10200.h (EXPAND_BUILTIN_VA_ARG): New. | |
| Wed Jul 28 11:19:06 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c (std_expand_builtin_va_arg): Use int_size_in_bytes | |
| rather than play with TREE_INT_CST_LOW. | |
| 1999-07-27 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/telf.h: Include dbxelf.h. | |
| (CPP_PREDEFINES): Only define if not already defined. | |
| (ASM_IDENTIFY_GCC): Likewise. | |
| (SUBTARGET_EXTRA_SECTIONS): Likewise. | |
| (SUBTARGET_EXTRA_SECTION_FUNCTIONS): Likewise. | |
| * config/arm/thumb.h (LINK_SPEC): Only define if not already | |
| defined. | |
| (DBX_DEBUGGING_INFO): Don't define. | |
| * config/arm/linux-telf.h: New file. | |
| * config/arm/linux-tgas.h: New file. | |
| * config/arm/t-thumb-linux: New file. | |
| * config/arm/uclinux-elf.h: New file. | |
| * config/arm/uclinux-telf.h: New file. | |
| * configure.in (arm-*-uclinux, thumb-*-linux-gnu, | |
| thumb-*-uclinux): New targets. | |
| * configure: Regenerate. | |
| Tue Jul 27 23:20:21 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (post_store, pre_load): New expanders. | |
| (post_stwm, pre_ldwm): Renamed to post_stw and pre_ldw respectively. | |
| (post_ldwm, pre_stwm): Make these unnamed patterns since we never | |
| need to directly generate RTL for them. | |
| * pa.c (hppa_expand_prologue, hppa_expand_epilogue): Corresponding | |
| changes. | |
| Tue Jul 27 16:05:52 1999 David Edelsohn <edelsohn@gnu.org> | |
| * aix43.h (ASM_CPU_SPEC, CPP_CPU_SPEC): Add rs64a and PPC630. | |
| * rs6000.c (processor_target_table): Add powerpc64, rs64a, and PPC630. | |
| (rs6000_cpu): Choose between 32-bit and 64-bit default processors. | |
| (secndary_reload_class): Make TARGET_ELF conditional compile. | |
| (print_operand_address): Similar. | |
| (output_toc): Print all values as hex. | |
| (get_issue_rate): Rearrange and add RS64A and PPC630. | |
| * rs6000.h (processor_type): Add RS64A and PPC630. | |
| (PROCESSOR_POWERPC64): New. | |
| (PROMOTE_MODE): Use word_mode. | |
| (RTX_COSTS): Add RS64A and PPC630. | |
| * rs6000.md (scheduling information): Add lmul and ldiv | |
| representing 64-bit integer multiply and divide. Add rs64a and | |
| PPC630 information. | |
| (ashldi3): Add support for "rldic" instruction. | |
| * sysv4.h (PROCESSOR_DEFAULT): Change to PROCESSOR_750. | |
| Tue Jul 27 15:31:53 1999 Vladimir Makarov <vmakarov@toad.to.cygnus.com> | |
| * config/sparc/sparc.c (sparc_override_options): Enable SPARCLITE | |
| instead of V8 for sparclite86x in cpu_table. | |
| Tue Jul 27 17:49:42 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * config/arm/coff.h (ASM_FILE_START): If generating SDB output, call | |
| output_file_directive. | |
| Tue Jul 27 03:15:33 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * expr.c (expand_expr, case PLUS_EXPR): Get the mode from the | |
| tree for op1, not the rtl. | |
| Tue Jul 27 00:18:34 1999 Richard Henderson <rth@cygnus.com> | |
| * m88k.c (m88k_builtin_saveregs): Break out the constructor code | |
| to m88k_va_start, leaving only the register spill. | |
| (m88k_build_va_list): New. | |
| (m88k_va_start): New. | |
| (m88k_va_arg): New. | |
| * m88k.h (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| Mon Jul 26 19:07:11 1999 Geoff Keating <geoffk@cygnus.com> | |
| * config/rs6000/rs6000.c (rs6000_expand_builtin_saveregs): | |
| Rename from expand_builtin_saveregs. | |
| * config/rs6000/rs6000.h (EXPAND_BUILTIN_SAVEREGS): Change caller. | |
| Mon Jul 26 22:52:47 1999 Richard Henderson <rth@cygnus.com> | |
| * i960.c (i960_setup_incoming_varargs): Use get_varargs_alias_set | |
| for the register spill block. | |
| (i960_build_va_list): New. | |
| (i960_va_start): New. | |
| (i960_va_arg): New. | |
| * i960.h (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| * i960.md (store_multiple): Use change_address on individual mems. | |
| Mon Jul 26 22:43:12 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c (stabilize_va_list): Don't INDIRECT_REF through | |
| an ARRAY_TYPE. | |
| (std_expand_builtin_va_start): Back out one word if !stdarg_p. | |
| (expand_builtin_va_end): Evaluate arg for side effects. | |
| * c-common.c (c_common_nodes_and_builtins): Construct a | |
| va_list_arg_type_node to handle array decomposition to pointer. | |
| Mon Jul 26 18:51:34 1999 Richard Henderson <rth@cygnus.com> | |
| * except.c (st_dynamic_cleanup): Use force_operand on the | |
| buffer's address. | |
| Mon Jul 26 16:43:26 1999 Richard Henderson <rth@cygnus.com> | |
| * c4x.h (EXPAND_BUILTIN_VA_ARG): New. | |
| * c4x.c (c4x_va_arg): New. | |
| Mon Jul 26 12:30:09 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * cpplib.c (cpp_get_token): Don't return a CPP_POP if the buffer | |
| has manual_pop set. | |
| 1999-07-26 Nathan Sidwell <nathan@acm.org> | |
| * eh-common.h (__eh_matcher): Prototype correctly. | |
| Mon Jul 26 17:24:51 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/thumb.h (THUMB_FLAG_SINGLE_PIC_BASE): Define. | |
| (TARGET_SINGLE_PIC_BASE): Likewise. | |
| (GOT_PCREL, NEED_GOT_RELOC, NEED_PLT_RELOC): Provide default | |
| definitions. | |
| (TARGET_CALLEE_INTERWORKING): Fix typo in comment. | |
| (TARGET_SWITCHES): Add -m{no-}single-pic-base. | |
| (TARGET_OPTIONS): Add -mpic-register=N. | |
| (OUTPUT_INT_ADDR_CONST): New macro. | |
| (INDEX_REGISTER_RTX_P, PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC, | |
| LEGITIMATE_PIC_OPERAND_P): Likewise. | |
| (LEGITIMIZE_ADDRESS, GOT_IF_LEGITIMATE_ADDRESS): Support PIC. | |
| (ASM_OUTPUT_INT): Use OUTPUT_INT_ADDR_CONST rather than calling | |
| output_addr_const directly. | |
| (PRINT_OPERAND_PUNCT_VALID_P): Accept `|' for compatibility with | |
| ARM port. | |
| (thumb_pic_register, thumb_pic_register_string): Declare. | |
| * config/arm/thumb.c (symbol_mentioned_p): New function: Imported | |
| from arm.c. | |
| (label_mentioned_p): New function: Imported from arm.c. | |
| (legitimize_pic_address): New function: Imported from arm.c. | |
| (is_pic):New function: Imported from arm.c. | |
| (thumb_finalize_pic):New function: Imported from arm.c. | |
| (add_constant): Cope with PIC constants. | |
| (fixit): Cope with PIC constants. | |
| (output_return): Do not treat the PIC register as live if | |
| TARGET_SINGLE_PIC_BASE is true. | |
| (thumb_function_prologue): Do not treat the PIC register as live if | |
| TARGET_SINGLE_PIC_BASE is true. | |
| (thumb_expand_prologue): Do not treat the PIC register as live if | |
| TARGET_SINGLE_PIC_BASE is true. | |
| (thumb_unexpand_epilogue): Do not treat the PIC register as live if | |
| TARGET_SINGLE_PIC_BASE is true. | |
| (thumb_print_operand): Accept '|'. | |
| (thumb_override_options): Process PIC options. | |
| * config/arm/thumb.md (movsi): Support PIC. | |
| (call_insn): Change "i" constraint to "X". | |
| (call_value_insn): Likewise. | |
| (consttable_4, consttable_8, consttable_end): Set and clear | |
| "making_const_table" as appropriate. | |
| (pic_load_addr, pic_add_dot_plus_four): New insns. | |
| * invoke.texi (Thumb Options): Fix spelling. Document new | |
| options -msingle-pic-base and -mpic-register=. | |
| 1999-07-26 Andrew Haley <aph@cygnus.com> | |
| * config/m32r/initfini.c (__init): Use a full word immediate for | |
| __fini: this allows it to be placed in any memory region. | |
| * config/m32r/t-m32r: Compile crtinit.o and crtfini.o for | |
| -mmodel=medium. This is OK for all memory models. | |
| Mon Jul 26 11:58:46 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c: Replace %R%s in asm_fprintf strings with %r. | |
| * config/arm/arm.h: Replace %R%s in asm_fprintf strings with %r. | |
| Mon Jul 26 10:23:36 1999 Nick Clifton <nickc@cygnus.com> | |
| * final.c (asm_fprintf): Accept ASM_FPRINTF_EXTENSIONS, if | |
| defined. | |
| * tm.texi: Document ASM_FPRINTF_EXTENSIONS. | |
| Sun Jul 25 23:51:59 1999 Richard Henderson <rth@cygnus.com> | |
| * i860.h (EXPAND_BUILTIN_SAVEREGS): New. | |
| (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| * i860.c (output_delayed_branch): Disable. | |
| (output_delay_insn): Likewise. | |
| (i860_saveregs): New. | |
| (i860_build_va_list): New. | |
| (i860_va_start): New. | |
| (i860_va_arg): New. | |
| * i860.md: Disable all peepholes using output_delayed_branch. | |
| * i860/sysv4.h (I860_SVR4_VA_LIST): New. | |
| Sun Jul 25 23:44:13 1999 Richard Henderson <rth@cygnus.com> | |
| * clipper.h (EXPAND_BUILTIN_SAVEREGS): Remove argument. | |
| (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| * clipper.c (clipper_builtin_saveregs): Only dump registers. | |
| Return the address of the save area. | |
| (clipper_build_va_list): New. | |
| (clipper_va_start): New. | |
| (clipper_va_arg): New. | |
| Sun Jul 25 22:56:47 1999 Richard Henderson <rth@cygnus.com> | |
| * arc.h (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| * arc.c (arc_setup_incoming_varargs): Set alias set of | |
| varargs save area. | |
| (arc_va_start): New. | |
| (arc_va_arg): New. | |
| Sun Jul 25 22:45:55 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (EXPAND_BUILTIN_SAVEREGS): Delete. | |
| (BUILD_VA_LIST_TYPE): New. | |
| (EXPAND_BUILTIN_VA_START): New. | |
| (EXPAND_BUILTIN_VA_ARG): New. | |
| * alpha.c (alpha_builtin_saveregs): Delete. | |
| (alpha_build_va_list): New. | |
| (alpha_va_start): New. | |
| (alpha_va_arg): New. | |
| Sun Jul 25 21:40:33 1999 Jeffrey A Law (law@cygnus.com) | |
| * config/svr4.h (CTORS_SECTION_ASM_OP): Do not emit directives in | |
| column zero. | |
| (DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): Likewise. | |
| (FINI_SECTION_ASM_OP, ASM_OUTPUT_SECTION_NAME): Likewise. | |
| * gcc.texi: More changes related to list conversion. | |
| * invoke.texi: Likewise. | |
| Sun Jul 25 18:15:39 1999 Richard Henderson <rth@cygnus.com> | |
| * builtins.c (expand_builtin_saveregs): Remove static, remove exp | |
| and ignore arguments, bail if no EXPAND_BUILTIN_SAVEREGS. | |
| (expand_builtin_next_arg): Accept ARGLIST not EXP. | |
| (stabilize_va_list): New function. | |
| (std_expand_builtin_va_start): New function. | |
| (expand_builtin_va_start): New function. | |
| (get_varargs_alias_set): New function. | |
| (std_expand_builtin_va_arg): New function. | |
| (expand_builtin_va_arg): New function. | |
| (expand_builtin_va_end): New function. | |
| (expand_builtin_va_copy): New function. | |
| (expand_builtin): Call them. | |
| * c-common.c (c_common_nodes_and_builtins): Build __builtin_va_list, | |
| __builtin_{varargs_start,stdarg_start,end,copy}. | |
| (build_va_arg): New function. | |
| * c-common.h (CTI_PTR_TYPE, ptr_type_node): Delete. | |
| (build_va_arg): Declare. | |
| * c-decl.c (ptr_type_node, va_list_type_node): New. | |
| * c-parse.gperf (__builtin_va_arg): New. | |
| * c-parse.in (VA_ARG): New token. | |
| (unary_expr): Recognize it. | |
| * expr.c (expand_expr): Expand VA_ARG_EXPR. | |
| * expr.h (std_expand_builtin_va_start): Declare. | |
| (std_expand_builtin_va_arg): Declare. | |
| (expand_builtin_va_arg): Declare. | |
| (get_varargs_alias_set): Declare. | |
| * tree.def (VA_ARG_EXPR): New. | |
| * tree.h (BUILT_IN_VARARGS_START): New. | |
| (BUILT_IN_STDARG_START, BUILT_IN_VA_END): New. | |
| (ptr_type_node, va_list_type_node): Declare. | |
| * tm.texi (EXPAND_BUILTIN_SAVEREGS): Kill unused ARGLIST argument. | |
| * m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise. | |
| * m88k.h, m88k.c: Likewise. | |
| * mn10300.h, mn10300.c: Likewise. | |
| * pa.h, pa.c: Likewise. | |
| * rs6000.h, rs6000.c: Likewise. | |
| * sh.h, sh.c: Likewise. | |
| * sparc.h, sparc.c: Likewise. | |
| * emit-rtl.c (operand_subword): Copy alias set. | |
| (change_address): Likewise. | |
| Sun Jul 25 15:04:37 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (compute_frame_size): Scan all the used callee saved registers, | |
| not just the first one. | |
| Fri Jul 23 14:09:58 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/arm.h (TARGET_SWITCHES): Add | |
| -m{no-}single-pic-base. Correct help string for -mshort-load-words. | |
| (TARGET_OPTIONS): Add -mpic-register=. | |
| (ARM_FLAG_SINGLE_PIC_BASE, TARGET_SINGLE_PIC_BASE): Define. | |
| (arm_pic_register_string): Declare. | |
| (NEED_PLT_GOT): Delete, replace with ... | |
| (NEED_GOT_RELOC, NEED_PLT_RELOC): ... these. New macros. | |
| (OUTPUT_INT_ADDR_CONST): Replace NEED_PLT_GOT with NEED_GOT_RELOC. | |
| (ASM_OUTPUT_MI_THUNK): Replace NEED_PLT_GOT with NEED_PLT_RELOC. | |
| * config/arm/arm.c (arm_override_options): Add new option | |
| -mpic-register=N. | |
| (arm_pic_register_string): New variable. | |
| (arm_finalize_pic): Respect TARGET_SINGLE_PIC_BASE. | |
| (output_func_prologue): If TARGET_SINGLE_PIC_BASE, treat the PIC | |
| register as never live. Use NEED_PLT_RELOC not NEED_PLT_GOT. | |
| (output_return_instruction): Likewise. | |
| * config/arm/elf.h (NEED_PLT_GOT): Delete, replace with ... | |
| (NEED_GOT_RELOC, NEED_PLT_RELOC): ... these. Define to flag_pic. | |
| * config/arm/arm.md: Use NEED_PLT_RELOC in place of NEED_PLT_GOT. | |
| * invoke.texi (ARM Options): Fix spelling. Remove duplicate | |
| mention of -msched-prolog. Document new options -msingle-pic-base | |
| and -mpic-register=. | |
| Thu Jul 22 18:23:56 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (reemit_notes): Tidy. | |
| * sched.c (reemit_notes): Duplicate 1998-08-31 patch to | |
| haifa's routine. | |
| Thu Jul 22 18:21:04 1999 Richard Henderson <rth@cygnus.com> | |
| * explow.c (trunc_int_for_mode): New function. | |
| (plus_constant_wide): Use it. | |
| * combine.c (simplify_and_const_int): Likewise. | |
| (merge_outer_ops): Likewise. | |
| (simplify_shift_const): Likewise. | |
| * cse.c (simplify_unary_operation): Likewise. | |
| (simplify_binary_operation): Likewise. | |
| * emit-rtl.c (operand_subword): Likewise. | |
| * rtl.h: Declare it. | |
| Thu Jul 22 14:34:59 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * config/arm/arm.c (arm_print_operand): Fix typo in 'M' case | |
| (use NUM_REGS instead of NUM_INTS). | |
| Thu Jul 22 11:25:20 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * builtins.c: New file. | |
| * expr.c (saveregs_value, apply_args_value): Delete definition, | |
| moved into builtins.c. | |
| (string_constant): No longer static. | |
| (get_pointer_alignment, c_strlen, get_memory_rtx, expand_builtin, | |
| apply_args_size, apply_result_size, result_vector, | |
| expand_builtin_apply_args, expand_builtin_apply, | |
| expand_builtin_return): Delete functions, moved into builtins.c. | |
| (INCOMING_REGNO, OUTGOING_REGNO): Delete unused macros. | |
| * expr.h (saveregs_value, apply_args_value): Declare variables. | |
| (expand_builtin, string_constant): Declare functions. | |
| * Makefile.in: Update to build builtin.o. | |
| Wed Jul 21 00:46:58 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro. | |
| * tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it. | |
| * dwarf2out.c (dwarf2out_init): Don't output a label to mark the | |
| start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is | |
| false. | |
| * config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): | |
| Define to zero. | |
| 1999-07-21 Michael Meissner <meissner@cygnus.com> | |
| * print-rtl.c (print_rtx): Print the names of the virtual | |
| registers. | |
| Wed Jul 21 16:00:32 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.h (INITIAL_ELIMINATION_OFFSET): Fix typo | |
| introduced in previous delta. | |
| Wed Jul 21 14:30:51 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-lang.c (finish_file): Rename void_list_node to void_list_node_1 | |
| to avoid name clash. | |
| Wed Jul 21 08:39:22 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-lex.c (yylex) : Correct the test for overflow when lexing | |
| integer literals. | |
| Tue Jul 20 18:02:42 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (insn_cost): FREE implies cost 0 and vice versa. | |
| (adjust_priority): Always call ADJUST_PRIORITY. | |
| (schedule_insn): Only put insns into the ready at cost 0. | |
| (schedule_block): Remove redundant initial sort. Give clock_var | |
| and can_issue_more to MD_SCHED_REORDER. Requeue if hazard cost | |
| is not 0. | |
| * tm.texi (MD_SCHED_REORDER): Update docs. | |
| * sparc.h (MD_SCHED_REORDER): Update. Set CAN_ISSUE_MORE. | |
| * sparc.c (ultra_reorder_called_this_block): Delete. | |
| (ultrasparc_sched_init): Don't set it. | |
| (ultrasparc_sched_reorder): Don't check it. | |
| Tue Jul 20 17:07:54 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.h (struct rs6000_args): Add sysv_gregno. | |
| * rs6000.c (init_cumulative_args): Init sysv_gregno. | |
| (function_arg_boundary): Align DFmode. | |
| (function_arg_advance): Restructure for ABI_V4; use sysv_gregno | |
| to get fp reg and stack overflow correct. | |
| (function_arg): Likewise. | |
| (function_arg_pass_by_reference): True for TFmode for ABI_V4. | |
| (setup_incoming_varargs): Restructure for ABI_V4; use | |
| function_arg_advance to skip final named argument. | |
| (expand_builtin_saveregs): Properly unskip the last integer arg | |
| when doing varargs. Adjust overflow location calculation. | |
| * ginclude/va-ppc.h (struct __va_list_tag): Make gpr and fpr | |
| explicitly unsigned. | |
| (__VA_FP_REGSAVE): Use new OFS argument instead of AP->fpr directly. | |
| (__VA_GP_REGSAVE): Similarly. | |
| (__va_longlong_p): Delete. | |
| (__va_arg_type_violation): New declaration. | |
| (va_arg): Restructure. Flag promotion errors. Align double. | |
| TFmode passed by reference. | |
| * rs6000.md (movdi_32+1): Use GEN_INT after arithmetic | |
| in the HOST_BITS_PER_WIDE_INT > 32 case. | |
| Tue Jul 20 12:37:30 1999 Hans-Peter Nilsson <hp@bitrange.com> | |
| * dwarf2out.c (output_abbrev_section): Terminate with a zero. | |
| Tue Jul 20 12:12:27 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * gcc.c (default_compilers, cpp-output): Pass -fpreprocessed. | |
| * toplev.c (documented_lang_options): Add -fpreprocessed. | |
| * cpplib.h (struct cpp_buffer): Add preprocessed. | |
| * cppinit.c (cpp_handle_option): Handle -fpreprocessed. | |
| (cpp_start_read): Don't expand macros or emit an initial #line | |
| directive if -fpreprocessed. | |
| Tue Jul 20 12:12:09 1999 Michael Tiemann <tiemann@holodeck.cygnus.com> | |
| * cpplib.h (struct cpp_buffer): Added manual_pop for | |
| better C++ tokenization. | |
| * cpplib.c (cpp_get_token): Return CPP_EOF if manual_pop. | |
| Also, support C++ tokenization for ->*, .*, <?, and >? operators. | |
| * c-common.c (cpp_token): Make non-static. | |
| Tue Jul 20 11:24:19 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * c-common.h: New file. | |
| * c-common.c (permanent_obstack): Delete unused declaration. | |
| (c_global_trees): New array. | |
| (c_common_nodes_and_builtins): New function; split off common code | |
| from init_decl_processing in both c-decl.c and cp/decl.c. | |
| * c-tree.h: Delete lots of declarations of tree nodes; replaced by | |
| c_global_trees and accessor macros defined in c-common.h. | |
| Include c-common.h. | |
| * c-decl.c: Delete definitions for tree nodes that were replaced by | |
| c_global_trees. | |
| (init_decl_processing): Build void_list_node. | |
| Call c_common_nodes_and_builtins; delete code to generate the common | |
| builtins here. | |
| * objc/objc-act.c (build_module_descriptor): Rename variable | |
| void_list_node to avoid clash with c-common.h. | |
| * Makefile.in: Update dependencies. | |
| * objc/Make-lang.in: Likewise. | |
| Mon Jul 19 14:22:18 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * config/mips/iris6gld.h (MAKE_DECL_ONE_ONLY): Define. | |
| (UNIQUE_SECTION_P): Likewise. | |
| (UNIQUE_SECTION): Likewise. | |
| 1999-07-19 Linas Vepstas <linas@linas.org> | |
| * config/i370/README: New file. | |
| * config/i370/linux.h: New file. | |
| * config/i370/mvs.h: New file. | |
| * config/i370/oe.h: New file. | |
| * config/i370/t-linux: New file. | |
| * config/i370/t-mvs: New file. | |
| * config/i370/t-oe: New file. | |
| * config/i370/x-oe: New file. | |
| * config/i370/xm-linux.h: New file. | |
| * config/i370/xm-mvs.h: New file. | |
| * config/i370/xm-oe.h: New file. | |
| * i370.c (label_node_t): Add first_ref_page, label_addr, | |
| label_first_ref, label_last_ref members. | |
| (mvs_need_base_reload): Renamed from mvs_label_emitted. | |
| (MAX_MVS_LABEL_SIZE): Define. | |
| (MAX_LONG_LABEL_SIZE): Define. | |
| (alias_node_t, alias_anchor, alias_number): New. | |
| (mvs_function_table): Reorder for EBCDIC. | |
| (ascebc, ebcasc): Unconditionally define. | |
| (i370_branch_dest, i370_branch_length): New functions. | |
| (i370_short_branch, i370_label_scan): New functions. | |
| (mvs_get_label): Renamed from mvs_add_label. Search for | |
| an existing label before creating a new one. | |
| (mvs_add_label): New function. | |
| (mvs_get_label_page): New function. | |
| (mvs_free_label_list): Renamed from mvs_free_label. Iterate | |
| over the entire list. | |
| (mvs_check_page) [TARGET_HLASM]: Use BASR not BALR. | |
| (mvs_check_page) [TARGET_ELF_ABI]: New function. | |
| (mvs_add_alias, mvs_need_alias): New functions. | |
| (mvs_get_alias, mvs_check_alias): New functions. | |
| (handle_pragma): New function. | |
| (mvs_function_check): New function. | |
| (unsigned_jump_follows_p): Search harder. | |
| (i370_function_prolog) [TARGET_HLASM]: Handle LE370. Scan labels. | |
| (i370_function_prolog) [TARGET_ELF_ABI]: New function. | |
| * i370.h (TARGET_VERSION): Delete. | |
| (CPP_SPEC, CPP_PREDEFINES): Delete. | |
| (mvs_label_emitted): Delete. | |
| (TARGET_EBCDIC): Delete. | |
| (MAP_CHARACTER): Define only if TARGET_EBCDIC. | |
| (HANDLE_PRAGMA): Define. | |
| (HARD_REGNO_NREGS): Handle complex modes. | |
| (HARD_REGNO_MODE_OK): Likewise. | |
| (CLASS_MAX_NREGS): Likewise. | |
| (RET_REG): Likewise. | |
| (EXTRA_CONSTRAINT): Define. | |
| (RETURN_IN_MEMORY): True for DImode. | |
| (TRAMPOLINE_TEMPLATE): Use gen_rtx instead of GEN_INT. | |
| (FUNCTION_PROFILER): Delete. | |
| (COUNT_REGS): Fail if REG_P but not REG_OK_FOR_BASE_P. | |
| (NOTICE_UPDATE_CC): Correct handling of MULT, DIV, logicals and shifts. | |
| (TARGET_ESC, TARGET_BELL): Conditionally define for TARGET_EBCDIC. | |
| (TARGET_BS, TARGET_TAB, TARGET_NEWLINE): Likewise. | |
| (TARGET_VT, TARGET_FF, TARGET_CR): Likewise. | |
| (ASM_FILE_START): Add "RMODE ANY". | |
| (ASM_OUTPUT_EXTERNAL): Check for aliases. | |
| (ASM_GLOBALIZE_LABEL): Likewise. | |
| (ASM_OUTPUT_LABELREF): Likewise. | |
| (ASM_OUTPUT_COMMON): Likewise. | |
| (PRINT_OPERAND): Handle 'K', 'W', default. | |
| (PRINT_OPERAND_ADDRESS): New. | |
| (Lots of defines): Add support for TARGET_ELF_ABI. | |
| * i370.md (attr length): New. Define for all patterns. | |
| (*): Lots of tweeks to assembly output and constraints. | |
| Mon Jul 19 15:09:29 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (arithmetic, logical, and shift Rc combiner patterns): | |
| Disable patterns performing SImode comparisons with SImode values | |
| if TARGET_POWERPC64 and instruction does not sign-extend or does | |
| not mask to narrower than SImode, i.e. where bit 31 and bit 63 may | |
| differ for signed quantities. | |
| (indirect_jump): Add expander to choose RTL based on TARGET_64BIT. | |
| (tablejump): Patterns contingent on TARGET_64BIT not TARGET_POWERPC64. | |
| (decrement_and_branch_on_count): Add 64-bit variant. | |
| Mon Jul 19 09:36:27 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * final.c (output_asm_insn): When searching for the matching string | |
| for a given dialect, don't run past the end of the list of | |
| alternatives if there are fewer alternatives in the template than | |
| dialects. | |
| 1999-07-17 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * gcc.texi: Update e-mail addresses and URLs to gcc.gnu.org. | |
| Removed paragraph about compression of files and size limitation, | |
| duplicated in the FAQ. Use gcc-patches for posting patches. | |
| * gcc.c (main): Updated URL with bug reporting instructions to | |
| gcc.gnu.org. Removed e-mail address. | |
| * system.h (abort): Likewise. | |
| 1999-07-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (stmp-multilib-sub): Make the files extracted | |
| from $(LIBGCC1) writable. | |
| Sat Jul 17 14:25:46 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/aout.h: Reformat for improved readability. | |
| * config/arm/arm.h: Reformat for improved readability. | |
| Replace uses of fprintf with asm_fprintf where appropriate. | |
| (ARM_DECLARE_FUNCTION_NAME): New macro: Perform any generic ARM | |
| function declaration assembler actions. | |
| (NUM_INTS): New macro: Convert from bytes to words. | |
| (NUM_REGS): New macro: Compute number of registers required to | |
| hold a quanitity of tyep MODE. | |
| (NUM_REGS2): New macro: Like NUM_REGS but also copes with BLKmode | |
| types. | |
| (NUM_ARG_REGS): New macro: The number of argument registers | |
| available. | |
| (ARG_REGISTER): New macro: Compute the register number of the Nth | |
| argument register. | |
| (LAST_ARG_REGNUM): New macro: The number of the last argument | |
| register. | |
| (SP_REGNUM): New macro: Register number of the stack pointer. | |
| (FP_REGNUM): New macro: Register number of the frame pointer. | |
| (FUNCTION_ARG, FUNCTION_ARG_PARTIAL_NREGS, INIT_CUMULATIVE_AGS, | |
| FUNCTION_ARG_ADVANCE, SETUP_INCOMING_VARARGS): Change | |
| CUMULATIVE_ARGS so that it counts registers not bytes. | |
| * config/arm/arm.c: Rename TARGET_THUMB_INTERWORK to | |
| TARGET_INTERWORK. | |
| Replace uses of fprintf with asm_fprintf where appropriate. | |
| (output_ascii_pseudo_op): Replace with version from thumb.c | |
| * config/arm/coff.h (ASM_FILE_START): Emit ASM_APP_OFF. | |
| * config/arm/elf.h (CPP_PREDEFINES): Replace with | |
| SUBTARGET_CPP_SPEC. | |
| (ASM_DECLARE_FUNCTION_NAME): Use ARM_DECLARE_FUNCTION_NAME. | |
| (ASM_FILE_START): Emit ASM_APP_OFF. | |
| Fri Jul 16 13:48:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (compute_frame_size): Round frame according to | |
| STACK_BOUNDARY rather than a hardwired value. | |
| * pa.h (POINTER_SIZE, PARM_BOUNDARY): Define in terms of BITS_PER_WORD. | |
| * configure.in (hppa*-*-hpux11*): Use symbolic MASK_PA_11 instead | |
| of "1". | |
| * configure: Rebuilt. | |
| * configure.in (hppa*-*-linux*): New configuration. | |
| * configure: Rebuilt. | |
| * pa.h (MAX_OFILE_ALIGNMENT): Delete. | |
| * pa/som.h (MAX_OFILE_ALIGNMENT): Define. | |
| * pa/pa-linux.h: New file. | |
| * pa/t-linux: New file. | |
| * pa/xm-linux.h: New file. | |
| * pa.c (hppa_legitimize_address): Change references from SImode to | |
| either Pmode or word_mode as appropriate. | |
| (emit_move_sequence, store_reg, load_reg): Likewise. | |
| (set_reg_plus_d, hppa_expand_prologue): Likewise. | |
| (output_mul_insn): Likewise. | |
| * pa.h (PROMOTE_MODE): Likewise. | |
| (INITIALZE_TRAMPOLINE): Likewise. | |
| (Pmode): Define to word_mode. | |
| * pa.c (compute_frame_size): Use UNITS_PER_WORD instead of hardwired | |
| value of 4. Allocate 8 bytes for each FP register save. | |
| (hppa_expand_epilogue): Use UNITS_PER_WORD instead of harwarewired | |
| value of 4. | |
| (hppa_expand_prologue): Likewise. | |
| * pa.h (PROMOTE_MODE): Likewise. | |
| (HARD_REGNO_MODE_OK, FUNCTION_ARG_SIZE): Likewise. | |
| (FUNCTION_ARG_BOUNDARY): Likewise. | |
| * invoke.texi (HPPA Options): Remove -mspace/-mno-space. | |
| * pa.c (out_of_line_prologue_epilogue): Delete. | |
| (override_options): Remove -mspace related code. | |
| (hppa_expand_prologue, hppa_expand_epilogue): Likewise. | |
| (compute_frame_size): Only allocate space for register that | |
| actually need to be saved. | |
| * pa.h (MASK_SPACE, TARGET_SPACE): Delete. | |
| (TARGET_SWITCHES): Remove -mspace, -mno-space | |
| * pa/t-pa (LIB2FUNCS_EXTRA): Remove ee.asm and ee_fp.asm | |
| * pa/t-pro (LIB2FUNCS_EXTRA): Likewise. Remove -mspace multilib. | |
| * pa/ee.asm, pa/ee_fp.asm: Delete. | |
| * pa/elf.h (ASM_OUTPUT_DOUBLE_INT): Define. | |
| * config/svr4.h (CONST_SECTION_ASM_OP): Do not emit assembler | |
| directive in column zero. | |
| Fri Jul 16 01:39:57 1999 Jeffrey A Law (law@cygnus.com) | |
| * m68k.c (output_function_prologue): Fix computation of save mask | |
| when generating PIC code. | |
| Thu Jul 15 15:40:09 1999 Jim Wilson <wilson@cygnus.com> | |
| * tree.c (build_type_attribute_variant): Move current_obstack restore | |
| after build_qualified_type call. | |
| 1999-07-15 Mark Mitchell <mark@codesourcery.com> | |
| * configure.in: Use t-iris6, even with GNU LD. | |
| * config/mips/iris6gld.h: Fix typo in linker spec. | |
| * config/mips/t-iris6gld: Remove. | |
| Thu Jul 15 15:15:43 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (insv, extzv): Remove SImode dependence in named | |
| patterns. Explicitly generate DImode RTL if PowerPC64 and | |
| operand is DImode. | |
| (insvdi): Reverse start and size in instruction template. | |
| 1999-07-12 Joseph S. Myers <jsm28@cam.ac.uk> | |
| * invoke.texi: Typo fixes. | |
| Wed Jul 14 23:28:06 1999 Jeffrey A Law (law@cygnus.com) | |
| * emit-rtl.c (gen_realpart): Issue an error for cases GCC can not | |
| handle at this time instead of silently generating incorrect code. | |
| (gen_imagpart): Likewise. | |
| * reload.c (find_reloads): Emit a USE for a pseudo register without | |
| a hard register if we could not create an optional reload for the | |
| pseudo. | |
| Wed Jul 14 23:45:48 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * c-typeck.c (output_init_element, process_init_element): | |
| When advancing constructor_unfilled_fields for a RECORD_TYPE, | |
| check for nameless bit fields. | |
| Wed Jul 14 01:57:39 1999 Richard Henderson <rth@cygnus.com> | |
| * regclass.c (scan_one_insn): Notice subregs that change the | |
| size of their operand. | |
| (record_reg_classes): Use that to obey CLASS_CANNOT_CHANGE_SIZE. | |
| Wed Jul 14 01:41:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (alpha*-*-*): Include alpha/t-ieee. | |
| * configure: Rebuilt. | |
| * alpha/t-ieee: New file. | |
| Tue Jul 13 10:45:58 1999 Jeffrey A Law (law@cygnus.com) | |
| * rs6000.c (find_addr_reg): Do not select r0 as an address | |
| register. | |
| Tue Jul 13 00:46:18 1999 Philippe De Muyter <phdm@macqel.be> | |
| * m68k/x-mot3300 (XCFLAGS): List of big files now includes `cse.o'. | |
| Mon Jul 12 14:29:15 1999 Jeffrey A Law (law@cygnus.com) | |
| * rs6000.md (movsf): Do not force easy FP constants into memory. | |
| * expr.c (expand_expr, case PLUS_EXPR): Pass constants through | |
| immed_double_const to ensure they are properly truncated then | |
| sign extended. | |
| Mon Jul 12 10:40:01 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * config/arm/thumb.c (thumb_reorg): Call replace_symbols_in_block | |
| always unless NO_DEBUG is used. Compile this code | |
| unconditionally. | |
| (replace_symbols_in_block): Compile it unconditionally. | |
| Sun Jul 11 12:32:32 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (i?86-*-elf*): New target. | |
| * configure: Rebuilt. | |
| * i386/i386elf.h, i386/t-i386elf: New files. | |
| Fri Jul 9 22:39:44 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * toplev.c (main): Don't complain about saying -gdwarf. | |
| (rest_of_compilation): Remove redundant code. | |
| Fri Jul 9 19:08:55 1999 Jim Wilson <wilson@cygnus.com> | |
| * unroll.c (unroll_loops): Don't delete named CODE_LABELs. | |
| Fri Jul 9 18:54:18 1999 Felix Lee <flee@cygnus.com> | |
| * config/i960/i960.c (ret_label): Change asm label from "LR:" to | |
| "Li960R:", to avoid name clash. | |
| Fri Jul 9 10:48:28 1999 Bernd Schmidt <bernds@cygnus.co.uk> | |
| * loop.c (check_dbra_loop): When reversing a loop, delete all | |
| REG_EQUAL notes referencing the reversed biv except those which are | |
| for a giv based on it. | |
| Fri Jul 9 03:51:52 1999 Jeffrey A Law (law@cygnus.com) | |
| * version.c: Drop "gcc-" prefix from version #. | |
| Thu Jul 8 18:06:30 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (dwarf2out_line): Emit a line number comment after | |
| the label if we're being verbose. | |
| Thu Jul 8 14:18:46 1999 Richard Henderson <rth@cygnus.com> | |
| * m68k.c (output_function_prologue): Add pic register to mask | |
| if live and flag_pic. | |
| (output_function_epilogue): Likewise. | |
| Thu Jul 8 12:55:12 1999 Jeffrey A Law (law@cygnus.com) | |
| * dbxelf.h (ASM_OUTPUT_SOURCE_LINE): Do not put assembler | |
| directives in column zero. | |
| * pa/elf.h (ASM_FILE_START): Define. | |
| * pa/som.h (ASM_FILE_START): Include .level directives. | |
| * pa/hpux10.h (ASM_FILE_START): Delete. | |
| * pa/hpux11.h (ASM_FILE_START): Delete. | |
| * pa/elf.h (BSS_SECTION_ASM_OP): Use .section .bss. | |
| Thu Jul 8 18:03:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (choose_reload_regs): Never call remove_address_replacements | |
| when reload_out equals reload_in. | |
| Thu Jul 8 16:50:14 1999 Nick Clifton <nickc@cygnus.com> | |
| * invoke.texi (Spec Files): New node: Describe the contents of | |
| spec files. | |
| Thu Jul 8 10:28:25 1999 Craig Burley <craig@jcb-sc.com> | |
| * invoke.texi (DEC Alpha Options): Put @end table at | |
| beginning of line, to avoid confusing texi2html. | |
| Thu Jul 8 09:22:06 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Fixed typo | |
| introduced in previous delta. | |
| Wed Jul 7 02:00:04 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * reload1.c (gen_reload): When synthesizing a 3 operand add | |
| sequence, improve test for when to reload OP1 into the reload | |
| register instead of OP0. | |
| Wed Jul 7 01:38:03 1999 Jim Wilson <wilson@cygnus.com> | |
| * unroll.c (unroll_loop): Don't delete NOTE_INSN_DELETED_LABEL notes. | |
| 1999-07-07 Manfred Hollstein <mhollstein@cygnus.com> | |
| * m88k/dguxbcs.h (CPP_SPEC): Add missing \ in multi-line | |
| string literal. | |
| Wed Jul 7 01:16:43 1999 Richard Henderson <rth@cygnus.com> | |
| * ginclude/varargs.h (__builtin_va_alist_t): New typedef. | |
| (va_dcl): Use __builtin_va_alist_t. | |
| Wed Jul 7 01:14:42 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (gen_struct_or_union_type_die): Only remember types | |
| on the permanent_obstack. | |
| * dwarfout.c (output_type): Likewise. | |
| Tue Jul 6 15:25:32 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-common.c (unsigned_type,signed_type,signed_or_unsigned_type) : | |
| Merged from c-typeck.c and cp/typeck.c. | |
| * c-typeck.c (unsigned_type,signed_type,signed_or_unsigned_type) : | |
| Merged into c-common. | |
| Tue Jul 6 13:06:01 1999 Dave Brolley <brolley@cygnus.com> | |
| * c-lex.c (errorcount): Declare it. | |
| (finish_parse): Update errorcount when using CPPLIB. | |
| 1999-07-06 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/inclhack.def(end_else_label): Double the backslash so | |
| sed gets a chance to see it. | |
| * fixinc/inclhack.sh: regen | |
| * fixinc/fixincl.x: regen | |
| Fri Jul 2 18:49:51 1999 Nick Clifton <nickc@cygnus.com> | |
| Add framework to support armv5 architecture when it becomes | |
| available: | |
| * config/arm/arm.c (FL_ARCH5): New processor capability flag. | |
| (arm_arch5): New variable. | |
| (all_architectures): Add armv5 line. | |
| * config/arm/arm.h (CPP_CPU_ARCH_SPEC): Define __ARM_ARCH_5__ if | |
| -march=armv5 is specified on the command line. | |
| (arm_arch5): Export this variable. | |
| * invoke.texi: Document new string accepted by -march= switch for | |
| ARM ports. | |
| * config/arm/arm.h: Replace use of constant 12 as a register | |
| number with IP_REGNUM. Similarly 14 and LR_REGNUM. | |
| * config/arm/arm.c: Replace use of constant 12 as a register | |
| number with IP_REGNUM. Similarly 14 and LR_REGNUM. | |
| * config/arm/elf.h: Tidy up. | |
| * config/arm/coff.h: Tidy up. | |
| Thu Jul 1 19:08:13 1999 Mark P. Mitchell <mark@codesourcery.com> | |
| * gcc/configure.in (mips-sgi-irix6*): Handle --with-gnu-ld. | |
| * gcc/config/mips/t-iris6gld: New file. | |
| * gcc/config/mips/iris6gld.h: Likewise. | |
| Fri Jul 2 13:23:39 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-decl.c (widest_integer_literal_type_node, | |
| widest_unsigned_literal_type) : New. | |
| (init_decl_processing): Handle/use the two new types. | |
| * c-common.c (type_for_size,type_for_mode) : Same. | |
| * c-lex.c (yylex) : Same. | |
| * c-typeck.c (unsigned_type,signed_type,signed_or_unsigned_type) : | |
| Same. | |
| * c-tree.h (widest_integer_literal_type_node, | |
| widest_unsigned_literal_type) : New. | |
| Fri Jul 2 03:05:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * dwarfout.c (field_byte_offset): Correctly compute the object's | |
| byte offset for the first bit of a field which crosses an alignment | |
| boundary on a !BYTES_BIG_ENDIAN target. | |
| Fri Jul 2 01:36:36 1999 Robert Lipe <robertlipe@usa.net> | |
| * fixinc.svr4: Fix <arpa/inet.h> by deleting protos for htons and | |
| ntohs. | |
| Fri Jul 2 00:46:47 1999 Richard Henderson <rth@cygnus.com> | |
| Jeff Law <law@cygnus.com> | |
| * ginclude/varargs.h (va_dcl): Use word_mode for type of | |
| __builtin_va_list. | |
| * except.c: Include intl.h. | |
| (expand_eh_return): Set current_function_cannot_inline. | |
| (save_eh_status, restore_eh_status): Twiddle eh_return_stub_label. | |
| * function.h (struct function): Add eh_return_stub_label. | |
| * flow.c (delete_unreachable_blocks): Don't merge across EH edges. | |
| * Makefile.in (except.o): Depend on intl.h. | |
| Fri Jul 2 00:04:23 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (movdf_hardfloat32): Handle PRE_INC and PRE_DEC the | |
| same as offsettable in cases 1 and 2. | |
| Thu Jul 1 20:54:10 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (extqh): Define as 64-((R&7)*8) instead of 56-(((R-1)&7)*8). | |
| (extlh, extwh): Likewise. | |
| Thu Jul 1 11:05:25 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-lex.c (yylex): Improve 'integer constant out of range' messages. | |
| Wed Jun 30 16:51:41 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in: Add arm-pe and thumb-pe targets. | |
| * configure: Regenerate. | |
| * thumb.c (arm_naked_function_p): New function: Determines if | |
| a function is naked (has no gcc generated prologue/epilogue). | |
| (is_called_in_ARM_mode): Return true if the func has the | |
| interfacearm attribute. | |
| (output_return): Do not generate a return for naked functions. | |
| (thumb_function_prologue): Do not generate a prologue for | |
| naked functions. | |
| (thumb_expand_prologue): Do not generate a prologue for naked | |
| functions. | |
| (thumb_expand_epilogue): Do not generate an epilogue for naked | |
| functions. | |
| (arm_valid_machine_decl_attribute): New function, copied from | |
| arm.c: Permit naked and interfacearm attributes. | |
| * config/arm/pe.c: New file: Support code for arm-pe target. | |
| * config/arm/pe.h: New file: Header file for arm-pe target. | |
| * config/arm/tpe.h: New file: Header file for thumb-pe target. | |
| * config/arm/t-thumb-pe: New file: Makefile fragment for | |
| thumb-pe target. | |
| 1999-07-01 Mark Kettenis <kettenis@gnu.org> | |
| * config/i386/gnu.h (CPP_SPEC): Define __PIC__ and __pic__ if | |
| -fPIC or -fpic is specified. | |
| Wed Jun 30 03:31:54 1999 Jeffrey A Law (law@cygnus.com) | |
| * expr.c (emit_block_move): Use copy_to_mode_reg for | |
| !TARGET_MEM_FUNCTIONS case too. | |
| * configure.in (hppa*-*-*): Add som.h or elf.h to tm_file as | |
| appropriate. | |
| * configure: Rebuilt. | |
| (hppa1.1-*-pro*, hppa1.1-*-rtems*): Define target_cpu_default. | |
| * pa.h: Include dbxelf.h. Delete various dbx/stabs related | |
| definitions made redundant by dbxelf.h inclusion. Delete | |
| lots of definitions related to assembly output that are | |
| specific to the SOM object format. | |
| * pa.c (output_function_prologue): Do not emit the function's | |
| name for OBJ_ELF. | |
| * pa-pro-end.h (STARTFILE_SPEC): Undefine before redefining. | |
| * pa-pro.h: Deleted. | |
| * som.h: New file with SOM specific definitions. | |
| * elf.h: New file with ELF specific definitions. | |
| * elfos.h (const_section): Output a tab before assembler directives. | |
| (ctors_section, dtors_section): Likewise. | |
| (ASM_OUTPUT_SECTION_NAME): Likewise. | |
| * pa/pa1.h: Delete unused file. | |
| Tue Jun 29 01:37:53 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (hppa*-hp-hpux11*): New configuration. | |
| * configure: Rebuilt. | |
| * pa/pa-hpux11.h: New file. | |
| * pa.h (CPP_SPEC): Conditionally add -D__STDC_EXT__ to the cpp | |
| command line. | |
| * mips.md (leasi, leadi): New patterns. | |
| * expr.c (emit_block_move): Properly handle case where one of the | |
| block move arguments has a queued increment or decrement. | |
| (clear_storage): Similarly. Fix formatting goof. | |
| 1999-06-28 "David O'Brien" <obrien@NUXI.com> | |
| * fixinc/inclhack.def(stdio_va_list): This patch Removes a | |
| semicolon from the BSD VA_LIST replacement expression. | |
| * fixinc/inclhack.sh: regen | |
| * fixinc/fixincl.x: regen | |
| * fixinc/mkfixinc.sh: Have `i[34567]86-*-freebsd*' machines | |
| now use the fixincl program. | |
| Mon Jun 28 05:28:12 1999 Jeffrey A Law (law@cygnus.com) | |
| * m68k.h (CONDITIONAL_REGISTER_USAGE): Define for !SUN_FPA | |
| case. Also make the PIC register call_used. | |
| * m68k.h (FINALIZE_PIC): Delete. | |
| * m68k.c (finalize_pic): Delete. | |
| Mon Jun 28 05:16:35 1999 Richard Henderson <rth@cygnus.com> | |
| * m68k.h (PREFERRED_RELOAD_CLASS): Don't force any FP const_doubles | |
| to memory. | |
| Mon Jun 28 04:07:27 1999 David Edelsohn <edelsohn@gnu.org> | |
| * expmed.c (expand_divmod): Ensure unsigned value fits in reg_note. | |
| Sun Jun 27 02:39:08 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (jump_optimize_1): Validate the cmov copy to a temporary. | |
| Sat Jun 26 17:18:18 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (print_operand, case 'L'): Use plus_constant_for_output. | |
| Fri Jun 25 11:33:24 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (override_options): Add -mcpu=ev45 as an alias for ev4. | |
| Fri Jun 25 13:41:25 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (output_toc): Always use hex values for floating-point | |
| constants. Store single-precision values in upper-half of TOC | |
| entry in 64-bit mode. | |
| * rs6000.md (floatsidf2, floatunssidf2): Add !TARGET_POWERPC64 | |
| to final constraints. | |
| (fix_truncdfsi2 splitter): Change pattern matching fctiwz. | |
| (fctiwz): Improve accuracy of RTL for pattern. | |
| Fri Jun 25 11:26:38 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * expr.c (expand_expr): Allow RTL_EXPR's through the | |
| MAX_INTEGER_COMPUTATION_MODE checks. | |
| Fri Jun 25 06:06:37 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (MASK_SUPPORT_ARCH, MASK_CPU_EV5, MASK_CPU_EV6): Define | |
| such that MASK_SUPPORT_ARCH is not negative. | |
| Fri Jun 25 05:35:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (verify_dominator): Properly handle ADDR_VEC and | |
| ADDR_DIFF_VEC insns that appear inside loops. | |
| Thu Jun 24 22:54:05 1999 David Edelsohn <edelsohn@gnu.org> | |
| Jeff Law <law@cygnus.com> | |
| * rs6000.md (movdf_hardfloat32): Revert previous patch. | |
| Handle LO_SUM the same as offsettable in cases 1 and 2. | |
| * rs6000.c (find_addr_reg): Revert previous patch. | |
| Thu Jun 24 22:43:12 1999 Philippe De Muyter <phdm@macqel.be> | |
| * system.h (strstr): New external function declaration. | |
| * acconfig.h (NEED_DECLARATION_STRSTR): New define slot. | |
| * configure.in (GCC_NEED_DECLARATIONS): Check for strstr. | |
| * config.in, configure: Rebuilt. | |
| 1999-06-24 Tom Tromey <tromey@cygnus.com> | |
| * gcc.c (main): Read user-specified specs files after computing | |
| additional startfile_prefixes. | |
| Thu Jun 24 15:00:47 1999 Mark Mitchell <mark@codesourcery.com> | |
| Revert these two patches: | |
| Thu Jun 17 21:34:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, update | |
| reg note of NEXT->insn. | |
| Thu Jun 17 17:22:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, fix up | |
| reg_biv_class. | |
| (recombine_givs): Set ix field after sorting. | |
| Wed Jun 23 21:26:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * rtlanal.c (reg_referenced_p): Use reg_overlap_mentioned_p | |
| for the parts of an UNSPEC / UNSPEC_VOLATILE. | |
| 1999-06-23 Bruce Korb <ddsinc09@ix.netcom.com> | |
| *fixinc/inclhack.def: Add fix development commentary | |
| (read_ret_type): reactivate and add selection clause | |
| (zzz_*): tweak output file name to match what is used in hackshell.tpl | |
| *fixinc/{fixincl.x|inclhack.sh}: regen | |
| Wed Jun 23 00:48:21 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * expr.c (expand_expr): STRIP_NOPS before checking against | |
| MAX_INTEGER_COMPUTATION_MODE | |
| (check_max_integer_computation_mode): Likewise. | |
| Tue Jun 22 20:23:43 1999 Jim Wilson <wilson@cygnus.com> | |
| * md.texi (smul@var{m}3_highpart): Add missing 's' prefix. | |
| 1999-06-22 Jim Wilson <wilson@cygnus.com> | |
| * expr.c (store_expr): When target is a promoted subreg, return a | |
| promoted subreg as a result. | |
| Tue Jun 22 17:14:58 1999 Michael Meissner <meissner@cygnus.com> | |
| * dwarf2out.c (dwarf2out_frame_debug_expr): Reformat to match GNU | |
| coding standards. | |
| (dwarf2out_define): Mark unused parameters appropriately. | |
| (gen_unspecified_parameters_die): Ditto. | |
| (gen_subprogram_die): Fix signed/unsigned warnings. | |
| (gen_variable_die): Ditto. | |
| 1999-06-22 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/inclhack.def(end_else_label): combined else_label | |
| and endif_label and fixed the sed expression. | |
| *fixinc/{fixincl.x|inclhack.sh}: regen | |
| Tue Jun 22 01:58:18 1999 Jeffrey A Law (law@cygnus.com) | |
| * rs6000.md (movdf_hardfloat32): Use %X instead of always emitting | |
| 'x' when handling non-offsettable addresses | |
| Tue Jun 22 00:20:05 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * final.c (shorten_branches): Don't try to split an insn that has | |
| been deleted. | |
| Mon Jun 21 12:47:39 1999 Mark Mitchell <mark@codesourcery.com> | |
| * config/mips/mips.c (symbolic_expression_p): New function. | |
| (mips_select_rtx_section): Put symbolic expressions in the | |
| data section, not the read-only data section. | |
| Mon Jun 21 22:13:06 1999 Jeffrey A Law (law@cygnus.com) | |
| * rs6000.md (find_addr_reg): Handle LO_SUM addresses. | |
| Mon Jun 21 20:10:42 1999 Richard Henderson <rth@cygnus.com> | |
| * collect2.c (main): Log frame table count. | |
| (GCC_OK_SYMBOL) [ECOFF]: Accept stGlobal. | |
| (scan_prog_file) [COFF]: Handle frame tables. | |
| * alpha/alpha.h (UNALIGNED_SHORT_ASM_OP): Define. | |
| (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Define. | |
| * alpha/elf.h: Undef them again. | |
| * alpha/vms.h: Remove their definitions. | |
| Tue Jun 22 03:17:53 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.c (machine_dependent_reorg): When fixing up fp pcloads, | |
| remove the clobber of r0 and change the REG_UNUSED note to | |
| REG_INC. | |
| 1999-06-21 Jakub Jelinek <jj@ultra.linux.cz> | |
| * real.c (ereal_from_double): Fix for 64-bit big endian hosts. | |
| * emit-rtl.c (gen_lowpart_common): Add case for hosts where double | |
| fits in HOST_WIDE_INT and one uses union to access a long constant | |
| as double. | |
| Mon Jun 21 17:18:25 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.c (sparc_override_options): Don't allow profiling for | |
| code models other than medlow. | |
| (sparc_function_profiler): New function from old FUNCTION_PROFILER | |
| macro. Use ASM_GENERATE_INTERNAL_LABEL and MCOUNT_FUNCTION. | |
| (sparc_function_block_profiler): Likewise. Use user_label_prefix. | |
| (sparc_block_profiler): Likewise. | |
| (sparc_function_block_profiler_exit): Likewise. | |
| * sparc.h (FUNCTION_PROFILER): Call new sparc.c function. | |
| (FUNCTION_BLOCK_PROFILER): Likewise. | |
| (BLOCK_PROFILER): Likewise. | |
| (FUNCTION_BLOCK_PROFILER_EXIT): Likewise. | |
| (MCOUNT_FUNCTION): New. | |
| * sparc/pbd.h (FUNCTION_PROFILER): Delete. | |
| (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Delete. | |
| * sparc/sun4o3.h (FUNCTION_PROFILER): Delete. | |
| (MCOUNT_FUNCTION): New. | |
| * sparc/sysv4.h (FUNCTION_BLOCK_PROFILER): Delete. | |
| (BLOCK_PROFILER): Delete. | |
| (MCOUNT_FUNCTION): New. | |
| Mon Jun 21 14:11:29 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (movdf_hardfloat32): Fix typo in case 2. | |
| Mon Jun 21 12:27:17 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * config/mips/elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): | |
| Add the macros. | |
| * config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): | |
| Ditto. | |
| * config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): | |
| Ditto. | |
| * config/arm/telf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): | |
| Ditto. | |
| Mon Jun 21 14:58:42 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.h: Add cpp support for ARM920 and ARM920T cpu | |
| types. | |
| Mon Jun 21 06:22:21 1999 Mark Elbrecht <snowball3@bigfoot.com> | |
| * i386/djgpp.h (LIB_SPEC): New. | |
| (STARTFILE_SPEC): New. | |
| * i386/xm-djgpp.h (NO_SYS_SIGLIST): Deleted. Now obsolete. | |
| Mon Jun 21 06:19:33 1999 Philippe De Muyter <phdm@macqel.be> | |
| * fixinc/Makefile.in (gnu-regex.o): Do not define STDC_HEADERS in | |
| compiler flags. | |
| * system.h (WSTOPSIG): New macro. | |
| Mon Jun 21 05:33:15 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * c-pragma.c (push_alignment): Don't ignore alignments greater than | |
| 4 bytes. | |
| (insert_pack_attributes): Take into account member natural | |
| alignment. | |
| * i386/winnt.c (exports_head): New static variable. | |
| (i386_pe_record_exported_symbol): New function. | |
| (i386_pe_asm_file_end): Use. | |
| * i386/cygwin.h (ASM_OUTPUT_COMMON): Record the exported | |
| symbols to be emitted at end of assembly. | |
| (ASM_DECLARE_OBJECT_NAME): Likewise. | |
| (ASM_DECLARE_FUNCTION_NAME): Likewise. | |
| * i386/uwin.h (CPP_SPEC): Use -idirafter instead -iprefix and | |
| -iwithprefix. | |
| Mon Jun 21 04:44:31 1999 Jeffrey A Law (law@cygnus.com) | |
| * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Fix paren error introduced | |
| in last change. | |
| Sun Jun 20 17:27:20 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_analyze_1): Use free_list instead of | |
| zapping reg_last_uses directly. | |
| (sched_analyze_2, sched_analyze_insn): Likewise. | |
| (sched_analyze): Likewise. Don't clear reg_last_uses on calls. | |
| Sun Jun 20 16:57:29 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (movdf_hardfloat32): Use worst case insn length | |
| attributes for cases 1 and 2. | |
| Sat Jun 19 22:52:55 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_analyze): Mark call-user regs as clobbered | |
| instead of set. | |
| Sat Jun 19 05:40:07 1999 Philip Blundell <pb@nexus.co.uk> | |
| * arm.c (arm_reload_in_hi): Invert sense of test on BYTES_BIG_ENDIAN. | |
| Sat Jun 19 05:25:05 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.h (CONDITIONAL_REGISTER_USAGE): If flag_pic, never use | |
| PIC_OFFSET_TABLE_REGNUM for general alloaction. | |
| (INITIAL_ELIMINATION_OFFSET): Count the fact that the PIC register | |
| must be stacked if it is used for PIC accesses. | |
| * arm.c (use_return_insn): Handle PIC register specially. | |
| (output_return_instruction): Likewise. | |
| (output_func_{prologue,epilogue}): Likewise. | |
| (output_expand_prologue): Likewise. | |
| * arm.md (*adddf_esfdf_df): Renamed from *adddf_df_esfdf. | |
| (*strsi_predec): Renamed from *strqi_predec. | |
| (*loadsi_shiftpreinc): Renamed from *loadqi_shiftpreinc. | |
| (*loadsi_shiftpredec): Renamed from *loadqi_shiftpredec. | |
| * arm.c (arm_override_options): Remove warning about PIC code | |
| not being supported. | |
| Fri Jun 18 23:47:06 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (find_addr_reg): New function. | |
| * rs6000.h (find_addr_reg): Declare. | |
| (offsettable_addr_operand): Delete. | |
| * rs6000.md (movdf_hardfloat32): Handle non-offsettable loads | |
| from and stores to GPRs. | |
| Fri Jun 18 15:44:18 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_expand_block_move): Use get_insns rather than | |
| gen_sequence as argument to emit_no_conflict_block. | |
| Fri Jun 18 07:02 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/mkfixinc.sh: enable the fixincl program for DG/UX | |
| * fixinc/inclhack.def(dgux_int_varargs): script must end with \n | |
| *fixinc/fixincl.x: regen | |
| *fixinc/inclhack.sh: regen | |
| Thu Jun 17 15:06:10 PDT 1999 Don Lindsay <dlindsay@cygnus.com> | |
| * added support for -mpcrel (PC relative addressing for m68k) | |
| based on code done by Michael Tiemann <tiemann@axon.cygnus.com>. | |
| * invoke.texi (m68000 options): Add documentation for -mpcrel flag. | |
| * m68k.c (print_operand_address): Handle 32-bit PIC case. | |
| (comments for general_src_operand): Add some explanation | |
| about EXTRA_CONSTRAINTS. | |
| (OVERRIDE_OPTIONS): Enable -fPIC in combination with -mpcrel. | |
| * m68kelf.h (OVERRIDE_OPTIONS): Ditto. | |
| (LEGITIMATE_PIC_OPERAND_P): Fix typo. | |
| (LEGITIMATE_PIC_OPERAND_P): Re-derive from m68k.h case. | |
| * m68k.h (LEGITIMATE_PIC_OPERAND_P): Fix delete-o. | |
| (INDIRECTABLE_1_ADDRESS): Delete spurious '/' at end of macro. | |
| (OVERRIDE_OPTIONS): Change behavior so that -mpcrel implies -fpic | |
| if not already set. | |
| (OVERRIDE_OPTIONS): Merge in changes from m68k.h. | |
| * m68k.h (TARGET_PCREL): New target flag. | |
| (TARGET_SWITCHES): Add "pcrel" as a recognized switch. | |
| (OVERRIDE_OPTIONS): Add checks for -mpcrel. | |
| (LEGITIMATE_PIC_OPERAND_P): Don't normally accept anything that | |
| contains a SYMBOL_REF. Relax this constraint during reload, since | |
| we want to use the predicates, not reload's built-in concept of a | |
| valid memory address, to control what insns need reloading. | |
| (EXTRA_CONSTRAINT): Define constraints to accept pc-relative | |
| operands (essentially 'g', 'm', and 's' under normal circumstances). | |
| * m68k.c (print_operand): Cause printing of pc-relative addresses | |
| to include pc register. | |
| (print_operand_address): Ditto. | |
| (general_src_operand): Accept operands that are not only | |
| general_operands, but are also valid when used as a pc-relative | |
| source. | |
| (nonimmediate_src_operand): Similar, for nonimmediate_operands. | |
| (memory_src_operand): Similar, for memory_operands. | |
| (pcrel_address): New predicate to accept the special case of a | |
| pc-relative address. | |
| * m68k.md (many patterns): Rewrite common SImode, HImode, and | |
| QImode insns to accept *_src_operand instead of *_operand where | |
| pc-relative operands can fit. For example, a pc-relative operand | |
| can be used as a memory source operand for addsi3, but not as a | |
| memory destination. | |
| * hp320.h linux.h m68kv4.h (LEGITIMATE_PIC_OPERAND_P) as in m68k.h. | |
| Fri Jun 18 09:11:07 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/telf.h (ASM_OUTPUT_DEF_FROM_DECLS): New Marco: USe | |
| .thumb_set pseudo op to mark aliases of thumb functions. | |
| Wed Jun 16 18:19:13 1999 Nick Clifton <nickc@cygnus.com> | |
| * varasm.c (assemble_alias): Use ASM_OUTPUT_DEF_FROM_DECLS in | |
| preference to ASM_OUTPUT_DEF, if it is defined. | |
| * tm.texi: Document new, optional target macro | |
| ASM_OUTPUT_DEF_FROM_DECLS. | |
| Thu Jun 17 15:07 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixincludes: ISCNTL patch | |
| * fixinc/inclhack.def (ioctl_fix_ctrl): Fix the definition of [_]*ISCTRL(). | |
| (dgux_int_varargs): new for DG/UX | |
| * fixinc/{fixincl.x,inclhack.sh}: Regenerated. | |
| Thu Jun 17 21:34:24 1999 Jeff Law <law@cygnus.com> | |
| * invoke.texi (ia32 options): Fix typo. | |
| Thu Jun 17 21:34:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, update | |
| reg note of NEXT->insn. | |
| Thu Jun 17 14:25:08 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (move_movables): Note issues with replacing REGs with | |
| SUBREGs. | |
| * mips.h (GO_IF_LEGITIMATE_ADDRESS): Handle SUBREGs properly. | |
| Thu Jun 17 13:28:30 1999 David O'Brien <obrien@FreeBSD.org> | |
| * i386/freebsd-elf.h (LINK_SPEC): Fix typo. | |
| * i386/freebsd-elf.h (FUNCTION_PROFILER): labels are not needed and | |
| the reference to `mcount' was not correct for the ELF on FreeBSD. | |
| Thu Jun 17 17:22:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): When doing biv->giv conversion, fix up | |
| reg_biv_class. | |
| (recombine_givs): Set ix field after sorting. | |
| Thu Jun 17 02:54:30 1999 Jeffrey A Law (law@cygnus.com) | |
| * emit-rtl.c (operand_subword): Tighten checks for when it is safe | |
| to safe to extract a subword out of a REG. | |
| Thu Jun 17 01:45:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (mulsi3): Don't add a no-op move at the end. | |
| Wed Jun 16 20:29:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * cse.c (cse_insn): Don't put hard register source into tables for | |
| the last insn of a libcall. | |
| Wed Jun 16 19:44:33 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Insert sets of derived givs at every | |
| biv increment, even if it's the only one. | |
| Wed Jun 16 10:33:02 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarfout.c (add_incomplete_type): New fn. | |
| (output_type): Call it. | |
| (retry_incomplete_types): New fn. | |
| (dwarfout_finish): Call it. | |
| From Eric Raskin <ehr@listworks.com>: | |
| (output_type): Output types for bases. | |
| Tue Jun 15 12:51:23 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * mips.c (mips_output_conditional_branch): Add `break' | |
| between `default' label and `close braces'. | |
| Tue Jun 15 01:55:20 1999 David O'Brien <obrien@FreeBSD.org> | |
| * i386/freebsd-elf.h (LINK_SPEC): clean up the linking library | |
| specifications and make it realistic. | |
| (LIB_SPEC): Likewise. | |
| Mon Jun 14 15:38:43 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/mips/mips.c (mips_secondary_reload_class): Check for | |
| (PLUS (SP) (REG)) and return appropriate register class. | |
| * config/mips/mips.md (reload_insi): Delete predicate for operand 1. | |
| Handle (PLUS (SP) (REG)). | |
| (tablejump): In mips16 code, use emit_insn instead of emit_jump_insn. | |
| (tablejump_mips161, tablejump_mips162): Use emit_jump_insn instead | |
| of emit_insn for tablejump. | |
| Mon Jun 14 17:26:40 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (output_prolog): RS6000_CALL_GLUE must be | |
| asm_fprintf format string by itself. | |
| (output_function_profiler): Likewise. | |
| Mon Jun 14 12:57:38 1999 David Mosberger <davidm@hpl.hp.com> | |
| * combine.c (simplify_logical, case AND): Only call | |
| simplify_and_const_int if the mode is no wider than HOST_WIDE_INT | |
| or the constant is positive. | |
| Mon Jun 14 11:43:41 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in: Fix typo in rs6000-ibm-aix4 case. | |
| * configure: Regenerate. | |
| Mon Jun 14 03:55:40 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (rs6000-ibm-aix4.3*, powerpc-ibm-aix4.3*): Do not | |
| require a sub-version #. | |
| * configure: Rebuilt. | |
| 1999-06-14 Robert Lipe (robertlipe@usa.net) | |
| * svr4.h (DWARF2_DEBUGGING_INFO): Check for redefinition. | |
| Mon Jun 14 10:30:52 BST 1999 Nathan Sidwell <nathan@acm.org> | |
| * c-typeck.c (process_init_element): Detect excess elements in | |
| char array initializer. | |
| 1999-06-14 Andreas Jaeger <aj@arthur.rhein-neckar.de> | |
| * gcc.texi: Mention gcc 2.96 instead of egcs 1.00. | |
| Sat Jun 12 22:29:48 EDT 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * invoke.texi (Option Summary): Add -fpermissive flag. | |
| Sat Jun 12 03:40:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing with operands | |
| that require PIC code sequences. | |
| Wed Jun 9 16:29:01 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in: Add new target: thumb-elf. | |
| * configure: Regenerate. | |
| * config/arm/t-thumb-elf: New file: Makefile fragment for | |
| thumb-elf build. | |
| * config/arm/telf.h: New file: Header file for thumb-elf | |
| build. | |
| Fri Jun 11 03:17:51 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (libgcc2): Pass MAYBE_USE_COLLECT2 as an argument. | |
| * libgcc2.c (__CTOR_LIST, __DTOR_LIST); Do not provide | |
| initializers is some circumstances. | |
| * fixinc/inclhack.def (endif_label): Add additional selector for | |
| more bogus stuff after #endif statements. | |
| * fixinc/inclhack.sh, fixinc/fixincl.x: Rebuilt. | |
| Thu Jun 10 20:44:36 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/cygwin.h (SET_ASM_OP): Define. | |
| Thu Jun 10 20:37:57 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * reg-stack.c (stack_reg_life_analysis): Find all the RETURN insns. | |
| Thu Jun 10 19:23:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (TARGET_HARWARD, TARGET_HARVARD): Changed the former to the | |
| latter. | |
| * sh.md (ic_invalidate_line_i): Remove second alternative. | |
| Thu Jun 10 06:55 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| *fixinc/inclhack.def(sun_auth_proto): We do not know how to | |
| test for the presence of valid prototypes. Delete bypass expr. | |
| (ioctl_fix_ctrl): Correct the selection expression. | |
| (no_double_slash): Correct quoting rules | |
| *fixinc/fixincl.x: regen | |
| *fixinc/inclhack.sh: regen | |
| Thu Jun 10 15:08:15 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (struct all_cores): Add ARM920 and ARM920t. | |
| Wed Jun 9 15:57:57 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.md (movsi_got_internal_mem): Delete. | |
| * rs6000.h (CONDITIONAL_REGISTER_USAGE): Mark PIC_OFFSET_TABLE_REGNUM. | |
| (GOT_TOC_REGNUM): Delete. | |
| (PIC_OFFSET_TABLE_REGNUM): Define. | |
| (FINALIZE_PIC): Disable. | |
| * rs6000.c (rs6000_got_register): New code for fixed pic register. | |
| (rs6000_replace_regno): Delete. | |
| (rs6000_finalize_pic): Likewise. | |
| (output_prolog): Handle PIC_OFFSET_TABLE_REGNUM. | |
| Wed Jun 9 19:44:26 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (loop_insn_first_p): Don't compare LUIDs when P | |
| is a note; use <= for the compare; advance P while it is | |
| a NOTE. | |
| Wed Jun 9 13:12:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/inclhack.def (no_double_slash): Fix quoting for test. | |
| * fixinc/inclhack.sh, fixinc/fixincl.x, fixinc/fixincl.sh; Rebuilt. | |
| * varasm.c (remove_from_pending_weak_list): Verify t->name | |
| is non-NULL before passing it to strcmp. | |
| Wed Jun 9 06:50 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| *fixinc/inclhack.def(sun_auth_proto): bypass the patch if | |
| the typed arguments are not part of a comment | |
| (ioctl_fix_ctrl): Added a purpose comment | |
| *fixinc/fixincl.x: regenerate | |
| *fixinc/inclhack.sh: regenerate | |
| Wed Jun 9 22:57:02 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * invoke.texi: Add C4x invocation docs. | |
| Wed Jun 9 22:34:38 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (TARGET_EXPOSE_LDP, LEGITIMIZE_RELOAD_ADDRESS): | |
| Define new macros. | |
| * config/c4x/c4x.c (c4x_emit_move_sequence, src_operand): Use | |
| TARGET_EXPOSE_LDP. | |
| (c4x_legitimize_reload_address): New function. | |
| * config/c4x/c4x.md: Update docs. | |
| Wed Jun 9 04:14:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixincludes: Avoid removing '.'. | |
| * fixinc/fixinc.svr4: Likewise. | |
| * fixinc/fixinc.winnt: Likewise. | |
| * fixinc/inclhack.tpl: Likewise. | |
| * fixinc/fixincl.sh, fixinc/inclhack.sh: Rebuilt. | |
| 1999-06-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fixinc/inclhack.def (sun_catmacro): Escape parens in the select | |
| pattern. | |
| * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt. | |
| Wed Jun 9 03:10:34 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * c-pragma.c (handle_pragma_token): Handle `#pragma pack()' | |
| correctly. | |
| Tue Jun 8 13:06:15 1999 Jim Wilson <wilson@cygnus.com> | |
| * configure.in (rs6000-ibm-aix4.[12]*): Change rx6000 to rs6000. | |
| * configure: Regenerate. | |
| Tue Jun 8 05:47:48 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * optabs.c (expand_cmplxdiv_wide): Use expand_abs to get the absolute | |
| values. | |
| Mon Jun 7 22:30:37 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/inclhack.def (avoid_bool): Also catch | |
| "typedef [unsigned] int bool". | |
| * fixinc/inclhack.sh, fixinc/fixincl.x, fixinc/fixincl.sh: Rebuilt. | |
| * m68k/x-hp3bsd44: Delete obsolete and incorrect file. | |
| * configure.in (m68k-hp-bsd4.4): No longer use x-hp3bsd44. | |
| * configure: Rebuilt. | |
| Mon Jun 7 22:05:03 1999 Mark Kettenis <kettenis@gnu.org> | |
| * config/i386/gnu.h: Include <gnu.h> right after <i386/linux.h>, | |
| such that we can override its definitions if necessary. | |
| (CPP_SPEC): New define. Support processor specific predefines via | |
| %(cpp_cpu). | |
| (CC1_SPEC): New define. Support processor specific compiler | |
| options via %(cc1_cpu). | |
| (STARTFILE_SPEC): New define. Use crt0.o instead of crt1.o for | |
| -static. | |
| 1999-06-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fixinc/inclhack.def (math_gcc_ifndefs): Insert whitespace | |
| between sed's -e flag, and the open-quote following it. | |
| * fixinc/fixincl.x, fixinc/fixincl.sh: Rebuilt. | |
| Mon Jun 7 20:34:20 1999 Robert Lipe <robertlipe@usa.net> | |
| Jeffrey A Law (law@cygnus.com) | |
| * varasm.c (assemble_start_function): Remove the function | |
| from the pending weak decls list when we define a function. | |
| (assemble_variable): Similarly for variables. | |
| (weak_finish): Ignore items on the list with a NULL name. | |
| (remove_from_ending_weak_list); New function to "remove" an item | |
| from the pending weak declarations list. | |
| Mon Jun 7 19:27:07 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.md (fmpyfadd, fmpynfadd, fnegabs): New patterns. | |
| Mon Jun 7 14:07:39 1999 Dave Brolley <brolley@cygnus.com> | |
| * c-lex.c (GETC): Redefine to call getch. | |
| (UNGETC): Redefine to call put_back. | |
| (putback_buffer): New structure type. | |
| (putback): New static structure. | |
| (getch): New function. | |
| (put_back): New function. | |
| (yylex): Replace unused bytes from bad multibyte character. | |
| Mon Jun 7 13:33:39 1999 Dave Brolley <brolley@cygnus.com> | |
| * cpplib.c (do_define): Cast `alloca' return value. | |
| (do_include, do_undef, do_pragma): Likewise. | |
| * cpphash.c (dump_definition): Cast `xstrdup' and `alloca' return | |
| values. | |
| * cppfiles.c (initialize_input_buffer): Cast `xmalloc' return values. | |
| * gcc/cppspec.c (lang_specific_driver): Cast xmalloc return value. | |
| Sun Jun 6 11:58:34 1999 Jakub Jelinek <jj@ultra.linux.cz> | |
| * sparc.md (abstf2): This should be an expand. | |
| (split after abstf2_notv9): Fix mode. | |
| (abstf2_hq_v9): New pattern. | |
| (abstf2_v9): Only use when no hard quad. | |
| (absdf2_v9): Fix if target is not the same as source. | |
| (ashrsi3_extend, ashrsi3_extend2, lshrsi3_extend, lshrsi3_extend2): | |
| Add correct output constraints. | |
| Sat Jun 5 17:04:16 1999 Craig Burley <craig@jcb-sc.com> | |
| From Dave Love to egcs-patches on 20 May 1999 17:38:38 +0100: | |
| * invoke.texi: Clarify text vis-a-vis Intel CPUs. | |
| Sat Jun 5 12:11:24 1999 Mark Mitchell <mark@codesourcery.com> | |
| * mips.h (mips_output_conditional_branch): New function. | |
| (mips_adjust_insn_length): Likewise. | |
| (ASSEMBLER_SCRATCH_REGNUM): New macro. | |
| (ADJUST_INSN_LENGTH): Likewise. | |
| * mips.c (print_operand): Add `F' and `W' for floating-point | |
| comparison opcodes. | |
| (machine_dependent_reorg): Adjust MIPS16 code; instruction-lengths | |
| are now in bytes. | |
| (mips_adjust_insn_length): New function. | |
| (mips_output_conditional_branch): New function. | |
| * mips.md (length): Adjust attribute definition to handle | |
| conditional branches. Change lengths to bytes, rather than | |
| instructions throughout. Remove length attribute from | |
| instructions whose length is four bytes, and rely on the default | |
| instead. | |
| (dslot): Fix typo in comment. | |
| Reword conditional branch patterns to use | |
| mips_output_conditional_branch. | |
| Fri Jun 4 13:30:27 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * alpha/osf.h (CPP_SUBTARGET_SPEC): Handle -threads. | |
| (LIB_SPEC): Likewise. | |
| Link with -lprof1_r for -g/-pg. | |
| 1999-06-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * loop.c (check_dbra_loop): Fix change of Jan 19. | |
| Fri Jun 4 00:12:40 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * freebsd-elf.h (SWITCH_TAKES_ARG): Redefine, not define. | |
| (STARTFILE_SPEC): Define, override the svr4.h version. | |
| (ENDFILE_SPEC): Likewise. | |
| Thu Jun 3 23:58:55 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/inclhack.def (limits_ifndefs): Also apply to sys/limits.h | |
| * fixinc/fixincl.x: Regenerated. | |
| * fixinc/inclhack.sh: Regenerated. | |
| Fri Jun 4 05:42:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.c (barrier_align): Don't return early for normal branch/barrier | |
| when optimizing for SH2. | |
| Thu Jun 3 22:27:50 1999 Robert Lipe <robertlipe@usa.net> | |
| * i386/udk.h (LINK_SPEC): Correct linker search path for | |
| system libraries. | |
| Fri Jun 4 03:20:40 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.c (fixup_addr_diff_vecs): Emit braf reference label. | |
| (braf_label_ref_operand): Delete. | |
| * sh.h (PREDICATE_CODES): Remove braf_label_ref_operand. | |
| * sh.md (casesi_jump_2): Operand1 is now the inside of a | |
| label_ref, and has no predicate. | |
| The pattern has a predicate to guard against invalid substitutions. | |
| (dummy_jump): Delete. | |
| (casesi): Update use of casesi_jump_2. | |
| Thu Jun 3 07:48 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| *fixinc/inclhack.def(Io_Def_Quotes): corrected sed expression | |
| *fixinc/fixincl.x: regenerate | |
| *fixinc/inclhack.sh: regenerate | |
| Thu Jun 3 02:15:07 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (add_incomplete_type): New fn. | |
| (gen_struct_or_union_type_die): Call it. | |
| (retry_incomplete_types): New fn. | |
| (dwarf2out_finish): Call it. | |
| Thu Jun 3 01:19:03 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcse.c (insert_insn_end_bb): Correct placement of insns when the | |
| current block starts with a CODE_LABEL and ends with a CALL and | |
| we can not find all the argument setup instructions for the CALL. | |
| Wed Jun 2 15:44:15 1999 Mark Mitchell <mark@codesourcery.com> | |
| Revert this change: | |
| * fold-const.c (fold): STRIP_NOPS when deciding whether or not | |
| something is a candidate for optimize_bit_field_compare. | |
| Wed Jun 2 21:53:05 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (CONST_OK_FOR_I, CONST_OK_FOR_L): Cast VALUE to HOST_WIDE_INT. | |
| Wed Jun 2 12:25:55 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (override_options): Thinko in last patch. | |
| * alpha/osf.h (CPP_SUBTARGET_SPEC): Define. | |
| (LIB_SPEC): Recognize -pthread. | |
| Wed Jun 2 08:42:55 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/tcoff.h (USER_LABEL_PREFIX): Synchronize with | |
| definition in config/arm/coff.h | |
| * config/arm/coff.h: Add comment about USER_LABEL_PREFIX. | |
| Wed Jun 2 07:07 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/fixincl.c(global def): Add FD_SHELL_SCRIPT to mark | |
| fixes that need "file=xxx\n" prepended before invocation | |
| (start_fixer - new): starting the fixer process is complex enough | |
| to warrent its own routine. It prepends the "file=xxx\n" stuff. | |
| (process): uses the new routine; omit usage of putenv() | |
| * fixinc/fixincl.tpl: mark shell scripts with FD_SHELL_SCRIPT | |
| * fixinc/fixincl.x: regenerate | |
| Wed Jun 2 02:29:07 1999 Jeffrey A Law (law@cygnus.com) | |
| * README, configure.in, gcc.1, gcc.texi: Update name (egcs -> gcc) | |
| and version #s (1.1 -> 2.96) as needed. | |
| * README.g77: Kill way out of date file in the toplevel directory. | |
| Wed Jun 2 00:52:34 1999 David O'Brien <obrien@FreeBSD.org> | |
| * configure.in (i[34567]86-*-freebsdelf): Don't include linux.h, | |
| i386/freebsd-elf.h no longer requires it. Instead include svr4.h. | |
| * configure: Rebuilt. | |
| * i386/freebsd-elf.h (DEFAULT_VTABLE_THUNKS): Define. | |
| (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, SET_ASM_OP): Likewise. | |
| (PREFERRED_DEBUGGING_TYPE, WCHAR_UNSIGNED): Likewise. | |
| (SWITCH_TAKES_ARG): Likewise. | |
| * i386/freebsd.h: Remove FREEBSD_NATIVE support. | |
| * config/t-freebsd: Moved from config/i386/ so it can used for all | |
| FreeBSD targets. | |
| Mon May 31 02:22:55 1999 Philippe De Muyter <phdm@macqel.be> | |
| * m68k/x-mot3300 (XCFLAGS): Fixed to match stb.o, not f/stb.o. | |
| Wed Jun 2 00:08:34 1999 Robert Lipe <robertlipe@usa.net> | |
| * configure.in (i[34567]86-*-udk*): Install headers with cpio. | |
| * configure: Rebuilt. | |
| Tue Jun 1 19:06:22 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000/aix41.h (RS6000_CALL_GLUE): Define. | |
| * rs6000/aix43.h (RS6000_CALL_GLUE): Likewise. | |
| * rs6000/rs6000.c (rs6000_file_start): Use putc. | |
| (rs6000_output_load_toc_table): Same. | |
| (output_prolog, output_mi_thunk): Same. | |
| * rs6000/rs6000.h (SELECT_SECTION): Formatting. | |
| (ASM_GLOBALIZE_LABEL): Use putc. | |
| Mon May 31 15:23:23 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (reload_*_help): New patterns and splitters. | |
| (reload_*): Use them. | |
| (mov[qh]i): Likewise. | |
| Mon May 31 11:48:07 1999 Mark Mitchell <mark@codesourcery.com> | |
| * cccp.c (handle_directive): Handle backslash-newlines in quoted | |
| strings correctly. | |
| Mon May 31 09:36:11 1999 Cort Dougan <cort@cs.nmt.edu> | |
| * rs6000/linux.h (LINK_SPEC): Use emulation elf32ppclinux. | |
| Mon May 31 11:40:20 EDT 1999 John Wehle (john@feith.com) | |
| * flow.c (mark_regs_live_at_end, insn_dead_p, | |
| mark_set_1, mark_used_regs): Only give FRAME_POINTER_REGNUM | |
| and HARD_FRAME_POINTER_REGNUM special treatment if reload | |
| hasn't run or the frame pointer is needed. | |
| * haifa-sched.c (attach_deaths): Likewise. | |
| * sched.c (attach_deaths): Likewise. | |
| Mon May 31 00:46:17 1999 Jeffrey A Law (law@cygnus.com) | |
| * jump.c (jump_optimize_1): Only set CAN_REACH_END if | |
| calculate_can_reach_end returns nonzero. | |
| * configure.in (native gas tests): Search for an assembler in the | |
| same manner that the installed compiler will. | |
| * configure: Rebuilt. | |
| * tm.texi (MD_EXEC_PREFIX): Note need to update configure.in too. | |
| * alias.c (find_base_term): Improve handling of addresses | |
| constructed from binary operations. | |
| Sun May 30 14:29:17 1999 Eric Raskin (ehr@listworks.com) | |
| * dgux.h (STARTFILE_SPEC): Fix incorrectly matched curly-braces. | |
| Sun May 30 14:19:13 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.h (cleanup_label, frame_offset): Declare. | |
| (tail_recursion_label, tail_recursion_reentry): Likewise. | |
| (arg_pointer_save_area, rtl_expr_chain): Likewise. | |
| * stmt.c (cleanup_label, frame_offset): Delete extern declarations. | |
| (tail_recursion_label, tail_recursion_reentry): Likewise. | |
| (arg_pointer_save_area, rtl_expr_chain): Likewise. | |
| Sat May 29 19:08:10 1999 Philip Blundell <philb@gnu.org> | |
| * config/arm/aout.h (ASM_OUTPUT_ALIGN): Only define if not already | |
| defined. | |
| * config/arm/elf.h (ASM_OUTPUT_ALIGN): Define. | |
| (MAX_OFILE_ALIGNMENT): Define. | |
| Fri May 28 21:40 1999 Robert Lipe <robertlipe@usa.net> | |
| * fixincl.c: Replace local include scheme with #includes of | |
| gansidecl.h and system.h. | |
| * procopen.c: Likewise. | |
| * server.c: Likewise. | |
| Fri May 28 03:47:03 1999 Eric Raskin (ehr@listworks.com) | |
| * i386/t-dgux (EXTRA_PARTS): Add crti.o | |
| (crti.o): Add build rule and dependencies. | |
| * fixinc/fixinc.dgux: Use modified _int_varargs.h | |
| Fri May 28 03:41:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000/sysv4.h (CC1_SPEC): Add support for -profile | |
| (LIB_LINUX_SPEC): Likewise. | |
| (LIB_LINUX_SPEC): Add support for -pthread | |
| (CPP_OS_LINUX_SPEC): Likewise. | |
| (CPP_SYSV_SPEC): Avoid redefinitions if both -fpic and -fPIC are | |
| specified. | |
| Thu May 27 13:04:52 1999 H.J. Lu (hjl@gnu.org) | |
| * i386.c (output_fp_cc0_set): Don't check the JUMP_INSN code for | |
| conditional move. | |
| (notice_update_cc, output_float_compare): Enable TARGET_CMOVE support. | |
| (output_float_compare, output_fp_cc0_set): Fix the FLOAT comparison | |
| for IEEE math and CC_FCOMI. | |
| (put_jump_code): No IEEE if CC_FCOMI is set. | |
| 1999-05-27 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * fold-const.c (fold_truthop): Make the field reference unsigned | |
| when converting a single bit compare. | |
| Thu May 27 02:40:48 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Don't do biv->giv conversion on constants. | |
| Thu May 27 02:09:27 1999 Jeffrey A Law (law@cygnus.com) | |
| * varasm.c (STRIP_NAME_ENCODING): Remove default definition. | |
| * output.h (STRIP_NAME_ENCODING): Strip '*' like the old varasm | |
| version did. | |
| * reload.c (push_reload): Do not call remove_address_replacements | |
| when presented with identical optional reloads. | |
| Wed May 26 14:18:05 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (MASK_FIX, TARGET_FIX): New. | |
| (MASK_*): Reorganize constants. | |
| (CPP_AM_FIX_SPEC): New. | |
| (TARGET_SWITCHES): Add FIX. | |
| (EXTRA_SPECS): Likewise. | |
| (CPP_CPU_EV6_SPEC): Use FIX, not CIX. | |
| (SECONDARY_MEMORY_NEEDED): Likewise. | |
| (REGISTER_MOVE_COST): Likewise. | |
| * alpha.c (override_options): Add FIX support. Always use | |
| ALPHA_TP_PROG for ev6. | |
| * alpha.md (sqrt and mov[sd]i patterns): Use FIX, not CIX. | |
| * alpha/elf.h (ASM_FILE_START): Look at FIX too. | |
| * configure.in (target_cpu_default2) [ev6]: Use FIX, not CIX. | |
| Wed May 26 09:53:05 1999 Mark Mitchell <mark@codesourcery.com> | |
| * fold-const.c (fold): STRIP_NOPS when deciding whether or not | |
| something is a candidate for optimize_bit_field_compare. | |
| Wed May 26 09:40:02 1999 Mark Mitchell <mark@codesourcery.com> | |
| * gcc.texi (Passes): Document branch-shortening. | |
| * invoke.texi (Debugging Options): Document the fact that `-dp' | |
| outputs length information for instructions. | |
| Wed May 26 08:49:31 1999 Nick Clifton <nickc@cygnus.com> | |
| * flow.c: Revert previous delta. | |
| Wed May 26 06:05:10 1999 Nick Clifton <nickc@cygnus.com> | |
| * flow.c (insn_dead_p): Check against frame_pointer_rtx not | |
| FRAME_POINTER_REGNUM. | |
| (mark_set_1): Ditto. | |
| (mark_used_regs): Ditto. | |
| Wed May 26 02:19:31 1999 Philip Blundell <pb@nexus.co.uk> | |
| * arm.h (NEED_PLT_GOT): Fix mistake in last change. | |
| (GOT_PCREL): New macro. Define to 1 if not already defined. | |
| * arm/elf.h (GOT_PCREL): Define to 0. | |
| * arm.c (arm_finalize_pic): Take into account the setting of | |
| GOT_PCREL. | |
| Tue May 25 14:06:06 1999 Jeffrey A Law (law@cygnus.com) | |
| * output.h (STRIP_NAME_ENCODING): Provide default definition. | |
| * dwarf2out.c (ASM_NAME_TO_STRING): Use STRIP_NAME_ENCODING. | |
| * flow.c (mark_set_1): Do not record BLKmode stores as dead | |
| store elimination candidates. | |
| Tue May 25 08:55:57 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.h (ASM_OUTPUT_DOUBLE_INT) : Use 'dword' if | |
| TARGET_GAS. | |
| Mon May 24 20:30:08 1999 Jim Wilson <wilson@cygnus.com> | |
| * configure.in (rs6000-ibm-aix4.[12]*): Delete use of aix41-gld.h. | |
| Add use of x-aix41-gld. | |
| Mon May 24 16:44:09 1999 Jakub Jelinek <jj@ultra.linux.cz> | |
| * sparc/linux64.h (ASM_OUTPUT_CONSTRUCTOR): Define. | |
| (ASM_OUTPUT_DESTRUCTOR): Define. | |
| Mon May 24 14:35:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (strength_reduce): Do not clear NOT_EVERY_ITERATION at the | |
| last CODE_LABEL in a loop if we have previously passed a jump | |
| to the top of the loop. | |
| Mon May 24 07:56:29 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.h (OUTPUT_INT_ADDR_CONST): Fix blunder made when | |
| applying Philip's patch. | |
| Mon May 24 01:02:12 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_end_bindings): Ignore any elements of VARS that | |
| are not VAR_DECLs. | |
| Sun May 23 20:31:16 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (strength_reduce): Grow reg_single_usage as needed. | |
| Sun May 23 10:13:20 1999 David O'Brien <obrien@FreeBSD.org> | |
| * i386/freebsd-elf.h (LINK_SPEC): Change -static to -Bstatic. | |
| Also remove a useless comment. | |
| Sun May 23 10:05:23 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.md (negdf2,negsf2): Use fneg instead of fsub on pa 2.0. | |
| Sat May 22 21:02:06 1999 David Edelsohn <edelsohn@gnu.org> | |
| * collect2.c (main): Only generate import or export file and add | |
| to link arguments if non-empty. Use xmalloc not alloca. | |
| (write_{export,import}_file): Delete. | |
| (write_aix_file): New function. | |
| (locatelib): Use xmalloc not malloc. | |
| (GCC_OK_SYMBOL): Do not check type if aix64. | |
| Sat May 22 09:35:51 1999 Philip Blundell <pb@nexus.co.uk> | |
| Based on patch by Scott Bambrough and Pat Beirne: | |
| * config/arm/arm.c (making_const_table): New variable. | |
| * config/arm/arm.h (making_const_table): Declare. | |
| (OUTPUT_INT_ADDR_CONST): Mark symbols as position independent if | |
| appropriate. | |
| * config/arm/arm.md (consttable_4, consttable_8, consttable_end): | |
| Keep track of when we are building the constant table. | |
| Sat May 22 09:34:22 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/arm.c (arm_override_options): Fix erroneous warning | |
| message. | |
| Sat May 22 09:06:33 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.h (NEED_PLT_GOT): Only define if not already | |
| defined. | |
| Sat May 22 07:17:05 1999 Nick Clifton <nickc@cygnus.com> | |
| * tm.texi (FUNCTION_ARG): Correct description of a stack element | |
| in a PARALLEL. | |
| Sat May 22 01:27:49 1999 Mark Mitchell <mark@codesourcery.com> | |
| * expr.h (lang_expand_constant): Guard with #ifdef TREE_CODE. | |
| Fri May 21 21:19:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.c (output_mi_thunk): Enable full support again. | |
| Fri May 21 20:09:52 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (BRANCH_COST): Define. | |
| Thu May 20 10:00:42 1999 Stephen L Moshier <moshier@world.std.com> | |
| * Makefile.in (GCC_FOR_TARGET): Add -I$(build_tooldir)/include. | |
| Thu May 20 09:58:57 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * function.c (assign_stack_local): Align stack slot properly. | |
| (assign_outer_stack_local): Likewise. | |
| Thu May 20 10:38:43 1999 Mark Mitchell <mark@codesourcery.com> | |
| * expr.h (lang_expand_constant): Declare. | |
| * toplev.c (lang_expand_constant): Define it. | |
| * varasm.c (output_constant): Use it. | |
| Thu May 20 11:28:53 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * optabs.c (expand_cmplxdiv_straight, expand_cmplxdiv_wide): | |
| Change function definitions to K&R style. | |
| Thu May 20 08:16:39 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/fixincl.c: We must not ignore SIGCLD now. | |
| Thu May 20 07:06:39 1999 Alexandre Oliva <aoliva@acm.org> | |
| * fixinc/Makefile.in(gnu-regex.o): add $(INCLUDES) to compile options | |
| * fixinc/fixincl.c(wait_for_pid): K&R-ify arguments | |
| (several places): omit static initialization | |
| (process): use single fd, since only the read fd is used | |
| * fixinc/gnu-regex.c: define 'const' away, if not supported | |
| * fixinc/procopen.c(several places): omit static initialization | |
| * fixinc/server.c: define 'volitile' away, if not supported | |
| 1999-05-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/dbxcoff.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Use | |
| asm_fprintf and %L to generate the label name. | |
| * config/dbxelf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Likewise. | |
| (ASM_OUTPUT_SOURCE_LINE): Correct generation of internal labels. | |
| Thu May 20 01:40:55 1999 Jeffrey A Law (law@cygnus.com) | |
| * jump.c (can_reverse_comparison_p): Do not abort if the comparison | |
| insn for a conditional jump can not be found. | |
| Wed May 19 23:58:58 1999 Jeffrey A Law (law@cygnus.com) | |
| * mips.h (ENCODE_SECTION_INFO): Do not perform GP optimizations | |
| on variables in specific sections other than .sbss and .sdata. | |
| Wed May 19 03:56:56 1999 Mark Mitchell <mark@codesourcery.com> | |
| * stmt.c (expand_return): Call start_cleanup_deferral and | |
| end_cleanup_deferral around conditional code. | |
| Wed May 19 08:40:08 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/fixincl.tpl: Avoid depending on ANSI C features for | |
| filename lists. Utilizes new "krstr" AutoGen function. | |
| * fixinc/fixincl.x: Rebuilt. | |
| Wed May 19 02:47:11 1999 Jan Hubicka (hubicka@freesoft.cz) | |
| * i386.c (output_float_compare): Avoid GNU-C extensions. | |
| Wed May 19 00:34:40 1999 Jeffrey A Law (law@cygnus.com) | |
| * version.c: Bump to distinguish mainline tree from the | |
| gcc-2.95 branch. | |
| Tue May 18 03:53:37 1999 Craig Burley <craig@jcb-sc.com> | |
| Improve open-coding of complex divide: | |
| * flags.h: Declare new front-end-malleable flag. | |
| * toplev.c: Define new flag. | |
| * optabs.c (expand_cmplxdiv_straight): New function to do original | |
| open-coding. | |
| (expand_cmplxdiv_wide): New function to do new open-coding, | |
| from Toon Moene, with changes (call to emit_barrier, dropping | |
| of spurious `ok = 1;', plus the obvious `break;' -> `return 0;'). | |
| (expand_binop): A bit of spacing fixing, while at it. | |
| Use new functions instead of inlining the open-coding code. | |
| Tue May 18 00:51:46 1999 Krister Walfridsson <cato@df.lth.se> | |
| * configure.in (arm*-*-netbsd*): Use collect2. | |
| (i[34567]86-*-netbsd*): Likewise. | |
| (m68k*-*-netbsd*): Likewise. | |
| (ns32k-*-netbsd*): Likewise. | |
| (sparc-*-netbsd*): Likewise. | |
| (vax-*-netbsd*): Likewise. | |
| * configure: Rebuilt. | |
| Tue May 18 00:21:34 1999 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cppspec.c: Insert -no-gcc into command line unless -gcc was | |
| given by user. | |
| * gcc.c (default_compilers): Define __GNUC__ and | |
| __GNUC_MINOR__ only if -no-gcc was not given. | |
| * objc/lang-specs.h: Likewise. | |
| * cpp.texi: Document -x and -std options; explain that -lang | |
| is no longer supported. Minor related corrections. | |
| Mon May 17 23:56:39 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * Makefile.in (stmp-fixproto): Pass location of mkinstalldirs to | |
| fixproto. | |
| * fixproto: Avoid unportable constructs such as `basename' and | |
| `mkdir -p'. Use mkinstalldirs from the environment if `mkdir -p' | |
| fails. | |
| * fixinc/fixincl.c: Remove #error, it is not portable. | |
| Mon May 17 23:50:41 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * collect2.c (main): Fix typo in COLLECT2_HOST_INITIALIZATION. | |
| Mon May 17 19:45:41 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * fixinc/fixincl.c (process): Wait for children from chain_open() | |
| to avoid creating zombies. | |
| * fixinc/inclhack.tpl: Removed no-op pipe. | |
| * fixinc/inclhack.sh fixinc/fixincl.sh: regenerate | |
| Mon May 17 07:23:34 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match | |
| reality. | |
| * expr.c (init_noncopied_parts): Don't generate initializers for | |
| parts that don't need them. | |
| Mon May 17 02:56:35 PDT 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Oct 31 05:08:34 CET 1998 Jan Hubicka (hubicka@freesoft.cz) | |
| * reg-stack.c: Do not emit pop insns after cc0 setter. | |
| (emit_pop_insn): Do not emit insn in case WHEN is NULL. | |
| (compare_for_stack_reg): Update REG_DEAD note and | |
| do not emit push insn. | |
| * i386.c: (output_float_compare): Handle new REG_DEAD notes. | |
| Mon May 17 01:57:37 1999 David Daney <daney@ibw.com.ni> | |
| * i386/sol2.h (LINK_SPEC): Do not pass "-z text" to the linker | |
| if -mimpure-text. | |
| 1999-05-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * m68k.c (standard_68881_constant_p): Don't accept -0.0 as valid | |
| 68881 constant. | |
| * fold-const.c (fold_truthop): When converting a one-bit | |
| comparison don't sign extend the constant. | |
| * cse.c (cse_insn): Copy SRC_CONST before putting it in the | |
| REG_EQUAL note. | |
| 1999-05-17 Mike Stump <mrs@wrs.com> | |
| * rs6000/vxppc.h (CPP_SPEC): Fix support for vararg functions. | |
| Sat May 15 14:22:40 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/hackshell.tpl: Fix mis-applied patch. | |
| * fixinc/inclhack.sh: Regenerated. | |
| Thu May 13 21:05:55 1999 Mark Kettenis <kettenis@gnu.org> | |
| * fixinc/mkfixinc.sh: Add the Hurd (*-*-gnu*) to the list of | |
| targets that do not need any fixes. | |
| Sat May 15 14:12:38 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (set_lo_sum+2): New splitter to load large | |
| const_ints. | |
| Sat May 15 14:09:08 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (decrement_and_branch_on_count): Disabled. | |
| (doloop_begin, doloop_end): New patterns. | |
| (*rptb_init): Added extra operands. | |
| Fri May 14 21:31:36 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*umulqi3_highpart_clobber): Fix operand 2 | |
| constraints order. | |
| 1999-05-14 Ulrich Drepper <drepper@cygnus.com> | |
| * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Fix operand numbers in | |
| asm input operands. | |
| Thu May 13 15:34:18 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (mask_constant): Delete. | |
| (mask_operand): Move mask_constant() body to here. | |
| * rs6000.h (mask_constant): Delete declaration. | |
| * rs6000.md (nabsdi2): Reverse subtraction in splitter. | |
| Thu May 13 02:25:01 1999 Jeffrey A Law (law@cygnus.com) | |
| * cpp.texi: Fix some typos. | |
| Thu May 13 01:49:55 1999 Graham Stott <GrahamS@RCP.co.uk> | |
| * loop.c (maybe_eliminate_biv): Check regno against | |
| max_reg_before_loop. | |
| * i386.c (memory_address_info): Correct the scale | |
| factor test. | |
| Thu May 13 01:31:19 1999 Nick Burrett <nick.burrett@btinternet.com> | |
| * arm.md (nop): Backout Apr 27 change. Ensure REGISTER_PREFIX is | |
| applied to each register. | |
| * aof.h (ASM_FILE_START): Define register `r0'. | |
| 1999-05-12 20:22 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * configure.in: Make --enable-cpp and --with-cpp-install-dir | |
| documented options. Enable the cpp driver by default. | |
| * configure: Rebuilt. | |
| Wed May 12 18:08:48 1999 David Edelsohn <edelsohn@gnu.org> | |
| Richard Henderson <rth@cygnus.com> | |
| * rs6000.c (print_operand) [w]: Calculate signed constant more clearly. | |
| (rs6000_allocate_stack_space): Print as hexadecimal value. | |
| * rs6000.h (CONST_OK_FOR_LETTER_P): 'L' checks for a signed, | |
| 16-bit shifted constant. Fix typo for 'P'. | |
| (EXTRA_CONSTARINT): 'T' checks for a 32-bit mask operand. | |
| * rs6000.md (movsi, addsi3_internal1, movdi, adddi3_internal1): | |
| Use 'L' for shifted constant. | |
| (anddi3_internal3): Fix typo. | |
| (32-bit mask patterns): Use 'T'. | |
| Wed May 12 07:30:31 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/fixincl.c(quoted_file_exists): new procedure to ensure that | |
| a file exists before trying to copy it into the destination | |
| (extract_quoted_files): use that routine. | |
| Wed May 12 07:27:31 1999 Craig Burley <craig@jcb-sc.com> | |
| Allow front end (like g77's) to override maintenance of errno: | |
| * expr.c (expand_builtin): Bother with errno only if | |
| flag_errno_math. | |
| * flags.h: Declare flag_errno_math. | |
| * toplev.c: Define flag_errno_math. | |
| Tue May 11 23:55:49 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixproto: Change "mkdir" calls to "mkdir -p" | |
| * fixinc/inclhack.def (io_def_quotes): Consistently allow multiple | |
| whitespace characters between the "define" and the name of the macro. | |
| * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt. | |
| Tue May 11 20:46:37 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_expand_block_move): Handle TImode registers | |
| used with ADDRESSOF. | |
| (alpha_expand_block_clear): Handle ADDRESSOF specially. | |
| 1999-05-11 Ulrich Drepper <drepper@cygnus.com> | |
| * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Remove unneccessary | |
| memory output operand which irritates gcc. | |
| Tue May 11 11:45:16 1999 Dave Brolley <brolley@cygnus.com> | |
| * toplev.c (documented_lang_options): Add -MD, -MMD, -M and -MM for | |
| cpplib-enabled compilers. | |
| Tue May 11 11:34:56 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Add parentheses | |
| around &&. | |
| Mon May 10 13:51:24 1999 Nick Clifton <nickc@cygnus.com> | |
| * tm.texi (FUNCTION_ARG): Stack element of PARALLEL must come | |
| first. | |
| Tue May 11 01:32:01 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/inclhack.def (sun_auth_proto): Apply to all targets. | |
| (sysz_stdlib_for_sun): Similarly. | |
| * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt. | |
| Mon May 10 20:34:10 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/mips/elf.h (UNIQUE_SECTION_P): Undef. | |
| * config/mips/elf64.h (UNIQUE_SECTION_P): Undef. | |
| * config/mips/mips.h (UNIQUE_SECTION_P): Define to 0. | |
| 1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppfiles.c (initialize_input_buffer): New function. | |
| (finclude): Call it, if pfile->input_buffer is NULL. Accept | |
| any character device as an input file. | |
| (read_and_prescan): Use pfile->input_buffer and | |
| pfile->input_speccase. | |
| * cppinit.c (cpp_cleanup): Free pfile->input_buffer and | |
| pfile->input_speccase. | |
| * cpplib.h (cpp_reader): Add input_buffer, input_speccase, and | |
| input_buffer_len members. Use memcpy in CPP_PUTS_Q. | |
| * cppmain.c: Buffer output in the token_buffer; throttle | |
| number of calls to fwrite; check for errors from fwrite. | |
| 1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cppspec.c: Treat two non-option arguments as input and | |
| output file. Three or more non-option args is an error. | |
| Clean up. | |
| * gcc.c (default_compilers): Pass -$ to the preprocessor. | |
| * objc/lang-specs.h: Likewise. | |
| Mon May 10 12:59:20 1999 Jeffrey A Law (law@cygnus.com) | |
| * optabs.c (emit_cmp_and_jump_insns): Handle the case where both | |
| operands to the comparison are constants. | |
| Mon May 10 07:28:10 1999 Bruce Korb <autogen@autogen.freeservers.com> | |
| * fixinc/inclhack.def(arm_norcroft_hint): check before fixing | |
| (no_double_slash): portability | |
| (math_exception): added reminder comment | |
| Mon May 10 01:28:10 1999 Craig Burley <craig@jcb-sc.com> | |
| From Fri May 7 9:31:41 1999 Donn Terry (donn@interix.com): | |
| * varasm.c (mark_constant_pool): Add some transitive closure. | |
| Sun May 9 22:51:04 1999 Craig Burley <craig@jcb-sc.com> | |
| Fix gcc.dg/990506-0.c: | |
| * c-typeck.c (require_complete_type): Handle ERROR_MARK input. | |
| Sun May 9 13:19:12 1999 Jeffrey A Law (law@cygnus.com) | |
| * gcse.c (cprop_insn): Do not try to simplify a simple jump. | |
| Sun May 9 11:12:19 1999 Philip Blundell <bp@nexus.co.uk> | |
| * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Add (PLT) to branch if | |
| necessary. Reported by jim@federated.com. | |
| Sat May 8 23:05:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (PRINT_OPERAND_ADDRESS): Output "%r0", not "r0" for the | |
| base register in an absolute memory address. | |
| * pa.md (conditional moves): Avoid using immediate zero for | |
| register zero. | |
| Sat May 8 06:23:21 1999 Philip Blundell <pb@nexus.co.uk> | |
| Based on patch by Scott Bambrough: | |
| * config/arm/arm.h (NEED_PLT_GOT): New macro. Set to 0 if not | |
| already defined. | |
| * config/arm/elf.h (NEED_PLT_GOT): Define to flag_pic. | |
| * config/arm/arm.md (call_symbol, call_value_symbol et al.): If | |
| NEED_PLT_GOT is true, add explicit "(PLT)" to generated branches. | |
| * config/arm/arm.c (output_func_epilogue, | |
| output_return_instruction): Likewise for calls to abort. | |
| Sat May 8 01:57:58 1999 Donn Terry (donn@interix.com) | |
| * calls.c (rtx_for_function_call): Extend function pointer being | |
| passed to chkr_check_exec_libfunc, if needed. | |
| Sat May 8 01:51:50 1999 David Edelsohn <edelsohn@gnu.org> | |
| * ginclude/stdarg.h (__va_rounded_size): Use long type for | |
| rounding on AIX. | |
| * ginclude/varargs.h: Likewise. | |
| Sat May 8 01:47:20 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * invoke.texi: Remove duplicates in the description of -d | |
| letters. Fix use of @item vs. @itemx. | |
| Sat May 8 01:43:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.h (RS6000_VARARGS_OFFSET): Die die die. | |
| (CUMULATIVE_ARGS): Remove varargs_offset; update commentary. | |
| * rs6000.c (setup_incoming_varargs): Fix typo last change. | |
| (init_cumulative_args): Remove varargs_offset references. | |
| * rs6000/linux.h (NO_IMPLICIT_EXTERN_C): Define. | |
| (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Undefine. | |
| Sat May 8 01:34:19 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * reload1.c (gen_mode_int): New function. | |
| (reload_cse_move2add): Use it to generate the new constants. | |
| Sat May 8 01:25:09 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * varasm.c (output_constant): Do nothing if -fsyntax-only. | |
| Fri May 7 19:10:15 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * sparc.h (GO_IF_LEGITIMATE_ADDRESS): Prohibit REG+REG addressing | |
| for TFmode when there are no instructions which accept REG+REG | |
| instructions. | |
| Fri May 7 12:38:54 1999 Jim Wilson <wilson@cygnus.com> | |
| * mips/elf64.h (MAKE_DECL_ONE_ONLY, UNIQUE_SECTION_P): Define. | |
| * mips/mips.c (mips_select_rtx_section): When TARGET_MIPS16, use | |
| function_section instead of text_section. | |
| * mips/mips.h (ENCODE_SECTION_INFO): Add check for UNIQUE_SECTION_P | |
| in TARGET_MIPS16 STRING_CST handling. | |
| Fri May 7 09:54:11 1999 Nick Clifton <nickc@cygnus.com> | |
| Patch from: Nick Burrett <nick.burrett@btinternet.com> | |
| * arm.c (arm_poke_function_name): New function to implement | |
| -mpoke-function-name. | |
| * aof.h (ASM_DECLARE_FUNCTION_NAME): Call it. | |
| * aout.h (ASM_DECLARE_FUNCTION_NAME): Likewise. | |
| * elf.h (ASM_DECLARE_FUNCTION_NAME): Likewise. | |
| * arm.h: Prototype it. | |
| (TARGET_SWITCHES): Add `no-poke-function-name'. | |
| Fri May 7 14:19:31 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * fixinc/server.c (load_data): Cast text_size to long, adapt | |
| format. | |
| * fixinc/server.c (read_pipe_timeout): Declare volatile, modified | |
| in signal handler. | |
| (sig_handler): Add debug code. | |
| * fixinc/server.c (run_shell): Don't \-escape cd, it breaks the | |
| Ultrix V4.3 /bin/sh. | |
| * fixinc/server.c (def_args): Use static instead of STATIC to | |
| avoid redefinition error from linker iff DEBUG. | |
| * fixinc/hackshell.tpl: Don't strip trailing directory from | |
| DESTDIR - that is already done | |
| * fixinc/fixincl.c (run_compiles): fix memory leak | |
| Thu May 6 20:34:00 1999 Mark Mitchell <mark@codesourcery.com> | |
| * resource.c (mark_referenced_resources): Make volatil | |
| monotonically increasing. | |
| (mark_set_resources): Likewise. | |
| Thu May 6 20:02:33 1999 Fred Fish <fnf@be.com> | |
| * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined. | |
| (HAVE_PUTENV, HAVE_ATEXIT, HAVE_RENAME): Likewise. | |
| Wed May 5 20:28:32 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * install.texi (Header Dirs): s/GPLUS/GPLUSPLUS/. | |
| Wed May 5 23:44:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (copy_loop_body): Don't copy VTOP notes from copy_notes_from. | |
| Wed May 5 16:26:13 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * function.c (purge_addressof_replacements): Rename into | |
| purge_bitfield_addressof_replacements. | |
| (purge_addressof_replacements): New variable. | |
| (purge_addressof_1): Add code for changing addressof in notes for | |
| field values which are extracted by usage MEM with narrower mode. | |
| (purge_addressof): Initialize purge_bitfield_addressof_replacements. | |
| Wed May 5 07:40:02 1999 Nick Clifton <nickc@cygnus.com> | |
| Patch from: Nick Burrett <nick.burrett@btinternet.com> | |
| * config/arm/arm.h (ARM_MCOUNT_NAME): Define. | |
| (FUNCTION_PROFILER): Remove assembler dialect dependency and use | |
| ARM_MCOUNT_NAME. | |
| (TRAMPOLINE_TEMPLATE): Remove assembler dialect dependency. | |
| * config/arm/aof.h (ARM_MCOUNT_NAME): Define. | |
| 1999-05-05 09:58 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * gcc.c (default_compilers): Fix brace nesting bug. | |
| * objc/lang-specs.h: Use %i, not %g.mi, for the input file | |
| when processing an .mi file. | |
| Tue May 4 13:17:55 1999 Mark Mitchell <mark@codesourcery.com> | |
| * resource.c (mark_set_resources): Handle UNSPEC_VOLATILE, | |
| ASM_INPUT, TRAP_IF, and ASM_OPERANDS just like in | |
| mark_referenced_resources. | |
| Mon May 3 22:38:41 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Change non-PowerPC | |
| and AIX64 combination to warning. Add warning for disabling | |
| PowerPC64 support when using 64-bit mode. | |
| (LIB_SPEC): Do not link with libg.a in 64-bit mode. | |
| (LINK_SPEC): Do not export libg.exp symbols in 64-bit mode. | |
| * rs6000/rs6000.h (MY_ISCOFF): Treat import/export files as valid | |
| XCOFF files. | |
| (read_only_data_section, private_data_section, | |
| read_only_private_data_section): Always align CSECTs to doubleword | |
| boundary regardless of mode. | |
| (TEXT_SECTION_ASM_OP): Align text CSECT on doubleword boundary in | |
| 64-bit mode. | |
| (DATA_SECTION_ASM_OP): Always align CSECT to doubleword boundary. | |
| (ASM_OUTPUT_LOCAL): Use rounded size in 64-bit mode to | |
| maintain doublword alignment. | |
| Mon May 3 14:45:23 1999 Jeffrey A Law (law@cygnus.com) | |
| * mn10200.md (btst insns): btst does not leave cc0 in a usable | |
| state for redundant tst eliminatino. | |
| * mn10300.md (btst insns): Likewise. | |
| Mon May 3 16:14:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * mips.h (Pmode): Revert Oct 14th change which added a cast. | |
| Sun May 2 14:02:21 1999 Mark Mitchell <mark@codesourcery.com> | |
| * tree.h (struct tree_decl): Add comdat_flag. | |
| (DECL_COMDAT): Define it. | |
| * toplev.c (wrapup_global_declarations): Don't output a | |
| DECL_COMDAT function just because it's public. | |
| Sun May 2 15:16:42 1999 Joseph S. Myers <jsm28@cam.ac.uk> | |
| * pdp11.h (TARGET_SWITCHES): Fix error in previous change. | |
| (ASSEMBLER_DIALECT): Define. | |
| (CONDITIONAL_REGISTER_USAGE): Rename floating point registers if | |
| required for the UNIX assembler. | |
| (ASM_OUTPUT_INT): Remove. The compiler will synthesize it. | |
| (ASM_OUTPUT_ADDR_VEC_PROLOGUE): Remove. | |
| (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Change to "[" and "]". | |
| (TRAMPOLINE_TEMPLATE): Use ASM_OUTPUT_SHORT. | |
| * pdp11.c (output_addr_const_pdp11): Copy of output_addr_const | |
| adapted to output constants in octal. | |
| * pdp11.c, pdp11.h, pdp11.md: Use output_addr_const_pdp11 instead | |
| of output_addr_const. Output constants in octal. Use assembler | |
| dialect alternatives where DEC and UNIX assemblers use different | |
| instruction names. | |
| Sun May 2 01:15:06 PDT 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Fri Apr 30 13:55:43 1999 Richard Henderson <rth@cygnus.com> | |
| * va-ppc.h (__va_start_common): Let __builtin_saveregs do the work. | |
| * rs6000.c (expand_builtin_saveregs): For V4, initialize a private | |
| va_list struct, and return a pointer to it. | |
| (setup_incoming_varargs): V4 save area based off virtual_stack_vars | |
| instead of frame_pointer. | |
| Thu Apr 29 23:02:22 1999 Mark Mitchell <mark@codesourcery.com> | |
| * emit-rtl.c (start_sequence): Expand comments. | |
| (start_sequence_for_rtl_expr): Likewise. | |
| (push_to_sequence): Likewise. | |
| (end_sequence): Likewise. | |
| * expr.c (inhibit_defer_pop): Likewise. | |
| * expr.h (inhibit_defer_pop): Likewise. | |
| (NO_DEFER_POP): Likewise. | |
| (OK_DEFER_POP): Likewise. | |
| Thu Apr 29 22:13:46 1999 Robert Lipe <robertlipe@usa.net> | |
| * configure.in (i?86-UnixWare7*-sysv): Set thread_file to 'posix' | |
| --enable-threads[={yes,pthreads,posix}] is passed as a command | |
| line parameter to configure. | |
| * config/i386/sysv5.h (LIB_SPEC): Add support for '-pthread'. | |
| (CPP_SPEC): Likewise. | |
| Thu Apr 29 17:23:59 1999 Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (operand_subword): Religiously mask and sign-extend | |
| from 32-bits to HOST_WIDE_INT. | |
| Thu Apr 29 15:58:52 1999 Robert Lipe <robertlipe@usa.net> | |
| * fixinc/regex.c, fixinc/regex.h: Removed. Replace with... | |
| * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Imported from GDB 4.18. | |
| * fixinc/Makefile.in (OBJ, HDR): Handle name changes from above. | |
| (gnu-regex.o): Define REGEX_MALLOC to avoid memory leak. | |
| * fixinc/fixincl.c: new regex.h header name | |
| * Makefile.in: new regex.[ch] file names | |
| Thu Apr 29 12:53:33 1999 Richard Henderson <rth@cygnus.com> | |
| * calls.c (emit_call_1): Pass rounded_stack_size to emit_call | |
| instead of the unrounded size. | |
| 1999-04-28 14:40 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/mkfixinc.sh: Makesure the result shell script is writable | |
| Wed Apr 28 10:36:39 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/m68k/m68k.md (cmpsi+1): Use cmp.w when comparing a 16 bit | |
| constant with an address register. | |
| Wed Apr 28 00:14:41 PDT 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Tue Apr 27 19:50:25 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * rtl.h (REG_EH_REGION): Update comment to indicate a value of -1 | |
| indicates no throw and no nonlocal gotos. | |
| * optabs.c (emit_libcall_block): Emit REG_EH_REGION with a value | |
| of -1 instead of 0 to indicate a nonlocal goto won't happen either. | |
| * flow.c (count_basic_blocks, find_basic_blocks_1): Ignore libcall | |
| blocks, look for REG_EH_REGION note exclusively. | |
| (make_edges): Check for REG_EH_REGION > 0 for specified handlers. | |
| Tue Apr 27 15:33:42 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.h (read_only_data_section, private_data_section, | |
| read_only_private_data_section, toc_section): Align CSECT on | |
| doubleword boundary for 64-bit target. | |
| (DATA_SECTION_ASM_OP): Likewise. | |
| * rs6000.c (rs6000_stack_info): Leaf procedure stack limit is 288. | |
| Tue Apr 27 20:19:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (insv): Use copy_addr_to_reg. | |
| * final.c (insn_lengths_max_uid): New variable. | |
| (init_insn_lengths, shorten_branches): Set it. | |
| (get_attr_lengths): Test insn uid against insn_lengths_max_uid. | |
| 1999-04-27 08:32 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * expr.c (emit_move_insn_1): Abort if MODE argument is invalid. | |
| (compare): Punt if TREE_OPERAND (exp, 0) is an ERROR_MARK. | |
| Tue Apr 27 01:33:43 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (ORDINARY_FLAGS_TO_PASS): Renmaed from FLAGS_TO_PASS. | |
| Remove "CC". | |
| (FLAGS_TO_PASS): New variable. | |
| Tue Apr 27 00:36:44 1999 Nick Burrett <nick.burrett@btinternet.com> | |
| * arm.md (nop): Output instruction using output_asm_insn to fix | |
| assembler dialect problems. | |
| Mon Apr 26 23:55:50 1999 Robert Lipe <robertlipe@usa.net> | |
| * Makefile.in (fixinc.sh): Fix dependencies. | |
| * fixinc/inclhack.def (avoid_bool): Enable match if typedefs are | |
| prepended by spaces. | |
| (sco5_stat_wrappers): New fix. Make sys/stat.h C++ safe. | |
| * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt. | |
| Mon Apr 26 23:28:54 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| Donn Terry <donn@interix.com> | |
| * function.c (put_var_into_stack): Change ptr_mode to Pmode | |
| in setup for chkr_set_right_libfunc calls. | |
| (assign_params): Likewise. | |
| * expr.c (emit_push_insn): Change ptr_mode to Pmode in | |
| setup for chkr_copy_bitmap_libfunc and chkr_set_right_libfunc calls. | |
| (expand_assignment): Change ptr_mode to Pmode in | |
| setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc. | |
| (store_expr): Change ptr_mode to Pmode in | |
| setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc. | |
| (expand_expr): Change ptr_mode to Pmode in | |
| setup for chkr_check_addr_libfunc. | |
| (expand_builtin): Change ptr_mode to Pmode in | |
| setup for chkr_check_str_libfunc, chkr_copy_bitmap_libfunc and | |
| chkr_check_addr_libfunc. | |
| * calls.c (rtx_for_function_call): Change ptr_mode to Pmode in | |
| setup for chkr_check_exec_libfunc. | |
| (expand_call): Change ptr_mode to Pmode in | |
| setup for chkr_set_right_libfunc. | |
| (expand_call): Change ptr_mode to Pmode in | |
| setup for chkr_set_right_libfunc. | |
| (store_one_arg): Change ptr_mode to Pmode in | |
| setup for chkr_set_right_libfunc. | |
| * c-parse.in (absdcl1): Allow attributes in explicit typespecs. | |
| (%expect): Update. | |
| * c-parse.y: Regenerate. | |
| * c-parse.c: Likewise. | |
| * objc/objc-parse.c: Likewise. | |
| * objc/objc-parse.y: Likewise. | |
| Mon Apr 26 21:17:41 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * c-pragma.c (push_alignment): Don't ignore alignments greater than | |
| 4 bytes. | |
| (handle_pragma_token): Likewise. | |
| * c-pragma.c: Support for #pragma pack (push, <id>, <n>). | |
| (struct align_stack): Add id field. | |
| (push_alignment, pop_alignment): Take id parameter. | |
| (handle_pragma_token): Add necessary states. | |
| * c-pragma.h (enum pragma_state): Add necessary states. | |
| Tue Apr 27 13:58:23 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*cmpqf, *cmpqf_noov, *cmpqi_test, | |
| *cmpqi_test_noov): Remove ? modifier from constraints list. | |
| (*smulqi3_highpart_clobber, *umulqi3_highpart_clobber): Swap | |
| output strings to match new constraint ordering. | |
| 1999-04-26 19:16 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpphash.c (dump_definition): New function. | |
| * cpphash.h: Prototype it. | |
| * cpplib.c (handle_directive): Don't output anything here. | |
| Streamline. | |
| (pass_thru_directive): Take a length, not a pointer to the | |
| end. All callers changed. | |
| (do_define): Handle -dD, -dN, -g3 entirely here. Streamline. | |
| (do_include): Handle -dI here. | |
| (do_ident): Correct to match cccp. | |
| (do_pragma): Copy the pragma through here. | |
| (do_assert, do_unassert): Tidy. | |
| * cppinit.c (cpp_finish): If -dM was specified, walk the macro | |
| hash table and call dump_definition on all the entries. | |
| * cppmain.c: cpp_finish may produce output. | |
| Mon Apr 26 15:27:33 1999 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.c (compile_file): Move call to check_global_declarations | |
| after output_exception_table to restore behavior as it was before | |
| 1999-04-22 change. | |
| 1999-04-26 10:50 -0700 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/fixincl.c: Improve the handling of child process exits | |
| * fixinc/server.[ch]: Export the interface for shutting down | |
| the server process | |
| * fixinc/inclhack.tpl: Remove unnecessary character quote | |
| * fixinc/fixincl.sh, fixinc/inclhack.sh: Regenerate | |
| Mon Apr 26 10:41:42 EDT 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * alpha.md (builtin_setjmp_receiver): Use a label_ref instead of | |
| a code label. | |
| 1999-04-26 09:47 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * rtl.texi: Document the rtl classes and their relation to | |
| formats. | |
| Mon Apr 26 01:02:38 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (fix_trunc patterns): Use reg_no_subreg_operand on op0 | |
| for less work in reload. | |
| (movsf and movdf patterns): Put fp reg alternatives first. | |
| Mon Apr 26 01:55:56 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * configure.in (openbsd): Factorize xmake_file. | |
| (ix86 openbsd): Trim obsolete comment. | |
| (vax openbsd): Fix typo. | |
| * configure: Rebuilt. | |
| Mon Apr 26 01:30:59 1999 Donn Terry <donn@interix.com> | |
| * expr.c (expand_assignment): Improve test for pointer type. | |
| Mon Apr 26 00:26:18 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (print_operand_address): Account for the subreg word. | |
| Mon Apr 26 01:08:36 1999 Toshiyasu Morita (tm@netcom.com) | |
| * fold-const.c (make_range): Always initialize arg0 and arg1. | |
| (fold): Similarly for alt0 and alt1. | |
| * function.c (fixup_var_refs_insns): Initialize insn_list. | |
| (instantiate_virtual_regs_1): Initialize offset. | |
| * optabs.c (expand_binop): Initialize carry_in, carry_out, op0_xhigh | |
| and op1_xhigh. | |
| * stmt.c (expand_end_case): Initialize minval and maxval. | |
| Mon Apr 26 01:02:34 1999 Nathan Sidwell <nathan@acm.org> | |
| * toplev.c (report_error_function): Reorder file stack and | |
| function name printing. Ignore FILE parameter. | |
| Mon Apr 26 00:58:54 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.h (architecture_type): New enum. | |
| (pa_arch_string, pa_arch): Declare. | |
| (MASK_PA_10, MASK_PA_20): New flags. | |
| (TARGET_SWITCHES): Add pa-risc-2-0. Update docs for PA1.0 codegen. | |
| (TARGET_OPTIONS): Add -march= option. | |
| * pa.c (pa_arch, pa_arch_string): Define. | |
| (override_options): Set them. | |
| * pa/pa-hpux10.h (ASM_FILE_START): Output LEVEL 2.0 asm directive for | |
| 2.0 architecture. | |
| * invoke.texi (Option Summary, HPPA Options): Document new | |
| architecture flags. | |
| * pa/pa-hpux.h, pa/pa-hpux10.h, pa/pa-hpux9.h, pa/pa-osf.h, pa.h, | |
| pa.c, pa.md, configure.in, configure: Replace TARGET_SNAKE by | |
| TARGET_PA_11 and MASK_SNAKE by MASK_PA_11. | |
| Mon Apr 26 00:28:25 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> | |
| * flags.h (inline_max_insns): Declare. | |
| * integrate.c (inline_max_insns): New variable. | |
| (function_cannot_inline_p): Use it. | |
| * toplev.c (main): Add the flag -finline-limit-n. | |
| (display_help): Document -finline-limit-n. | |
| * invoke.texi: Document -finline-limit-n | |
| Sun Apr 25 23:03:32 1999 Richard Henderson <rth@cygnus.com> | |
| * stmt.c (expand_asm_operands): Reload in-out reg-only memory operands. | |
| Sun Apr 25 13:06:13 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (assign_parms/STACK_BYTES): Revert last change, | |
| and that of 19 Nov. | |
| Sun Apr 25 12:30:50 1999 Richard Henderson <rth@cygnus.com> | |
| * calls.c (emit_call_1): New arg rounded_stack_size; update callers. | |
| Update pending_stack_adjust based on this value. | |
| (compute_argument_block_size): Include pending_stack_adjust in | |
| PREFERRED_STACK_BOUNDARY alignment. | |
| * function.c (assign_parms): Don't round to PREFERRED_STACK_BOUNDARY. | |
| Sun Apr 25 14:38:10 EDT 1999 John Wehle (john@feith.com) | |
| * stupid.c (stupid_mark_refs): Generate a REG_UNUSED note | |
| for a register which is clobbered even if the register | |
| was used by an earlier instruction. | |
| * i386.md (fix_truncsfdi2, fix_truncdfdi2, | |
| fix_truncxfdi2): Don't bother with the gen_reg_RTX. | |
| (fix_truncsfsi2, fix_truncsfdi2, fix_truncdfsi2, | |
| fix_truncdfdi2, fix_truncxfsi2, fix_truncxfdi2): Update | |
| operand constraints and modes. | |
| * i386.c (output_fix_trunc): Use HImode register to avoid | |
| memory stalls. Call output_move_double instead of output_to_reg. | |
| (output_to_reg): Remove. | |
| * i386.h: Likewise. | |
| * i386.md (negsf2, negdf2, negxf2): Set the type | |
| attribute to fpop. | |
| Sat Apr 24 23:15:57 1999 Donn Terry (donn@interix.com) | |
| * alpha.md (call_value_nt): Correct subscripts. | |
| Sat Apr 24 20:49:20 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (PRINT_OPERAND_ADDRESS): Break out to ... | |
| * alpha.c (print_operand_address): here. Handle subregs. | |
| Fri Apr 23 22:35:41 EDT 1999 John Wehle (john@feith.com) | |
| * acconfig.h (HAVE_GAS_FILDS_FISTS): Add. | |
| * configure.in: Check assembler instructions. | |
| * configure: Rebuild. | |
| * config.in: Likewise. | |
| * i386.md (floathisf2, floathidf2, floathixf2): New patterns. | |
| * i386.c (print_operand): Use the proper suffix for a 387 HImode | |
| operand. Abort if a 387 operand has an unsupported size. | |
| Fri Apr 23 16:57:40 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_write_verstamp): Mark `file' unused. | |
| * alpha.h (FUNCTION_VALUE): Use gen_rtx_REG not gen_rtx. | |
| (LIBCALL_VALUE): Likewise. | |
| (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Handle normal subregs. | |
| Fri Apr 23 14:57:33 1999 Donn Terry <donn@interix.com> | |
| * alpha32.h (INITIALIZE_TRAMPOLINE): Get offsets right. | |
| * alpha.c (alpha_initialize_trampoline): Add covert_memory_address | |
| calls as needed. | |
| Fri Apr 23 14:36:47 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_expand_prologue): Don't negate frame size | |
| for use with subq. | |
| Fri Apr 23 09:43:18 1999 Nick Clifton <nickc@cygnus.com> | |
| * print-rtl.c (print_rtx): Display LABEL_NUSES for labels. | |
| Thu Apr 22 23:08:37 1999 Mark Mitchell <mark@codesourcery.com> | |
| * toplev.h (wrapup_global_declarations): Declare. | |
| (check_global_declarations): Likewise. | |
| * toplev.c (wrapup_global_declarations): New function, split out | |
| from ... | |
| (check_global_declarations): Likewise... | |
| (compile_file): Here. | |
| Thu Apr 22 22:34:41 1999 Richard Henderson <rth@cygnus.com> | |
| * c-parse.in (expr_no_commas): Verify we've an expr before | |
| calling C_SET_EXP_ORIGINAL_CODE. | |
| Thu Apr 22 22:22:15 EDT 1999 John Wehle (john@feith.com) | |
| * toplev.c (rest_of_compilation): Always set | |
| current_function_uses_only_leaf_regs appropriately. | |
| Thu Apr 22 14:39:43 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/xm-cygwin.h (HAVE_BCOPY): Delete unneeded macro. | |
| (HAVE_BZERO): Likewise. | |
| (HAVE_BCMP): Likewise. | |
| (HAVE_RINDEX): Likewise. | |
| (HAVE_INDEX): Likewise. | |
| (DIR_SEPARATOR_2): Define. | |
| (GET_ENV_PATH_LIST): Turn path lists into POSIX. | |
| (PATH_SEPARATOR): Use ':'. | |
| 1999-04-22 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * configure.in: enable disabling of fast fixincludes | |
| * configure: regenerate | |
| 1999-04-21 14:55 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * gen-protos.c: #undef abort after including system.h. | |
| Delete defns of fancy_abort and fatal. | |
| * fix-header.c: Delete defn of fancy_abort. | |
| Wed Apr 21 12:09:38 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * cccp.c (simplify_filename): Always preserve leading double slash. | |
| Wed Apr 21 18:15:55 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md: Add new peepholes to remove redundant loads. | |
| Wed Apr 21 17:41:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (binary patterns): Reorder alternatives | |
| so that two operand instructions are chosen before three operand | |
| instructions. | |
| Tue Apr 20 23:38:58 1999 Nathan Sidwell <nathan@acm.org> | |
| * objc/Make-lang.in (objc-parse.c): Put BISON parameters in correct | |
| order. | |
| * Makefile.in (c-parse.c): Put BISON parameters in correct | |
| order. | |
| Tue Apr 20 16:38:11 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (nt_lda): New pattern. | |
| * alpha.c (alpha_expand_prologue): Use it for large frames | |
| under windows nt. | |
| Tue Apr 20 17:57:14 1999 Catherine Moore <clm@cygnus.com> | |
| * config/arm/arm.md (movhi): Add check for odd offset. | |
| Tue Apr 20 13:14:58 EDT 1999 John Wehle (john@feith.com) | |
| * i386.c (output_move_double): Abort if a non-offsettable | |
| memory operand is encountered. Delete unused code. | |
| (find_addr_reg): Remove. | |
| Mon Apr 19 21:13:02 1999 Craig Burley <craig@jcb-sc.com> | |
| * tree.def (BLOCK): Fix typo in comment. | |
| 1999-04-19 14:51 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpplib.c (output_line_command): Drop CONDITIONAL argument. | |
| We can omit unnecessary line commands if file_change == | |
| same_file and pfile->lineno != 0. All callers changed. | |
| (cpp_get_token [case '\n']): Don't bump pfile->lineno if | |
| CPP_OPTIONS (pfile)->no_line_commands is set. | |
| * cpplib.h: Fix prototype of output_line_command. | |
| 1999-04-18 17:46 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppfiles.c (find_position, read_and_prescan): Use `unsigned | |
| long' variables consistently to count line and column numbers. | |
| Sun Apr 18 15:50:33 EDT 1999 John Wehle (john@feith.com) | |
| * output.h (current_function_is_leaf, | |
| current_function_uses_only_leaf_regs): Declare. | |
| * function.c (current_function_is_leaf, | |
| current_function_uses_only_leaf_regs): Define. | |
| (init_function_start): Initialize current_function_is_leaf | |
| and current_function_uses_only_leaf_regs. | |
| * final.c (leaf_function): Don't define. | |
| (final_start_function): Replace uses of leaf_function with | |
| current_function_uses_only_leaf_regs. | |
| * toplev.c (rest_of_compilation): Set current_function_is_leaf | |
| prior to invoking local register allocation. | |
| (rest_of_compilation): Replace uses of leaf_function with | |
| current_function_uses_only_leaf_regs. | |
| * dbxout.c (dbxout_symbol, dbxout_parms): Likewise. | |
| * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise. | |
| * dwarfout.c (add_location_or_const_value_attribute): Likewise. | |
| * sdbout.c (sdbout_symbol): Likewise. | |
| * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise. | |
| * sparc.c (eligible_for_epilogue_delay, output_return, | |
| sparc_return_peephole_ok): Likewise. | |
| * sparc.md (leaf_function attribute, untyped_return): Likewise. | |
| * i386.c (ix86_compute_frame_size): Don't align the stack | |
| for leaf functions which don't allocate any stack slots. | |
| * tm.texi: Update documentation. | |
| Sun Apr 18 02:15:09 PDT 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change -- | |
| make sure FP_BASE_P registers are only used with an integer. | |
| Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (REG_OK_FP_BASE_P): New macro. | |
| (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Use it. | |
| * alpha.md (adddi3+1): New insn to handle large constants off | |
| the soft frame pointer. | |
| (adddi3+2): Don't split soft frame pointer or arg pointer additions. | |
| Sun Apr 18 17:24:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (legitimize_operands): Use rtx_cost | |
| to determine if it is worthwhile forcing a constant into a register. | |
| * config/c4x/c4x.h (CONST_COSTS): An integer value of 255 or 65535 | |
| used with a logical and or an integer value of 16 or 24 used with | |
| a right shift has zero cost on the C40. | |
| Sat Apr 17 21:30:11 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | |
| * gcse.c (compute_local_properties): If setp is nonzero, clear | |
| TRANSP instead of setting it to all ones. | |
| Sat Apr 17 21:10:10 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (i386_preferred_stack_boundary_string): New global variable. | |
| (i386_preferred_stack_boundary): New global variable. | |
| (override_functions): Set it. Tidy option setting code. | |
| * i386.h (TARGET_OPTIONS): New command line option. | |
| (i386_preferred_stack_boundary_string): Declare it. | |
| (i386_preferred_stack_boundary): Likewise. | |
| (PREFERRED_STACK_BOUNDARY): Use i386_preferred_stack_boundary. | |
| Sat Apr 17 19:22:38 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (k6_cost): Take into account the decoding time. | |
| Sat Apr 17 19:13:22 1999 Donn Terry <donn@interix.com> | |
| * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _. | |
| * i386.c (print_operand): New %_ operator. | |
| (load_pic_register): Proper number of leading _ in GOT literal. | |
| * i386.md (prologue_get_pc_and_set_got): Likewise. | |
| * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise. | |
| Sat Apr 17 19:13:07 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (alpha_expand_prologue): Use gen_adddi3 instead of | |
| emit_move_insn+plus_constant. For NT, don't use the stack probe | |
| loop pointer to allocate stack space. | |
| * alpha.md (adddi3): Always use lda to set the stack pointer. | |
| 1999-04-17 20:11 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * c-aux-info.c, emit-rtl.c, explow.c, expmed.c, gcse.c, | |
| haifa-sched.c, optabs.c, reorg.c, resource.c, sched.c: Include | |
| toplev.h for real declaration of trim_filename. | |
| * Makefile.in: Update dependencies. | |
| Sat Apr 17 14:36:19 1999 Craig Burley <craig@jcb-sc.com> | |
| * tree.c (chainon): Check for circularity only if | |
| ENABLE_CHECKING is defined. | |
| 1999-04-17 10:15 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cccp.c: Make fatal non-static. | |
| Sat Apr 17 23:47:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber): | |
| New logical and patterns using C40 bit-field insert instructions. | |
| (*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber, | |
| *ashrqi3_16_clobber): New shift patterns using C40 bit-field insert | |
| instructions. | |
| 1999-04-16 22:44 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * system.h: Always prototype abort. Prototype fatal. Define | |
| abort to call fatal, not fprintf/exit. Define a stub macro | |
| for trim_filename. | |
| * toplev.c: Define DIR_SEPARATOR. (trim_filename): New | |
| function. | |
| * toplev.h: Prototype trim_filename, and #undef system.h's stub. | |
| * gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c, | |
| genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c, | |
| genpeep.c, genrecog.c: Make fatal non-static. | |
| * gcov.c, gengenrtl.c, protoize.c: #undef abort after | |
| including system.h. | |
| * config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code | |
| relating to abort. | |
| Sat Apr 17 11:25:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (mulqf3_clrqf_clobber, mulqi3_clrqi_clobber): | |
| New patterns to support parallel multiply and load of zero. | |
| Fri Apr 16 01:23:47 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * tree.c (valid_machine_attribute): If we're modifying the | |
| FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl, | |
| update the POINTER_TYPE. | |
| Fri Apr 16 00:19:31 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (x86_adjust_cost): Move break statement to correct place. | |
| Thu Apr 15 23:17:33 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.h (HAVE_PRE_INCREMENT, HAVE_POST_INCREMENT, | |
| HAVE_PRE_DECREMENT, HAVE_POST_DECREMENT): Fix pa_cpu value from | |
| 8000 to PROCESSOR_8000. | |
| Thu Apr 15 20:46:57 1999 Donn Terry (donn@interix.com) | |
| * expr.c (expand_assignment): Force pointers to proper mode if | |
| POINTERS_EXTEND_UNSIGNED is defined. | |
| * xm-alpha.h (alloca.h): Add Interix to list of special machines | |
| that don't like alloca.h, pending using autoconf results. | |
| * except.c (start_catch_hadler): Be sure rtime_address is Pmode | |
| if POINTERS_EXTEND_UNSIGNED. | |
| * except.c (expand_eh_return): Force pointers to proper mode if | |
| POINTERS_EXTEND_UNSIGNED. | |
| Thu Apr 15 23:13:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h: Tweaked comment formatting. | |
| * config/c4x/c4x.c: Likewise. | |
| Thu Apr 15 02:45:19 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * aclocal.m4 (GCC_FUNC_MKDIR_TAKES_ONE_ARG): Define. | |
| * configure.in: Use. | |
| * configure: Rebuilt. | |
| * acconfig.h (MKDIR_TAKES_ONE_ARG): Add. | |
| * config.in: Rebuilt. | |
| * system.h: Use. | |
| Thu Apr 15 01:03:21 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| Jeff Law <law@cygnus.com> | |
| * i386.md (QImode add pattern): Support lea instruction. | |
| (HImode add pattern): Likewise. | |
| * i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3. | |
| (ashlqi): Use expander, separate LEA and SAL / ADD patterns; call | |
| output_ashl. | |
| (ashlhi): Likewise. | |
| * i386.h (output_ashl): Renamed from output_ashlsi3. | |
| * i386.c (output_ashl): Likewise; support HImode and QImode operands | |
| as well. | |
| * i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call | |
| memory_address_displacement_length instead of memory_address_length. | |
| * i386.c (memory_address_info): Renamed from memory_address_length. | |
| Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH, | |
| then return the displacement length. Else return length of the | |
| entire memory address. Handle MULT case correctly. | |
| * i386.h (memory_address_info): Update declaration. | |
| * i386.md (memory_bit_test): Fix paren error. | |
| Wed Apr 14 21:29:18 1999 Andrew Haley <aph@cygnus.com> | |
| * flow.c: (make_edges): Always make edges from a basic block | |
| to its exception handlers, even if the block ends with a jump. | |
| 1999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * graph.c (node_data): Return void. Ignore result of | |
| print_rtl_single. Change caller to match. | |
| * integrate.c (subst_constants): Initialize op0_mode to an | |
| invalid mode, and abort before use if it's still invalid. | |
| (Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.) | |
| * objc/objc-act.c (get_objc_string_decl, | |
| build_selector_translation_table, generate_protocol_list, | |
| synth_id_with_class_suffix, build_keyword_selector, | |
| build_selector_expr, gen_declarator): Abort when the tree | |
| structure is corrupted. | |
| Wed Apr 14 19:57:49 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (alpha interix): Use symbolic names to set | |
| target_cpu_default. | |
| * configure: Rebuilt. | |
| * explow.c (allocate_dynamic_stack_space): Undo last change. Use | |
| convert_memory_address instead. | |
| Wed Apr 14 19:42:02 1999 Donn Terry (donn@interix.com) | |
| * alpha/lib1funcs.asm: New file. | |
| * alpha/t-interix (lib1funcs.asm): Add to build. | |
| * explow.c (allocate_dynamic_stack_space): Correctly convert TARGET | |
| to Pmode. | |
| Wed Apr 14 14:26:36 1999 John Wehle (john@feith.com) | |
| * i386.md (truncxfdf): Output the template supplied | |
| by output_move_double with the correct operands. | |
| * i386.md (extendsfdf, extendsfxf, extenddfxf): Use | |
| output_float_extend instead specifying '#' as the template. | |
| * i386.c (output_float_extend): Define. | |
| * i386.h (output_float_extend): Declare. | |
| Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com> | |
| * config/mips/elf.h, config/mips/elf64.h | |
| (CTORS_SECTION_ASM_OP): Define. | |
| (DTORS_SECTION_ASM_OP): Define. | |
| (EXTRA_SECTIONS): Define. | |
| (INVOKE__main): Define. | |
| (NAME__MAIN): Define. | |
| (SYMBOL__MAIN): Define. | |
| (EXTRA_SECTIONS_FUNCTIONS): Define. | |
| (SECTION_FUNCTION_TEMPLATE): Define. | |
| (ASM_OUTPUT_CONSTRUCTOR): Define. | |
| (ASM_OUTPUT_DESTRUCTOR): Define. | |
| (CTOR_LIST_BEGIN): Define. | |
| (CTOR_LIST_END): Define. | |
| (DTOR_LIST_BEGIN): Define. | |
| (DTOR_LIST_END): Define. | |
| (LIB_SPEC): Define. | |
| (STARTFILE_SPEC): Define. | |
| (ENDFILE_SPEC): Define. | |
| * config/mips/linux.h: Undefine all of the above. | |
| * config/mips/rtems64.h: Likewise. | |
| * config/mips/t-r3900: Likewise. | |
| * config/mips/t-elf: New file. | |
| * config/mips/vxworks.h: New file. | |
| * configure.in (mips-wrs-vxworks): Use mips/vxworks.h. | |
| (mips*-*-*elf*): Use t-elf instead of t-ecoff. | |
| * configure: Regenerate. | |
| Wed Apr 14 09:59:38 1999 Richard Henderson <rth@cygnus.com> | |
| * reload1.c (emit_reload_insns): Also find equivalent mems | |
| for subregs of pseudos. | |
| * alpha.c (aligned_memory_operand): Recognize the output of | |
| LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in | |
| the event of a pseudo. | |
| (unaligned_memory_operand): Likewise. Don't otherwise accept | |
| completely illegal addresses. | |
| (normal_memory_operand): Likewise. Handle subregs of pseudos. | |
| (get_aligned_mem): Revert previous change. Abort if we don't have a | |
| mem. During reload, call find_replacement on all illegal memories. | |
| (get_unaligned_address): Likewise. | |
| * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand | |
| instead of unaligned_memory_operand. | |
| * alpha.md: Revert extra argument to get_aligned_mem. | |
| (reload_inqi): Use any_memory_operand in constraints. Abort if | |
| we're not given some sort of mem. | |
| (reload_inhi): Likewise. | |
| (reload_outqi, reload_outhi): Likewise. | |
| Wed Apr 14 09:39:20 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (neghi): Use the whole register when widening the op. | |
| 1999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpperror.c, cppexp.c, cpplib.c: Never call abort. | |
| * cpphash.c: Only call abort when we detect corruption of the | |
| malloc arena. | |
| * cppmain.c: Don't define fatal or fancy_abort. | |
| Wed Apr 14 09:19:39 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (x86_adjust_cost): Agi stall takes 1 cycle on Pentium, fst | |
| requires value to be ready one extra cycle. | |
| Wed Apr 14 11:28:34 1999 Dave Brolley <brolley@cygnus.com> | |
| * config/i386/i386.c (memory_address_length): Add missing parenthesis. | |
| Wed Apr 14 13:59:27 1999 Martin von Löwis <loewis@informatik.hu-berlin.de> | |
| * extend.texi (Deprecated Features): New node. | |
| * invoke.texi (-Wdeprecated): Document. | |
| Wed Apr 14 00:18:22 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (SImode logical compare): Avoid outputting non-pariable testw | |
| and testl on Pentium. | |
| (register and memory bit tests): Likewise. | |
| (setcc, normal and reversed conditional branches): Use shorter | |
| sequence for testing flags stored in EAX. | |
| * i386.md (xorsi3): Do not output NOT instrctions on Pentium. | |
| (xorqi3): Likewise. | |
| (xorhi3): Likewise. | |
| (notsi2): Likewise. | |
| (notqi2): Likewise. | |
| (nothi2): Likewise; do not output prefixed opcodes when possible. | |
| * i386.md (neghi2): Do not output prefixed opcode when possible. | |
| (ashlhi3): Likewise. | |
| Wed Apr 14 00:08:46 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (memory_address_length): New function. | |
| * i386.h (memory_address_length): Declare it. | |
| Tue Apr 13 22:52:04 1999 Donn Terry (donn@interix.com) | |
| Martin Heller (Ing.-Buero_Heller@t-online.de) | |
| * configure.in (interix Alpha): Add. | |
| (winnt Alpha): Use alpha32.h | |
| (interix i386): Parallel Alpha32. | |
| * configure: Rebuilt. | |
| * config/interix.h: Move common elements from i386-interix.h. | |
| * config/i386/i386-interix.h: Delete same. | |
| * config/alpha/alpha-interix.h: New file. | |
| * config/alpha/alpha32.h: New file, part fron win-nt.h. | |
| * config/alpha/win-nt.h: Deletions (-> alpha32.h). | |
| * config/alpha/interix.h: New file | |
| * config/alpha/alpha.md (interix): Comment. | |
| * config/alpha/xm-alpha-interix.h: New file. | |
| * config/alpha/t-interix: New file. | |
| * fixinc/mkfixinc.sh (interix/Alpha): Add. | |
| 1999-04-13 Mike Stump <mrs@wrs.com> | |
| * i386/vxi386.h (CPP_CPU_SPEC): Define appropriately for vxworks. | |
| (CPP_PREDEFINES, LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): likewise. | |
| Tue Apr 13 21:01:36 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * c-common.c (default_valid_lang_attribute): New fn. | |
| (valid_lang_attribute): New callback ptr. | |
| (decl_attributes): Call it. Move init_priority support into | |
| C++ frontend. | |
| Tue Apr 13 17:47:14 1999 John Wehle (john@feith.com) | |
| * i386.md (movdi): Add splitter. | |
| Wed Apr 14 10:04:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (storeqf_int, storeqf_int_clobber, loadqf_int, | |
| loadqf_int_clobber): Add new patterns with corresponding splitters | |
| to handle moves of floating point values into and out of intager | |
| registers by using memory. | |
| * config/c4x/c4x.c (c4x_check_legit_addr): Disallow PRE_INC for modes | |
| other than QFmode and QImode. | |
| (mixed_subreg_operand): New function. | |
| (c4x_emit_move_sequence): If moving a floating point value into or | |
| out of an integer register, use the new patterns storeqf_int_clobber | |
| or loadqf_int_clobber. | |
| (reg_imm_operand, *_reg_operand): Call reg_operand instead of | |
| register_operand. | |
| (reg_operand, src_operand): Disallow operand if it satisifes | |
| mixed_subreg_operand. | |
| * config/c4x/c4x.h (mixed_subreg_operand): Add prototype. | |
| Tue Apr 13 14:49:13 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.c (agi_dependent): Handle push operation more correctly. | |
| Tue Apr 13 14:45:17 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (anddi3): Add % constraint. | |
| (iordi3, xordi3): Likewise. | |
| Tue Apr 13 14:29:58 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (extendhisi2): Output mov instead of cw instruction for K6 | |
| to improve decoding bandwidth. | |
| * i386.md (extendhiqi2): Likewise. | |
| Tue Apr 13 14:26:31 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md (movsf_push): Handle memory to memory case too, new splitter. | |
| (movdf_push, movxf_push): Likewise. | |
| (movsf_push_memory, movdf_push_memory, movxf_push_memory): Remove. | |
| Tue Apr 13 14:14:06 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * i386.md: Do not output mov %0,reg on AMD K6. | |
| Tue Apr 13 12:14:07 1999 Dave Brolley <brolley@cygnus.com> | |
| * cppinit.c (cpp_start_read): Fix buffer overwrite. | |
| * Makefile.in (cppinit.o): Typo in dependencies. | |
| Tue Apr 13 05:04:59 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.h (function prototypes for arm.c): Ifdef these out if | |
| HAVE_CONFIG_H is not defined. | |
| Tue Apr 13 02:11:11 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c: Avoid Using immediate zero for register zero. | |
| * pa.md: Likewise. | |
| * pa.c (print_operand, case 'f'): New case for FP register or 0.0. | |
| (print_operand, case 'r'): Use %r0 for zero value. | |
| * pa.md (move patterns, fcmp patterns): Use new %f output arg. | |
| * pa.c: Use a register name, not a raw immediate in branch, | |
| compare/clear, sub, subb, uaddcm and vshd instructions. | |
| * pa.md: Likewise. | |
| * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise. | |
| * pa.c: Use a register name, not a raw immediate in "bv" instructions. | |
| * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise. | |
| * pa.c: Remove space register specification in memory addresses, | |
| except where it is actually needed. | |
| * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise. | |
| Mon Apr 12 23:34:35 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Mon Apr 12 14:58:30 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * reg-stack.c (check_stack_regs_mentioned): Remove variable SIZE. | |
| Mon Apr 12 19:15:17 1999 Daniel Jacobowitz <dan@debian.org> | |
| * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Add missing backslash. | |
| Mon Apr 12 19:11:38 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/cygwin.h (SUBTARGET_SWITCHES): Add -mconsole; fix | |
| -mno-nop-fun-dllimport and minor doc fixes. | |
| (STARTFILE_SPEC): Cygwin DLLs don't have dllcrt0. | |
| (LINK_SPEC): Add -mconsole support. | |
| * i386/mingw32.h (LIB_SPEC): Make libraries consistent with | |
| Cygwin. | |
| (LINK_SPEC): Remove. Use Cygwin's version. | |
| (MATH_LIBRARY): Make it null. | |
| * i386/crtdll.h (MATH_LIBRARY): Likewise. | |
| Fri Apr 12 15:00:52 1999 Stan Cox <scox@cygnus.com> | |
| * c-decl.c (c_decode_option, start_decl, start_function, | |
| finish_function) : Recognize -Wno-main so we can avoid warnings. | |
| 1999-04-12 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpphash.c (collect_expansion, macroexpand, | |
| push_macro_expansion): Make the escape character in macro | |
| buffers '\r', not '@'. Remove code to protect literal | |
| occurrences of the escape character; '\r' cannot appear | |
| in a macro buffer unless we put it there. | |
| * cpplib.c (skip_comment, copy_comment, cpp_skip_hspace, | |
| copy_rest_of_line, cpp_get_token, parse_string, | |
| parse_assertion): '\r' might be a backslash-newline marker, or | |
| it might be a macro escape marker, depending on | |
| CPP_BUFFER (pfile)->has_escapes. '@' is not a special | |
| character. | |
| * cpplib.h: Update commentary. | |
| Mon Apr 12 09:30:03 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.h (target_fp_name, structure_size_string, arm_cpu_select): | |
| Const-ify. | |
| * arm.c (target_fp_name, structure_size_string): Const-ify. | |
| * arm.md (reload_inhi, reload_outhi): Make the scratch DImode. | |
| * arm.c (arm_reload_in_hi): Handle cases when the input is still | |
| a pseudo, make use of scratch registers for reloading the address | |
| as appropriate. | |
| (arm_reload_outhi): Similarly for when the output is still a pseudo. | |
| * riscix.h (SUBTARGET_SWITCHES): Document. | |
| 1999-04-12 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixincludes: | |
| make fixincludes behave like the scripts in fixinc/ | |
| * Makefile.in( stmp-fixinc ): | |
| ensure the SHELL value is that of the make | |
| * fixincl/inclhack.tpl: | |
| the file name lists ought to be restricted to "*.h" anyway | |
| C++ files may be named .../[a-z]++/... also | |
| Adding copyright year and attribution to output | |
| * fixincl/inclhack.def: | |
| fixed broken expression | |
| Clarify a some comments | |
| * fixincl/fixincl.tpl: | |
| Clarify a some comments | |
| Remove dead template text | |
| Correct the counting of regular expressions | |
| Mon Apr 12 03:07:44 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (aligned_memory_operand): Handle out of range stack slots. | |
| Take a new SCRATCH argument for the occasion. Update all callers. | |
| (get_unaligned_address): Abort on out of range stack slots. | |
| * alpha.md (adddi3 splitter): Check s_p_rtx not REGNO. | |
| (reload_inqi): Check for aligned mems before unaligned. | |
| (reload_inhi): Likewise. | |
| Mon Apr 12 03:11:30 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove | |
| it from the nonlocal_goto_handler_labels list. | |
| * jump.c (delete_insn): Likewise. | |
| (jump_optimize_1): Also recompute LABEL_NUSES when we are just | |
| marking labels. | |
| * rtl.h (remove_node_from_expr_list): Declare. | |
| * rtlanal.c (remove_node_from_expr_list): New function. | |
| Mon Apr 12 02:37:02 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * reg-stack.c: Update comment, include varray.h. | |
| (stack_regs_mentioned_data): New global variable. | |
| (check_stack_regs_mentioned): New function. | |
| (stack_regs_mentioned): New function. | |
| (reg_to_stack): Initialize and free stack_regs_mentioned_data, | |
| use stack_regs_mentioned. | |
| (record_asm_reg_life): Change insn type cache for changed insn. | |
| (record_reg_life): Do not change the insn mode. | |
| (emit_pop_insn): Likewise. | |
| (emit_swap_insn): Likewise. | |
| (move_for_stack_reg): Likewise. | |
| (stack_reg_life_analysis): Use stack_regs_mentioned. | |
| (emit_swap_insn): Likewise. | |
| (subst_stack_regs): Likewise. | |
| (convert_regs): Likewise. | |
| * jump.c (find_cross_jump): Use stack_regs_mentioned. | |
| * rtl.h (stack_regs_mentioned): Declare. | |
| Mon Apr 12 00:57:10 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> | |
| * integrate.c (INTEGRATE_THRESHOLD): Sync it with the comment. | |
| Sun Apr 11 10:24:18 1999 Mark Mitchell <mark@codesourcery.com> | |
| * rtl.h (rtx_def): Update documentation for jump and call. | |
| Sun Apr 11 07:43:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * jump.c (jump_optimize_1): Make the definition static to match | |
| the prototype. | |
| Sat Apr 10 22:51:53 1999 Jan Hubicka <hubicka@limax.paru.cas.cz> | |
| * flow.c (life_analysis): New parameter remove_dead_code. | |
| (life_analysis_1): Likewise. | |
| (propagate_block): Likewise; use it. | |
| * output.h: Update prototype. | |
| * toplev.c: Update calls to life_analysis. | |
| Sat Apr 10 22:12:12 1999 Jan Hubicka <hubicka@freesoft.cz> | |
| * recog.c (constrain_operands): Ignore unary operators when | |
| matching operands. Recognize '5'..'9' as well. | |
| Sat Apr 10 21:53:02 1999 Philipp Thomas (kthomas@gwdg.de) | |
| Richard Henderson <rth@cygnus.com> | |
| * configure.in: Set target_cpu_default2 for target_alias k6. | |
| * i386.h (TARGET_SWITCHES): Remove no-<cpu> entries. | |
| (CC1_CPU_SPEC): Likewise. | |
| (CPP_CPU_DEFAULT_SPEC): Streamline definition. Add K6 version. | |
| (CPP_K6_SPEC): New. | |
| (CPP_CPU_SPEC): Add K6 variant. | |
| (EXTRA_SPECS): Likewise. | |
| Fri Apr 9 11:29:17 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (merge_blocks_nomove): Rewrite to properly handle two | |
| blocks that vanish entirely during merging. | |
| Sat Apr 10 20:09:55 1999 John Wehle (john@feith.com) | |
| * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2, | |
| floatsixf2, floatdixf2, movsicc, movhicc, movsfcc, movdfcc, | |
| movxfcc, movdicc): Remove unused register constraints from | |
| the splitters. | |
| * i386.md (fixuns_truncsfsi2, fixuns_truncdfsi2, | |
| fixuns_truncxfsi2): Delete. | |
| * reg-stack.c (delete_insn_for_stacker): Ensure that | |
| the only side effects of a PARALLEL are clobbers. | |
| (subst_stack_regs): Handle subst_stack_regs_pat deleting | |
| a PARALLEL. | |
| * i386.md (extendsfdf2, extenddfxf2, | |
| extendsfxf2): Rewrite using a splitter. | |
| * i386.c (output_op_from_reg): Remove. | |
| * i386.h: Likewise. | |
| Sat Apr 10 13:09:18 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (di_operand): Allow SUBREGs as well. | |
| (soft_df_operand): Allow SUBREGs as well. | |
| Sat Apr 10 06:14:31 1999 Jan Hubicka <hubicka@paru.cas.cz> | |
| * extend.texi (Assembler Instructions with C Expression Operands): | |
| Document the i386 floating point operands. | |
| 1999-04-10 Mike Stump <mrs@wrs.com> | |
| * configure.in (*-*-vxworks): Add vxWorks thread support for all | |
| vxWorks targets. | |
| * configure.in (thumb-wrs-xvworks): Add vxWorks support for thumb. | |
| * configure: Rebuilt. | |
| Sat Apr 10 06:04:50 1999 Donn Terry (donn@interix.com) | |
| * i386/t-interix: Use mostly system headers unchanged. | |
| Use system assert.h | |
| * fixinc/fixinc.interix: Ditto (make almost no-op). | |
| * config/x-interix.h (_ALL_SOURCE): add -D | |
| * config/x-interix.h (crti.o): Delete dependency. | |
| * config/xm-interix.h (ONLY_INT_FIELDS): Define only when bootstrapping. | |
| * i386/xm-i386-interix.h: New file. | |
| * i386/interix.h (ASM_OUTPUT_LIMITED_STRING): Fix warnings. | |
| * i386/i386-interix.h: Renamed from interix.h. | |
| * configure.in (interix): Use new files. | |
| * configure: Rebuilt. | |
| Sat Apr 10 05:25:28 1999 Daniel Jacobowitz <dan@debian.org> | |
| * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Fix conditions | |
| for -Dunix and -Dlinux, and remove duplicate definition. | |
| Change -Asystem(linux) to -Asystem(posix). | |
| (CPP_OS_SOLARIS_SPEC): Fix conditions for -Dunix, -Dsun, | |
| -DSVR4, -D__EXTENSIONS__. | |
| * rs6000/linux.h (CPP_PREDEFINES): Remove -Dunix, | |
| -Dlinux, -Asystem(linux), and -Asystem(unix). | |
| Sat Apr 10 05:14:50 1999 Mark Elbrecht <snowball3@usa.net> | |
| * i386/djgpp.h (SET_ASM_OP): Define. | |
| * cccp.c (DIR_SEPARATOR): Move to the top of the file. | |
| (is_dir_separator): New function. | |
| (simplify_filename): Use it. | |
| * collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place | |
| of the DIR_SEPARATOR test. | |
| Consider any file starting with a drivename to be absolute. | |
| If the absolute filename test fails and EXECUTABLE_SUFFIX is | |
| defined, append EXECUTABLE_SUFFIX to the file and try again. | |
| * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM | |
| in place of __MSDOS__ and _WIN32. | |
| * cppfiles.c (simplify_pathname): Likewise. | |
| * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a | |
| character is a directory separator. | |
| (find_a_file): Use it. | |
| (convert_filename): Likewise. | |
| (process_command): Likewise. | |
| (do_spec_1): Likewise. | |
| (is_directory): Likewise. | |
| (main): Likewise. | |
| * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is | |
| a directory separator. | |
| (translate_name): Use it. | |
| (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix | |
| warning in block where '/' is changed to DIR_SEPARATOR. | |
| * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'. | |
| (DIR_SEPARATOR_2): New macro. Set to '\'. | |
| (HAVE_DOS_BASED_FILESYS): Define. | |
| * i386/xm-mingw32.h: Updated copyright. Set | |
| DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM. | |
| * i386/xm-os2.h: Likewise. | |
| * winnt/xm-winnt.h: Likewise. | |
| * i386/xm-dos.h: Likewise. Add copyright. | |
| 1999-04-10 Joseph S. Myers <jsm28@cam.ac.uk> | |
| * pdp11.h (TARGET_SWITCHES): Add option to vary assembler syntax. | |
| (TARGET_DEFAULT): Possibly use UNIX syntax. | |
| (TARGET_UNIX_ASM, TARGET_UNIX_ASM_DEFAULT): New macros. | |
| (REGISTER_NAMES): Use "r5" instead of "fp". | |
| (ASM_OUTPUT_ALIGN): Use ".even" directive, and abort for any | |
| greater alignment. | |
| * 2bsd.h (TARGET_UNIX_ASM_DEFAULT): Default to UNIX assembler | |
| syntax for 2BSD. | |
| * pdp11.c (output_ascii): Use working syntax for ".byte". | |
| (print_operand_address): Use "*" instead of "@" when using UNIX | |
| assembler syntax. | |
| Sat Apr 10 03:50:12 1999 Jeffrey A Law (law@cygnus.com) | |
| * rtl.h (rebuild_jump_labels): Declare. | |
| * jump.c (jump_optimize_1): Renamed from jump_optimize. Make static. | |
| Add new argument MARK_LABELS_ONLY. Quit after mark_all_labels if | |
| requested. | |
| (jump_optimize, rebuild_jump_labels): New wrapper functions for | |
| jump_optimize_1. | |
| * toplev.c (rest_of_compilation): Use rebuild_jump_labels instead of | |
| running the entire jump optimizer. | |
| * rtl.h (local_alloc): Returns an integer now. | |
| * local-alloc.c (recorded_label_ref): New file scoped variable. | |
| (local_alloc): Initialize recorded_label_ref to zero. Return its | |
| value when local allocation has completed. | |
| (update_equiv_regs); If we create an equivalence for a LABEL_REF, | |
| set recorded_label_ref. | |
| * toplev.c (rest_of_compilation): Run the jump optimizer after | |
| register allocation and reloading if needed. | |
| Fri Apr 9 21:02:57 1999 Krister Walfridsson (cato@df.lth.se) | |
| * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Fix typo. | |
| * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise. | |
| 1999-04-09 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpphash.c (special_symbol): When expanding __LINE__, use the | |
| top file buffer, not the top buffer. | |
| Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com> | |
| * Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add | |
| cd .. to TCL_LIBRARY command. | |
| Fri Apr 9 13:04:52 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/unknown-elf.h (SUBTARGET_CPU_DEFAULT): Only define if | |
| not already specified. | |
| Fri Apr 9 11:18:55 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * c-common.c (decl_attributes, A_INIT_PRIORITY): Allow arrays | |
| of classes, too. | |
| Fri Apr 9 10:40:10 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu> | |
| * rs6000.c (rs6000_override_options, ptt, rs6000_file_start, | |
| rs6000_float_const, rs6000_replace_regno, debug_stack_info, | |
| rs6000_output_load_toc_table, output_prolog, output_epilog): | |
| Const-ify a char*. | |
| (output_mi_thunk): Likewise. Mark parameter `thunk_fndecl' with | |
| ATTRIBUTE_UNUSED. Hide unused variables `r0', `sp', `toc', | |
| `schain', `r12', `buf' and `labelno'. | |
| (output_ascii): Const-ify a char*. | |
| (rs6000_gen_section_name): Initialize variable `last_period'. | |
| (rs6000_adjust_priority): Mark parameter `insn' with | |
| ATTRIBUTE_UNUSED. | |
| (rs6000_trampoline_template, rs6000_dll_import_ref, | |
| rs6000_longcall_ref, rs6000_encode_section_info): Const-ify a char*. | |
| * rs6000.h (offsettable_mem_operand, optimization_options): Add | |
| prototypes. | |
| * rs6000.md (movdi, define_split): Cast a value to HOST_WIDE_INT | |
| when comparing against one. | |
| Thu Apr 8 19:20:18 1999 Jeffrey A Law (law@cygnus.com) | |
| * expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF): | |
| Do not try to optimize an aggregate address which has VOIDmode. | |
| Mirrors March 23 change to expand_assignment. | |
| * flow.c (delete_unreachable_blocks): Do not require EDGE_FALLTHRU | |
| for an edge when tidying an edge which connects consecutive basic | |
| blocks. | |
| * flow.c (can_delete_label_p): Do not convert a label into a | |
| deleted label here. | |
| * cse.c (flush_hash_table): New function. | |
| (cse_insn): Flush the hash table when we encounter a volatile asm. | |
| (cse_basic_block): Use flush_hash_table instead of doing it | |
| inline. | |
| * reload1.c (reload_cse_regs_1): Flush known register values if | |
| we encounter a volatile asm. | |
| * loop.c (strength_reduce): Re-enable Joern's loop improvements. | |
| Thu Apr 8 09:37:40 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (arm_print_operand): Undo previous change - | |
| always print large constants in decimal. | |
| Thu Apr 8 10:22:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * configure.in (host_xm_file, build_xm_file): Include hwint.h. | |
| Use case statements instead of "if test -a ... -a ... -a ..." | |
| * machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of | |
| HOST_WIDE_INT in #ifdef. | |
| * mips.h: Include hwint.h instead of providing definitions for | |
| HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef. | |
| Thu Apr 8 06:16:14 1999 John Wehle (john@feith.com) | |
| * i386.md (truncdfsf2, truncxfsf2, | |
| truncxfdf2): Rewrite using a splitter. | |
| Thu Apr 8 01:26:05 1999 Arg Haas (ahaas@neosoft.com) | |
| Jeffrey A Law (law@cygnus.com) | |
| * freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Avoid ambiguous | |
| else statement. | |
| * gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise. | |
| * linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise. | |
| * openbsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise. | |
| Wed Apr 7 22:40:19 1999 Jim Wilson <wilson@cygnus.com> | |
| * i960/i960.c (i960_function_prologue): Don't save static chain | |
| pointer. | |
| * i960/i960.h (STACK_CHAIN_REGNUM): Change from r3 to g12. | |
| (TRAMPOLINE_TEMPLATE): Likewise. | |
| (FRAME_POINTER_REQUIRED): Check current_function_has_nonlocal_goto. | |
| * i960/i960.md (nonlocal_goto): Rewrite. | |
| Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/lib1funcs.asm: Test for __ELF__ not __elf__. | |
| Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com) | |
| * h8300.c (h8300_adjust_insn_length): Also avoid recognizing | |
| ADDR_VEC and ADDR_DIFF_VEC insns. | |
| * h8300.c (h8300_adjust_insn_length): Avoid trying to recognize | |
| USE, CLOBBER or SEQUENCE insns. | |
| * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid | |
| to account for the uncopied insn that sets cc0 at the end of the loop. | |
| * unroll.c (copy_loop_body): Always ensure at least two insns | |
| are in the copied loop. | |
| Wed Apr 7 14:52:18 1999 Catherine Moore <clm@cygnus.com> | |
| * config/mips/elf.h (MAKE_DECL_ONE_ONLY): Define. | |
| (UNIQUE_SECTION_P): Define. | |
| 1999-04-07 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/inclhack.tpl & fixincl.tpl: | |
| Remove dynamic content from generated files | |
| Wed Apr 7 13:16:22 1999 John Wehle (john@feith.com) | |
| * i386.c (output_move_memory): Remove. | |
| * i386.h: Likewise. | |
| * i386.md (movsi, movhi, movstricthi, movqi, movstrictqi, | |
| movsf, movdf, movxf, movdi): Check no_new_pseudos instead | |
| of (reload_in_progress | reload_completed). | |
| Wed Apr 7 03:16:45 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.c (reg_no_subreg_operand): New function. | |
| * alpha.h (PREDICATE_CODES): Add it. | |
| * alpha.md (floatdi?f patterns): Use it for op1. | |
| * alpha.c (alpha_end_function): Don't flag weak functions. | |
| Wed Apr 7 02:11:55 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use | |
| copy_to_mode_reg; don't force constants into a register. | |
| Tue Apr 6 22:55:25 1999 Richard Henderson <rth@cygnus.com> | |
| * toplev.c (compile_file): Typo flow_dump -> flow2_dump. | |
| 1999-04-06 Joseph S. Myers <jsm28@cam.ac.uk> | |
| * pdp11.c (simple_memory_operand): Add default case in switch. | |
| * pdp11.h (TARGET_SWITCHES): Add help strings. | |
| (NOTICE_UPDATE_CC): Don't include excess argument to format. | |
| (ASM_OUTPUT_DOUBLE_INT): Remove. | |
| Tue Apr 6 22:09:40 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.c (expand_builtin_setjmp): Put setjmp return label on | |
| nonlocal_goto_handler_labels for flow. | |
| Tue Apr 6 22:05:21 1999 Jan Hubicka <hubicka@paru.cas.cz> | |
| Richard Henderson <rth@cygnus.com> | |
| * flow.c (verify_flow_info): New function. | |
| (find_basic_blocks): Call it if ENABLE_CHECKING. | |
| (merge_blocks): Don't merge if there are non-deletable labels. | |
| * toplev.c (fatal_insn): Allow a printf-style arg list. | |
| * toplev.h (fatal_insn): Update prototype. | |
| Tue Apr 6 16:18:58 1999 Jan Hubicka <hubicka@paru.cas.cz> | |
| * flow.c (split_edge) update correctly flow graph, disable | |
| EDGE_CRITICAL flag on the split edge, update NUSES for new label. | |
| Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT. | |
| Clear third and following slots, if they exist. | |
| Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (create_basic_block): Make sure the bb note is in the block. | |
| (can_delete_note_p): Rename from delete_note_p. | |
| (delete_insn_chain): Preserve undeleteable labels too. | |
| (tidy_fallthru_edge): Use next_real_insn instead of confusing | |
| inline code. | |
| 1999-04-06 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppexp.c (parse_charconst): Initialize c. | |
| (cpp_parse_expr): Initialize rprio. | |
| * cppfiles.c (merge_include_chains): Initialize prev. | |
| (finclude): Set fp->line_base to fp->buf before returning. | |
| * cpphash.c (macroexpand): Initialize token. | |
| * cppspec.c (lang_specific_driver): Change suff to | |
| const char *const *. | |
| 1999-04-06 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppinit.c (install_predefs): Delete function. | |
| (cpp_start_read): Don't call install_predefs. | |
| (cpp_handle_option): Remove case 'u' and all refs to | |
| opts->inhibit_predefs. | |
| (print_help): Don't mention -undef. | |
| (initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to | |
| match cccp. | |
| * cpplib.h (struct cpp_options): Remove inhibit_predefs | |
| member. | |
| * cccp.c (predefs): Delete variable. | |
| (main): Remove case 'u' in argument parse loop, | |
| 'inhibit_predefs' variable, and the code block that would | |
| process CPP_PREDEFINES. | |
| (initialize_builtins): Don't define __OBJC__, the driver will | |
| do that. | |
| * gcc.c (default_compilers): Remove -undef from all specs that | |
| invoke a C preprocessor. | |
| * ch/lang-specs.h: Likewise. | |
| * cp/lang-specs.h: Likewise. | |
| * f/lang-specs.h: Likewise. | |
| * objc/lang-specs.h: Likewise. | |
| Mon Apr 5 11:55:31 1999 Donn Terry (donn@interix.com) | |
| * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix misapplied patch. | |
| Mon Apr 5 11:51:38 1999 Jeffrey A Law (law@cygnus.com) | |
| * m68k.md (movdf): Hide GPR sources & destinations from regclass. | |
| Mon Apr 5 09:54:42 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Mon Apr 5 05:55:15 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixincl.tpl: Separate "-e" from its argument, a la | |
| the Sat Apr 3 17:05:13 1999 fix. | |
| * genfixes: Ensure that the server shell is _NOT_ csh. | |
| Mon Apr 5 03:52:30 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Mon Apr 5 04:47:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.c (x86_double_with_add): Turn off for Pentium and PPro. | |
| (small_shift_operand, output_ashlsi3): New functions. | |
| * i386.h (small_shift_operand, output_ashlsi3): Declare. | |
| * i386.md (ashlsi3): Simplify ahlsi3 patterns. Remove splitters | |
| that are no longer needed. | |
| Sun Apr 4 04:05:04 1999 Jeffrey A Law (law@cygnus.com) | |
| * stmt.c (expand_loop_end): When copying the loop exit test, | |
| do not walk into a nested loop. | |
| Sun Apr 4 00:14:54 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/hackshell.tpl: Skip links to directories, to avoid | |
| removing them. | |
| * fixinc/inclhack.tpl: Likewise. | |
| * fixinc/fixinc.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt. | |
| Sat Apr 3 23:46:13 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (addsi3, iorsi3, xorsi3, adddi3, iordi3, xordi3, | |
| movsi_got, movsi, movsf): Use no_new_pseudos. | |
| * rs6000.c (rs6000_got_register): Likewise. | |
| (offsettable_mem_opereand): Use || not |. | |
| Sat Apr 3 22:02:56 1999 Jeffrey A Law (law@cygnus.com) | |
| * acconfig.h (ENABLE_CHECKING): Remove redundant #undef. | |
| * config.in: Rebuilt. | |
| Sat Apr 3 16:22:59 1999 Toshiyasu Morita (tm@netcom.com) | |
| * gcc.texi: Add info on regmove pass. | |
| * regmove.c (fixup_match_1): Consistently evaluate | |
| HAVE_POST_INCREMENT and HAVE_POST_DECREMENT. | |
| Sat Apr 3 19:21:05 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * configure.in (DEFAULT_LINKER, DEFAULT_ASSEMBLER): Use grep | |
| instead of test and sed to check whether they're GNU programs. | |
| * configure: Rebuilt. | |
| Sat Apr 3 17:57:35 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * Makefile.in (install-headers-tar, install-headers-cpio): Avoid | |
| problems with CDPATH. | |
| Reported by Ralf Canis <canis@bigfoot.com> | |
| Sat Apr 3 13:50:16 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc.x86-linux-gnu: Deleted. | |
| Sat Apr 3 17:05:13 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * inclhack.tpl: Insert spaces between `sed -e' and '...'. | |
| Reported by Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Regen. | |
| Sat Apr 3 14:54:46 1999 Craig Burley <craig@jcb-sc.com> | |
| * tree.def (BLOCK): Fix typo in comment. | |
| Sat Apr 3 00:53:29 1999 John Wehle (john@feith.com) | |
| * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2, | |
| floatsixf2, floatdixf2): Rewrite using a splitter. | |
| Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (arm_print_operand): Print large constants in | |
| hex rather than decimal. | |
| Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com> | |
| * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC | |
| and HOST_WIDE_INT_PRINT_HEX to display constants. | |
| 1999-04-02 Zack Weinberg <zack@rabi.columbia.edu> | |
| * config/i386/i386.h: Document all TARGET_SWITCHES or add | |
| explicit null initializer. | |
| * config/i386/cygwin.h: Document all SUBTARGET_SWITCHES. | |
| * config/i386/dgux.h: Likewise. | |
| * config/i386/osf1elf.h: Likewise. | |
| * config/i386/win32.h: Likewise. | |
| * config/i386/osfrose.h: Likewise. Drop obsolete -mno-ident option. | |
| Fri Apr 2 17:49:44 1999 Toshiyasu Morita <tm@netcom.com> | |
| * regmove.c (fixup_match_1): Remove now useless if (0). | |
| Sat Apr 3 11:37:20 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT, | |
| USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document. | |
| (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, | |
| USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation. | |
| * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT, | |
| USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT, | |
| USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, | |
| USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default | |
| definition. | |
| * expr.c (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, | |
| USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default | |
| definition. | |
| Fri Apr 2 16:03:05 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted. | |
| * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise. | |
| Fri Apr 2 15:46:25 1999 Donn Terry (donn@interix.com) | |
| * configure.in: Set and substitute quoted_cc_set_by_configure. | |
| * configure: Rebuilt. | |
| * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``. | |
| Fri Apr 2 14:35:45 1999 Stan Cox <scox@cygnus.com> | |
| * config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead | |
| of a hardcoded path for -mno-cygwin. | |
| (mingw_include_path): New. | |
| 1999-04-02 Joseph S. Myers <jsm28@cam.ac.uk> | |
| * pdp11.c: Include "recog.h". | |
| (output_function_prologue): Remove unused variables `nregs', `i', | |
| `offset'. | |
| (output_function_epilogue): Remove unused variables | |
| `may_call_alloca', `nregs', `regno', `adjust_fp'. | |
| (output_ascii): Mark as returning void. | |
| (print_operand_address: Likewise. | |
| (simple_memory_operand): Remove unused variables `plus0', `plus1', | |
| `offset'. | |
| * pdp11.h: Declare functions `arith_operand', | |
| `const_immediate_operand', `expand_shift_operand', | |
| `legitimate_address_p', `notice_update_cc_on_set', `output_ascii', | |
| `output_function_epilogue', `output_function_prologue', | |
| `print_operand_address', `register_move_cost', | |
| `simple_memory_operand'. | |
| (HARD_REGNO_MODE_OK): Parenthesize `REGNO' arg. | |
| (REGNO_REG_CLASS): Likewise. | |
| * pdp11.md: Add explicit `int' to `static count' (in two places). | |
| (addhi3): Add explicit braces to avoid ambiguous else. | |
| (addqi3): Likewise. | |
| (ashlhi3): Likewise. | |
| Fri Apr 2 14:17:10 1999 Jerry James <jerry@cs.ucsb.edu> | |
| * gcc/invoke.texi: Add documentation for additional supported | |
| MIPS CPU types, options -mips16 and -mentry, and ABI and ISA | |
| defaults. | |
| Fri Apr 2 14:12:06 1999 John Wehle (john@feith.com) | |
| * i386.md: Delete floating point compare, add, subtract, | |
| multiply, and divide patterns which allowed integer | |
| operands. | |
| * i386.c (output_387_binary_op): Delete unused code. | |
| (output_float_compare): Likewise. | |
| Fri Apr 2 11:53:37 1999 John Wehle (john@feith.com) | |
| * i386.md (movsf+1, movdf+1, movxf+1): Update constraints | |
| so that SECONDARY_MEMORY_RELOAD is used. Remove dead code. | |
| 1999-04-02 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/mkfixinc.sh: Added support for x86-interix. | |
| * fixinc/fixinc.interix: Fixincludes script, slight changes | |
| from ./fixinc.interix. Untested (needs interix box). | |
| * fixinc/inclhack.def: | |
| Complete the change to the 'fixinc.tmp' file. | |
| Fixed regex for finding C++ headers. | |
| * fixincl.x, fixincl.sh, inclhack.sh: Regenerate. | |
| Fri Apr 2 11:36:12 1999 Jan Hubicka (hubicka@paru.cas.cz) | |
| * i386.c (print_operand_address, case REG): Do not use ESI addressing | |
| mode for the K6. | |
| * i386.c (print_operand_address, case MULT): Use more efficient | |
| encoding (mult (reg) (const_int 2)). | |
| Thu Apr 1 17:01:50 1999 Richard Henderson <rth@cygnus.com> | |
| Move over patch from Bernd Schmidt from GC branch: | |
| * emit-rtl.c (gen_rtx_CONST_DOUBLE): New function. | |
| (gen_rtx): Call it. Tidy cases. | |
| * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it. | |
| * gengenrtl.c: Add commentary. | |
| (special_rtx): Also match CONST_DOUBLE. | |
| (gencode): Emit call to memset instead of bzero. | |
| Fri Apr 2 12:58:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1 | |
| into a register if shift count not constant. | |
| (ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1 | |
| is a register. | |
| Fri Apr 2 12:19:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED | |
| is nonzero. | |
| (movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address | |
| register constraints. | |
| (*movhi_clobber+1): Modify splitter pattern to handle destination | |
| register that is used in the source address. | |
| (*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands. | |
| Fri Apr 2 12:16:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h: Added more comments. | |
| Fri Apr 2 11:58:22 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode | |
| constants into memory if we get called directly from gen_move_insn | |
| rather than emit_move_insn. | |
| (c4x_legitimize_address): Fix up LABEL_REF addresses. | |
| Thu Apr 1 12:04:05 1999 Jim Wilson <wilson@cygnus.com> | |
| * expr.c (store_field): When check direct_store, assume all complex | |
| modes can be directly stored. | |
| 1999-04-01 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * fixinc/genfixes: New shell script that runs autogen | |
| to create the generated files. | |
| 1999-04-01 Manfred Hollstein <manfred@s-direktnet.de> | |
| * Makefile.in (cppmain$(exeext)): Depend on intl.o. Link in intl.o. | |
| Thu Apr 1 03:48:34 1999 H.J. Lu (hjl@gnu.org) | |
| * i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT | |
| signed integer comparisons. | |
| * i386.c (output_int_conditional_move): Use "enum rtx_code" for code | |
| type. | |
| * i386.c (notice_update_cc): No need to check the INT mode for | |
| conditional moves since FLOAT conditional moves don't affect cc0. | |
| Thu Apr 1 02:17:18 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger | |
| string to only match on hpux11. | |
| * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt. | |
| Thu Apr 1 01:09:27 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * fixinc/hackshell.tpl: Complete transition to fixinc.tmp. | |
| * fixinc/inclhack.sh: Rebuilt. | |
| * fixinc/inclhack.def: Fix typos in c_asm.h fix. | |
| * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt. | |
| Wed Mar 31 17:20:11 1999 Jeffrey A Law (law@cygnus.com) | |
| * toplev.c (rest_of_compilation): Allow dbr_schedule to write to | |
| the dump file too. | |
| Wed Mar 31 12:32:43 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (find_basic_blocks): New argument `do_cleanup'. | |
| Conditionally call delete_unreachable_blocks. | |
| (free_basic_block_vars): Zero ENTRY/EXIT data. | |
| (allocate_for_life_analysis): Kill. Split into... | |
| (allocate_bb_life_data, allocate_reg_life_data): ... new functions. | |
| (life_analysis_1): Update. | |
| * gcse.c (gcse_main): Update find_basic_blocks call. | |
| * toplev.c (rest_of_compilation): Likewise. | |
| * stupid.c (stupid_life_analysis): Update life data calls. | |
| * rtl.h, output.h: Update prototypes. | |
| Wed Mar 31 12:10:00 1999 Bruce Korb <ddsinc09@ix.netcom.com> | |
| * inclhack.def (several): Added spaces in tests to ensure | |
| correct shell syntax. Added c_asm.h fix from fixincludes. | |
| Also corrected the corrected fix to C++ comments :-} | |
| * inclhack.tpl: Changed method of traversing symlink trees | |
| so that file name matching will work correctly. | |
| * fixincl.c, hackshell.tpl: Fallout from above. | |
| * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt. | |
| Tue Mar 30 10:43:49 1999 Philip Blundell <pb@nexus.co.uk> | |
| * config/arm/aout.h (DBX_DEBUGGING_INFO): Avoid redefinition if | |
| dbxelf.h was previously included. | |
| (CPP_APCS_PC_DEFAULT_SPEC): No need to undefine. | |
| * config/arm/linux-elf.h (FP_DEFAULT): Correctly override the | |
| definition from arm.h. | |
| Wed Mar 31 10:33:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (c-gperf.h): Generate using gperf language 'C', not | |
| 'KR-C', so gperf uses the `const' keyword on strings. | |
| * c-parse.gperf (resword): Const-ify a char*. | |
| Wed Mar 31 01:49:31 1999 Ian Lance Taylor <ian@zembu.com> | |
| * t-rtems (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define. | |
| Wed Mar 31 00:50:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * system.h (STDERR_FILENO): Fix typo. | |
| * inclhack.def (bool): Also fix bogus bool in curses_colr/curses.h. | |
| * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt. | |
| Tue Mar 30 20:51:40 1999 Mark Mitchell <mark@codesourcery.com> | |
| * alias.c (alias_set_compare): Remove. | |
| (record_alias_subset): Use splay_tree_compare_ints instead of | |
| alias_set_compare. | |
| (init_alias_once): Likewise. | |
| * cse.c: Include splay-tree.h. | |
| (reg_qty): Remove. | |
| (reg_tick): Likewise. | |
| (reg_table): Likewise. | |
| (cse_reg_info): New structure. | |
| (cse_reg_info_free_list): New variable. | |
| (cse_reg_info_tree): Likewise. | |
| (cached_regno): Likewise. | |
| (cached_cse_reg_info): Likewise. | |
| (all_minus_one): Remove. | |
| (consec_ints): Likewise. | |
| (GET_CSE_REG_INFO): New macro. | |
| (REG_TICK): Likewise. Use throughout instead of reg_tick. | |
| (REG_IN_TABLE): Likewise. Use throughout instead of reg_in_table. | |
| (REG_QTY): Likewise. Use throughout instead of reg_qty. | |
| (get_cse_reg_info): New function. | |
| (free_cse_reg_info): Likewise. | |
| (new_basic_block): Reinitialize cse_reg_info_tree instead of | |
| reg_tick, all_minus_one, and consec_ints. | |
| * Makefile.in (cse.o): Depend on splay-tree.h | |
| Tue Mar 30 13:19:36 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * libgcc2.c (throw_helper): Just return the SP offset, rather than | |
| a whole udata. Include args_size in the offset. | |
| (__throw, __rethrow): Adjust. | |
| Tue Mar 30 11:39:27 1999 Craig Burley <craig@jcb-sc.com> | |
| * extend.texi (Extended Asm): Delete spurious `b' before | |
| `@end example', which was confusing texi2html. | |
| Tue Mar 30 00:26:34 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (output_line_info): Don't emit redundant info. | |
| Do start a new row if the file changes and the line # doesn't. | |
| Mon Mar 29 15:48:39 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * invoke.texi (Invoking G++, C++ Dialect Options): Update. | |
| Mon Mar 29 15:05:39 1999 Richard Henderson <rth@cygnus.com> | |
| * except.c (start_dynamic_handler): Force jmp_buf address to | |
| and operand before moving to memory. | |
| Mon Mar 29 15:11:10 1999 Craig Burley <craig@jcb-sc.com> | |
| * invoke.texi (Code Gen Options): Attempt to clarify | |
| -fcheck-memory-usage. Minor edits to -fprefix-function-name. | |
| Mon Mar 29 20:52:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to | |
| end of libcall. | |
| Mon Mar 29 20:35:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (mulsi3): Tag an extra REG_EQUAL note to the middle insn. | |
| Mon Mar 29 11:50:34 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.h (HAVE_PRE_INCREMENT): Disable when optimizing for a PA8000 | |
| class machine. | |
| (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise. | |
| (HAVE_POST_DECREMENT): Likewise. | |
| Mon Mar 29 08:24:43 1999 Bruce Korb <korb@datadesign.com> | |
| * fixinc/mkfixinc.sh: Fix portability problems with old shells. | |
| * fixinc/README: Updated for release announcement | |
| Sun Mar 28 20:26:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * recog.h (insn_outfun, insn_operand_predicate): Add prototype | |
| arguments. | |
| * rtl.h (note_stores): Likewise. | |
| * rtlanal.c (note_stores): Likewise. | |
| Sun Mar 28 15:34:28 1999 Richard Henderson <rth@cygnus.com> | |
| * varasm.c (output_constant_pool): Always mark the constant pool. | |
| Sun Mar 28 16:09:01 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| * pa.md (pa7100LCshiftmem, pa7100LCalu): Change simultaneity. Use | |
| shift/mem ops in pa7100LCalu. | |
| * pa.c (pa_adjust_cost): Don't do cost adjustments on pa8000. | |
| (pa_reorg): Don't call pa_combine_instructions on pa8000. | |
| Sun Mar 28 15:27:26 1999 Jeffrey A Law (law@cygnus.com) | |
| * reload1.c (reload): Remove accidental code duplication. | |
| Sun Mar 28 12:22:12 1999 Robert Lipe (robertlipe@usa.net) | |
| * i386/sysv5.h: New file to describe UnixWare7/SVR5. | |
| * configure.in (i?86-UnixWare7*-sysv): Use it. | |
| * i386/udk.h: Use sysv5.h. Now uses Dwarf-2. | |
| Sun Mar 28 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Mar 28 00:44:27 1999 Jeffrey A Law (law@cygnus.com) | |
| * sdbout.c (sdbout_symbol): Do not call build_pointer_type, build | |
| one on the fly and do not cache the result. | |
| * gcc.cps, cpp.cps: Delete unwanted files. | |
| Sat Mar 27 23:37:40 1999 John Wehle (john@feith.com) | |
| * i386.md (movdicc+3, movdicc+4): Rewrite using split_di. | |
| * i386.c (output_int_conditional_move): Delete unused code. | |
| Sat Mar 27 21:17:36 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000/{aix41.h,aix43.h} (ASM_CPU_SPEC): Add 604e. | |
| Sat Mar 27 16:13:50 1999 Jeffrey A Law (law@cygnus.com) | |
| * flow.c (mark_used_regs): Improve handling of ASMs. | |
| 1999-03-26 Zack Weinberg <zack@rabi.columbia.edu> | |
| * Makefile.in (xcpp, cppspec.o): New targets. | |
| (CPP_INSTALL_NAME): New macro. | |
| (install-cpp): Install xcpp. Use CPP_INSTALL_NAME. | |
| (all.build, start.encap): Build xcpp. | |
| * cppspec.c: New file, implements argument filtering for a | |
| user-visible C preprocessor. | |
| * cpp.sh: Removed. | |
| Fri Mar 26 20:41:46 1999 Jim Wilson <wilson@cygnus.com> | |
| * Makefile.in (stmp-fixinc): Use tooldir instead of gcc_tooldir. | |
| Fri Mar 26 16:02:37 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in (arm-*-vxworks*): Just include arm/vxarm.h. | |
| * configure: Regenerate. | |
| * config/arm/vxarm.h: Define SUBTARGET_CPU_DEFAULT before | |
| including arm/coff.h | |
| 1999-02-16 Scott Bambrough <scottb@corelcomputer.com> | |
| * configure.in (arm*-*-linux-gnu*): Set thread_file to 'posix' if | |
| --enable-threads[={yes,pthreads,posix}] is passed as a command | |
| line parameter to configure. | |
| * configure: Regenerate. | |
| * gcc/config/arm/t-linux (TARGET_LIBGCC2_CFLAGS): Include -fPIC. | |
| Fri Mar 26 19:42:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (combine_givs): Fix index into can_combine when doing | |
| benefit adjustment for remaining givs when having combined a giv. | |
| Fri Mar 26 11:38:01 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Define. | |
| Fri Mar 26 10:48:27 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/linux-elf.h: Include dbxelf.h | |
| Fri Mar 26 10:43:47 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/svr4.h: Include new header file dbxelf.h. | |
| (DBX_DEBUGGING_INFO): Remove definition. | |
| (DBX_USE_BINCL): Remove definition. | |
| (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition. | |
| (ASM_IDENTIFY_GCC): Remove definition. | |
| (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition. | |
| (ASM_OUTPUT_SOURCE_LINE): Remove definition. | |
| (DBX_FUNCTION_FIRST): Remove definition. | |
| (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Remove definition. | |
| * config/elfos.h: Include new header file dbxelf.h. | |
| (DBX_DEBUGGING_INFO): Remove definition. | |
| (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition. | |
| (ASM_IDENTIFY_GCC): Remove definition. | |
| (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition. | |
| (ASM_OUTPUT_SOURCE_LINE): Remove definition. | |
| (DBX_FUNCTION_FIRST): Remove definition. | |
| * config/dbxelf.h: New header file. | |
| (DBX_DEBUGGING_INFO): Define. | |
| (DBX_BLOCKS_FUNCTION_RELATIVE): Define. | |
| (DBX_FUNCTION_FIRST): Define. | |
| (DBX_USE_BINCL): Define. | |
| (DBX_CONTIN_LENGTH): Define. | |
| (ASM_IDENTIFY_GCC): Define. | |
| (ASM_IDENTIFY_GCC_AFTER_SOURCE): Define. | |
| (ASM_OUTPUT_SOURCE_LINE): Define. | |
| (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Define. | |
| Fri Mar 26 01:59:15 1999 "Charles M. Hannum" <root@ihack.net> | |
| * fold-const.c (fold_truthop): Optimize bitfield references with | |
| different masks as long as their size and bit position are the same. | |
| * fold-const.c (fold_truthop): Build a type for both the lhs and | |
| rhs and use it appropriately. | |
| * fold-const.c (fold_truthop): Mask the lhs and rhs after merging | |
| adjacent bitfield references. | |
| * fold-const.c (fold_truthop): Verify that the lhs and rhs are | |
| in the same bit position when optimizing bitfield references | |
| which have the same mask. | |
| Thu Mar 25 22:53:27 1999 Martin von Löwis <loewis@informatik.hu-berlin.de> | |
| * gcc.texi (Copy Assignment): New node. | |
| 1999-03-25 Zack Weinberg <zack@rabi.columbia.edu> | |
| * gcc.c: Compile unconditionally all code formerly dependent | |
| on #ifdef LANG_SPECIFIC_DRIVER. | |
| * gccspec.c: New file with stub lang_specific_driver, | |
| lang_specific_pre_link. | |
| * Makefile.in: Link gccspec.o into xgcc. Add rule to compile | |
| Thu Mar 25 21:08:02 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * gcc.texi (Temporaries): Update. | |
| Thu Mar 25 16:53:53 1999 Richard Henderson <rth@cygnus.com> | |
| * combine.c (distribute_notes): Place REG_LABEL also where | |
| REG_EQUAL indicates. | |
| Thu Mar 25 12:46:37 1999 Jim Wilson <wilson@cygnus.com> | |
| * a29k/a29k.h (TARGET_SWITCHES): Add doc strings. | |
| * i960/i960.h (TARGET_SWITCHES): Add doc strings. | |
| * invoke.texi (a29k): Add documentation for -mno-multm option. | |
| Thu Mar 25 14:04:54 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * rtl.texi (RTX_FRAME_RELATED_P): Add documentation. | |
| * rtl.h (struct rtx_def): Update comment for frame_related field. | |
| (set_unique_reg_note): Declare prototype. | |
| * dwarf2out.c (dwarf2out_frame_debug_expr): Split out from | |
| 'dwarf2out_frame_debug' to handle only expressions, and process | |
| component parts of a PARALLEL expression. | |
| (dwarf2out_frame_debug): Process insns only, and call | |
| new function 'dwarf2out_frame_debug_expr' for patterns. | |
| * emit-rtl.c (set_unique_reg_note): New function to add a reg note, | |
| but if there is an existing one, delete it first. | |
| * expmed.c (expand_mult, expand_divmod): Use set_unique_reg_note. | |
| * optabs.c (add_equal_note, expand_binop): Use set_unique_reg_note. | |
| (emit_no_conflict_block, emit_libcall_block): Use set_unique_reg_note. | |
| (expand_fix): Use set_unique_reg_note. | |
| Thu Mar 25 11:47:49 1999 Art Haas <ahaas@neosoft.com> | |
| * tlink.c (symbol_hash_newfunc): Remove redundant call to | |
| hash_newfunc. | |
| (file_hash_newfunc, demangled_hash_newfunc): Likewise. | |
| Thu Mar 25 10:05:56 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.h (PREFERRED_STACK_BOUNDARY): Set to 128. | |
| 1999-03-25 Philip Blundell <pb@nexus.co.uk> | |
| Based on patch from Jim Studt <jim@federated.com>: | |
| * config/arm/linux-elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Copy | |
| definitions from config/linux.h. | |
| (DBX_BLOCKS_FUNCTION_RELATIVE): Define to 1. | |
| Thu Mar 25 02:12:42 1999 Finn Hakansson <finn@axis.com> | |
| * loop.c (strength_reduce): Correct a comment. | |
| * rtl.h (MEM_COPY_ATTRIBUTES): Remove unnecessary ending backslash. | |
| Thu Mar 25 02:02:13 1999 Axel Thimm <Axel.Thimm@physik.fu-berlin.de> | |
| * Makefile.in (RANLIB_TEST): Improve test. | |
| Thu Mar 25 01:15:33 1999 Donn Terry <donn@interix.com> | |
| * combine.c (force_to_mode, case PLUS): Use sign extended mask | |
| when masking the low bits out of a constant. | |
| Tue Mar 23 15:45:25 1999 Richard Earnshaw (rearnsha@arm.com) | |
| Jeff Law <law@cygnus.com> | |
| * fold-const.c (make_range): If orig_type is unset, set it as soon | |
| as we know the type. Remove now unnecessary set of orig_type for | |
| conversions. | |
| Wed Mar 24 23:27:25 1999 Mark Elbrecht <snowball3@usa.net> | |
| Jeff Law <law@cygnus.com> | |
| * system.h (STDIN_FILENO): Provide default definition if one is not | |
| provided by the system header files. | |
| (STDOUT_FILENO, STDERR_FILENO): Likewise. | |
| * i386/xm-djgpp.h (COLLECT2_HOST_INITIALIZATION): New macro. | |
| * collect2.c (main): Use it. | |
| (pexecute_pid): New variable. Holds return value from call to pexecute. | |
| (collect2_execute): Rework to use pexecute instead of fork. | |
| (collect2_wait): Use pwait() instead of wait(). | |
| * i386/djgpp.h: Fix typo. | |
| Wed Mar 24 23:24:30 1999 Jeffrey A Law (law@cygnus.com) | |
| * fixinc/mkfixinc.sh: Recognize cygwin* instead of only | |
| cygwin32. | |
| Wed Mar 24 15:44:12 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/m32r/m32r.c (init_idents): Accept both NAME and __NAME__ | |
| versions of attribute names and values. | |
| (m32r_valid_machine_decl_attribute): Likewise. | |
| (m32r_encode_section_info): Likewise. | |
| Wed Mar 24 21:42:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (choose_reload_regs): If output-reloading for a | |
| simple move insn, try to inherit an equivalence for the input. | |
| 1999-02-24 Mike Stump <mrs@wrs.com> | |
| * arm/aout.h (DBX_OUTPUT_MAIN_SOURCE_FILENAME): Fix quoting. | |
| 1999-03-24 Jim Blandy <jimb@zwingli.cygnus.com> | |
| * libgcc2.c (__CTOR_LIST__, __DTOR_LIST__): Initialize on all | |
| platforms. | |
| Wed Mar 24 01:35:01 1999 Geoff Keating <geoffk@ozemail.com.au> | |
| * fold-const.c (fold): Recognize a rotate by an unsigned amount. | |
| Tue Mar 23 23:32:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (rotlsi3): New expander. Synthesize a variable rotate | |
| left using a variable rotate right. Provide anonymous pattern for | |
| rotate left by a constant value. | |
| * expr.c (expand_assignment): Do not try to optimize an aggregate | |
| address which has VOIDmode. | |
| Tue Mar 23 22:51:48 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| Donn Terry <donn@interix.com> | |
| * protoize.c (abspath): Preserve multiple leading slashes for | |
| _WIN32 and Interix. | |
| 1999-01-23 Mike Stump <mrs@wrs.com> | |
| * arm/vxarm.h: Split out vxWorks support into separate headerfile | |
| and vxify. | |
| * arm/arm.c (cpu_defaults): Allow arm710 as default. | |
| * configure.in: Split out vxWorks support for Arm. | |
| * configure: Rebuilt. | |
| Tue Mar 23 11:20:03 1999 Per Bothner <bothner@cygnus.com> | |
| * tree.c (first_rtl_op, has_cleanups): Handle GOTO_SUBROUTINE_EXPR. | |
| Tue Mar 23 09:00:39 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/riscix1.h (SUBTARGET_SWITCHES): Add doc string. | |
| * config/arm/riscix1-1.h (SUBTARGET_SWITCHES): Add doc string. | |
| Tue Mar 23 07:50:20 1999 Mark Mitchell <mark@codesourcery.com> | |
| * function.c: Include hash.h. | |
| (insns_for_mem_entry): New struct. | |
| (put_reg_into_stack): Take an optional hash-table mapping MEMs to | |
| the INSNs that use them. | |
| (fixup_var_refs): Likewise. | |
| (put_addressof_into_stack): Likewise. | |
| (purge_addressof_1): Likewise. Keep the hash-table up to date if | |
| we add new instructions. | |
| (fixup_var_refs_insns): Use it to avoid searching the entire | |
| instruction chain. | |
| (insns_for_mem_newfunc): New function. | |
| (insns_for_mem_comp): Likewise. | |
| (insns_for_mem_walk): Likewise. | |
| (compute_insns_for_mem): Likewise. | |
| (pop_function_context_from): Pass NULL for the hash-table. | |
| (put_var_into_stack): Likewise. | |
| (gen_mem_addressof): Likewise. | |
| (flush_addressof): Likewise. | |
| (purge_addressof): Call compute_insns_for_mem to pre-compute the | |
| hash table. | |
| * Makefile.in (OBJS): Include hash.o. | |
| (function.o): Depend on hash.h. | |
| Tue Mar 23 00:39:14 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386/openbsd.h (TARGET_DEFAULT): Use symbolic names instead of | |
| numbers. | |
| * i386/netbsd.h, i386/freebsd.h: Likewise. | |
| * crtstuff.c: Use ANSI function definitions. Fix minor whitespace | |
| problems. | |
| * i386/openbsd.h (TARGET_DEFAULT): Define. | |
| * configure.in: Do not set TARGET_CPU_DEFAULT for x86 OpenBSD | |
| configurations. | |
| * configure: Rebuilt. | |
| Tue Mar 23 00:39:10 1999 John Wehle (john@feith.com) | |
| * i386/freebsd.h (TARGET_DEFAULT): Define instead | |
| of TARGET_CPU_DEFAULT. | |
| * i386/netbsd.h (TARGET_DEFAULT): Likewise. | |
| Mon Mar 22 23:52:01 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| Donn Terry <donn@interix.com> | |
| * sdbout.c (syms.h): Don't include on Interix. | |
| * toplev.c (main): No sbrk on Interix. | |
| * configure.in: Add i386-pc-interix support. | |
| * configure: Regenerate. | |
| * fixinc.interix: New file. | |
| * config/interix.h: New file. | |
| * config/x-interix: New file. | |
| * config/xm-interix.h: New file. | |
| * i386/interix.h: New file. | |
| * i386/interix.c: New file. | |
| * i386/t-interix: New file. | |
| Mon Mar 22 23:41:49 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.h (PREFERRED_STACK_BOUNDARY): Define. | |
| Mon Mar 22 23:41:31 1999 John Wehle (john@feith.com) | |
| * i386.c (ix86_compute_frame_size): New function. | |
| (ix86_prologue, ix86_epilogue): Use it. | |
| * i386.h (INITIAL_ELIMINATION_OFFSET): Likewise. | |
| * reload1.c: Provide default for PREFERRED_STACK_BOUNDARY. | |
| Mon Mar 22 18:06:59 1999 Jim Wilson <wilson@cygnus.com> | |
| * mips/mips.h (TARGET_SWITCHES, TARGET_OPTIONS): Add option doc | |
| strings. | |
| * mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Likewise. | |
| Mon Mar 22 16:18:27 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother | |
| passing ATTRIBUTES to arm_valid_machine_decl_attribute. | |
| * config/arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother | |
| passing ATTRIBUTES to arm_valid_machine_decl_attribute. | |
| * config/arm/arm.h (DEFAULT_RTX_COSTS): Do not bother passing | |
| OUTER_CODE to arm_rtx_costs - it is not used. | |
| (arm_compare_fp): Delete declaration. | |
| (FINAL_PRESCAN_INSN): Do not bother passing OPVEC or NOPERANDS to | |
| arm_final_prescan_insn - they are not used. | |
| (const_ok_for_op): Remove prototype. | |
| (arm_rtx_costs): Fix prototype. | |
| (arm_valid_machine_decl_attribute): Fix prototype. | |
| (final_prescan_insn): Fix prototype. | |
| * config/arm/arm.md: Remove references to arm_compare_fp. | |
| * config/arm/arm.c (arm_compare_fp): Delete. | |
| (const_ok_for_op): Make function static. Add prototype. Remove | |
| mode parameter - it is unused. | |
| (arm_rtx_costs): Remove outer_code parameter. | |
| (reload_memory_operand): Declare mode parameter unused. | |
| (power_of_two_operand): Declare mode parameter unused. | |
| (equality_operator): Declare mode parameter unused. | |
| (load_multiple_operation): Declare mode parameter unused. | |
| (store_multiple_operation): Declare mode parameter unused. | |
| (multi_register_push): Declare mode parameter unused. | |
| (arm_valid_machine_decl_attribute): Remove attributes parameter - | |
| it is unused. | |
| (select_dominance_cc_mode): Remove op parameter - it is unused. | |
| (gen_compare_reg): Remove fp parameter - it is unused. | |
| (final_prescan_insn): Remove opvec and noperands parameters - they | |
| are unused. | |
| Mon Mar 22 14:35:28 1999 Nick Clifton <nickc@cygnus.com> | |
| * tm.texi (MD_SCHED_INIT): Add missing closing parenthesis. | |
| Mon Mar 22 22:24:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (reload_as_needed): Set reload_is_output_reload / | |
| reload_has_output_reload for auto_inc expressions that could be | |
| reloaded. Call forget_old_reloads for REG_INC notes. | |
| Mon Mar 22 21:51:57 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * cse.c (cse_insn): Don't change the result register of a libcall. | |
| Mon Mar 22 21:08:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * rtl.h (shallow_copy_rtx): Declare. | |
| * rtl.c (shallow_copy_rtx): New function. | |
| * reload.c (find_reloads_toplev): Use shallow_copy_rtx instead of | |
| copy_rtx. | |
| Mon Mar 22 10:44:33 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> | |
| * config/h8300/h8300.md (adjust_length): New attribute. | |
| (modhi3+1, andsi3+1, iorsi3+1, extzv+1, extzv+2): Change insn | |
| default value of attribute "adjust_length" onto "no". | |
| * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust | |
| length only if the attribute "adjust_length" value is "yes". | |
| Use 0 if the shift is negative. | |
| * final.c (shorten_branches): Check insn length after its | |
| adjusting. | |
| Sun Mar 21 17:33:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * i860.h (TARGET_SWITCHES): Add documentation for default case. | |
| * i860/paragon.h (TARGET_SWITCHES): Add documentation for default case. | |
| * i370.h (TARGET_SWITCHES): Add documentation for default case. | |
| * fx80.h (TARGET_SWITCHES): Add documentation for default case. | |
| * elxsi.h (TARGET_SWITCHES): Add documentation for default case. | |
| * clipper.h (TARGET_SWITCHES): Add documentation for default case. | |
| * 1750a.h (TARGET_SWITCHES): Add documentation for default case. | |
| * pa.h (TARGET_SWITCHES): Add documentation for default case. | |
| (TARGET_OPTIONS): Likewise for default case. | |
| * mn10300.h (TARGET_SWITCHES): Add documentation for default case. | |
| * h8300.h (TARGET_SWITCHES): Add documentation for default case. | |
| * gcse.c (dump_hash_table): Fix whitespace in declaration. | |
| (compute_transpout): Renamed from pre_compute_transpout. | |
| (compute_pre_*): Deleted. | |
| (pre_expr_reaches_here_p): New argument, CHECK_PRE_COMP. All | |
| callers changed. | |
| (insert_insn_end_bb): Renamed from pre_insert_insn. | |
| (pre_*): Delete unused variables. Only leave local properties and | |
| global redundant/optimal computation points. | |
| (alloc_pre_mem, free_pre_mem): Corresponding changes. | |
| (compute_pre_data): Simplify and call pre_lcm to run the lazy | |
| code motion dataflow analysis. | |
| (pre_insert, pre_insert_copies, pre_delete): Revamp to use LCM | |
| based redundant and optimal computation points. | |
| * basic-block.h (pre_lcm, pre_rev_lcm): Declare. | |
| * toplev.c (main): A debug option without a level defaults to | |
| level 2. | |
| Sun Mar 21 12:13:01 1999 Nick Clifton <nickc@cygnus.com> | |
| * flow.c (can_delete_label_p): Do not allow user specified | |
| labels to be deleted. | |
| * dwarf2out.c (gen_label_die): Generate addresses for deleted | |
| (programmer specified) labels. | |
| * dwarfout.c (output_label_die): Generate addresses for deleted | |
| (programmer specified) labels. | |
| 1999-03-21 Manfred Hollstein <manfred@s-direktnet.de> | |
| * Makefile.in (xgcc$(exeext)): Add intl.o to list of files to be | |
| linked with. | |
| Sun Mar 21 01:15:03 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Mar 20 22:26:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * sparc.h (TARGET_SWITCHES): Add null description to default case. | |
| Sat Mar 20 21:46:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-lex.c (yylex): Remove unused variable `bytes'. | |
| * flow.c (print_rtl_with_bb): Cast the return value of alloca. | |
| * function.c (assign_parms): Wrap variable `varargs_setup' in | |
| macro SETUP_INCOMING_VARARGS. | |
| (thread_prologue_and_epilogue_insns): Mark parameter `f' with | |
| ATTRIBUTE_UNUSED. | |
| * local-alloc.c (no_equiv): Likewise for parameter `store'. | |
| * sched.c (schedule_insns): Remove unused variables `insn' and `next'. | |
| * tlink.c (symbol_hash_newfunc, symbol_hash_lookup, | |
| file_hash_newfunc, file_hash_lookup, demangled_hash_newfunc, | |
| demangled_hash_lookup, symbol_push, symbol_pop, file_push, | |
| file_pop, tlink_init, tlink_execute, frob_extension, | |
| obstack_fgets, tfgets, pfgets, freadsym, read_repo_file, | |
| maybe_tweak, recompile_files, read_repo_files, | |
| demangle_new_symbols, scan_linker_output): Add static prototype. | |
| (symbol_hash_newfunc, file_hash_newfunc, demangled_hash_newfunc): | |
| Make the third argument a `hash_table_key'. | |
| * toplev.c (debug_start_source_file): Mark parameter `filename' | |
| with ATTRIBUTE_UNUSED. | |
| Sun Mar 21 02:28:21 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * tm.texi (Varargs): Don't split argument of @item across lines. | |
| * invoke.texi: Fix use of @item vs @itemx. | |
| Sun Mar 21 09:59:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (TARGET_SWITCHES): Add null description to | |
| default case. | |
| Sat Mar 20 23:33:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * loop.c (check_dbra_loop): Fix debug message. | |
| Sat Mar 20 15:54:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (decrement_and_branch_on_count): Emit rptb_end | |
| pattern instead of decrement_and_branch_until_zero pattern. | |
| Sat Mar 20 11:39:58 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (TARGET_SWITCHES): Add documentation. | |
| * config/c4x/c4x.h (TARGET_OPTIONS): Add documentation. | |
| Fri Mar 19 23:26:29 1999 Martin von Löwis <loewis@informatik.hu-berlin.de> | |
| * expr.c (expand_expr): Handle ERROR_MARK much earlier. | |
| Fri Mar 19 15:28:38 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c (create_definition): Cast to U_CHAR* when assigning to one. | |
| * cppfiles.c (read_and_prescan): Likewise. | |
| Start a #define in column 0. | |
| * cpplib.c (cpp_define): Cast to U_CHAR* when assigning to one. | |
| (cpp_push_buffer): Likewise for cpp_buffer*. | |
| (do_include): Change the type of `fbeg' and `fend' to unsigned char*. | |
| (do_endif): Cast to char* when assigning to one. | |
| (do_assert): Likewise. | |
| (do_unassert): Likewise. | |
| (cpp_read_check_assertion): Change the type of `name' to U_CHAR*. | |
| Don't do unnecessary cast to char* anymore. | |
| * genrecog.c (make_insn_sequence): Cast to char** when assigning | |
| to one. Cast the first argument of bzero to PTR. | |
| * loop.c (strength_reduce): Remove unused variable `note'. | |
| * reload1.c (new_insn_chain): Cast to struct insn_chain* when | |
| assigning to one. | |
| * rtl.c (copy_rtx): Use memcpy instead of bcopy. | |
| Fri Mar 19 11:19:31 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * calls.c (initialize_argument_information): Mark parameters | |
| `num_actuals' and `n_named_args' with ATTRIBUTE_UNUSED. | |
| * dbxout.c (dbxout_start_new_source_file): Likewise for parameter | |
| `filename'. | |
| (dbxout_finish): Likewise for parameters `file' and `filename'. | |
| (dbxout_prepare_symbol): Likewise for parameter `decl'. | |
| (dbxout_begin_function): Likewise. | |
| * explow.c (hard_function_value): Likewise for parameter `func'. | |
| * function.c (locate_and_pad_parm): Likewise for parameter `fndecl'. | |
| * expmed.c (expand_divmod): Omit unused argument to `expand_abs'. | |
| * expr.c (expand_expr): Likewise. | |
| * expr.h (expand_abs): Delete unused argument from prototype. | |
| * optabs.c (expand_abs): Remove unused parameter `unsignedp'. | |
| * sdbout.c (sdbout_init): Mark parameter `syms' with ATTRIBUTE_UNUSED. | |
| (sdbout_end_block): Likewise for parameter `n'. | |
| * toplev.c (debug_define): Likewise for parameters `lineno' and | |
| `buffer'. | |
| (debug_undef): Likewise. | |
| * varasm.c (named_section): Likewise for parameter 'reloc'. | |
| (assemble_external): Likewise for parameter `decl'. | |
| (assemble_alias): Likewise for parameter `target'. | |
| Fri Mar 19 01:54:30 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> | |
| * toplev.c (read_integral_parameter): Constify. Better control of | |
| error messages. | |
| (main): Use read_integral_parameter to set optimize, id_clash_len, | |
| larger_than_size, and the debugging level. | |
| * toplev.h (read_integral_parameter): Update prototype. | |
| Fri Mar 19 01:42:05 1999 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * system.h: Use putc_unlocked, fputc_unlocked, and | |
| fputs_unlocked only if putc_unlocked has a prototype already. | |
| Prototype fputs_unlocked if necessary. | |
| * configure.in: Check for prototypes of putc_unlocked and | |
| fputs_unlocked. | |
| * acconfig.h: Updated. | |
| * config.in, configure: Rebuilt. | |
| Fri Mar 19 02:45:12 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * Makefile.in (INTL_TARGETS): New macro. | |
| ($(INTL_TARGETS)): Depend on generated sources; drop dependencies | |
| on cp/parse.c and objc/objc-parse.c. | |
| ($(srcdir)/cp/parse.c): Move to cp/Make-lang.in. | |
| * objc/Make-lang.in ($(INTL_TARGETS)): Depend on objc/objc-parse.c. | |
| Thu Mar 18 22:28:53 1999 Jeffrey A Law (law@cygnus.com) | |
| * i860.h (TARGET_SWITCHES): Add documentation. | |
| * i860/paragon.h (TARGET_SWITCHES): Add documentation. | |
| * i370.h (TARGET_SWITCHES): Add documentation. | |
| * fx80.h (TARGET_SWITCHES): Add documentation. | |
| * elxsi.h (TARGET_SWITCHES): Add documentation. | |
| * clipper.h (TARGET_SWITCHES): Add documentation. | |
| * 1750a.h (TARGET_SWITCHES): Add documentation. | |
| * pa.h (TARGET_SWITCHES): Add documentation. | |
| (TARGET_OPTIONS): Likewise. | |
| * mn10300.h (TARGET_SWITCHES): Add documentation. | |
| * h8300.h (TARGET_SWITCHES): Add documentation. | |
| Thu Mar 18 15:58:26 1999 Nick Clifton <nickc@cygnus.com> | |
| * loop.c (strength_reduce): Do not perform pseudo replacements | |
| if the loop contains volatile memory references. | |
| Thu Mar 18 19:09:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload.c (find_reloads_toplev): When processing X recursively, | |
| don't alter it destructively except by filling in constants. | |
| Thu Mar 18 10:14:18 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c (default_include): Initialize structure members. | |
| (pass_thru_directive): Change the type of 'keyword_length' to int. | |
| (main): Cast `bindtextdomain' and `textdomain' to (void). | |
| * collect2.c (main): Likewise. | |
| * cppmain.c (main): Likewise. | |
| * gcc.c (main): Likewise. | |
| * gcov.c (main): Likewise. | |
| * protoize.c (main): Likewise. | |
| * toplev.c (main): Likewise. | |
| 1999-03-18 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.c (mips_explicit_type_size_string): Correct | |
| its type. | |
| Thu Mar 18 01:24:25 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in: Use "exit 1", not "exit (1)". | |
| * configure: Rebuilt. | |
| Wed Mar 17 23:17:42 1999 Mark Kettenis <kettenis@gnu.org> | |
| * config/t-gnu (SYSTEM_HEADER_DIR): New variable. Set to | |
| `/include' in order to find the system's limits.h. | |
| Wed Mar 17 23:00:18 1999 Robert Lipe <robertlipe@usa.net> | |
| * fixinc/fixincl.c: Include auto-host.h instead of config.h. | |
| * fixinc/procopen.c: Likewise. | |
| * fixinc/regex.c: Likewise. | |
| * fixinc/server.c: Likewise. | |
| Wed Mar 17 22:46:13 1999 Mark Elbrecht <snowball3@usa.net. | |
| * config/i386/go32.h: Delete. | |
| * config/i386/djgpp.h: New. Renamed from go32.h. | |
| Added -DDJGPP=2 to CPP_PREDEFINES. | |
| * config/i386/go32-rtems.h: Delete. | |
| * config/i386/djgpp-rtems.h: New. Renamed from go32-rtems.h. | |
| Added -DDJGPP=2 to CPP_PREDEFINES. | |
| * config/i386/xm-go32.h: Delete. | |
| * config/i386/xm-djgpp.h: New. Renamed from xm-go32.h. | |
| * config/i386/x-go32: Delete. | |
| * config/i386/x-djgpp: New. Renamed from x-go32. | |
| * config/i386/t-go32: Delete. | |
| * config/i386/t-djgpp: New. Renamed from t-go32. | |
| * configure.in(pc-msdosdjgpp): Set xm_file to i386/xm-djgpp.h. | |
| Set tm_file to i386/djgpp.h. Set tmake_file to i386/t-djgpp. | |
| Set xmake_file to i386/x-djgpp. | |
| (*-go32-msdos, *-go32*): Remove entries. Warn that GO32/DJGPP V1.X | |
| is now unsupported and *-pc-msdosdjgpp for DJGPP V2.X should be | |
| used instead. | |
| * configure: Rebuilt. | |
| * gcc.c (process_command): Dump link_command_spec too. | |
| Wed Mar 17 20:38:08 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| Jeff Law <law@cygnus.com> | |
| * pa.md: Add real PA8000 scheduling information. | |
| * pa.h (processor_type): Add PROCESSOR_8000 symbol. | |
| (ISSUE_RATE): Revamp, including PA8000 support. | |
| * pa.c (override_options): Add 8000 as -mschedule= option. | |
| Do not call strcmp if pa_cpu_string is null. | |
| * pa.md (attr cpu): Add 8000. | |
| * invoke.texi: Add documentation for PA8000 scheduling. | |
| Wed Mar 17 18:20:24 1999 David S. Miller <davem@redhat.com> | |
| * config/sparc/sparc.h (TARGET_SWITCHES, TARGET_OPTIONS): | |
| Add descriptions. | |
| * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. | |
| * config/sparc/splet.h (SUBTARGET_SWITCHES): Likewise. | |
| Wed Mar 17 14:51:19 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (compute_immediate_dominators): New function. | |
| * basic-block.h (compute_immediate_dominators): Declare it. | |
| * alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes | |
| in FP regs. | |
| (MODES_TIEABLE_P): Define asymmetricly wrt modes illegal in FP regs. | |
| Wed Mar 17 14:41:41 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/aout.h (ASM_GENERATE_INTERNAL_LABEL): Fix compile | |
| time warning. | |
| * config/arm/arm.md: Fix various compile time warnings. | |
| * config/arm/arm.h: Fix various compile time warnings. Add | |
| function prototypes. | |
| * config/arm/arm.c: Fix various compile time warnings. | |
| (arm_override_options): Reorganize to separate tuning from | |
| targetting. | |
| (bit_count): New function: Return a count of the number of bits | |
| set in a word. | |
| Wed Mar 17 21:29:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (eliminate_regs): Don't keep REG_DEAD notes around for | |
| things that were eliminated. | |
| Wed Mar 17 12:16:26 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (fixup_var_refs_1): First try moving the expression | |
| directly into a register. Don't separate cc0 setter and user. | |
| Wed Mar 17 11:20:29 1999 Dave Brolley <brolley@cygnus.com> | |
| * cppfiles.c (PIPE_BUF): #define PIPE_BUF if not defined already. | |
| Wed Mar 17 09:25:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-lex.c: Don't include setjmp.h. | |
| (parse_float): New static function. | |
| (pf_args): New struct. | |
| (yylex): Use them in call to `do_float_handler'. | |
| 1999-03-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * cexp.y (yyerror): Call verror to get a useful error message. | |
| * cexp.c: Rebuilt. | |
| * .gdbinit: Move command to put breakpoint at abort to end of file | |
| so that gdb does not bail out early. | |
| Tue Mar 16 15:30:19 1999 Nick Clifton <nickc@cygnus.com> | |
| * rtl.h: Rename prototype for free_bb_memory to free_bb_mem. | |
| Tue Mar 16 23:40:09 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (movsi_i): Move t/r alternative after r/rI alternative. | |
| Tue Mar 16 13:44:50 1999 Jim Wilson <wilson@cygnus.com> | |
| * mn10200/mn10200.md (addsi3, subsi3, ashlsi3, lshrsi3, ashrsi3): | |
| Delete emit_library_call_value declaration. | |
| 1999-03-16 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppfiles.c (read_and_prescan): Map backslash-newline to '\r' | |
| (which cannot otherwise appear in the processed buffer) and | |
| move it out of tokens that it appears in the middle of. | |
| Improve performance. | |
| (find_position): New function. | |
| * cpplib.c: \r (one character) indicates backslash | |
| newline, not \\\n (two characters). It cannot appear in the | |
| middle of a token. Call CPP_BUMP_LINE (pfile) whenever | |
| parsing moves past \n or \r. Increment pfile->lineno whenever | |
| a \n is placed into token_buffer. Only one mark can exist at | |
| a time, and CPP_BUMP_LINE must not be used while it is | |
| active. It is automatically cleared by cpp_pop_buffer and | |
| parse_goto_mark. \r is not in is_hor_space or is_space. | |
| (NEWLINE_FIX, NEWLINE_FIX1, adjust_position, | |
| update_position, count_newlines, parse_move_mark): Removed. | |
| (parse_string, copy_comment): New functions. | |
| (parse_name): Returns void. | |
| (parse_set_mark, parse_clear_mark, parse_goto_mark): Take only | |
| one argument, a cpp_reader *. Change for new marking scheme. | |
| (skip_comment): Handle CHILL line comments too. Second | |
| argument is now first character of comment marker; all callers | |
| changed. Issue error for unterminated block comment here. | |
| (cpp_skip_hspace): Recognize CHILL comments. | |
| (copy_rest_of_line): Likewise. Call skip_comment and | |
| parse_string directly, don't go through cpp_get_token. Emit | |
| "/**/" for block comments if -traditional (create_definition | |
| needs this). | |
| (do_define): Don't play with put_out_comments. | |
| (cpp_push_buffer): Initialize ->mark to -1. | |
| (cpp_buf_line_and_col): Just read out the values in the buffer | |
| structure. | |
| (output_line_command): Use cpp_buf_line_and_col. Fix | |
| formatting. Remove stale code. | |
| (cpp_get_token): Break out string parsing code to | |
| parse_string. Use skip_comment for CHILL comments too. Use | |
| copy_comment for put_out_comments instead of dinking with | |
| marks. Remove stale code. Don't call output_line_command | |
| unless it's necessary. | |
| * cpplib.h (parse_marker): Removed. | |
| (struct cpp_buffer): Line_base is now an unsigned char *; add | |
| `mark' [long], remove `marks' [struct parse_marker *]. | |
| (parse_set_mark, parse_clear_mark, parse_goto_mark): Update | |
| prototypes. | |
| (CPP_BUMP_LINE, CPP_BUMP_BUFFER_LINE): New macros. | |
| * cppinit.c (is_hor_space, is_space): '\r' is not considered | |
| whitespace. | |
| * cppexp.c (cpp_parse_expression): Use cpp_skip_hspace, not | |
| SKIP_WHITE_SPACE. | |
| * cpphash.c (macarg): Disable line commands while expanding. | |
| Tue Mar 16 11:30:19 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-lex.c (yylex) : Remove warning for integer literals being | |
| larger than the largest target int. Add warning for integer | |
| literal being larger than than its chosen type. | |
| Tue Mar 16 10:53:17 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * invoke.texi: Add -mlong32 documentation. | |
| * config/mips/mips.h (mips_explicit_type_size_string): New. | |
| (TARGET_SWITCHES): Add 'long32'. | |
| (TARGET_OPTIONS): Add 'explicit-type-size'. | |
| (CC1_SPECS): Set -mexplicit-type-size. | |
| (LONG_MAX_SPEC): Change a use of 'no-long64' to 'long32'. | |
| * config/mips/abi64.h (LONG_MAX_SPEC): Same. Add 'mabi=32'. | |
| * config/mips/mips.c (mips_explicit_type_size_string): New. | |
| (override_options): Use it. | |
| * config/mips/osfrose.h (CC1_SPECS): Set -mexplicit-type-size. | |
| * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC): | |
| Pointer size now depends on both size longs and size of GP | |
| registers. | |
| Tue Mar 16 10:22:22 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/iris.h (CTORS_SECTION_ASM_OP,DTORS_SECTION_ASM_OP, | |
| dtors_section): Use Pmode == DImode rather than TARGET_LONG64. | |
| * config/mips/mips.c (override_options): Allow -mlong64 and | |
| -mint64 with -mips2 or less. | |
| * config/mips/mips.h (MASK_LONG64): Fix comment. | |
| (POINTER_SIZE): Use Pmode == DImode rather than TARGET_LONG64. | |
| (Pmode): Make Pmode the smaller of longs or gp registers. | |
| * invoke.texi: Note the new size for pointers. | |
| Mon Mar 15 22:45:25 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.h (ASM_OUTPUT_{DOUBLE,FLOAT}): Always generate IEEE 754 | |
| bit-pattern directly. | |
| (ASM_OUTPUT_REG_{PUSH,POP}): Delete. | |
| * rs6000.c (first_reg_to_save): If profiling and context needed, | |
| allocate a reg to save static chain for all ABIs. For AIX | |
| profiling, calculate parameter registers to save based on need. | |
| (output_function_profiler): Save and restore static chain around | |
| profile call for all ABIs. | |
| 1999-03-15 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppinit.c: Instead of one pending list, keep separate lists | |
| for each category of pending option: -D/-U, -A, -include, | |
| -imacros. Move the four partial include-path lists into the | |
| pending block. Use head and tail pointers so we don't ever | |
| have to reverse the lists. | |
| (cpp_start_read): Break out blocks of code to their own | |
| functions: install_predefs and initialize_dependency_output. | |
| Use path_include for C_INCLUDE_PATH and friends as well as | |
| CPATH. Remove include_defaults gunk. Warn about the | |
| combination of -lang-chill and -trigraphs. Optimize string | |
| bashing. Walk each pending list once, deallocating as we go. | |
| (append_include_chain): Brought over from cppfiles.c. Mark | |
| dirs as system include dirs if and only if appending to | |
| system include path. If opts->verbose, print a notice when a | |
| dir is dropped from the include path because it doesn't | |
| exist. Fix memory leak: this function is not supposed to copy | |
| its DIR argument. | |
| (nreverse_pending, push_pending): Removed. | |
| (APPEND): New macro for adding to pending lists. | |
| (path_include): Can now add to any partial include path. | |
| (base_name): Bring over from cccp.c. | |
| (cpp_options_init): Allocate the pending block. | |
| (cpp_handle_option): Add --version. Exit after --help. Fix | |
| formatting. Order -ifoo options by frequency of usage. | |
| (install_predefs): New function, simplified version of code | |
| that was in cpp_start_read. | |
| (initialize_dependency_output): Likewise. Understand OBJECT_SUFFIX. | |
| * cppfiles.c (simplify_pathname): Export. | |
| (merge_include_chains): Don't nreverse the lists. If | |
| opts->verbose, print a notice when a duplicate dir is detected | |
| and dropped from the include path. | |
| (finclude): Fix excessive cleverness in setting | |
| fp->system_header_p. | |
| (actual_directory): Set x->sysp from | |
| CPP_BUFFER (pfile)->system_header_p so that one system header | |
| may include another with "". | |
| (deps_output): Fix double adjustment of deps_size which would | |
| cause all dependencies after the first two lines to be lost. | |
| * cpplib.c (cpp_unassert): New function. | |
| * cpplib.h: Lay out struct cpp_pending here. Adjust | |
| prototypes. Add include_prefix_len to struct cpp_options. | |
| Mon Mar 15 16:01:52 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/misp/mips.h (REGISTER_MOVE_COST): Make the cost of moving | |
| from HI/LO/HILO/MD into general registers the same as for one | |
| of moving general registers to HI/LO/HILO/MD. | |
| Mon Mar 15 12:39:38 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/m32r/m32r.c (init_idents): New function. Initialize | |
| static tree nodes for m32r specific attribute identifiers. Remove | |
| leading and trailing double underscores from the attribute names. | |
| (m32r_valid_machine_decl_attribute): Call init_idents. | |
| (m32r_encode_section_info): Call init_idents. | |
| Mon Mar 15 10:20:20 1999 Mark Mitchell <mark@markmitchell.com> | |
| * reload.c (find_reloads): Add a REG_LABEL note if we substitute a | |
| LABEL_REF for something else. | |
| Mon Mar 15 08:24:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * fold-const.c (exact_real_inverse): Move variable `float_error' | |
| into the scope where it is used. | |
| (const_binop_1): New static function. | |
| (cb_args): New struct. | |
| (const_binop): Use them in call to `do_float_handler'. | |
| (fold_convert_1): New static function. | |
| (fc_args): New struct. | |
| (fold_convert): Use them in call to `do_float_handler'. | |
| Mon Mar 15 22:50:18 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * rtlanal.c (auto_inc_p): New function. | |
| * rtl.h (auto_inc_p): Prototype it. | |
| * reload1.c (add_auto_inc_notes): New function. | |
| (reload): Strip REG_INC notes and call add_auto_inc_notes | |
| for each insn to restore them correctly. | |
| 1999-03-15 Manfred Hollstein <manfred@s-direktnet.de> | |
| * fixinc/Makefile.in (procopen.o): List the actual | |
| dependencies. | |
| Sun Mar 14 16:22:10 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cse.c (check_fold_consts): New static function. | |
| (cfc_args): New struct. | |
| (simplify_relational_operation): Use them in call to | |
| `do_float_handler'. | |
| * toplev.c (do_float_handler): New function to wrap calls to | |
| setjmp/set_float_handler. | |
| * toplev.h (do_float_handler): Add extern prototype. | |
| * tree.c (build_real_from_int_cst_1): New static function. | |
| (brfic_args): New struct. | |
| (build_real_from_int_cst): Use them in call to | |
| `do_float_handler'. | |
| Sun Mar 14 01:15:06 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Mar 13 17:37:18 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_analyze_1): Only clear reg_last_uses on a SET. | |
| Sat Mar 13 11:36:16 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.c (arm_split_constant): Don't try to force a constant to | |
| memory after arm_reorg has run. | |
| (after_arm_reorg): New static variable. | |
| (arm_reorg): Set it. | |
| (output_func_epilogue): Clear it. | |
| Fri Mar 12 20:26:32 1999 David Edelsohn <edelsohn@gnu.org> | |
| * configure.in ({rs6000,powerpc}-ibm-aix*): Set float_format to none. | |
| * configure: Rebuilt. | |
| Fri Mar 12 20:45:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (loop_iterations): Don't return a final value for EQ | |
| comparison loops. | |
| Fri Mar 12 12:35:01 1999 Jim Wilson <wilson@cygnus.com> | |
| * reload1.c (calculate_needs_all_insns): When ignore equivalence | |
| setting insn, clear need_elim, need_reload, and need_operand_change. | |
| Fri Mar 12 07:54:43 1999 Bruce Korb <korb@datadesign.com> | |
| * fixinc/fixinc.*: Some changes from the fixincl-branch | |
| were not applied (??!!). Corrected. | |
| * fixinc/Makefile.in: Same thing. | |
| Fri Mar 12 00:51:43 1999 Jeffrey A Law (law@cygnus.com) | |
| * expr.c (expand_expr): Allow a CALL_EXPR with a mode wider than | |
| MAX_INTEGER_COMPUTATION_MODE. | |
| Thu Mar 11 14:00:58 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (HARD_REGNO_MODE_OK): Disallow QI/HImode in fp regs. | |
| (MODES_TIEABLE_P): Update. | |
| * alpha.md (ev5_e0): Conflict loads and stores. | |
| Thu Mar 11 13:55:52 1999 Richard Henderson <rth@cygnus.com> | |
| * machmode.h (smallest_mode_for_size): Prototype. | |
| * stor-layout.c (smallest_mode_for_size): Remove static. | |
| Thu Mar 11 21:25:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Don't do biv increment -> DEST_REG giv | |
| conversion if we don't know the lifetime. | |
| Thu Mar 11 20:37:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload.1c (delete_address_reloads_1): Check for reloads of | |
| CURRENT_INSN even if it sets DST. | |
| Thu Mar 11 10:29:50 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * dwarf2out.c (add_AT_lbl_offset): Rename from add_AT_section_offset. | |
| (print_die, size_of_die, value_format, output_die): Adjust. | |
| Thu Mar 11 10:27:42 1999 Robert Lipe <robertlipe@usa.net> | |
| * dwarf2out.c (TEXT_SECTION_LABEL, DEBUG_LINE_SECTION_LABEL, | |
| DEBUG_INFO_SECTION_LABEL, ABBREV_SECTION_LABEL, | |
| text_section_label, debug_line_section_label, | |
| debug_info_section_label, abbrev_section_label): New. | |
| (output_compilation_unit_header): Emit label associated | |
| with section instead of section name itself. | |
| (out_pubnames, output_aranges, output_line_info, | |
| dwarf2out_finish): Likewise. | |
| (dwarf2out_init): Build internal label names for sections | |
| from static labels. | |
| Thu Mar 11 17:28:32 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (mulsi3): End mul.l sequence with a no-op move. | |
| Thu Mar 11 08:52:02 1999 Bruce Korb <korb@datadesign.com> | |
| * Makefile.in: Activated fixinc/mkfixinc.sh. | |
| * configure.in: Activated fixinc/mkfixinc.sh. | |
| Thu Mar 11 01:38:02 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * cppfiles.c (INO_T_EQ): Handle UWIN. | |
| * c-common.c (decl_attributes): Flag unrecognized attribute | |
| functions as warnings instead of as errors. | |
| Support for i386-pc-uwin. | |
| * i386/uwin.h: New file. | |
| * i386/xm-uwin.h: New file. | |
| * i386/t-uwin: New file. | |
| * i386/uwin.asm: New file. | |
| * configure.in (i[3456]86-*-uwin*): Define. | |
| Add Workaround for vfork bug when hosted on uwin. | |
| * configure: Regenerate. | |
| * cccp.c (INO_T_EQ): Undefine. UWIN has inodes. | |
| (absolute_filename): UWIN uses POSIX pathnames only. | |
| * libgcc2.c (getpagesize): Do not define for UWIN. | |
| (mprotect): Likewise. | |
| * protoize.c (dirent.h): Conditionally include. | |
| (fputc): Prototype only if it's not a macro. | |
| Wed Mar 10 02:49:04 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * configure.in: Remove init_priority stuff. | |
| 1999-03-11 Colin Smith <colin@wrs.com> | |
| * sdbout.c (plain_type_1): Make boolean types work better with sdb. | |
| Thu Mar 11 00:20:52 1999 Alexandre Oliva <oliva@dcc.unicamp.br> | |
| * gcc.texi: Update bug reporting instructions to match | |
| current ezmlm list reality. | |
| Wed Mar 10 23:11:19 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcc.c (print_file_name, print_prog_name, spec_machine, | |
| read_specs, set_spec, lookup_compiler, build_search_list, | |
| putenv_from_prefixes, find_a_file, record_temp_file, | |
| delete_if_ordinary, handle_braces, do_spec, do_spec_1, find_file, | |
| is_directory, validate_switches, used_arg, default_arg, | |
| pfatal_with_name, perror_with_name, pfatal_pexecute, fatal, error, | |
| notice, add_preprocessor_option, add_assembler_option, | |
| add_linker_option, process_command, execute, | |
| unused_prefix_warnings, clear_args, fatal_error, | |
| lang_specific_driver, user_specs, compiler, link_command_spec, | |
| option_map, translate_options, make_temp_file, temp_name, | |
| programname, path_prefix, machine_suffix, just_machine_suffix, | |
| gcc_exec_prefix, standard_exec_prefix, standard_exec_prefix_1, | |
| md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1, | |
| standard_startfile_prefix, standard_startfile_prefix_1, | |
| standard_startfile_prefix_2, tooldir_base_prefix, tooldir_prefix, | |
| multilib_dir, temp_filename, temp_file, command, switchstr, | |
| infile, outfiles, input_filename, input_basename, input_suffix, | |
| check_live_switch, main): Qualify a char* with the `const' keyword. | |
| Wed Mar 10 20:28:29 1999 Jeffrey A Law (law@cygnus.com) | |
| * lcm.c: New file. | |
| * Makefile.in (OBJS): Add lcm.o. | |
| (lcm.o): Add dependencies. | |
| * gcse.c (compute_pre_local_properties): Delete. | |
| (compute_pre_data): Use compute_local_properties instead of | |
| compute_pre_local_properties. | |
| * gcse.c: More comments, whitespace and similar fixes. | |
| (dump_cuid_table, maybe_set_rd_gen, dump_cprop_data): Delete. | |
| (dump_pre_data, compute_cprop_local_properties): Likewise. | |
| (one_classic_gcse_pass): Lose unused argument. All callers changed. | |
| (compute_hash_table, compute_expr_hash_table): Likewise. | |
| (compute_set_hash_table, one_pre_gcse_pass, mark_call): Likewise. | |
| (cprop_insn, cprop, one_cprop_pass): Add new argument ALTER_JUMPS. | |
| All callers changed. Only alter jumps if ALTER_JUMPS is nonzero. | |
| Lose unused argument. | |
| (gcse_main): Always run a cprop pass after finishing global cse. | |
| (compute_local_properties): New function. | |
| (hash_scan_pat, hash_scan_insn): No longer call maybe_set_rd_gen. | |
| (compute_cprop_data): Use compute_local_properties. | |
| * gcse.c: Update various comments. | |
| (current_function_calls_longjmp): Delete declaration. | |
| * gcse.c (run_jump_opt_after_gcse): New variable. | |
| (gcse_main): Returns an integer. | |
| (hash_scan_set): Record initializations from CONST_DOUBLEs too. | |
| (try_replace_reg): Update some comments. | |
| (cprop_insn): Allow propagation into some JUMP_INSNs too. | |
| * rtl.h (gcse_main): Update prototype. | |
| * toplev.c (rest_of_compilation): If gcse_main returns nonzero, | |
| then run a jump optimization pass. | |
| * jump.c (delete_barrier_successors): Delete nop jumps too. | |
| Wed Mar 10 19:04:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.c (fp_arith_reg_operand): Actually test if reg is suitable | |
| for FP arithmetic. Changed caller. | |
| * sh.md (subsf3, subsf_i): Use fp_arith_reg_operand. | |
| Wed Mar 10 18:56:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (choose_reload_regs): When inheriting from the frame | |
| pointer, don't clobber it. | |
| Wed Mar 10 08:01:52 1999 Bruce Korb <korb@datadesign.com> | |
| * fixinc/fixinc.*: Resync-ed with the files in this | |
| directory. | |
| * fixinc/mkfixinc.sh: The machine case elements were | |
| out-of-order. (the ix86-*-linux-gnu* entry needed to | |
| be earlier). | |
| Wed Mar 10 00:01:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (reload_combine_note_store): Fix calculation of number | |
| of affected registers. | |
| Tue Mar 9 15:48:15 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (tidy_fallthru_edge): Be more careful finding the last | |
| BARRIER of a list. Delete the cc0 setter as well as a cond jump. | |
| Tue Mar 9 15:26:02 1999 Hans-Peter Nilsson <hp@bitrange.com> | |
| * i386.md (ashlsi3 splitter): Fix typo in last change. | |
| Tue Mar 9 11:35:20 1999 Richard Henderson <rth@cygnus.com> | |
| * reg-stack.c (stack_reg_life_analysis): Use returnjump_p | |
| instead of an explicit test for RETURN. | |
| Tue Mar 9 09:33:16 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (toplev.o): Depend on $(BASIC_BLOCK_H). | |
| * toplev.c: Include basic-block.h. | |
| Tue Mar 9 02:08:17 1999 Jeffrey A Law (law@cygnus.com) | |
| * calls.c (load_register_parameters): New function. | |
| (expand_call): Use it. | |
| * calls.c (expand_call): Slightly reorganize code. | |
| * calls.c (compute_argument_addresses): New function. | |
| (rtx_for_function_call): New function. | |
| (expand_call): Use them. | |
| * i386.md (zero_extendhisi2): Split into an expander and anonymous | |
| pattern. Add new anonymous pattern for use when optimizing for | |
| size or for the PPro. | |
| (zero_extendqihi2, zero_extendqisi2): Likewise. | |
| Mon Mar 8 23:43:47 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (sched_analyze_1): Fix last change -- add clobber | |
| dependencies to sets in the non-hard-reg case too. | |
| Mon Mar 8 18:55:21 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * config/openbsd.h (HANDLE_SYSV_PRAGMA): Define. | |
| Mon Mar 8 16:04:44 1999 Jim Wilson <wilson@cygnus.com> | |
| * local-alloc.c (combine_regs): Don't combine if we have a hard reg | |
| for which CLASS_LIKELY_SPILLED_P is true. | |
| * unroll.c (loop_iterations): Only call loop_find_equiv_value if we | |
| have a REG or SUBREG. | |
| Mon Mar 8 15:27:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.md (ashlsi3): Revise comments. Provide new anonymous | |
| pattern for Pentium and PPro/PII. Reverse constraints in | |
| generic ashlsi3 anonymous pattern. | |
| * calls.c (initialize_argument_info): Accept a pointer to | |
| CUMULATIVE_ARGS. | |
| (expand_call): Pass the address of CUMULATIVE_ARGS. | |
| * rs6000/xm-sysv4.h (HOST_BITS_PER_LONGLONG): Remove #if 0. | |
| * mn10300.h (CASE_DROPS_THROUGH): Delete. | |
| * mn10200.h (CASE_DROPS_THROUGH): Delete. | |
| * h8300.h (CASE_DROPS_THROUGH): Delete. | |
| * flow.c (merge_blocks_nomove): For HAVE_cc0 targets, make sure | |
| to also delete the cc0 setter when deleting a conditional branch | |
| to the next block. | |
| Mon Mar 8 18:47:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * regmove.c (copy_src_to_dest): New argument max_old_uid. | |
| Mon Mar 8 08:23:00 1999 Bruce Korb <korb@datadesign.com> | |
| * ChangeLog: Merged entries from fixincl-branch. | |
| Sun Mar 7 11:48:56 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (ENCODE_BLOCKAGE): Don't shift unit too far. | |
| (print_exp): Special case addition of a constant. | |
| (print_value) [CONST_INT]: Use HOST_WIDE_INT_PRINT_HEX. | |
| Sun Mar 7 11:21:02 1999 Richard Henderson <rth@cygnus.com> | |
| * haifa-sched.c (reg_last_clobbers): New. | |
| (reg_pending_clobbers, bb_reg_last_clobbers): New. | |
| (compute_block_backward_dependences): Allocate memory for them. | |
| (schedule_region): Likewise. | |
| (sched_analyze_1): Clobbers don't interfere with one another. | |
| They do interfere with sets ... | |
| (sched_analyze_2): ... and uses. | |
| (sched_analyze): Likewise. | |
| (sched_analyze_insn): Update reg_last_clobbers appropriately. | |
| Sun Mar 7 08:30:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gmon-sol2.c: Include config.h and system.h. Don't redundantly | |
| include system header files. | |
| (sccsid): Remove. | |
| (moncontrol, monstartup, _mcleanup, internal_mcount): Prototype. | |
| (_mcleanup): Add the `const' keyword to a char*. | |
| (internal_mcount): Declare `etext' as a char[] not a function. | |
| Cast `etext' to char* when calling `monstartup'. | |
| * sparc.c (frame_base_name, save_regs, restore_regs, | |
| build_big_number, sparc_cmodel_string, sparc_align_loops_string, | |
| sparc_align_jumps_string, sparc_align_funcs_string, code_model, | |
| cpu_default, cpu_table, output_function_prologue, | |
| output_function_epilogue, output_return, | |
| sparc_flat_output_function_prologue, ultra_code_names, | |
| sparc_flat_output_function_epilogue): Constify a char*. | |
| (hypersparc_adjust_cost): Add a default case in a switch. | |
| * sparc.h (sparc_cmodel_string, OVERRIDE_OPTIONS, | |
| sparc_cpu_select, sparc_align_loops_string, | |
| sparc_align_jumps_string, sparc_align_funcs_string, | |
| output_return): Constify a char*. | |
| * sparc.md (movdi): Change the comparison of HOST_BITS_PER_WIDE_INT | |
| so that we check "== 32", instead of "!= 64". Cast a value to | |
| HOST_WIDE_INT when comparing against one. Hide the declaration | |
| for variable `chain'. | |
| Sun Mar 7 08:05:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h (const, inline): Move the stage2 handling of these | |
| keywords-as-macros from here... | |
| * gansidecl.h (const, inline): ...to here. | |
| Sun Mar 7 02:44:15 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.c (push_operand, pop_operand): VOIDmode needn't match modes. | |
| Sun Mar 7 01:58:47 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (canon_hash): Never reject hard regs in CCmode. | |
| Sun Mar 7 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Mar 6 17:18:44 1999 Richard Earnshaw (rearnsha@arm.com) | |
| Richard Henderson <rth@cygnus.com> | |
| * flow.c (make_edges): Handle casesi that jump to default branch. | |
| If CASE_DROPS_THROUGH, force fallthru to block after casesi. | |
| Sat Mar 6 07:49:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-aux-info.c (data_type, affix_data_type, gen_decl, | |
| gen_formal_list_for_type, gen_formal_list_for_func_def, gen_type): | |
| Qualify a char* with the `const' keyword. | |
| * c-common.c (declare_hidden_char_array, add_attribute, if_elt, | |
| declare_function_name, decl_attributes, format_char_info, | |
| check_format_info, binary_op_error): Likewise. | |
| * cexp.y (yyerror, error, pedwarn, warning, token): Likewise. | |
| * gcse.c (dump_hash_table): Likewise. | |
| * integrate.c (function_cannot_inline_p): Likewise. | |
| * optabs.c: Include insn-config.h earlier. | |
| (init_libfuncs, init_integral_libfuncs, init_floating_libfuncs): | |
| Qualify a char* with the `const' keyword. | |
| * real.c (asctoe24, asctoe53, asctoe64, asctoe113, asctoe, | |
| asctoeg, mtherr, ereal_atof): Likewise. | |
| * real.h (ereal_atof): Likewise. | |
| * sbitmap.c (dump_sbitmap_vector): Likewise. | |
| * sbitmap.h (dump_sbitmap_vector): Likewise. | |
| * stmt.c (nesting, n_occurrences, expand_start_case): Likewise. | |
| * toplev.c (rest_of_compilation): Likewise. | |
| * tree.h (function_cannot_inline_p, expand_start_case): Likewise. | |
| Fri Mar 5 23:16:42 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Add 64-bit support and do | |
| not overwrite AIX link register save area. | |
| Fri Mar 5 23:08:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload.c (find_reloads_subreg_address): Actually create the USE | |
| for the register, not the new memory location. | |
| Fri Mar 5 21:41:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload1.c (emit_reload_insns): If pseudo that can't be replaced | |
| with its equivalent constant, fall back to reload_in. | |
| Fri Mar 5 13:20:39 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in: Delete .flow2 debugging files. | |
| Fri Mar 5 11:36:11 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (arm_override_options): Change default target | |
| cpu selection so that enabling TARGET_APCS_32 does not override | |
| default target CPU. | |
| Fri Mar 5 19:26:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (SLOW_BYTE_ACCESS): Define to 1. | |
| (BOOL_TYPE_SIZE): Define. | |
| Fri Mar 5 02:14:54 1999 John Wehle (john@feith.com) | |
| * function.c (assign_stack_temp_for_type): Abort | |
| if mode == Blkmode and align is less than | |
| BIGGEST_ALIGNMENT / BITS_PER_UNIT. | |
| (assign_stack_temp_for_type): Round the size parameter | |
| passed to assign_stack_local instead of size itself. | |
| Thu Mar 4 15:00:35 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (delete_unreachable_blocks): Mark blocks as they | |
| are put on to the worklist, not as they are taken off. | |
| Thu Mar 4 00:05:44 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.c (current_function_has_computed_jump): Remove duplicate | |
| definition. | |
| Wed Mar 3 19:09:11 1999 Jim Wilson <wilson@cygnus.com> | |
| * m68k/m68020-elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Undef. | |
| (STARTFILE_SPEC, ENDFILE_SPEC): Define to empty string. | |
| * sparc/elf.h (MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL, | |
| MODDI3_LIBCALL, UMODDI3_LIBCALL, STDC_0_IN_SYSTEM_HEADERS): Undef. | |
| (INIT_SUBTARGET_OPTABS): Define to empty. | |
| Wed Mar 3 00:00:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.c (force_into): New function. | |
| (expand_block_move): Use it. | |
| Tue Mar 2 10:39:43 1999 Nick Clifton <nickc@cygnus.com> | |
| * cccp.c (struct default_include): Add 'included' field. | |
| (main): Set 'included' field when a default include directory | |
| is added to the chain. If -v is specified list all default | |
| include directories which do not get appended to the chain. | |
| Tue Mar 2 09:24:10 1999 Nick Clifton <nickc@cygnus.com> | |
| * configure.in (gxx_include_dir): Rename to | |
| gcc_gxx_include_dir in order to prevent it being overridden by | |
| a top level Makefile. | |
| (gcc_tooldir): If $exec_prefix != $prefix then use the | |
| difference between the two as the basis for gcc_tooldir. | |
| * configure: Rebuild. | |
| * Makefile.in: Rename gxx_include_dir to gcc_gxx_include_dir. | |
| Tue Mar 2 16:45:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (copy_loop_body): Don't make extra copies of | |
| NOTE_INSN_LOOP_CONT notes. | |
| Tue Mar 2 07:44:56 1999 Mark Mitchell <mark@markmitchell.com> | |
| * tree.c (save_tree_status): Don't treat functions with no context | |
| as nested. | |
| Tue Mar 2 09:37:05 1999 Robert Lipe <robertlipe@usa.net> | |
| * Makefile.in (MAKEINFO): Use makeinfo built from sibling | |
| tree when available. | |
| Tue Mar 2 10:12:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * alpha.c (alpha_cpu_name, alpha_cpu_string, alpha_tp_string, | |
| alpha_fprm_string, alpha_fptm_string, alpha_mlat_string, | |
| current_function_file): Add the `const' keyword. | |
| (normal_memory_operand): Mark parameter `mode' with | |
| ATTRIBUTE_UNUSED. | |
| (alpha_expand_unaligned_load): Add a default case to a switch. | |
| * alpha.h (alpha_cpu_string, alpha_fprm_string, alpha_fptm_string, | |
| alpha_tp_string, alpha_mlat_string): Add the `const' keyword. | |
| (normal_memory_operand): Add prototype. | |
| * alpha.md: Cast an expression to `unsigned HOST_WIDE_INT' when | |
| comparing against one. | |
| Tue Mar 2 10:00:21 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * mips.c (abort_with_insn): Make function static, add a prototype, | |
| constify 2nd parameter and mark with ATTRIBUTE_NORETURN. | |
| (current_function_file, mips_cpu_string, mips_isa_string, | |
| mips_abi_string, mips_no_mips16_string, mips_entry_string, | |
| mips_move_1word, mips_move_2words, output_block_move, load_store, | |
| override_options, make_temp_file, mips16_fp_args): Qualify a char* | |
| with the `const' keyword. | |
| * mips.h (current_function_file, mips_cpu_string, mips_isa_string, | |
| mips_abi_string, mips_entry_string, mips_no_mips16_string, | |
| mips_move_1word, mips_move_2words, output_block_move): Likewise. | |
| (abort_with_insn): Remove extern prototype. | |
| * mips.md: Qualify a char* with the `const' keyword. | |
| Remove many unused variables named `label'. | |
| Tue Mar 2 01:27:52 1999 H.J. Lu (hjl@gnu.org) | |
| * Makefile.in (cpp_install_dir, INSTALL_CPP, UNINSTALL_CPP): New | |
| variables. | |
| (install-cpp, uninstall-cpp): New targets. | |
| (install-normal): Depend on $(INSTALL_CPP). | |
| (uninstall): Depend on $(UNINSTALL_CPP). | |
| * configure.in (cpp_install_dir): New, substitute. | |
| (tmake_file): Added t-install-cpp for --enable-cpp. | |
| * configure: Rebuilt. | |
| * cpp.sh: New cpp script. | |
| * config/t-install-cpp: New target fragment. | |
| Tue Mar 2 01:40:01 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| Jeffrey A Law (law@cygnus.com) | |
| * cse.c (fold_rtx): Update comments for (const (minus (label) (label))) | |
| case. | |
| (cse_insn): Avoid creating a bogus REG_EQUAL note for | |
| (const (minus (label) (label))) | |
| (record_jump_cond): Fix mismatched paren in comment. | |
| Tue Mar 2 01:07:12 1999 Dan Nicolaescu <dann@godzilla.ics.uci.edu> | |
| * final.c (end_final): There are 11 words in the "main header" | |
| structure, not 10. | |
| Tue Mar 2 00:09:18 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * extend.texi: Reference __extension__ in the index. | |
| Mon Mar 1 19:09:32 1999 Jim Wilson <wilson@cygnus.com> | |
| * Makefile.in (CROSS_FLOAT_H): Delete. | |
| (FLOAT_H): Use float_h_file. | |
| (rest.cross, stmp-int-hdrs): Delete gfloat.h dependency. | |
| (gfloat.h): Delete. | |
| (stmp-int-hdrs): Use FLOAT_H instead of gfloat.h. | |
| (mostlyclean): Delete gloat.h reference. | |
| (install-cross-rest, install-float-h-cross, stmp-headers): Update | |
| comments. | |
| * configure.in (sparcv9-*-solaris2*): Set float_format to none. | |
| (sparc-*-solaris2*): Set float_format to none for 2.5 and higher. | |
| (float_h_file): Set from float_format. Substitute into Makefile.in. | |
| (float_format): No longer substitute into Makefile.in. | |
| * cross-make (FLOAT_H): Delete. | |
| * config/mips/t-cross64 (FLOAT_H): Delete. | |
| * configure: Rebuilt. | |
| Mon Mar 1 16:36:18 1999 Jeffrey A Law (law@cygnus.com) | |
| * mips.md (div_trap_normal, div_trap_mips16): Require the dependent | |
| insn to be an INSN before looking at its pattern. | |
| Mon Mar 1 15:03:51 1999 Jim Wilson <wilson@cygnus.com> | |
| * config/m68k/lb1sf68.asm (udivsi3): Change jmi to jcs. Fix comments. | |
| * config/m68k/m68k.h (LEGITIMATE_INDEX_REG_P): Reject SIGN_EXTEND of | |
| HImode reg when TARGET_5200. | |
| Mon Mar 1 21:44:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| From Toshiyasu Morita: | |
| * sh.h (CACHE_LOG): SH2 has cache, too. | |
| Mon Mar 1 14:23:36 1999 Catherine Moore <clm@cygnus.com> | |
| * toplev.c (compile_file): Disable -ffunction-sections and | |
| debugging warning if the object format is elf. | |
| Mon Mar 1 11:46:25 1999 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * config/h8300/h8300.c (print_operand): Use 16 bit addressing | |
| when the data in 8-bit area and can not be addressed by 8-bit. | |
| Sun Feb 28 16:40:00 1999 Richard Henderson <rth@cygnus.com> | |
| * flow.c (create_basic_block): Disregard integrated bb notes. | |
| Sun Feb 28 15:57:06 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.md (blockage, nonlocal_goto_receiver): Set length to 0. | |
| Sun Feb 28 14:47:53 1999 Arturo Montes <mitosys@colomsat.com.co> | |
| * config/i386/t-sco5gas (crti.o): New target. | |
| Sun Feb 28 15:10:17 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (elf_high, movsi_got, *movsi_got_internal, | |
| *movsi_got_internal_mem, GOT splitter, movdf_hardfloat32, | |
| movdf_softfloat32, movdf_hardfloat64, movdf_softfloat64, | |
| load_multiple, allocate_stack, call_indirect_aix32, | |
| call_indirect_aix64, call_value_indirect_aix32, | |
| call_value_indirect_aix64, call_indirect_nt, | |
| call_value_indirect_nt): Use gpc_reg_operand instead of | |
| register_operand. | |
| Sun Feb 28 15:10:17 1999 Michael Meissner <meissner@cygnus.com> | |
| * rs6000.md (one_cmplsi2, andsi3, iorsi3, xorsi3, *eqvsi3, | |
| *andcsi3, *iorcsi3, *nandsi3, *norsi3): Add alternatives to use CR | |
| other than cr0. | |
| * rs6000.c (and{,64}_operand): If the user did -ffixed-cr0, don't | |
| allow andi. or andis. which always set cr0. | |
| Sun Feb 28 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Feb 28 02:00:38 1999 Jeffrey A Law (law@cygnus.com) | |
| * invoke.texi: Update information for PA scheduling. | |
| Sat Feb 27 23:21:47 1999 Jerry Quinn <jquinn@nortelnetworks.com> | |
| Mike Stump <mrs@wrs.com> | |
| * pa.c (override_options): Change default to 7100LC. | |
| * pa.h (REG_ALLOC_ORDER): Change order to allocate left half of | |
| float regs before right half of float regs. | |
| Sat Feb 27 22:48:38 1999 H.J. Lu (hjl@gnu.org) | |
| Jeffrey A Law (law@cygnus.com) | |
| * frame.h: Update some comments. | |
| * defaults.h (TARGET_ATTRIBUTE_WEAK): Define. | |
| * crtstuff.c (__register_frame_info, __deregister_frame_info): Declare | |
| using TARGET_WEAK_ATTRIBUTE. | |
| (__do_global_dtors_aux): Check if __deregister_frame_info is | |
| zero before calling it. | |
| (__do_global_dtors): Likewise. | |
| (frame_dummy): Check if __register_frame_info is zero before | |
| calling it. | |
| (__frame_dummy): Likewise. | |
| Sat Feb 27 19:18:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * SERVICE: Update from the FSF. | |
| Sat Feb 27 14:31:22 1999 Arturo Montes <mitosys@colomsat.com.co> | |
| * config/i386/t-sco5 (crti.o): New target. | |
| * config/i386/sco5.h (STARTFILE_SPEC): Include crti.o when | |
| linking -shared. | |
| * configure.in (i[34567]86-*-sco3.2v5*): Add crti.o. | |
| Sat Feb 27 01:12:40 1999 Jeffrey A Law (law@cygnus.com) | |
| * md.texi (prologue,epilogue): Document named patterns. | |
| Fri Feb 26 19:31:25 1999 Dave Love <fx@gnu.org> | |
| * md.texi, invoke.texi: Fix unterminated @xrefs. | |
| Fri Feb 26 15:33:45 1999 Richard Henderson <rth@cygnus.com> | |
| * genattrtab.c (simplify_knowing): Fix uninitialized read | |
| in Feb 21 change. | |
| * genextract.c (main): Clear recog_operands before extracting. | |
| Fri Feb 26 02:24:57 1999 Jeffrey A Law (law@cygnus.com) | |
| * c-pragma.c (add_weak); Delete. Moved into... | |
| * varasm.c (add_weak): New external function. | |
| (declare_weak): If HANDLE_PRAGMA_WEAK, then add the function to | |
| the list of weak functions. | |
| * c-pragma (add_weak): Declare. | |
| Thu Feb 25 23:43:59 1999 Richard Henderson <rth@cygnus.com> | |
| Flow rewrite to use basic block structures and edge lists: | |
| * basic-block.h (x_basic_block_head, x_basic_block_end): Kill. | |
| (basic_block_computed_jump_target, basic_block_live_at_start): Kill. | |
| (struct edge_def): New. | |
| (struct basic_block_def): New. | |
| (basic_block_info): New. | |
| (BLOCK_HEAD, BLOCK_END): Update. | |
| (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): New. | |
| (uid_block_number): Kill. | |
| (basic_block_for_insn, BLOCK_FOR_INSN): New. | |
| (BLOCK_NUM): Update. | |
| * flow.c (XNMALLOC): Kill. | |
| (max_uid_for_flow): Kill. | |
| (uid_block_number): Kill. | |
| (uid_volatile): Turn into a bitmap. | |
| (SET_INSN_VOLATILE): New. | |
| (basic_block_info): New. | |
| (entry_exit_blocks): New. | |
| (x_basic_block_head, x_basic_block_end): Kill. | |
| (basic_block_computed_jump_target, basic_block_live_at_start): Kill. | |
| (flow_int_list_blocks, basic_block_succ, basic_block_pred): Kill. | |
| (basic_block_loop_depth): Kill. | |
| (basic_block_for_insn): New. | |
| (find_basic_blocks): Split out initial block counting into | |
| count_basic_blocks. Call functions split out of find_basic_blocks_1. | |
| (count_basic_blocks): New. | |
| (find_basic_blocks_1): Split out edge recognition, unreachable | |
| block deletion. | |
| (create_basic_block): New. | |
| (compute_bb_for_insn): New. | |
| (clear_edges): New. | |
| (free_bb_memory): Kill. | |
| (add_edge, add_edge_to_label): Kill. | |
| (mark_label_ref): Kill. | |
| (make_edges): Rewrite to use edge lists. | |
| (make_edge, make_label_edge): New. | |
| (mark_critical_edges): New. | |
| (split_edge, insert_insn_on_edge): New. | |
| (commit_one_edge_insertion, commit_edge_insertions): New. | |
| (delete_unreachable_blocks): Rewrite to use edge lists. | |
| Split out EH region manipulation into delete_eh_regions. | |
| Call tidy_fallthru_edge and merge_blocks. | |
| (delete_eh_regions): New. | |
| (delete_note_p): New. | |
| (delete_insn_chain): New. | |
| (delete_block): Split out code into delete_insn_chain and | |
| tidy_fallthru_edge. Update edge lists. | |
| (expunge_block): New. | |
| (flow_delete_insn): New? | |
| (can_delete_label_p): New? | |
| (merge_blocks_nomove, merge_blocks): New. | |
| (tidy_fallthru_edge): New. | |
| (calculate_loop_depth): New. | |
| (life_analysis): Allocate and free uid_volatile. | |
| (free_basic_block_vars): Update for new structures. | |
| (record_volatile_insns): Use SET_INSN_VOLATILE. | |
| (mark_regs_live_at_end): Tidy EXIT_IGNORE_STACK usage. | |
| (mark_used_regs): Likewise. | |
| (life_analysis_1): Use bb global_live_at_start, global_live_at_end, | |
| local_set regsets. Use bb->aux to store new_live_at_end. Begin | |
| life propagation from EXIT_BLOCK rather than last block. Clear | |
| regs_ever_live after mark_regs_live_at_end. | |
| (allocate_for_life_analysis): Update for new structures. | |
| (propagate_block): Split out loop depth calculation to | |
| calculate_loop_depth. | |
| (regno_uninitialized): Use bb->global_live_at_start. | |
| (regno_clobbered_at_setjmp): Likewise. | |
| (dump_bb_data): Likewise. | |
| (find_auto_inc): Use BLOCK_FOR_INSN instead of BLOCK_NUM. | |
| (dump_flow_info): Update for new structures. | |
| (dump_edge_info): New. | |
| (print_rtl_with_bb): Update for new structures. | |
| (compute_preds_succs): Do no work -- convert edge lists. | |
| (set_block_for_insn): From corpse of old set_block_num. | |
| (set_block_num): Call it. | |
| * rtl.c (note_insn_name): Add NOTE_INSN_BASIC_BLOCK. | |
| * rtl.h (rtunion_def): Add bb entry. | |
| (NOTE_BASIC_BLOCK): New. | |
| (NOTE_INSN_BASIC_BLOCK): New. | |
| * varray.h (varray_data_tag): Add bb entry. | |
| (VARRAY_BB_INIT, VARRAY_BB): New. | |
| * emit-rtl.c (emit_label_before): New. | |
| * except.c (expand_rethrow): Delete insns following the call to | |
| rethrow. Put the REG_EH_RETHROW on the call. | |
| * jump.c (returnjump_p, returnjump_p_1): New. | |
| * expr.h (nonlocal_goto_handler_labels): New declaration. | |
| * function.c (nonlocal_goto_handler_labels): Define it. | |
| (push_function_context_to): Save it. | |
| (pop_function_context_from): Restore it. | |
| (init_function_start): Clear it. | |
| (nonlocal_label_rtx_list): Kill. | |
| * function.h (struct function): Add storage space for it. | |
| * stmt.c (expand_nl_handler_label): Return the new label. | |
| (expand_nl_goto_receivers): Collect a list of them in | |
| nonlocal_goto_handler_labels. | |
| * Makefile.in (print-rtl.o): Depend on basic-block.h. | |
| (flow.o): Depend on insn-flags.h. | |
| * function.c (thread_prologue_and_epilogue_insns): Do not | |
| half-heartedly update bb structures. | |
| * toplev.c: Add flow2 dump as -dw. | |
| (rest_of_compilation): Finish .greg before flow2. | |
| * graph.c (draw_edge): Handle class 3. | |
| (print_rtl_graph_with_bb): Make abnormal edges red class 2, | |
| change non-fall-thru but adjacent to green class 3. Update | |
| to use new structures. | |
| * print-rtl.c (print_rtx): Handle NOTE_INSN_BASIC_BLOCK. | |
| * reg-stack.c (BLOCK_NUM): Convert to function. Abort if | |
| block_number is -1. | |
| (reg_to_stack): Initialize block_num to -1. | |
| * combine.c (set_nonzero_bits_and_sign_copies): Update reference | |
| to basic_block_live_at_start to bb->global_live_at_start. | |
| (try_combine): Likewise. | |
| (reg_dead_at_p): Likewise. | |
| * global.c (global_conflicts): Likewise. | |
| Handle stack regs on all abnormal edges, not just computed jumps. | |
| (mark_elimination): Update reference to basic_block_live_at_start. | |
| (build_insn_chain): Likewise. | |
| * haifa-sched.c (haifa_edge): Rename from edge for conflict. | |
| (is_cfg_nonregular): Look at nonlocal_goto_handler_labels instead | |
| of nonlocal_label_rtx_list. | |
| (check_live_1): Update reference to basic_block_live_at_start. | |
| (update_live_1): Likewise. | |
| (find_pre_sched_live): Likewise. | |
| (find_post_sched_live): Likewise. | |
| * local-alloc.c (update_equiv_regs): Likewise. | |
| (block_alloc): Likewise. | |
| * reload1.c (reload, reload_combine): Likewise. | |
| * regmove.c (mark_flags_life_zones): Likewise. | |
| * resource.c (mark_target_live_regs): Likewise. | |
| * sched.c (schedule_block): Likewise. | |
| * regclass.c (regset_release_memory): Don't free | |
| basic_block_live_at_start. | |
| * unroll.c (copy_loop_body): Don't duplicate NOTE_INSN_BASIC_BLOCK. | |
| Thu Feb 25 21:32:34 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * fixinc.wrap: Also handle struct queue in sys/stream.h. | |
| * fixinc.svr4: Likewise. | |
| * dwarf2out.c (scope_die_for): Set scope_die to comp_unit_die | |
| rather than asserting it. | |
| Thu Feb 25 23:33:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cppexp.c (left_shift, right_shift, parse_charconst, COMPARE, | |
| cpp_parse_expr): Replace uses of long/HOST_BITS_PER_LONG with | |
| HOST_WIDEST_INT/HOST_BITS_PER_WIDEST_INT. | |
| * Makefile.in (cppmain.o, cpplib.o, cpphash.o, cppalloc.o, | |
| cpperror.o, cppexp.o, cppfiles.o, cppinit.o, fix-header.o, | |
| scan-decls.o): Don't depend on machmode.h. | |
| * cppexp.c: Don't define CHAR_BIT or HOST_BITS_PER_WIDE_INT anymore. | |
| Replace all instances of HOST_WIDE_INT with HOST_WIDEST_INT. | |
| * cppfiles.c: Likewise. | |
| * cpplib.c: Likewise. | |
| * cpplib.h: Likewise. Also don't include machmode.h anymore. | |
| Thu Feb 25 18:46:26 1999 Richard Henderson <rth@cygnus.com> | |
| * gcc.c (default_compilers): Define __FAST_MATH__ when appropriate. | |
| * objc/lang-specs.h: Likewise. | |
| Thu Feb 25 16:19:43 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (call patterns): Lose unused argument to output_call. | |
| * print-rtl.c (print_rtl): Print /j and /c for the jump/call flags. | |
| 1999-02-25 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpphash.c (install): Rename to cpp_install, add cpp_reader* | |
| first argument. All callers changed. | |
| (hashtab): Removed. | |
| (cpp_lookup, cpp_install): Change all refs to hashtab to | |
| pfile->hashtab. | |
| (cpp_hash_cleanup): Removed. | |
| * cpphash.h: Adjust prototypes. | |
| * cpplib.h (struct cpp_reader): Add hashtab pointer. | |
| * cppinit.c (cpp_reader_init): Also allocate space for the | |
| hashtab. | |
| (cpp_cleanup): Delete all macros and free the hashtab. | |
| Thu Feb 25 21:52:54 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.h (PASS_IN_REG_P): For TARGET_HITACHI, don't pass structures | |
| in registers. | |
| * expr.h (PRETEND_OUTGOING_VARARGS_NAMED): Provide default definition. | |
| * function.c (assign_parms): Honor PRETEND_OUTGOING_VARARGS_NAMED. | |
| * calls.c (expand_call): Likewise. | |
| * sh.c (sh_expand_prologue): For TARGET_HITACHI, don't push varargs / | |
| stdarg arguments. | |
| * sh.h (CPP_SPEC): Add -D__HITACHI__ for -mhitachi. | |
| (FUNCTION_ARG): For TARGET_HITACHI, don't pass unnamed | |
| arguments in registers. | |
| (PRETEND_OUTGOING_VARARGS_NAMED): Define. | |
| * va-sh.h (entire file): If __HITACHI__ is defined, use sh[123] | |
| flavor varargs. | |
| Thu Feb 25 14:32:40 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cse.c (dump_class): Revert last change and make the prototype | |
| extern. | |
| Thu Feb 25 19:13:42 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * rtl.h (insn_first_p): Don't declare. | |
| * rtlanal.c (insn_first_p): Delete. | |
| * loop.c (loop_insn_first_p): Faster implementation. | |
| Thu Feb 25 10:44:35 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.h (TARGET_SWITCHES): Delete deprecated switches -m[236]. | |
| (TARGET_3, TARGET_6): Delete. | |
| (ARM_FLAG_ARM[36]): Delete. | |
| (CPP_CPU_ARCH_SPEC): No need to handle -m[236] any more. | |
| (CC1_SPEC): Don't expand -m[236] into new equivalents. | |
| (CPP_APCS_PC_SPEC): No need to handle -m[236] any more. | |
| * arm.c (arm_override_options): Delete warnings about deprecated | |
| options -m[236]. | |
| * arm.c (arm_finalize_pic): Build the label into the special pic | |
| adjustment insn instead of issuing it separately. | |
| * arm.md (pic_add_dot_plus_eight): Rework to contain the label | |
| that is needed. | |
| * arm.md (*zeroextractqi_compare0_scratch): Delete. | |
| (*ne_zeroextractsi): New pattern. | |
| Thu Feb 25 18:40:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * stmt.c (expand_end_loop): Grok code emitted by | |
| expand_exit_loop_if_false. | |
| Thu Feb 25 10:17:32 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.c (return_in_memory): Float fields in unions | |
| force a return in memory. | |
| (load_multiple_sequence): Add comment explaining why two LDR | |
| instructions can be better than an LDMIA instruction. | |
| * config/arm/arm.h (TARGET_SHORT_BY_BYTES): Add comment | |
| describing the real meaning of this option. | |
| (FIXED_REGISTERS): Default r10 to not-fixed. | |
| (CALL_USED_REGISTERS): Default r10 to not-call-used. | |
| (SUBTARGET_CONDITIONAL_REGISTER_USAGE): If not defined, define | |
| as empty. | |
| (CONDITIONAL_REGISTER_USAGE): Fix r10 if TARGET_APCS_STACK is | |
| true. Invoke SUBTARGET_CONDITIONAL_REGISTER_USAGE after | |
| performing other checks. | |
| * config/arm/arm.md (zero_extendhisi2): Undo previous change. | |
| (extendhisi2): Undo previous change. | |
| Also add comments describing why TARGET_SHORT_BY_BYTES can be | |
| ignored for armv4(t) architectures. | |
| * config/arm/riscix.h (SUBTARGET_CONDITIONAL_REGISTER_USAGE): | |
| Define to fix r10. | |
| * config/arm/riscix1-1.h | |
| (SUBTARGET_CONDITIONAL_REGISTER_USAGE): Define to fix r10. | |
| Thu Feb 25 12:09:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cse.c (dump_class): Make the function definition static to match | |
| the prototype. | |
| Wed Feb 24 17:47:28 1999 Jim Wilson <wilson@cygnus.com> | |
| * dbxout.c (gstab.h): Use if CROSS_COMPILE. | |
| * dwarf2out.c (add_location_or_const_value_attribute): Add big | |
| endian correction for parms passed in regs but living on the stack. | |
| Wed Feb 24 14:03:54 1999 Jeffrey A Law (law@cygnus.com) | |
| * calls.c (initialize_argument_information): New function extracted | |
| from expand_call. | |
| (expand_call): Use initialize_argument_information. Remove variables | |
| which are no longer used due to cleanups. | |
| * calls.c (compute_argument_block_size): New function, extracted from | |
| expand_calls. | |
| (expand_calls): Use compute_argument_block_size. Delete | |
| original_args_size, use unadjusted_args_size instead. | |
| * calls.c (precompute_arguments): New function, extracted from | |
| expand_call. | |
| (expand_call): Use precompute_arguments. | |
| * calls.c (finalize_must_preallocate): New function, extracted from | |
| expand_call. | |
| (expand_call): Use finalize_must_preallocate. | |
| * calls.c (store_one_arg): Mark "variable_size" as possibly unused. | |
| * regclass.c (record_reg_classes, case 'p'): Set classes appropriately. | |
| An alternative always fails if it needs a pseudo and no suitable | |
| register class can be found. | |
| Wed Feb 24 19:47:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.h (loop_insn_first_p): Declare. | |
| * loop.c (loop_insn_first_p): No longer static. | |
| * unroll.c (iteration_info): Fix comparison to | |
| reg_iv_type->num_elements. | |
| Before accessing reg_biv_class, check index against | |
| max_reg_before_loop. | |
| Fix and enable code for giv iterators. | |
| (loop_iterations): Compare with reg_iv_type->num_elements instead | |
| of with max_reg_before_loop. | |
| Wed Feb 24 19:17:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (unroll_loop): Avoid out-of-bounds index for local_regno. | |
| Wed Feb 24 11:26:41 1999 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't use | |
| PIC_OFFSET_TABLE_REGNUM for register allocation when -fPIC. | |
| Tue Feb 23 16:24:19 1999 Marc Lehmann <pcg@goof.com> | |
| * config/i386/i386.md: Fix typo. | |
| Mon Feb 22 19:36:33 1999 Andrew Cagney <cagney@b1.cygnus.com> | |
| * config/mips/mips.c (mips_debugger_offset): When TARGET_MIPS16 && | |
| frame_pointer_needed adjust frame size. | |
| (function_prologue): Don't MIPS16 .mask GPOFFSET. Already adjusted | |
| in .frame pseudo-op. | |
| Frm Jim Wilson <wilson@cygnus.com>: | |
| * mips.c (function_prologue): Adjust frame size in .frame pseudo-op | |
| when TARGET_MIPS16 && frame_pointer_needed. | |
| 1999-02-22 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.h: Add TARGET_CPU_strongarm1100. | |
| Add -mno-sched command line switch to disable scheduling of | |
| instructions into the function's prologue. | |
| (enum processor_type): Remove. | |
| (TARGET_OPTIONS): Add "fpe=" option to match documentation. | |
| (struct arm_cpu_select): Replace 'set_tune_p' and 'set_arch_p' | |
| fields with 'processors' field. | |
| (CONDITIONAL_REGISTER_USAGE): Allow r10 to be used if stack | |
| checking is not enabled. | |
| (RETURN_IN_MEMORY): Always call arm_return_in_memory. | |
| * config/arm/arm.c (arm_cpu): Remove. | |
| (tune_flags): Remove. | |
| (arm_is_strong): New variable: true iff the target processor is a | |
| StrongARM. | |
| (arm_is_6_or_7): New variable: true iff the target processor is an | |
| ARM6 or and ARM7. | |
| (arm_select): Fields reorganized. | |
| (struct processors): processor_type field removed. | |
| (all_procs): Remove. | |
| (all_cores): New array: Definitions of all known ARM cpu cores. | |
| (all_architectures): New array: Definitions of all known ARM | |
| architectures. | |
| (streq): New macro. | |
| (FL_SCHED): New processor flag: processor required load | |
| scheduling. | |
| (FL_STRONG): New processor flag: processor is a StrongARM. | |
| (arm_override_options): Reorganized to make code clearer. | |
| (use_return_insn): Test for "not (TARGET_APCS and | |
| frame_pointer_needed)". | |
| (arm_return_in_memory): Improve handling of structures. | |
| * config/arm/arm.md: Remove "cpu" attribute. Replace with | |
| "is_strongarm" and "is_arm_6_or_7" attributes. | |
| (zero_extendhisi2): Check for TARGET_SHORT_BY_BYTES before | |
| arm_arch4. | |
| (extendhisi2): Check for TARGET_SHORT_BY_BYTES before arm_arch4. | |
| * invoke.texi (ARM Options): Document -mtune= and -mfp= options. | |
| 1999-02-22 Philip Blundell <philb@gnu.org> | |
| * config/arm/linux-gas.h (INITIALIZE_TRAMPOLINE): Replace default | |
| definition with one including cache synchronization. | |
| (CLEAR_INSN_CACHE): Correct syscall number and enable definition. | |
| Move definition of inhibit_libc to... | |
| * config/arm/xm-linux.h: ... here. | |
| * config/arm/t-linux: Disable multilib configurations since the | |
| only effect for most people is to cause builds to fail. | |
| * config/arm/elf.h (ASM_FILE_START): Add .file directive. | |
| (ASM_SPEC): Translate -mapcs-float to -mfloat for the assembler. | |
| * config/arm/linux-elf.h (DEFAULT_VTABLE_THUNKS): Define. | |
| (HANDLE_SYSV_PRAGMA): Likewise. | |
| (LIB_SPEC): Copy definition from generic Linux files. | |
| (LIBGCC_SPEC): Include -lfloat if -msoft-float was given. | |
| (FP_DEFAULT): Set to SOFT3 on 32-bit targets. | |
| (DWARF2_DEBUGGING_INFO): Define. | |
| (PREFERRED_DEBUGGING_TYPE): Define as DBX_DEBUG. | |
| Mon Feb 22 16:54:18 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * loop.c (libcall_other_regs): Make extern. | |
| * rtl.h (find_last_value): Add parameter to prototype. | |
| (libcall_other_reg): Add extern declaration. | |
| * rtlanal.c (find_last_value): Add another parameter to allow | |
| a definition using a hardware register to be found as well. | |
| Mon Feb 22 13:33:47 1999 Mark Mitchell <mark@markmitchell.com> | |
| * cse.c (dump_class): New function. | |
| (invalidate_memory): Fix typo in comment. | |
| * function.c (temp_slot): Add an alias set field. | |
| (assign_stack_temp): Only reuse slots if they will have the | |
| same alias set as before. | |
| (combine_temp_slots): Don't combine if -fstrict-aliasing; | |
| that's unsafe. | |
| * rtl.c (copy_rtx): Copy all the flags (in particular, | |
| MEM_SCALAR_P). | |
| Mon Feb 22 14:13:23 1999 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * configure.in (i[34567]86-*-linux-gnu*, | |
| i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*, | |
| i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as | |
| fixincludes. | |
| * configure: Rebuilt. | |
| * fixinc.x86-linux-gnu: New script for fixing asm-statements bug | |
| on x86 linux. | |
| * fixinc/fixinc.x86-linux-gnu: Copy of the previous one. | |
| * fixinc/mkfixinc.sh (i[34567]86-*-linux-gnu*, | |
| i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*, | |
| i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as | |
| fixincludes. | |
| Mon Feb 22 08:55:05 1999 Ovidiu Predescu <ovidiu@cup.hp.com> | |
| * objc/objc-act.c (encode_type): Temporary revert to the old | |
| behavior of encoding types as the new one seems to break the | |
| encoding of bitfields. | |
| Mon Feb 22 11:40:44 1999 Craig Burley <craig@jcb-sc.com> | |
| Sat Feb 20 09:59:36 1999 Craig Burley <craig@jcb-sc.com> | |
| * Makefile.in (all.internal, all.cross): Depend on `doc' | |
| target, to ensure docs get made before installation. | |
| Decrease spurious warnings from -fsyntax-only: | |
| * stmt.c (expand_expr_stmt): Expand expr even when -fsyntax-only. | |
| Mon Feb 22 10:55:00 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * c-lex.c (yylex): Replace warning about integer constants being | |
| larger than long-longs, with a warning about integer constants | |
| being larger than the largest target integer. | |
| Mon Feb 22 08:35:38 1999 Craig Burley <craig@jcb-sc.com> | |
| Fix -fsyntax-only ICEs: | |
| * varasm.c (assemble_zeros, assemble_variable, | |
| output_constant_def): Do nothing when -fsyntax-only. | |
| Fri Feb 19 18:18:56 1999 Don Bowman <don@pixstream.com> | |
| * configure.in (mips*-*-vxworks*): Enable gthreads vxworks support. | |
| * configure: Rebuilt. | |
| Sun Feb 21 20:34:44 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Feb 21 20:35:10 1999 Jeffrey A Law (law@cygnus.com) | |
| * config/aoutos.h (ASM_OUTPUT_CONSTRUCTOR): Delete. | |
| (ASM_OUTPUT_DESTRUCTOR, ASM_OUTPUT_GC_ENTRY): Likewise. | |
| * tm.texi: Update docs for constructors and destructors. | |
| Sun Feb 21 17:11:18 1999 Richard Henderson <rth@cygnus.com> | |
| * genattrtab.c (check_attr_value): Allow negative const_int if | |
| negative_ok. Accept integral arithmetic operators. Accept | |
| direct references to other attributes. Accept symbol_ref in | |
| non-constant attributes. | |
| (max_attr_value): Add new argument `unknownp'. Update all callers. | |
| (or_attr_value): Likewise. | |
| (simplify_knowing): Don't optimize if max_attr_value unknown. | |
| (write_length_unit_log): Likewise with or_attr_value. | |
| (find_and_mark_used_attributes): Don't fallthru case. | |
| (write_attr_set): Pass thru all non-cond expressions. | |
| (write_attr_value): Handle symbol_ref, attr, and arithmetic. | |
| Sun Feb 21 13:16:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * regmove.c (discover_flags_reg): Use word_mode instead of SImode. | |
| Sun Feb 21 13:15:40 1999 Richard Henderson <rth@cygnus.com> | |
| * regmove.c (discover_flags_reg): Remove cc0 code. | |
| (mark_flags_life_zones) [HAVE_cc0]: Force use of cc0; bail if | |
| a potential flags register was identified. | |
| Sat Feb 20 16:16:07 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
| * rs6000.md (scc plus ltu): Fix typo in last change. | |
| Sat Feb 20 09:08:44 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * xm-arm.h (HOST_BITS_PER_LONGLONG): Define. | |
| Fri Feb 19 23:02:02 1999 Richard Henderson <rth@cygnus.com> | |
| * regmove.c (discover_flags_reg): New function. | |
| (flags_set_1, mark_flags_life_zones): New functions. | |
| (regmove_optimize): Call them. | |
| (fixup_match_1): Use insn modes rather than sets_cc0_p. | |
| Fri Feb 19 22:47:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * rtlanal.c (insn_first_p): Fix return value for insn == reference. | |
| * loop.c (strength_reduce, check_final_value, check_dbra_loop): | |
| Use loop_insn_first_p. | |
| Fri Feb 19 15:49:26 1999 Michael Meissner <meissner@cygnus.com> | |
| David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (scc plus eq): Fix output template. | |
| (scc plus ltu): Fix output template and collapse variants | |
| correcting early clobbers. | |
| (scc plus geu): Fix output template. | |
| (scc plus gt): Fix output template. | |
| (scc plus gtu): Fix output template and collapse variants. | |
| Fri Feb 19 15:43:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cppinit.c (print_help): Remove unescaped newline in string. | |
| Fri Feb 19 19:55:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Check for intervening jumps when | |
| converting biv increment to giv. | |
| Thu Feb 18 16:36:58 1999 Per Bothner <bothner@cygnus.com> | |
| * tree.def (TRY_FINALLY_EXPR, GOTO_SUBROUTINE_EXPR): New tree nodes, | |
| * expr.c (expand_expr): Support new tree nodes. | |
| Fri Feb 19 10:17:56 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/m68k/m68k.c (m68k_align_loops_string, | |
| m68k_align_jumps_string, m68k_align_funcs_string): Add const. | |
| * config/m68k/m68k.h (m68k_align_loops_string, | |
| m68k_align_jumps_string, m68k_align_funcs_string): Likewise. | |
| Thu Feb 18 23:28:35 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * bitmap.c (bitmap_print): Qualify a char* with the `const' keyword. | |
| * bitmap.h (bitmap_print): Likewise. | |
| * c-decl.c (builtin_function, grokdeclarator, grokfield): Likewise. | |
| * c-lang.c (build_objc_string): Likewise. | |
| * c-lex.c (yyerror, extend_token_buffer): Likewise. Don't include | |
| limits.h or ctype.h. Remove unused variable `p'. | |
| * c-lex.h (yyerror): Qualify a char* with the `const' keyword. | |
| * c-pragma.c (handle_pragma_token): Likewise. | |
| * c-pragma.h (handle_pragma_token): Likewise. | |
| * c-tree.h (build_objc_string, builtin_function, grokfield, | |
| build_indirect_ref, lvalue_or_else, readonly_warning, error_init, | |
| pedwarn_init): Likewise. | |
| * c-typeck.c (convert_for_assignment, warn_for_assignment, | |
| push_string, warning_init, incomplete_type_error, | |
| build_indirect_ref, lvalue_or_else, readonly_warning, | |
| build_c_cast, spelling, push_member_name, print_spelling, | |
| error_init, pedwarn_init, start_init): Likewise. | |
| * objc/objc-act.c (build_objc_string): Likewise. | |
| * print-tree.c (print_node_brief, print_node): Likewise. | |
| * tree.h (lvalue_or_else, print_node, print_node_brief): Likewise. | |
| Thu Feb 18 20:44:21 1999 David Edelsohn <edelsohn@gnu.org> | |
| * regclass.c (record_reg_classes): Correctly handle 'p' constraint. | |
| Thu Feb 18 19:59:37 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * configure.in :Handle OpenBSD platforms. | |
| * configure: Rebuilt. | |
| * config/openbsd.h: New file. | |
| * config/xm-openbsd.h: New file. | |
| * config/t-openbsd: New file. | |
| * config/t-openbsd-thread: New file. | |
| Thu Feb 18 18:47:09 1999 Jeffrey A Law (law@cygnus.com) | |
| * function.c (assign_stack_temp_for_type): Round SIZE before calling | |
| assign_stack_local for BLKmode slots. | |
| Fri Feb 19 01:45:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): For derived givs, replace the | |
| giv this was derived from with its new_reg. | |
| (recombine_givs): Don't set new_reg for derived giv. | |
| And don't print it, print SUM instead. | |
| Thu Feb 18 15:52:49 1999 Jim Wilson <wilson@cygnus.com> | |
| * m68kelf.h (ASM_RETURN_CASE_JUMP): Add 5200 support. | |
| 1999-02-18 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpplib.c: Kill define of STDC_VALUE. Don't include output.h | |
| or prefix.h. Change CPP_IS_MACRO_BUFFER to not refer to | |
| macro_cleanup. | |
| (GET_ENV_PATH_LIST, PATH_SEPARATOR, STANDARD_INCLUDE_DIR, | |
| predefs, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE, | |
| CPP_WCHAR_TYPE, USER_LABEL_PREFIX, REGISTER_PREFIX, struct | |
| cpp_pending, version_string, struct default_include, | |
| include_defaults_array, path_include, cpp_options_init, | |
| dump_special_to_buffer, initialize_builtins, cpp_start_read, | |
| cpp_reader_init, nreverse_pending, push_pending, print_help, | |
| cpp_handle_option, cpp_handle_options, cpp_finish, | |
| cpp_cleanup): Move to cppinit.c. | |
| (macro_cleanup, struct arglist, collect_expansion, | |
| create_definition, compare_defs, comp_def_part, ARG_BASE, | |
| struct argdata, macarg, change_newlines, timestamp, | |
| monthnames, special_symbol, unsafe_chars, macroexpand, | |
| push_macro_expansion): Move to cpphash.c. | |
| (quote_string, check_macro_name, cpp_expand_to_buffer, | |
| output_line_command, cpp_undef): Export. | |
| (null_underflow, null_cleanup, handle_directive): Make static. | |
| * cpplib.h: Prototype now-exported functions. Adjust decls of | |
| syntax tables so we can include cpplib.h in cppinit.c. | |
| * cpphash.h: Prototype all functions exported by cpphash.c. | |
| * cppinit.c: Make syntax tables initialized data if possible | |
| (uses GCC designated-initializer extension). | |
| * cppexp.c: Make cpp_lex static. | |
| * Makefile.in: Move -D switches for the various include dirs | |
| from cpplib.o rule to cppinit.o rule. Adjust dependencies. | |
| Thu Feb 18 13:15:56 1999 Marc Espie <espie@cvs.openbsd.org> | |
| * alpha/openbsd.h: New file. | |
| * alpha/xm-openbsd.h: New file. | |
| * sparc/openbsd.h: New file. | |
| * sparc/xm-openbsd.h: New file. | |
| * m68k/openbsd.h: New file. | |
| * m68k/xm-openbsd.h: New file. | |
| * i386/openbsd.h: New file, originally from netbsd. | |
| * i386/xm-openbsd.h: New file. | |
| 1999-02-17 Zack Weinberg <zack@rabi.columbia.edu> | |
| * Makefile.in: Correct dependencies for cpplib object files. | |
| Wed Feb 17 14:04:18 1999 Michael Meissner <meissner@cygnus.com> | |
| * rs6000.md ({add,sub}si3 `.'): Add alternatives to use CR other | |
| than cr0. | |
| Wed Feb 17 16:59:28 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Don't move giv insn for biv turned giv | |
| below scan_start. | |
| Wed Feb 17 10:56:24 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * tree.c (tree_node_kind_names, print_obstack_name, | |
| get_identifier, maybe_get_identifier, build_string, | |
| build_expr_wfl, is_attribute_p, lookup_attribute, | |
| print_obstack_statistics, get_file_function_name_long, tree_check, | |
| tree_class_check, expr_check): Qualify a char* with the `const' | |
| keyword. | |
| * tree.h (get_identifier, maybe_get_identifier, build_string, | |
| build_expr_wfl, is_attribute_p, lookup_attribute, | |
| print_obstack_statistics, print_obstack_name, tree_check, | |
| tree_class_check, expr_check): Likewise. | |
| Tue Feb 16 21:29:38 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386/freebsd-elf.h, i386/gas.h, i386/linux.h: Fix minor spacing | |
| errors. | |
| * calls.c (store_one_arg): Mark any slots used for the argument | |
| as in-use immediately after we're done saving any slots which | |
| will be overwritten by this argument. | |
| Tue Feb 16 21:02:07 1999 Anton Hartl <toni@devsoft.com> | |
| * rs6000.md (call_value): Fix typo. | |
| Wed Feb 17 01:29:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Calculate maybe_dead before | |
| calling recombine_givs. | |
| Wed Feb 17 00:43:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Dump biv increment -> giv conversions. | |
| Tue Feb 16 15:31:39 1999 Ovidiu Predescu <ovidiu@cup.hp.com> | |
| * objc/objc-act.c (encode_type): Encode the type instead of | |
| encoding the mode of the type (patch from Richard Frith-Macdonald | |
| <richard@brainstorm.co.uk>). | |
| Tue Feb 16 10:53:51 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * config/arm/arm.md (*zeroextractqi_compare0_scratch): Re-add load | |
| instruction killed in previous change. Simplify mask generation. | |
| (*zeroextractsi_compare0_scratch): Simplify mask generation. | |
| Tue Feb 16 09:52:26 1999 Nick Clifton <nickc@cygnus.com> | |
| * config/arm/arm.md (zeroextractqi_compare0_scratch): Ensure that | |
| bitfield does not overflow a byte boundary. | |
| Tue Feb 16 01:37:33 1999 Charles G Waldman <cgw@alum.mit.edu> | |
| * c-common.c (shorten_compare): Get the min/max value from the | |
| underlying type of an enumeration, not the enumerated type itself. | |
| Mon Feb 15 23:04:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * jump.c: Include insn-attr.h. | |
| (delete_computation): If reload has completed and insn scheduling | |
| after reload is enabled, then do not depend on REG_DEAD notes. | |
| * Makefile.in (jump.o): Depend on insn-attr.h. | |
| Mon Feb 15 16:57:38 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.md (addsi3): Allow lea for any constant_p. | |
| 1999-02-15 Zack Weinberg <zack@rabi.columbia.edu> | |
| * toplev.c (documented_lang_options): Remove -fident and | |
| -fnoident, which are now handled by the language independent | |
| option parser. | |
| 1999-02-15 Zack Weinberg <zack@rabi.columbia.edu> | |
| * c-common.c (UNGETC [USE_CPPLIB=1]): Do nothing if c is EOF. | |
| * c-lex.c: Likewise. | |
| * cpplib.c (cpp_push_buffer, cpp_pop_buffer): Use a linked | |
| list in malloced memory for the buffer stack. | |
| (cpp_get_token): Don't pop the last buffer off the stack. | |
| Calls after CPP_EOF has been returned produce CPP_EOF with no | |
| state change. | |
| (cpp_finish): Pop last buffer here. | |
| (do_line): Don't free ip->last_nominal_fname if it is equal to | |
| ip->fname. | |
| (special_symbol): If a T_CONST is the empty string, push a | |
| single `@ ' escape instead. | |
| (macroexpand): Special symbol buffers have escapes too. | |
| * cpplib.h (struct cpp_buffer): Remove unused fields, add prev | |
| buffer pointer. | |
| (struct cpp_reader): Remove buffer_stack. Add | |
| buffer_stack_depth. | |
| (CPP_PREV_BUFFER, CPP_NULL_BUFFER): Buffer stack is now a | |
| linked list. | |
| Mon Feb 15 14:44:53 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c: Don't define HOST_WIDE_INT. Replace all occurrences of | |
| WIDE_INT with WIDEST_INT. | |
| * cexp.y: Likewise. | |
| Don't define unsigned_HOST_WIDE_INT, CHAR_BIT or | |
| HOST_BITS_PER_WIDE_INT. Replace occurrences of PRINTF_PROTO_1() | |
| style with PVPROTO() ATTRIBUTE_PRINTF_1 style macros. Replace | |
| occurrences of "unsigned_HOST" with "unsigned HOST". Provide a | |
| definition of variable `c89' when compiling a test binary and set it. | |
| * system.h: Don't define the PRINTF_PROTO_* macros. | |
| Mon Feb 15 11:33:51 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (mark_loop_jump): Handle LO_SUM. If we encounter something | |
| we do not understand, mark the loop and containing loops as invalid. | |
| Mon Feb 15 00:40:45 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * alias.c (init_alias_analysis): Avoid self-referential value | |
| when setting reg_known_value from REG_EQUAL notes. | |
| Sun Feb 14 23:12:10 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (legitimate_address_p): Verify modes of base and index. | |
| Sun Feb 14 23:01:28 1999 Richard Henderson <rth@cygnus.com> | |
| * i386.c (legitimate_pic_address_disp_p): Remove static. | |
| * i386.h (LEGITIMATE_PIC_OPERAND_P): Use it instead of | |
| open-coding cases. | |
| Sun Feb 14 21:03:28 1999 Jeffrey A Law (law@cygnus.com) | |
| * except.c (start_catch_handler): Use emit_cmp_and_jump_insns. | |
| * explow.c (probe_stack_range): Likewise. | |
| * expmed.c (do_cmp_and_jump): Likewise. | |
| * expr.c (store_expr, expand_expr, expand_builtin): Likewise. | |
| (do_tablejump): Likewise. | |
| * stmt.c (expand_expr_stmt, expand_end_case): Likewise. | |
| (do_jump_if_equal, emit_case_nodes): Likewise. | |
| * optabs.c (emit_cmp_and_jump_insns): Clarify comments. If UNSIGNEDP, | |
| then convert comparison to an unsigned code before emitting the jump. | |
| (expand_float, expand_fix): Use emit_cmp_and_jump_insns. | |
| Sun Feb 14 02:24:15 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Feb 14 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Feb 14 00:45:50 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c: Disable recent loop changes. Temporary as Joern | |
| continues to fix problems. | |
| Sat Feb 13 23:29:42 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.c (combine_givs_used_by_other): Delete. | |
| (combine_givs_benefit_from): Delete. | |
| (combine_givs): Deny combination of givs only used once. Simplify | |
| code with the death of combine_givs_benefit_from. | |
| Sun Feb 14 11:24:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * loop.c (scan_loop): Call reg_in_basic_block_p before | |
| loop_reg_used_before_p. | |
| Sat Feb 13 05:32:00 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * arm.md: Use gen_rtx_FOO instead of gen_rtx (FOO, ...). | |
| * arm.h: Likewise. | |
| * arm.c: Likewise. | |
| * arm.h (TARGET_OPTIONS): Reformat for clarity. | |
| (GO_IF_LEGITIMATE_ADDRESS): When generating PIC, references to symbols | |
| in the constant pool aren't valid. | |
| (LEGITIMATE_PIC_OPERAND_P): Likewise. | |
| * arm.c: Include "system.h", not stdio.h and string.h. | |
| Fri Feb 12 13:06:28 1999 Jim Wilson <wilson@cygnus.com> | |
| * stmt.c (expand_return): Return if optimize_tail_recursion succeeded. | |
| (optimize_tail_recursion): Change return type from void to int. | |
| Add return statements. | |
| * tree.h (optimize_tail_recursion): Change prototype to match. | |
| Fri Feb 12 21:09:51 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * reload.c (find_reloads_subreg_address): New function, broken out of | |
| find_reloads_toplev. | |
| (find_reloads_toplev, find_reloads_address_1): Use it. | |
| Fri Feb 12 13:20:52 1999 Jeffrey A Law (law@cygnus.com) | |
| * h8300.md (zero_extendhisi2 H8/300 variant): Correctly handle | |
| extending a CONST_INT. | |
| * h8300.md (peephole for combining memrefs): Delete incorrect peephole. | |
| Fri Feb 12 18:29:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (loop_insn_first_p, biv_elimination_giv_has_0_offset): | |
| New functions. | |
| (maybe_eliminate_biv_1): Use biv_elimination_giv_has_0_offset. | |
| Fri Feb 12 16:56:10 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (load_mems): Don't guess how to do a load / store, use | |
| emit_move_insn. | |
| Fri Feb 12 09:24:26 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h: Provide a definition for HOST_WIDEST_INT, etc. | |
| Fri Feb 12 23:37:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_address_cost): Revert 9 Feb change. | |
| Fri Feb 12 00:51:26 1999 Jeffrey A Law (law@cygnus.com) | |
| * reload.c (find_reloads_address_1): Fix handling of an autoincremented | |
| pseudo which is homed in the stack. | |
| * mips.c (save_restore_insns): Fix loop to save/restore FP registers. | |
| (compute_frame_size): Change loop over FP regs to be consistent | |
| with the loop in save_restore_insns. | |
| Thu Feb 11 17:38:40 1999 Jim Wilson <wilson@cygnus.com> | |
| * i960/i960.h (OVERRIDE_OPTIONS): Warn if -mlong-double-64 is used. | |
| (LONG_DOUBLE_TYPE_SIZE): Undef then unconditionally define to 96. | |
| Thu Feb 11 15:11:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * mn10200.md (bset); Re-enable. | |
| Thu Feb 11 15:20:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (is_sfunc): New attribute. | |
| * sh.h (INSN_SETS_ARE_DELAYED, INSN_REFERENCES_ARE_DELAYED): Use it. | |
| Thu Feb 11 01:06:49 1999 Nathan Sidwell <nathan@acm.org> | |
| * fold-const.c (range_binop): Take account of the bounded nature | |
| of fixed length arithmetic when comparing unbounded ranges. | |
| Thu Feb 11 00:08:17 1999 John Wehle (john@feith.com) | |
| * function.c (assign_stack_temp_for_type): Clear best_p | |
| when an exact match is found. | |
| * i386.h (LOCAL_ALIGNMENT): Define. | |
| * function.c (assign_stack_local, assign_outer_stack_local): Use it. | |
| (assign_stack_temp_for_type): New function based on assign_stack_temp. | |
| (assign_stack_temp): Call it. | |
| (assign_temp): Use assign_stack_temp_for_type, not assign_stack_temp. | |
| * stmt.c: Use assign_temp, not assign_stack_temp. | |
| * tm.texi: Document LOCAL_ALIGNMENT. | |
| Wed Feb 10 23:28:28 1999 Jeffrey A Law (law@cygnus.com) | |
| * reorg.c: Finish deleting half-deleted comment. | |
| Wed Feb 10 17:12:21 1999 Jim Wilson <wilson@cygnus.com> | |
| * emit-rtl.c (operand_subword): Sign extend REAL_VALUE_TO_TARGET_SINGLE | |
| result. | |
| * final.c (split_double): Sign extend REAL_VALUE_TO_TARGET_DOUBLE | |
| result. | |
| * real.c (endian): Delete sign extension code. | |
| * config/m32r/m32r.md (movsf_insn+1): REAL_VALUE_TO_TARGET_SINGLE call | |
| replaced with operand_subword call. | |
| Wed Feb 10 15:16:39 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (cmov compound patterns): Delete. Jump can now | |
| create the correct constructs in the first place. | |
| Wed Feb 10 11:03:22 1999 Richard Henderson <rth@cygnus.com> | |
| * configure.in (alphaev6*): Fix typo in target_cpu_default2. | |
| Wed Feb 10 13:59:18 1999 Dave Brolley <brolley@cygnus.com> | |
| * mbchar.c (local_mb_cur_max): Handle the case where MB_CUR_MAX is 0. | |
| Wed Feb 10 10:35:05 1999 Jim Wilson <wilson@cygnus.com> | |
| * tmp-emsgids.c: Delete. | |
| Wed Feb 10 09:57:08 1999 Mark Mitchell <mark@markmitchell.com> | |
| * rtlanal.c (for_each_rtx): Fix declaration to conform to GNU | |
| coding standards. | |
| Wed Feb 10 10:09:41 1999 Jeffrey A Law (law@cygnus.com) | |
| * mn10200.md (bset, bclr): Operand 0 is a read/write operand. | |
| * reload1.c (reload_combine_note_store): Second argument is no | |
| longer unused/ignored. Handle multi-register hard regs. | |
| (move2add_note_store): Simplify. | |
| Wed Feb 10 10:05:23 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * collect2.c (collect_execute): Remove cygwin-specific code. | |
| Tue Feb 9 17:27:29 1999 Nathan Sidwell <nathan@acm.org> | |
| * system.h (_, N_): Remove dummy i18n macros. | |
| * protoize.c: Move inclusion of intl.h to after system.h. | |
| * cexp.y: Include intl.h. | |
| * cexp.c: Rebuilt. | |
| Tue Feb 9 16:52:22 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
| * i386/cygwin.h (SUBTARGET_OVERRIDE_OPTIONS): New macro to ignore | |
| fpic/fPIC for windows32 targets. | |
| * i386/xm-cygwin.h (GET_ENV_PATH_LIST): Replace '\\' in windows32 | |
| paths with '/'. | |
| * i386/mingw32.h (CPP_SPEC): Define. | |
| (CPP_PREDEFINES): Add MINGW32 version id. | |
| * i386/crtdll.h (CPP_PREDEFINES): Likewise. | |
| * Makefile.in (collect2$(exeext)): Delete redundant dependency and | |
| add missing exeext to target. | |
| * gcc.c (convert_filename): Handle null filename argument. | |
| Wed Feb 10 15:46:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*movhf_noclobber, *movhi_noclobber): Use | |
| m constraint instead of QT. | |
| 1999-02-09 Brendan Kehoe <brendan@cygnus.com> | |
| * cpplib.c (special_symbol): Move IP to be declared in function | |
| scope, rather than individual case statements. | |
| 1999-02-09 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppfiles.c (finclude): Handle pipes properly under old BSD | |
| derivatives. | |
| 1999-02-09 Melissa O'Neill <oneill@cs.sfu.ca> | |
| * system.h: Provide fallback definitions for S_ISCHR, | |
| S_ISSOCK, S_ISFIFO, O_NONBLOCK, and O_NOCTTY. | |
| 1999-02-09 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpplib.c (do_define): Allow redefining __STDC__ with -D. | |
| 1999-02-09 Jim Blandy <jimb@zwingli.cygnus.com> | |
| * configure.in: For PowerPC configurations, accept "401", "ec603e", | |
| "740", and "750" as valid arguments to --with-cpu. | |
| * configure: Rebuilt. | |
| Tue Feb 9 00:00:14 1999 Mark Kettenis <kettenis@gnu.org> | |
| * configure.in (i[34567]86-*gnu*): Set float_format to i386. | |
| * configure: Rebuilt. | |
| Mon Feb 8 22:38:24 1999 Jeffrey A Law (law@cygnus.com) | |
| * rs6000.md: Revert "alternate use of crs if cr0 not available" | |
| patches from 01-22-1999, 01-24-1999, 01-26-1999, and 02-08-1999. | |
| Mon Feb 8 21:36:44 1999 Richard Henderson <rth@cygnus.com> | |
| * output.h (current_function_has_computed_jump): Rename from | |
| current_function_addresses_labels. | |
| * function.h (struct function): Likewise for addresses_labels member. | |
| * rtl.h (FUNCTION_FLAGS_HAS_COMPUTED_JUMP): Likewise. | |
| * function.c (current_function_has_computed_jump): Likewise. | |
| Update all references. | |
| * integrate.c (function_cannot_inline_p): | |
| Test current_function_has_computed_jump instead of addresses_labels. | |
| (initialize_for_inline): Likewise save. | |
| (output_inline_function): Likewise restore. | |
| * expr.c (expand_expr): Don't reference addresses_labels variables. | |
| * stmt.c (expand_computed_goto): Set has_computed_jump. | |
| 1999-02-08 Michael Meissner <meissner@cygnus.com> | |
| This is being installed only to get it into the repository to help | |
| with the revert, resubmit & review process for the massive rs6000.md | |
| changes. | |
| * rs6000.md (andsi3_internal1 splitter): Don't split if using the | |
| rlwinm instruction. | |
| (anddi3_internal1): Likewise. | |
| (andsi3_internal{2,3}): Correct some insn lengths. | |
| (anddi3*): Restore missing TARGET_POWERPC64, and don't emit old | |
| mnemonics. | |
| Mon Feb 8 21:31:06 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.c (reg_single_usage): New file-scope variable ... | |
| (scan_loop): ... moved out of here. Always initialize. | |
| Test loop_has_call instead of reg_single_usage not zero. | |
| Free reg_single_usage after strength reduction. | |
| (count_loop_regs_set): Assume single_usage nonzero. | |
| (combine_givs_used_by_other): Test reg_single_usage. | |
| (load_mems_and_recount_loop_regs_set): Remove reg_single_usage | |
| as a parameter. Assume nonzero. | |
| 1999-02-08 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu> | |
| * cpplib.c (special_symbol): Rewrite. Don't copy things | |
| multiple times. Handle __STDC__ specially. T_CONST | |
| indicates a constant /string/. Don't handle T_*_TYPE and | |
| T_SPEC_DEFINED. Use cpp_buf_line_and_col instead of | |
| adjust_position. Determine the file buffer only if needed. | |
| (initialize_builtins): Handle __SIZE_TYPE__, | |
| __PTRDIFF_TYPE__, __WCHAR_TYPE__, __USER_LABEL_PREFIX__, and | |
| __REGISTER_PREFIX__ with T_CONST special hashtab entries. | |
| Don't provide __OBJC__; the driver does that. Provide | |
| __STDC_VERSION__, using T_CONST. Use T_STDC for | |
| __STDC__. Give install the length of all symbols defined. | |
| (eval_if_expression): Drop code to insert and remove the | |
| "defined" special symbol. | |
| * cpplib.h: Remove SELF_DIR_DUMMY (no longer used). Remove | |
| T_*_TYPE and T_SPEC_DEFINED from enum node_type; add T_STDC. | |
| * cpphash.c (install): Drop the `ivalue' parameter. Constify | |
| the `value' parameter. All callers changed. | |
| * cpphash.h (install): Change prototype to match. | |
| (union hashval): Remove `ival' member. | |
| * cppexp.c (cpp_lex): Handle `defined' here. | |
| Mon Feb 8 17:29:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.h (EXTRA_CONSTRAINT): Fix comment. | |
| Mon Feb 8 18:57:45 1999 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * c-typeck.c (check_init_type_bitfields): Use nonincremental | |
| initialization of unions whose first member is a bitfield. | |
| Remove unnecessary code for checking the declaration mode | |
| after DECL_C_BIT_FIELD. | |
| * varasm.c (output_constructor): Additional comment about the | |
| constructor of bitfield union initialization. | |
| Tue Feb 9 11:55:04 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (*movhi_stik): New pattern. | |
| (movhi): Allow some immediate constants to be directly | |
| stored in memory. | |
| Tue Feb 9 11:34:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (all call patterns): Add constraints "Ur". | |
| (call, call_value): Force address into a register if not valid | |
| for a call instruction. | |
| (load_immed_address): Emit a USE of the SYMBOL_REF that is | |
| forced into memory. | |
| * config/c4x/c4x.c (c4x_print_operand): Fix 'C' and 'U' modifiers. | |
| Tue Feb 9 11:08:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (call_address_operand, symbolic_address_operand): | |
| Rename from call_operand and symbolic_operand respectively. All | |
| callers changed. | |
| * config/c4x/c4x.md (call_address_operand, symbolic_address_operand): | |
| Likewise. | |
| * config/c4x/c4x.h (call_address_operand, symbolic_address_operand): | |
| Likewise. | |
| (PREDICATE_CODES): Allow CONST, LABEL_REF for call_address_operand. | |
| Tue Feb 9 10:52:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_legitimize_address): Don't generate a | |
| LO_SUM address for HImode or HFmode but instead force address into | |
| a register so that it is offsettable. | |
| (c4x_emit_move_sequence): Handle LO_SUM immediate address. | |
| Tue Feb 9 10:46:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_address_cost): Return cost of 1 for | |
| REG+REG addressing if strength reduction enabled. | |
| Tue Feb 9 10:10:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/t-c4x (LIBGCC2_CFLAGS): Delete. | |
| (TARGET_LIBGCC2_CFLAGS): Define. | |
| 1999-02-08 Nick Clifton <nickc@cygnus.com> | |
| * config/v850/v850.md: Replace \\n\\t with \\; | |
| * config/v850/v850.md: Enforce TARGET_LONG_CALLS option. | |
| * config/v850/v850.c (construct_restore_jr, construct_save_jarl): | |
| Enforce TARGET_LONG_CALLS option. | |
| Mon Feb 8 11:43:07 1999 Donn Terry <donn@interix.com> | |
| * real.c (PUT_REAL) [XFmode]: Zero the balance of the structure. | |
| Mon Feb 8 11:37:24 1999 Marc Espie (espie@cvs.openbsd.org) | |
| * m88k/t-luna-gas: Remove bash dependency. | |
| Mon Feb 8 11:34:44 1999 Graham <grahams@rcp.co.uk> | |
| * collect2.c (xrealloc): Fix typo in last change. | |
| Mon Feb 8 09:13:38 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Feb 7 22:18:42 1999 Robert Lipe <robertlipe@usa.net> | |
| * tree.h (TYPE_CHECK): Make it clear to the preprocessor | |
| that we do not want macro replacement within a character constant. | |
| (TYPE_CHECK1): Likewise. | |
| Sun Feb 7 15:37:10 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * tree.h (DECL_P): New macro. | |
| Sun Feb 7 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Feb 6 18:14:46 1999 Jeffrey A Law (law@cygnus.com) | |
| * mn10300.md (reload_insi): Do not earlyclobber the output operand. | |
| * README.g77, gcc.c, gcc.texi: Update email addresses. | |
| * invoke.texi system.h: Likewise. | |
| Sat Feb 6 11:04:08 1999 Jim Wilson <wilson@cygnus.com> | |
| * unroll.c (find_splittable_givs): After express_from, call replace_rtx | |
| to convert dest_reg to new_reg. | |
| Sat Feb 6 10:31:35 1999 Jeffrey A Law (law@cygnus.com) | |
| * reload1.c (reload_combine_note_store): Be more careful with | |
| STRICT_LOW_PART, ZERO_EXTRACT and SIGN_EXTRACT. | |
| (move2add_note_store): Likewise. | |
| Sat Feb 6 10:18:01 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cppfiles.c (read_and_prescan): Cast the result of `xrealloc' to | |
| U_CHAR* when assigning to one. Ensure the values of a ?: operator | |
| have the same type. | |
| * cppinit.c (initialize_char_syntax): Use K&R function definition. | |
| Sat Feb 6 11:17:03 1999 Richard Earnshaw <rearnsha@arm.com> | |
| Support for ARM9 | |
| * config/arm/arm.c (all_procs): Add arm9 and arm9tdmi. | |
| * config/arm/arm.h ((TARGET_CPU_arm9, TARGET_CPUD_arm9tdmi): Define. | |
| (TARGET_CPU_DEFAULT): Rework to support ARM9. | |
| (CPP_CPU_ARCH_SPEC): Likewise. | |
| (enum processor_type): Likewise. | |
| * config/arm/arm.md (attr cpu): Add arm9. | |
| General scheduling changes | |
| * config/arm/arm.c (MAX_INSNS_SKIPPED): Delete. | |
| (max_insns_skipped): New variable. | |
| (arm_override_options): If generating hard floating point code for | |
| the FPA, emit code for version 3. | |
| When optimizing for space, don't synthesize constants. | |
| Reword several flags based on the requested processor and optimization | |
| level. | |
| (use_return_insn): New argument iscond, all callers changed. Don't | |
| use a return insn if it will be conditional and that would be | |
| expensive; eg on StrongARM. | |
| (arm_adjust_cost): Anti- and output- dependencies normally have no | |
| cost. | |
| (load_multiple_sequence): Newer ARMs don't benefit from ldm if | |
| the sequence is short. | |
| (final_prescan_insn): Use max_insns_skipped instead of | |
| MAX_INSNS_SKIPPED. Note whether we will make a return instruction | |
| conditional, and aviod this if it would be expensive. | |
| * config/arm/arm.md (scheduling attributes and function units): | |
| Rewrite to better describe ARM8, 9 and StrongARM. | |
| * config/arm/arm.md (*movhi_insn_littleend): Make op0 predicate | |
| s_register_operand. | |
| (*ifcompare_plus_move): Use arm_rhs_operand in place of | |
| arm_rhsm_operand. Rework constraints. | |
| (*if_plus_move): Likewise. | |
| (*ifcompare_move_plus): Likewise. | |
| (*if_move_plus): Likewise. | |
| (*ifcompre_arith_move): Likewise. | |
| (*if_arith_move): Likewise. | |
| (*ifcompare_move_arith): Likewise. | |
| (*if_move_arith): Likewise. | |
| * config/arm/xm-netbsd.h: Don't include arm/xm-arm.h. | |
| 1999-02-05 Michael Meissner <meissner@cygnus.com> | |
| * loop.c (check_dbra_loop): A store using an address giv for which | |
| we have no life information is not reversible. | |
| Fri Feb 5 17:08:01 1999 Dave Brolley <brolley@cygnus.com> | |
| * function.c (fixup_var_refs): Scan catch_clauses too. | |
| Fri Feb 5 11:49:49 1999 Benjamin Kosnik <bkoz@loony.cygnus.com> | |
| * c-common.c (decl_attributes): Fix reserved space for init_priority. | |
| * tree.h (MAX_RESERVED_INIT_PRIORITY): New macro. | |
| Fri Feb 5 12:37:05 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (strength_reduce): Clear not_every_iteration when | |
| passing the NOTE_INSN_LOOP_CONT note. | |
| * haifa-sched.c (add_dependence): Do not add a dependency on a | |
| note. | |
| Fri Feb 5 10:55:43 1999 Nick Clifton <nickc@cygnus.com> | |
| * recog.c (split_block_insns): Only call update_flow_info if | |
| instruction scheduling is enabled. | |
| 1999-02-05 Zack Weinberg <zack@rabi.columbia.edu> | |
| * Makefile.in (gen-protos): Use libcpp.a like everyone else. | |
| Fri Feb 5 07:09:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (first_loop_store_insn): New file-scope variable. | |
| (prescan_loop): Set it. | |
| (check_dbra_loop): Check if a store depends on a register | |
| that is set after the store. | |
| Fri Feb 5 06:55:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * unroll.c (entire file): Remove tabs / spaces at end of lines. | |
| Replace spaces with tabs where appropriate. | |
| Thu Feb 4 15:12:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (scan_loop): New argument loop_cont. Changed caller. | |
| (strength_reduce): New argument loop_cont. Changed caller. | |
| Before clearing not_every_iteration after a label, check if | |
| we are not already past LOOP_CONT. | |
| 1999-02-04 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cpperror.c (cpp_print_containing_files): Fix formatting | |
| bug induced by merge. | |
| 1999-02-04 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cpplib.c (initialize_char_syntax): Move to cppinit.c. | |
| (cpp_define): Remove redundant syntax checks. | |
| (make_assertion): Rename cpp_assert, remove redundant syntax | |
| checks, export. | |
| (cpp_options_init): Don't init things to zero twice. | |
| (cpp_expand_to_buffer): Use memcpy, not a char-by-char loop. | |
| (do_include): Kill excessively verbose #import warning that | |
| snuck back in in the gcc2 merge. | |
| (convert_string): Removed. | |
| (do_line): Rewrite with simple last-name-used cache instead of | |
| private hashtable. | |
| (cpp_start_read): Call initialize_char_syntax here, not... | |
| (cpp_reader_init): ...here. | |
| (cpp_handle_options): Support the -std switch. | |
| * cpplib.h (cpp_buffer): Add last_nominal_fname member. | |
| (cpp_options): Add c9x flag. | |
| Declare all the is_* tables and trigraph table here, as const. | |
| Prototype cpp_assert and initialize_char_syntax. | |
| * cppinit.c: New file. | |
| * cppfiles.c (read_and_prescan): Optimize. | |
| * Makefile.in (LIBCPP_OBJS): Add cppinit.o. | |
| Thu Feb 4 10:46:30 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.md ([u]divmodsi4,[u]divmoddi4,[u]divsi3,[u]divdi3, | |
| [u]modsi3,[u]moddi3) : Don't copy the "zero" argument to a register | |
| before calling gen_div_trap. | |
| Wed Feb 3 21:56:27 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (hppa1.1-*-*, hppa2*-*): Use symbolic value rather | |
| than numeric value for target_cpu_default.. | |
| * configure: Rebuilt. | |
| Wed Feb 3 21:55:56 1999 Marc Espie <Marc.Espie@liafa.jussieu.fr> | |
| * Makefile.in (xgcc$(exeext)): Remove choose-temp, pexecute and | |
| mkstemp. Get them from libiberty. | |
| (COLLECT2_OBJS): Similarly for choose-temp, cplus-dem and mkstemp. | |
| (PROTO_OBJS): Similarly for choose-temp, getopt, getopt1 and pexecute. | |
| (cplus-dem.o, pexecute.o, choose-temp.o): Remove build rules. | |
| (mkstemp.o, getopt1.o, getopt.o): Likewise. | |
| * pa-gas.h (TARGET_DEFAULT): Use symbolic values rather than numeric | |
| values. | |
| * pa-hpux.h (LINK_SPEC): Likewise. | |
| * pa-hpux10.h (LINK_SPEC): Likewise. | |
| * pa-hpux9.h (LINK_SPEC): Likewise. | |
| * pa-osf.h (LINK_SPEC): Likewise. | |
| * pa-pro.h (TARGET_DEFAULT): Likewise. | |
| * pa1.h (TARGET_DEFAULT): Likewise. | |
| * pa.h (MASK_*): New defines. | |
| (TARGET_*): Use symbolic values rather than numeric values. | |
| (TARGET_SWITCHES): Likewise. | |
| (TARGET_DEFAULT): Likewise. | |
| (CPP_SPEC): Likewise. | |
| Wed Feb 3 21:07:38 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | |
| * reload1.c (reload_cse_regs_1): Undo Jan 16 patch. | |
| * reload.c (find_reusable_reload): New function, broken out of | |
| push_reload. Add code to verify that none of the involved | |
| outputs are subject to earlyclobbers. | |
| (push_reload): Break out new function find_reusable_reload. | |
| Delete "register" keyword for IN, OUT args. | |
| Wed Feb 3 15:51:04 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.c (true_reg_or_0_operand) : New function. | |
| * config/mips/mips.h (PREDICATE_CODES): Add true_reg_or_0_operand. | |
| * config/mips/mips.md (div_trap,div_trap_normal,div_trap_mips16): | |
| Use true_reg_or_0_operand for div_trap. | |
| Wed Feb 3 20:44:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.h (express_from): Declare. | |
| (struct induction): Replace derived flag with derived_from pointer. | |
| * loop.c (strength_reduce, record_giv, recombine_givs): Likewise. | |
| (express_from): No longer static. | |
| * unroll.c (find_splittable_givs): Replace derived with derived_from. | |
| When processing an address giv with which another giv has been | |
| combined that has also been derived from a third giv, handle like | |
| having combined with the third giv. | |
| Set splittable_regs_updates appropriately for derived givs. | |
| Wed Feb 3 15:26:58 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.md (div_trap_mips16): Remove nop's after branches. | |
| Wed Feb 3 11:56:23 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.c (insn_sets_and_refs_are_delayed): New function. | |
| * pa.h (INSN_SETS_ARE_DELAYED): Use it. | |
| (INSN_REFERENCES_ARE_DELAYED): Likewise. | |
| Wed Feb 3 06:24:49 1999 Richard Earnshaw (rearnsha@arm.com) | |
| * config/arm/t-arm-elf (LIBGCC2_CFLAGS): Delete. | |
| * config/arm/t-linux (LIBGCC2_CFLAGS): Delete. | |
| (TARGET_LIBGCC2_CFLAGS): Define. | |
| (LIBGCC2_DEBUG_CFLAGS): Define. | |
| * config/arm/t-netbsd: Likewise. | |
| * config/arm/t-semi: Likewise. | |
| * config/arm/t-semiaof: Likewise. | |
| * config/arm/t-riscix: Likewise. | |
| Wed Feb 3 10:59:07 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/m68k/m68k.c (print_operand_address): When printing a | |
| SYMBOL_REF that ends in `.<letter>' put parentheses around it. | |
| Tue Feb 2 23:38:35 1999 David O'Brien <obrien@FreeBSD.org> | |
| * i386/freebsd*.h now allows '$' in label names and does not use the | |
| PCC struct return method. | |
| Tue Feb 2 22:38:23 1999 Jim Wilson <wilson@cygnus.com> | |
| * Makefile.in: Change all uses of AR to AR_FOR_TARGET. Change all uses | |
| of HOST_AR to AR. Likewise for AR_FLAGS, RANLIB, and RANLIB_TEST. | |
| (RANLIB_TEST): Test to see if ranlib exists. Only test absolute file | |
| names if host == target. | |
| (HOST_AR, HOST_AR_FLAGS, HOST_RANLIB, HOST_RANLIB_TEST): Delete. | |
| (AR_FLAGS_FOR_TARGET): Renamed from AR_FOR_TARGET_FLAGS. | |
| (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Delete rules | |
| setting them to *_FOR_TARGET. | |
| * cross-make (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): | |
| Delete. | |
| Tue Feb 2 22:38:19 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> | |
| * toplev.h (read_integral_parameter): Declare. | |
| * toplev.c (read_integral_parameter): New function. | |
| Fri Jan 29 21:00:56 1999 Bob Manson <manson@charmed.cygnus.com> | |
| * resource.c, resource.h: New files. | |
| * Makefile.in (OBJS): Add it. | |
| * haifa-sched.c (regno_use_in): Moved to rtlanal.c. | |
| (split_block_insns): Moved to recog.c. | |
| (update_flow_info): Make public. | |
| * rtl.h: Declare them. | |
| * reorg.c: Moved the functions dealing with computing resource | |
| usage to resource.c. | |
| * sched.c (regno_use_in): Moved to rtlanal.c. | |
| (update_flow_info): Make public. | |
| (schedule_insns): Use split_block_insns. | |
| * recog.c (split_block_insns): New function. | |
| Tue Feb 2 22:03:26 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000/linux.h (LINK_START_DEFAULT_SPEC): Delete, unused. | |
| (LINK_OS_DEFAULT_SPEC): Delete, unused. | |
| Tue Feb 2 20:29:34 1999 Catherine Moore <clm@cygnus.com> | |
| * configure.in (arm-*-oabi): Support. | |
| * configure: Regenerate. | |
| * config/arm/unknown-elf-oabi.h: New file. | |
| Tue Feb 2 19:43:59 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.md (ashlsi3): Turn into a define_expand an anonymous pattern. | |
| Make the anonymous pattern match when ! optimize_size. | |
| (ashlsi3 size optimizer): New pattern. | |
| * intl/Makefile.in (uninstall): Add missing "; \". | |
| Tue Feb 2 18:21:23 1999 Stan Cox <scox@cygnus.com> | |
| * sparc.h (TARGET_CPU_sparc86x): Added. TARGET_CPU_sparclite86x | |
| synonym. | |
| Tue Feb 2 20:24:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (loop_optimize): Fix value max_uid_for_loop is reset | |
| to after find_and_verify_loops call. | |
| Tue Feb 2 19:48:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * (recombine_givs): Don't use a giv that's likely to be dead to | |
| derive others. | |
| * loop.c (recombine_givs): Fix test for lifetime overlaps / loop | |
| wrap around when deriving givs. | |
| Mon Feb 1 20:00:40 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.c (check_asm_operands): Treat indeterminate operand ok | |
| results as success. Try harder to resolve a matching constraint. | |
| * stmt.c (expand_asm_operands): Recognize when an output operand's | |
| constraint does not allow memory. Treat indeterminate operand ok | |
| results as failure. Try harder to resolve a matching constraint. | |
| Mon Feb 1 15:00:02 1999 Ken Raeburn <raeburn@cygnus.com> | |
| Use varrays for constant-equivalence data: | |
| * varray.h (struct const_equiv_data): New type. | |
| (union varray_data_tag): New element const_equiv. | |
| (VARRAY_CONST_EQUIV_INIT, VARRAY_CONST_EQUIV): New macros. | |
| (VARRAY_SIZE): New macro, returns number of elements. | |
| * integrate.h: Include varray.h. | |
| (struct inline_remap): Replace const_equiv_map, const_age_map and | |
| const_equiv_map_size with a const_equiv_varray element. | |
| (MAYBE_EXTEND_CONST_EQUIV_VARRAY): New macro; grows varray if | |
| needed. | |
| (SET_CONST_EQUIV_DATA): New macro; sets rtx and age fields | |
| simultaneously, growing the varray if needed. | |
| * integrate.c (global_const_equiv_map, | |
| global_const_equiv_map_size): Deleted, replaced by.... | |
| (global_const_equiv_varray): New variable. | |
| (expand_inline_function): References changed. | |
| * integrate.h: Update declarations. | |
| * integrate.c (process_reg_parm, expand_inline_function, | |
| copy_rtx_and_substitute, try_constants, subst_constants, | |
| mark_stores): Use varray allocation and accessor macros, new | |
| integrate.h macros, and global_const_equiv_varray. Don't | |
| conditionalize non-NULL stores on array size; instead, expand the | |
| array as needed. | |
| * unroll.c (unroll_loop): Likewise. | |
| * unroll.c (unroll_loop): Initialize const_equiv_varray element to | |
| zero. After allocating varray, always exit through bottom of | |
| function, where it can be deallocated if needed. Don't explicitly | |
| reallocate const_equiv_map storage; instead, just ensure the | |
| varray has been initialized, and update the global reference. | |
| Mon Feb 1 09:40:25 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * system.h (inline, const): Handle these for stage2 (and later) gcc. | |
| * dwarf2out.c (inline): Don't define. | |
| * dwarfout.c (inline): Likewise. | |
| Sun Jan 31 22:04:37 1999 Richard Henderson <rth@cygnus.com> | |
| * loop.c (recombine_givs): Dump recombination and derivation data. | |
| Sun Jan 31 20:34:29 1999 Zack Weinberg <zack@rabi.columbia.edu> | |
| * flags.h: Declare flag_no_ident. | |
| * toplev.c: Define flag_no_ident. Process -f(no-)ident here. | |
| * c-tree.h: Don't declare flag_no_ident. | |
| * c-decl.c: Don't define flag_no_ident. Don't process | |
| -f(no-)ident switches here. | |
| * config/elfos.h (ASM_FILE_END): Output final .ident directive | |
| only if !flag_no_ident. | |
| * config/ptx4.h: Likewise. | |
| * config/svr4.h: Likewise. | |
| * config/alpha/elf.h: Likewise. | |
| * config/arm/linux-elf.h: Likewise. | |
| * config/i386/sco5.h: Likewise. | |
| * config/i860/fx2800.h: Likewise. | |
| * config/mips/gnu.h: Likewise. | |
| * config/i386/osfrose.h: Likewise. | |
| * gcc.c (C specs): Map -Qn to -fno-ident. | |
| * objc/lang-specs.h: Likewise. | |
| Mon Feb 1 10:52:07 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * configure.in: Don't remove loop.o and unroll.o when | |
| enable-haifa is selected. | |
| * configure: Rebuilt. | |
| Sun Jan 31 13:22:02 1999 John Wehle (john@feith.com) | |
| * i386.md (movsicc, movhicc, movsfcc, movdfcc, | |
| movxfcc, movdicc): Delete unconstrained alternatives. | |
| * i386.c (output_fp_conditional_move, | |
| output_int_conditional_move): Delete unused case. | |
| Sun Jan 31 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Jan 31 00:52:37 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.md (mov patterns): Emit the assembler aliases mov and fmov | |
| instead of bis and cpys. Combine alternatives where possible. | |
| Sat Jan 30 23:14:13 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcov.c (fnotice): Add missing FILE* parameter. | |
| (function_summary): Fix format specifiers in calls to `fnotice'. | |
| (output_data): Likewise. | |
| * toplev.c (fnotice): Constify char* parameter. | |
| * toplev.h (fnotice): Add prototype. | |
| Wrap prototype with BUFSIZ to protect FILE* usage. | |
| Sun Jan 31 15:33:09 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (RTX_COSTS): Explicitly define c4x costs. | |
| Sat Jan 30 08:27:23 1999 Jeffrey A Law (law@cygnus.com) | |
| * combine.c (distribute_notes): Handle REG_EH_REGION notes. | |
| * alias.c (fixed_scalar_and_varying_struct_p): Add "static" to | |
| function definition. | |
| (aliases_everything_p, write_dependence_p):Likewise. | |
| * install.texi: Fix merge lossages. | |
| * cccp.c (main): Only call setlocale (LC_MESSAGES, ...) if LC_MESSAGES | |
| is defined. | |
| * collect2.c (main): Likewise. | |
| * cppmain.c (main): Likewise. | |
| * gcc.c (main): Likewise. | |
| * gcov.c (main): Likewise. | |
| * protoize.c (main): Likewise. | |
| * toplev.c (main): Likewise. | |
| * pa.md (parallel shift and shiftadd): Mark output of shift as an | |
| earlyclobber. | |
| * loop.c: Disable recent loop changes. Temporary as Joern | |
| continues to fix problems. | |
| Sat Jan 30 03:24:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Size reg_map according to reg_iv_type. | |
| Fri Jan 29 18:26:07 1999 Dave Brolley <brolley@cygnus.com> | |
| * emit-rtl.c (remove_insn): New function. | |
| * rtl.h (remove_insn): Add prototype. | |
| * function.c (reposition_prologue_and_epilogue_notes): Call remove_insn. | |
| Fri Jan 29 22:34:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (recombine_givs): Don't try to derive givs that have combined. | |
| Fri Jan 29 15:00:39 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * toplev.c (notice, fnotice): Check ANSI_PROTOTYPES, not __STDC__, | |
| when declaring arguments and calling va_arg() to initialize them. | |
| * collect2.c (notice): Likewise. | |
| * loop.c (find_life_end): Use PROTO() macro in the prototype. | |
| Fri Jan 29 14:36:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * collect2.c (error): Fix typo in declaration. | |
| * cpperror.c (cpp_message): Likewise. | |
| * cpplib.c (cpp_warning): Likewise. | |
| * cpplib.h (cpp_notice): Use PVPROTO not VPROTO, also add | |
| ATTRIBUTE_PRINTF_1. | |
| * toplev.c (error): Fix typo in declaration. | |
| Fri Jan 29 15:44:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Fix HAVE_cc0 handling when scanning | |
| forward from cont dominator. | |
| Fri Jan 29 07:10:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c (eprint_string): Constify a char*. | |
| (notice): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1. | |
| (vnotice): Constify a char*. | |
| (error): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1. | |
| (verror): Constify a char*. | |
| (warning): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1. | |
| (vwarning): Constify a char*. | |
| (error_with_line): Likewise. Use PVPROTO not VPROTO, add | |
| ATTRIBUTE_PRINTF_2. | |
| (verror_with_line): Constify a char*. | |
| (vwarning_with_line): Likewise. | |
| (warning_with_line): Likewise. Use PVPROTO not VPROTO, add | |
| ATTRIBUTE_PRINTF_2. | |
| (pedwarn): Constify a char*. Use PVPROTO not VPROTO, add | |
| ATTRIBUTE_PRINTF_1. | |
| (pedwarn_with_line): Likewise with ATTRIBUTE_PRINTF_2. | |
| (pedwarn_with_file_and_line): Likewise with ATTRIBUTE_PRINTF_4. | |
| Also correct typo in parameter name declaration. | |
| (make_assertion): Constify a char*. | |
| (quote_string_for_make): Likewise. | |
| (deps_output): Likewise. | |
| (fatal): Likewise. Use PVPROTO not VPROTO, add | |
| ATTRIBUTE_PRINTF_1. Use ATTRIBUTE_NORETURN not an explicit | |
| "__attribute__ ((noreturn))". | |
| (fancy_abort): Likewise for ATTRIBUTE_NORETURN. | |
| (pfatal_with_name): Likewise. | |
| (pipe_closed): Likewise. | |
| (memory_full): Likewise. | |
| Fri Jan 29 00:14:55 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (strength_reduce): Grow set_in_loop / n_times_set / | |
| may_not_optimize to proper size when converting biv increments | |
| into givs. | |
| If necessary, reallocate reg_iv_type / reg_iv_info before calling | |
| recombine_givs. | |
| Thu Jan 28 23:24:08 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * loop.c (recombine_givs): New parameter unroll_p. If set, don't | |
| generate complex adds. Changed caller. | |
| Don't generate adds that cost more than the original one. | |
| (strength_reduce): Warning fixes. | |
| Thu Jan 28 09:41:11 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (hppa1.0-hp-hpux10*): Use t-pa. | |
| * configure: Rebuilt. | |
| Wed Jan 27 23:39:53 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * rtl.h (insn_first_p, no_jumps_between_p): Declare. | |
| * rtlanal.c (insn_first_p, no_jumps_between_p): New function. | |
| * loop.h (varray.h): Include. | |
| (struct induction): Change combined_with to unsigned. | |
| New members derived, ix and last_use. | |
| (reg_iv_type, reg_iv_info): Now varray_type. All references changed. | |
| (REG_IV_TYPE, REG_IV_INFO): Define. | |
| (first_increment_giv, last_increment_giv): Declare. | |
| * loop.c (loop_number_loop_cont): New static variable. | |
| (loop_number_cont_dominator): Likewise. | |
| (reg_iv_type, reg_iv_info): Now varray_type. | |
| (first_increment_giv, last_increment_giv): New variables. | |
| (compute_luids, verify_dominator, find_life_end): New functions. | |
| (cmp_recombine_givs_stats, recombine_givs): Likewise. | |
| (loop_optimize): Allocate loop_number_loop_cont and | |
| loop_number_cont_dominator. Use compute_luids. | |
| (find_and_verify_loops): Initialize loop_number_loop_cont and | |
| loop_number_cont_dominator. | |
| (strength_reduce): Try to find bivs that can be expressed as givs | |
| of another biv, and to convert biv increments into givs. | |
| Call recombine_givs. Handle derived givs. | |
| (record_biv): New argument location. All callers changed. | |
| (record_giv): Initialize derived and last_use fields. | |
| (basic_induction_var): New argument location. All callers changed. | |
| (combine_givs): Don't combine a DEST_REG giv with a DEST_ADDR giv. | |
| Increment combined_with instead of setting to 1. | |
| * unroll.c (derived_regs): New static variable. | |
| (unroll_loop): Initialize it. | |
| Allocate local_regno according to max_reg_num. | |
| (copy_loop_body): Cope with derived givs. | |
| (find_splittable_givs): Check for Givs made from biv increments. | |
| Set derived_regs for givs. | |
| * Makefile.in (stmt.o, loop.o, unroll.o): Depend on loop.h . | |
| Wed Jan 27 19:31:36 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * function.c (purge_addressof_1): Handle case when a register | |
| has been used in a wider mode. | |
| 1999-01-27 Bruce Korb <autogen@linuxbox.com> | |
| * fixinc/fixincl.c, fixinc/server.[ch]: | |
| Removed the last of the capitalized variable and proc names. | |
| * fixinc/server.c: Removed the process open code. | |
| * fixinc/procopen.c: New file containing the proc open code. | |
| * fixinc/inclhack.tpl: Added code to bypass a readability test | |
| when a file is not present. A problem on some systems. | |
| * fixinc/inclhack.sh, fixinc/fixincl.sh: Regenerated. | |
| Wed Jan 27 11:58:18 1999 Dave Brolley <brolley@cygnus.com> | |
| * cpplib.h (cpp_notice): Add prototype. | |
| Wed Jan 27 02:20:48 1999 Jeffrey A Law (law@cygnus.com) | |
| * Merge gcc2 snapshot 19980929. | |
| * cccp.c (PRINTF_PROTO): Remove. | |
| (PRINTF_PROTO_{1,2,3,4}: Likewise. | |
| * cexp.y: Likewise. | |
| * system.h: Add PRINTF_PROTO and PRINTF_PROTO_{1,2,3,4}. | |
| * fix-header.c (cpp_file_lin_for_message): Delete. In libcpp. | |
| (cpp_print_containing_files, v_cpp_message, cpp_message): Likewise. | |
| (cpp_fatal, cpp-Pfatal_with_name): Likewise. | |
| * gen-protos.c (hashf): Delete in cpphash.o. | |
| * gen-protos.c (hashf): Delete in cpphash.o. | |
| * expr.c: Do not merge SAVE_STACKAREA_MODE changes. | |
| * expmed.c: Likewise. | |
| * rs6000.md: Likewise. | |
| * rs6000.c, rs6000.md: Do not merge formatting changes yet. | |
| Wed Jan 27 01:13:42 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.c (input_operand): Don't expect CONST around CONSTANT_P_RTX. | |
| * rs6000.md (movsi, movdi): Likewise. | |
| Tue Jan 26 13:31:38 1999 Jim Wilson <wilson@cygnus.com> | |
| * function.c (expand_function_end): Pass arg_pointer_save_area to | |
| validize_mem before using it. Emit code into a sequence. | |
| Tue Jan 26 13:41:38 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (doz + set cr and or + set cr patterns): Add missing | |
| '#' to split patterns. Correct indentation of some new patterns. | |
| 1999-01-26 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu> | |
| * cppfiles.c (safe_read): Deleted. | |
| (read_and_prescan): New function, replaces safe_read, converts | |
| and/or warns about trigraphs, silently converts odd line | |
| terminators (\r, \n\r, \r\n). Warns about no newline at EOF. | |
| (finclude): Use read_and_prescan; turn off nonblocking mode on | |
| the input descriptor; remove file-size-examination and | |
| no-newline-at-EOF gunk which is longer necessary; be more | |
| careful about checking that we've been handed a legitimate | |
| file to read (only real files, pipes, and ttys are acceptable). | |
| * cpplib.h (cpp_options): Rename no_trigraphs flag to | |
| `trigraphs' and invert its sense. | |
| (trigraph_table): Declare. | |
| (cpp_warning_with_line): Prototype. | |
| * cpplib.c: Remove all references to trigraph_pcp. Define | |
| trigraph_table; initialize it in initialize_char_syntax. Open | |
| files in nonblocking mode. s/no_trigraphs/trigraphs/ | |
| throughout, and invert sense. Put cpp_warning_with_line back | |
| in and export it. | |
| Tue Jan 26 23:21:49 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.h (COUNTER_REGS): New register class. | |
| * config/c4x/c4x.md (*rptb_init): Change constraints. | |
| (rptb_end): Emit alternate looping instructions if | |
| RC register not allocated for loop counter. | |
| (decrement_and_branch_on_count): Allow other registers | |
| for loop counter. | |
| 1999-01-25 Zack Weinberg <zack@rabi.columbia.edu> | |
| * cppexp.c (struct arglist): Removed. | |
| (parse_number): Use HOST_WIDE_INT for the accumulator. | |
| Allow two `l' suffixes unless C89. Clean up. Make static. | |
| (parse_charconst): New function broken out of cpp_lex. | |
| Code cleaned up drastically. Don't use a token_buffer. | |
| (token_buffer): Removed. | |
| (cpp_lex): Don't call parse_number on a constant string. | |
| Use parse_charconst. | |
| (cpp_parse_expr): Properly handle an ERROR op returned by | |
| cpp_lex. | |
| 1999-01-25 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cpplib.c: Don't include signal.h, sys/times.h, or | |
| sys/resource.h. Don't declare localtime. | |
| (macroexpand): Handle special symbols here. | |
| (push_macro_expansion): Chop off the trailing '@ ' if possible | |
| here. | |
| (cpp_get_token): Don't do either of the above two things here. | |
| Move `string' label just after case '"' so that wide strings | |
| don't crash the preprocessor. | |
| Sun Jan 24 20:13:45 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.md (left shift + set cr patterns): Add missing '#' to | |
| split patterns. | |
| (move register + set cr pattern): Likewise. | |
| (movdi, !TARGET_POWERPC64 splitters): Add back in Jan. 15th patch, | |
| inadvertently deleted. | |
| Sun Jan 24 08:07:59 1999 Jeffrey A Law (law@cygnus.com) | |
| * stmt.c (stmt_loop_nest_empty): New function. | |
| * tree.h (stmt_loop_nest_empty): Declare it. | |
| * rtl.def (CALL_PLACEHOLDER): New rtx code. | |
| Sun Jan 24 21:24:43 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_emit_move_sequence, c4x_encode_section_info): | |
| New functions. | |
| (c4x_check_legit_addr): Remove USE and PLUS, allow | |
| LO_SUM, and disable SYMBOL_REF, LABEL_REF, and CONST cases. | |
| (c4x_legitimize_address): Penalize SYMBOL_REF, LABEL_REF, and | |
| CONST cases. Add LO_SUM. | |
| (c4x_print_operand): Modified 'C' and 'R' cases for calls. | |
| Added 'U' case. Remove dependence on SYMBOL_REF_FLAG. | |
| (c4x_print_operand_address): Handle LO_SUM. | |
| (c4x_scan_for_ldp): Delete. Hooray! | |
| (c4x_process_after_reload): Remove call to c4x_scan_for_ldp. | |
| Split all insns. | |
| (c4x_immed_int_constant): Renamed from c4x_int_constant. All callers | |
| changed. | |
| (c4x_immed_float_constant): Renamed from c4x_float_constant. All | |
| callers changed. | |
| (c4x_T_constraint): Allow LO_SUM, disable SYMBOL_REF, LABEL_REF, | |
| and CONST. | |
| (c4x_U_constraint, symbolic_operand): New functions. | |
| (src_operand): Allow 'I' constants in HImode. Allow LO_SUM, | |
| disable SYMBOL_REF, LABEL_REF, and CONST. | |
| (lsrc_operand, tsrc_operand): Call src_operand instead of | |
| general_operand. | |
| (c4x_operand_subword): Update comments. | |
| * config/c4x/c4x.c (TARGET_LOAD_ADDRESS): New macro. | |
| (LEGITIMATE_CONSTANT_P): Allow SYMBOL_REF, LABEL_REF, CONST, | |
| plus HIGH and LO_SUM for the C40. | |
| (ENCODE_SECTION_INFO): Define macro. | |
| (symbolic_operand, c4x_U_constraint, c4x_emit_move_sequence): New | |
| prototypes. | |
| (PREDICATE_CODES): Add symbolic_operand. | |
| * config/c4x/c4x.md (movqi, movgqf, movhi, movhi): Call | |
| c4x_emit_move_sequence. | |
| (floatunsqiqf2, fixuns_truncqfqi2): Rework emitted RTL | |
| to avoid symbol references. | |
| (all patterns with g constraint): Replace 'g' constraint with 'rIm'. | |
| (set_high): Renamed from set_high_use. | |
| (set_lo_sum): Renamed from set_ior_lo_use. | |
| (all call patterns): Make MEM explicit in call address operands. | |
| Modified output templates to use 'U' modifier. | |
| Sun Jan 24 01:15:05 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Jan 23 22:34:57 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * final.c (bb_str): Qualify a char* with the keyword `const'. | |
| (add_bb_string, final_scan_insn, output_asm_insn): Likewise. | |
| * fix-header.c (read_scan_file): Likewise. | |
| * genoutput.c (output_epilogue, process_template): Likewise. | |
| * local-alloc.c (requires_inout, block_alloc): Likewise. | |
| * output.h (output_asm_insn, assemble_string): Likewise. | |
| * recog.c (recog_constraints, check_asm_operands, | |
| decode_asm_operands, extract_insn, preprocess_constraints, | |
| constrain_operands): Likewise. | |
| * recog.h (operand_alternative, recog_constraints, insn_template, | |
| insn_outfun, insn_operand_constraint, insn_name): Likewise. | |
| * regclass.c (record_reg_classes, scan_one_insn): Likewise. | |
| * regmove.c (find_matches): Likewise. | |
| * reload.c (alternative_allows_memconst): Likewise. | |
| * reload1.c (constraint_accepts_reg_p, | |
| reload_cse_simplify_operands): Likewise. | |
| * rtl.h (decode_asm_operands): Likewise. | |
| * scan.h (fn_decl): Likewise. | |
| * varasm.c (assemble_string): Likewise. | |
| Sat Jan 23 01:37:36 1999 Jeffrey A Law (law@cygnus.com) | |
| * configure.in (gcc_tooldir): Handle case where exec_prefix has | |
| not been explicitly set. | |
| * configure: Rebuilt. | |
| * fold-const.c (lshift_double): Mark 'prec' arguments as possibly | |
| unused. | |
| * bitmap.h (bitmap_head_def): Make indx field unsigned. | |
| * configure.in (gcc_tooldir): When not making a relative gcc_tooldir, | |
| use $exec_prefix/$target_alias for gcc_tooldir. | |
| * configure: Rebuilt. | |
| Fri Jan 22 11:48:56 1999 Richard Henderson <rth@cygnus.com> | |
| * cppp.c (xrealloc): Fix typo last change. | |
| * cppalloc.c, gcc.c, genattr.c, genattrtab.c, gencodes.c: Likewise. | |
| * genconfig.c, genemit.c, genextract.c, genflags.c: Likewise. | |
| * genopinit.c, genoutput.c, genpeep.c, genrecog.c: Likewise. | |
| 1999-01-22 Michael Meissner <meissner@cygnus.com> | |
| * rs6000.h (CR0_REGNO_P): New macro to test if cr0. | |
| (CR_REGNO_NOT_CR0_P): New macro to test if cr, but not cr0. | |
| (PREDICATE_CODES): Add cc_reg_not_cr0_operand. | |
| (cc_reg_not_cr0_operand): Add declaration. | |
| * rs6000.c (cc_reg_not_cr0_operand): Return true if register is a | |
| pseudo register, or a control register that is not CR0. | |
| * rs6000.md (all combiner patterns building . instructions): For | |
| all `.' instructions that do something and set cr0, add an | |
| alternative that does the operation, and then sets a different | |
| flag, in order to avoid using the costly mcrf instruction and also | |
| allow cr0 to be clobbered in asm statements. Also fix a few | |
| patterns that used the wrong register. | |
| * rs6000.h (rs6000_cpu_select): Make string, names be const char *. | |
| (rs6000_debug_name): Make const char *, not char *. | |
| * sysv4.h (rs6000_{abi,sdata}_name): Make const char *. | |
| * rs6000.c (rs6000_{debug,abi,sdata}_name): Make const char *. | |
| (rs6000_select): Use const char * in casts. | |
| Fri Jan 22 07:43:01 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (gcc_tooldir): Move before first reference. | |
| Let autoconf substitute in a value. | |
| * configure.in (gcc_tooldir): Only use a relative path to the | |
| tool directory if $exec_prefix == $prefix. | |
| * configure: Rebuilt. | |
| * Makefile.in (tooldir): Replace with gcc_tooldir. | |
| Thu Jan 21 23:21:57 1999 Jeffrey A Law (law@cygnus.com) | |
| * m68k.md (ashldi_const): Disable for !TARGET_5200. Fix indentation. | |
| (ashldi3 expander): Similarly. Update comments. | |
| (ashrdi_const, lshrdi_const): Fix indentation. | |
| (ashrdi3, lshrdi3): Fix indentation. Update comments. | |
| Thu Jan 21 21:53:36 1999 Richard Henderson <rth@cygnus.com> | |
| * emit-rtl.c (try_split): Don't try to split non-instructions. | |
| Thu Jan 21 23:47:30 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * expr.c (emit_push_insn): Fix dumb typo. | |
| Thu Jan 21 20:24:02 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.h (LEGITIMIZE_RELOAD_ADDRESS): Recognize and accept | |
| transformations that we have performed earlier. | |
| * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise. | |
| * alpha.md (prologue_stack_probe_loop): Don't do our own label | |
| handling, call gen_label_rtx instead. | |
| Thu Jan 21 17:45:18 1999 Richard Henderson <rth@cygnus.com> | |
| * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): Add missing `then'. | |
| * cccp.c (xrealloc): Call malloc given a NULL old pointer. | |
| * collect2.c, cppalloc.c, gcc.c, genattr.c, genattrtab.c: Likewise. | |
| * gencodes.c, genconfig.c, genemit.c, genextract.c: Likewise. | |
| * genflags.c, genopinit.c, genoutput.c, genpeep.c: Likewise. | |
| * genrecog.c, mips-tfile.c, protoize.c: Likewise. | |
| Thu Jan 21 19:44:55 1999 Michael Meissner <meissner@cygnus.com> | |
| * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): If | |
| --with-gnu-ld, use x-aix41-gld instead of x-aix41 to suppress | |
| adding -Wl,-bbigtoc to BOOT_LDFLAGS. | |
| * configure: Regenerate. | |
| * config/rs6000/x-aix41-gld: New file, don't set BOOT_LDFLAGS. | |
| Thu Jan 21 15:48:03 1999 Dave Brolley <brolley@cygnus.com> | |
| * cppexp.c (cpp_lex): Allocate token_buffer dynamically. | |
| Thu Jan 21 14:18:04 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * expr.c (MOVE_BY_PIECES_P): Define condition for deciding to use | |
| move_by_pieces. | |
| (MOVE_MAX_PIECES): Define maximum number of bytes to move at once. | |
| (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): Define defaults. | |
| (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define defaults. | |
| (move_by_pieces): Use new macros. | |
| (emit_block_move): Use new macros. | |
| (clear_by_pieces): Use new macros. | |
| (clear_storage): Use new macros. | |
| (emit_push_insn): Use new macros. | |
| (expand_expr): Use new macros. | |
| * config/sh/sh.h (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): | |
| Define. | |
| (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define. | |
| (MOVE_BY_PIECES_P): Define based on alignment and TARGET_SMALLCODE. | |
| (MOVE_MAX_PIECES): Move 8 bytes on SH4. | |
| * tm.texi(MOVE_BY_PIECES_P, MOVE_MAX_PIECES, USE_LOAD_POST_INCREMENT, | |
| USE_LOAD_PRE_DECREMENT, USE_STORE_POST_INCREMENT, | |
| USE_STORE_PRE_DECREMENT): Describe new macros. | |
| Thu Jan 21 14:13:31 1999 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * varasm.c (output_constant_pool): Use floor_log2 instead of | |
| exact_log2 for ASM_OUTPUT_ALIGN. | |
| * stor-layout.c (layout_type): Do machine-dependent extra alignment. | |
| * emit-rtl.c (operand_subword): Handle case when a subword outside | |
| the operand. | |
| * tm.texi (ROUND_TYPE_{SIZE,ALIGN}): More accurate descriptions of | |
| the macros. | |
| Thu Jan 21 01:59:30 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (fold_rtx): Revert 29 Dec change. | |
| (cse_insn): Revert 12 Jan change. | |
| * expr.c (expand_builtin): Don't emit CONST around CONSTANT_P_RTX. | |
| * regclass.c (reg_scan_mark_refs): Revert 29 Dec change. | |
| * rtl.def: Likewise. | |
| * rtl.h (CONSTANT_P): Likewise. | |
| * expr.c (emit_move_insn): Never try to flush CONSTANT_P_RTX | |
| to memory. | |
| * recog.c (immediate_operand): Accept CONSTANT_P_RTX. | |
| * alpha.c (input_operand): Likewise. | |
| * c4x.c (const_operand): Likewise. | |
| * explow.c (allocate_dynamic_stack_space): Use register_operand | |
| instead of arith_operand, which does not exist. | |
| * 1750a.h: Fix comment closure. | |
| * a29k.c (a29k_set_memflags): Fix typo in 19 Jan change. | |
| * arc.md (one_cmplsi2_set_cc_insn): Fix set mode mismatch. | |
| * arm.h (TARGET_SWITCHES): Fix typo. | |
| * i370.md (anon mult and div patterns): Fix set mode mismatch. | |
| * i860.c (output_delayed_branch): Fix operands to constrain_operands. | |
| (output_delay_insn): Likewise. | |
| * m88k.md (anon rotate insns): Fix set mode mismatch. | |
| (anon BLKmode moves): Commonize and fix set mode mismatches. | |
| * ns32k.md (udivmoddi[shq]i4_internal): Fix mode mismatch. | |
| * romp.md (movdf): Fix typo. | |
| Thu Jan 21 00:29:35 1999 Nathan Sidwell <nathan@acm.org> | |
| * Makefile.in (install-common): Remove extraneous chmod for gcov | |
| install. | |
| Wed Jan 20 18:15:08 1999 Dave Brolley <brolley@cygnus.com> | |
| * function.c (assign_parms): Save and restore setting of | |
| TREE_USED (parm). | |
| Wed Jan 20 12:51:42 1999 Mark Mitchell <mark@markmitchell.com> | |
| * arm.md: Use MEM_COPY_ATTRIBUTES where appropriate throughout. | |
| Pass MEM_SCALAR_P to arm_gen_store_multiple where appropriate. | |
| Tue Jan 19 21:20:52 1999 Richard Henderson <rth@cygnus.com> | |
| * recog.c (pop_operand): New function. | |
| * recog.h (pop_operand): Declare it. | |
| * genrecog.c (preds): Define it. | |
| * expr.c (do_jump_for_compare): Handle conditional branch expanders | |
| emitting multiple jump instructions. | |
| * jump.c (condjump_label): New function. | |
| * rtl.h (condjump_label): Declare it. | |
| Tue Jan 19 21:08:20 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.c (emit_move_insn_1): Revert 17 Dec change. Don't emit | |
| clobber during or after reload. | |
| Tue Jan 19 16:56:03 1999 Richard Henderson <rth@cygnus.com> | |
| * genoutput.c (name_for_index): New function. | |
| (scan_operands, validate_insn_alternatives): Use it. | |
| * genrecog.c (insn_name_ptr_size): New variable. | |
| (make_insn_sequence): Fill in insn_name_ptr. | |
| (merge_trees): Use it. | |
| Tue Jan 19 16:37:36 1999 Richard Henderson <rth@cygnus.com> | |
| * i386/isc.h (TARGET_DEFAULT): Define symbolicly. | |
| * i386/isccoff.h, i386/next.h, i386/sco.h, i386/sco5.h: Likewise. | |
| * i386/scodbx.h, i386/sequent.h, i386.unix.h: Likewise. | |
| Tue Jan 19 15:00:10 1999 Jeffrey A Law (law@cygnus.com) | |
| * loop.c (NUM_STORES): Delete. | |
| (loop_store_mems): Turn into an EXPR_LIST of MEMs. | |
| (prescan_loop): Properly initialize loop_mems_idx. | |
| (note_addr_stored): Simplify using list structure instead of | |
| fixed sized array. | |
| (invariant_p, check_dbra_loop, load_mems): Similarly. | |
| * flow.c (invalidate_from_autoinc): New function. | |
| (mark_set_1, mark_used_regs): Use it. | |
| * Makefile.in (protoize.o, unprotoize.o): Depend on Makefile. | |
| 1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * invoke.texi (-mlong-double-64): New option description. | |
| 1999-01-19 Jim Wilson <wilson@cygnus.com> | |
| * libgcc2.c: Change all uses of LONG_DOUBLE_TYPE_SIZE to | |
| LIBGCC2_LONG_DOUBLE_TYPE_SIZE. | |
| (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. Set to LONG_DOUBLE_TYPE_SIZE | |
| if not defined. | |
| * i960/i960.h (MULTILIB_DEFAULTS): Define to mnumerics. | |
| (CPP_SPECS): Add -mlong-double-64 support. | |
| (TARGET_FLAG_LONG_DOUBLE_64, TARGET_LONG_DOUBLE_64): New. | |
| (TARGET_SWITCHES): Add -mlong-double-64 support. | |
| (LONG_DOUBLE_TYPE_SIZE): Likewise. | |
| (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define. | |
| * i960/vx960-coff.h (MULTILIB_DEFAULTS): Define to msoft-float. | |
| (CPP_SPECS): Add -mlong-double-64 support. | |
| * i960/t-960bare (MULTILIB_OPTIONS): Add mlong-double-64. | |
| (MULTILIB_DIRNAMES): Add ld64. | |
| * i960/t-vxworks960 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Likewise. | |
| Tue Jan 19 11:54:04 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * calls.c (expand_call): Strip a TARGET_EXPR if we're passing by | |
| invisible reference. | |
| Tue Jan 19 14:51:36 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (offsettable_addr_operand): Delete. | |
| (offsettable_mem_operand): New function. | |
| * rs6000.h (PREDICATE_CODES): Reflect function change. | |
| (RS6000_SAVE_TOC): Represent address as MEM. | |
| * win-nt.h (RS6000_SAVE_TOC): Same. | |
| * rs6000.md (indirect calls): Change offsettable address parameter | |
| to offsettable memory parameter. | |
| Tue Jan 19 10:24:53 1999 Mark Mitchell <mark@markmitchell.com> | |
| * rtl.h (rtx_def): Update documentation. | |
| (MEM_IN_STRUCT_P): Likewise. | |
| (MEM_SCALAR_P): New macro. | |
| (MEM_COPY_ATTRIBUTES): Likewise. | |
| (MEM_SET_IN_STRUCT_P): Likewise. | |
| * rtl.texi (MEM_SCALAR_P): Document. | |
| * alias.c (canon_rtx): Use MEM_COPY_ATTRIBUTES. | |
| (fixed_scalar_and_varying_struct_p): New function. Use | |
| MEM_SCALAR_P rather than !MEM_IN_STRUCT_P. | |
| (aliases_everything_p): Likewise. | |
| (true_dependence): Use them. | |
| (write_dependence_p): New function, containing code common to | |
| anti_dependence and output_dependence. | |
| (anti_dependence): Use it. | |
| (output_dependence): Likewise. | |
| * calls.c (save_fixed_argument_area): Don't clear | |
| MEM_IN_STRUCT_P. | |
| (expand_call): Use MEM_SET_IN_STRUCT_P. | |
| (emit_library_call): Don't clear MEM_IN_STRUCT_P. | |
| (emit_library_call_value): Likewise. | |
| (store_one_arg): Use MEM_SET_IN_STRUCT_P. | |
| * combine.c (simplify_rtx): Use MEM_COPY_ATTRIBUTES. | |
| (make_extraction): Likewise. | |
| (simplify_shift_const): Likewise. | |
| (gen_lowpart_for_combine): Likewise. | |
| * cse.c (gen_lowpart_if_possible): Use MEM_COPY_ATTRIBUTES. | |
| * emit-rtl.c (operand_subword): Likewise. | |
| (change_address): Likewise. | |
| * explow.c (stabilize): Use MEM_COPY_ATTRIBUTES. | |
| * expr.c (protect_from_queue): Use MEM_COPY_ATTRIBUTES. | |
| (emit_group_store): Use MEM_SET_IN_STRUCT_P. | |
| (copy_blkmode_from_reg): Likewise. | |
| (store_field): Likewise. | |
| (expand_expr): Remove bogus guesswork setting MEM_IN_STRUCT_P | |
| heuristically. Use MEM_SET_IN_STRUCT_P. | |
| (get_memory_rtx): Likewise. | |
| * final.c (alter_subreg): Use MEM_COPY_ATTRIBUTES. | |
| * function.c (assign_stack_temp): Clear MEM_SCALAR_P and | |
| MEM_ALIAS_SET on newly returned MEMs. | |
| (assign_temp): Use MEM_SET_IN_STRUCT_P. | |
| (put_reg_into_stack): Likewise. | |
| (fixup_var_refs1): Use MEM_COPY_ATTRIBUTES. | |
| (gen_mem_addressof): Use MEM_SET_IN_STRUCT_P. | |
| (assign_parms): Likewise. | |
| (expand_function): Likewise. | |
| * integrate.c (expand_inline_function): Likewise. | |
| (copy_rtx_and_substitute): Use MEM_COPY_ATTRIBUTES. | |
| * loop.c (note_addr_stored): Remove check on MEM_IN_STRUCT_P. | |
| * optabs.c (gen_move_insn): Use MEM_COPY_ATTRIBUTES. | |
| * print-rtl.c (print_rtx): Print /f for frame_related. | |
| * recog.c (validate_replace_rtx_1): Use MEM_COPY_ATTRIBUTES. | |
| * reload1.c (reload): Copy MEM_SCALAR_P as well. | |
| * stmt.c (expand_decl): Use MEM_SET_IN_STRUCT_P. | |
| (expand_anon_union_decl): Use MEM_COPY_ATTRIBUTES. | |
| * varasm.c (make_decl_rtl): Use MEM_SET_IN_STRUCT_P. | |
| (output_constant_def): Likewise. | |
| * a29k.c (a29k_set_memflags_1): Take scalar_p. | |
| Set MEM_SCALAR_P. | |
| (a29k_set_memflags): Use it. | |
| * alpha.c (get_aligned_mem): Use MEM_COPY_ATTRIBUTES. | |
| * c4x.c (c4x_scan_for_ld): Likewise. | |
| * h8300.c (fix_bit_operand): Likewise. | |
| * m88k.c (legitimize_address): Likewise. | |
| (block_move_loop): Likewise. | |
| (block_move_no_loop): Likewise. | |
| (block_move_sequence): Likewise. | |
| (m88k_builtin_saveregs): Use MEM_SET_IN_STRUCT_P. | |
| * mips/abi64.h (SETUP_INCOMING_VARARGS): Likewise. | |
| * rs6000.c (expand_block_move_insn): Use MEM_COPY_ATTRIBUTES. | |
| * sh.c (sh_builtin_saveregs): Use MEM_SET_IN_STRUCT_P. | |
| * arm.h (arm_gen_load_multiple): Take scalar_p. | |
| (arm_store_load_multiple): Likewise. | |
| * arm.c (arm_gen_load_multiple): Likewise. | |
| (arm_gen_store_multiple): Likewise. | |
| (arm_gen_movstrqi): Treat MEM_SCALAR_P like MEM_IN_STRUCT_P. | |
| Tue Jan 19 12:30:37 1999 Andrew MacLeod <amacleod@cygnus.com> | |
| * optabs.c (emit_libcall_block): Add a REG_EH_REGION reg note to all | |
| calls within a libcall block to indicate no throws are possible. | |
| * flow.c (find_basic_blocks, find_basic_blocks_1): Don't look for | |
| libcall blocks. Don't add edges to exception handlers if we see | |
| a REG_EH_REGION note with a value of 0. | |
| (make_edges): Override active_eh_region vector if the call has a note | |
| indicating the call does not throw. | |
| 1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * config/rs6000/sysv4.h (CC1_SPEC): Fix correct numbers of {}. | |
| Tue Jan 19 06:26:30 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (cccp.o, cpplib.o): Depend on Makefile. | |
| Mon Jan 18 09:56:41 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * invoke.texi (C++ Dialect Options): Document -fno-rtti. | |
| 1999-01-18 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * invoke.texi (-mcpu=740, -mcpu=750): New options. | |
| (-m(no-)multiple, -m(no-)string): Describe cases for PPC740 & | |
| PPC750. | |
| 1999-01-18 Michael Meissner <meissner@cygnus.com> | |
| * rs6000.h ({ASM,CPP}_CPU_SPEC): Add support for all machines | |
| supported with -mcpu=xxx. | |
| (processor_type): Add PROCESSOR_PPC750. | |
| (ADJUST_PRIORITY): Call rs6000_adjust_priority. | |
| (RTX_COSTS): Supply costs for 750 multiply/divide operations. | |
| (rs6000_adjust_priority): Add declaration. | |
| * rs6000.c (rs6000_override_options): -mcpu={750,740} now sets the | |
| processor type as 750, not 603. Allow -mmultiple and -mstring on | |
| little endian 750 systems. | |
| (rs6000_adjust_priority): Stub for now. | |
| (get_issue_rate): The PowerPC 750 can issue 2 instructions/cycle. | |
| * rs6000.md (function/cpu attributes): Add initial ppc750 support. | |
| * sysv4.h (STRICT_ALIGNMENT): Don't force strict alignment if | |
| little endian. | |
| (CC1_SPEC): Pass -mstrict-align if little endian, and not | |
| overridden. | |
| (CC1_ENDIAN_{LITTLE,BIG,DEFAULT}_SPEC): Endian specific configs. | |
| (SUBTARGET_EXTRA_SPECS): Add cc1 endian specs. | |
| * {sysv4,eabi}le.h (CC1_ENDIAN_DEFAULT_SPEC): Override, default is | |
| little endian. | |
| * t-ppcgas (MULTILIB_*): Delete obsolete Solaris multilibs. | |
| Mon Jan 18 12:03:08 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * config/mips/mips.md (div_trap): Split div_trap_mips16 | |
| from div_trap. | |
| (div_trap_normal,div_trap_mips16): Correct the length attributes. | |
| Mon Jan 18 11:48:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cpplib.c (special_symbol): Qualify a char* with the `const' keyword. | |
| Instead of writing to const char *buf directly, use a non-const | |
| variable `wbuf' to allocate and write a string, then set buf = wbuf. | |
| * cppulp.c (user_label_prefix): Qualify a char* with the `const' | |
| keyword. | |
| * dyn-string.c (dyn_string_append): Likewise. | |
| * dyn-string.h (dyn_string_append): Likewise. | |
| * final.c (end_final, output_operand_lossage, asm_fprintf): Likewise. | |
| * output.h (end_final, output_operand_lossage, asm_fprintf, | |
| named_section, decode_reg_name, make_decl_rtl, user_label_prefix): | |
| Likewise. | |
| * profile.c (init_branch_prob): Likewise. | |
| * toplev.c (set_target_switch, vmessage, | |
| v_message_with_file_and_line, v_message_with_decl, | |
| v_error_with_file_and_line, v_error_with_decl, v_error_for_asm, | |
| verror, vfatal, v_warning_with_file_and_line, v_warning_with_decl, | |
| v_warning_for_asm, vwarning, vpedwarn, v_pedwarn_with_decl, | |
| v_pedwarn_with_file_and_line, vsorry, v_really_sorry, | |
| open_dump_file, dump_rtl, clean_dump_file, | |
| print_version, print_single_switch, print_switch_values, | |
| dump_base_name, debug_args, lang_independent_options, | |
| user_label_prefix, documented_lang_options, target_switches, | |
| target_options, print_time, pfatal_with_name, fatal_io_error, | |
| fatal_insn, default_print_error_function, print_error_function, | |
| report_error_function, error_with_file_and_line, error_with_decl, | |
| error_for_asm, error, fatal, warning_with_file_and_line, | |
| warning_with_decl, warning_for_asm, warning, pedwarn, | |
| pedwarn_with_decl, pedwarn_with_file_and_line, sorry, | |
| really_sorry, botch, output_quoted_string, output_file_directive, | |
| open_dump_file, rest_of_decl_compilation, display_help, main): | |
| Likewise. | |
| * toplev.h (print_time, fatal, fatal_io_error, pfatal_with_name, | |
| fatal_insn, warning, error, pedwarn, pedwarn_with_file_and_line, | |
| warning_with_file_and_line, error_with_file_and_line, sorry, | |
| really_sorry, default_print_error_function, report_error_function, | |
| rest_of_decl_compilation, pedwarn_with_decl, warning_with_decl, | |
| error_with_decl, error_for_asm, warning_for_asm, output_quoted_string, | |
| output_file_directive, botch): Likewise. | |
| * tree.h (make_decl_rtl): Likewise. | |
| * varasm.c (strip_reg_name, named_section, decode_reg_name, | |
| make_decl_rtl): Likewise. | |
| Mon Jan 18 11:35:49 1999 Gavin Romig-Koch <gavin@cygnus.com> | |
| * Makefile.in (TCL_LIBRARY): Use 'cd' to find the library | |
| directory logically rather than physically. | |
| Mon Jan 18 09:05:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * loop.c (insert_bct): Hide the definition of variables | |
| `increment_direction', `compare_direction', `add_iteration' and | |
| `loop_var_mode'. | |
| * recog.c (mode_dependent_address_p): Mark parameter `addr' with | |
| ATTRIBUTE_UNUSED. Mark label `win' with ATTRIBUTE_UNUSED_LABEL. | |
| (mode_independent_operand): Mark label `lose' with | |
| ATTRIBUTE_UNUSED_LABEL. | |
| * regclass.c (n_occurrences): Remove prototype and definition. | |
| * reload.c (find_reloads_address_1): Mark variable `tem' with | |
| ATTRIBUTE_UNUSED. | |
| * reload1.c (reload): Cast the first two arguments of `bcopy' to PTR. | |
| * sbitmap.c (sbitmap_copy): Likewise. | |
| * scan-decls.c (scan_decls): Hide label `handle_comma'. | |
| * toplev.c (output_lang_identify): Mark prototype with | |
| ATTRIBUTE_UNUSED. | |
| * tree.c (make_node): Cast the first argument of `bzero' to PTR. | |
| (make_tree_vec): Likewise. | |
| (build1): Likewise. | |
| * varasm.c (assemble_static_space): Mark variable `tem' with | |
| ATTRIBUTE_UNUSED. | |
| Mon Jan 18 04:28:36 1999 Nathan Sidwell <nathan@acm.org> | |
| * Makefile.in (GCOV_INSTALL_NAME): New macro. | |
| (install-common): Use it. | |
| (uninstall): Use it. | |
| (uninstall): Use correct names for protoize and unprotoize. | |
| Mon Jan 18 03:52:56 1999 Christian Bruel <Christian.Bruel@st.com> | |
| Jeffrey A Law (law@cygnus.com) | |
| * flow.c (last_mem_set): Delete variable. References removed. | |
| (mem_set_list): New variable. | |
| (life_analysis): Initialize and finalize alias analysis. | |
| (propagate_block); Initialize mem_set_list. Clear for CALL_INSNs. | |
| (insn_dead_p): For a store to memory, search the entire mem_set_list | |
| for a match. | |
| (mark_set_1): Kill entries on the mem_set_list for aliased writes or | |
| changes to their addresses. Add new entries to the mem_set_list for | |
| memory writes writes. | |
| (mark_used_regs): Kill entries on the mem_set_list which may be | |
| referenced by a load operation. | |
| Mon Jan 18 01:01:02 1999 Jeffrey A Law (law@cygnus.com) | |
| * alias.c (base_alias_check): Add missing return for differing | |
| symbols case. | |
| Mon Jan 18 00:36:13 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * mips-tdump.c (print_file_desc): Handle unknown filenames and | |
| missing local symbols. | |
| Sun Jan 17 21:04:31 1999 Richard Henderson <rth@cygnus.com> | |
| * jump.c (rtx_renumbered_equal_p): Special case CODE_LABEL. | |
| * system.h (bcopy): Implement with memmove not memcpy. | |
| Sun Jan 17 19:23:20 1999 Jeffrey A Law (law@cygnus.com) | |
| * Makefile.in (cppulp.o): Add dependencies. | |
| * i386.md (integer conditional moves): Add missing earlyclobbers. | |
| * regmove.c (optimize_reg_copy_1): Undo Aug 18 change. Update | |
| REG_N_CALLS_CROSSED and REG_LIVE_LENGH if and only if we change | |
| where a register is live. | |
| Sun Jan 17 03:20:47 1999 H.J. Lu (hjl@gnu.org) | |
| * reg-stack.c (subst_stack_regs_pat): Abort if the destination | |
| of a FP conditional move is not on the FP register stack. | |
| Sun Jan 17 01:15:04 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sat Jan 16 23:40:33 1999 Jeffrey A Law (law@cygnus.com) | |
| * reload1.c (reload_cse_regs_1): Do not call | |
| reload_cse_simplify_operands for an insn with asm operands. | |
| * cccp.c (print_help): Fix typos. | |
| * cpplib.c (print_help): Fix typos. | |
| * toplev.c (f_optiosn): Fix typos. | |
| (documented_lang_options): Fix typos. | |
| Sat Jan 16 21:48:17 1999 Marc Espie (Marc.Espie@openbsd.org) | |
| * gcc.c (do_spec_1): Fix obvious typo. | |
| Sat Jan 16 19:31:07 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-decl.c (duplicate_decls): If `warn_traditional', warn when | |
| a non-static function declaration follows a static one. | |
| * invoke.texi (-Wtraditional): Document the extra check now done | |
| by this flag. | |
| Sat Jan 16 15:13:46 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (shadd): Create shadd insns, even if the result of the shift is | |
| needed without the addition. | |
| Sat Jan 16 10:48:16 1999 J"orn Rennecke <amylaar@cygnus.co.uk> | |
| * sh.md (movdf, movsf): Temporary workaround for no_new_pseudos lossage. | |
| Fri Jan 15 23:44:37 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.c (sparc_issue): Add hypersparc/sparclite86x entries. | |
| Fri Jan 15 22:30:04 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.h (CONST_OK_FOR_LETTER_P): Do not assume 32-bit CONST_INT. | |
| * rs6000.c (u_short_cint_operand, add_operand, logical_operand, | |
| non_add_cint_operand, non_logical_cint_operand): Likewise. | |
| (get_issue_rate): Add CPU_PPC604E case. | |
| * rs6000.md (movdi, !TARGET_POWERPC64 splitters): Handle 64-bit hosts. | |
| Fri Jan 15 18:42:12 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.c (queued_subexp_p): Make public. | |
| * expr.h (queued_subexp_p): Declare it. | |
| * recog.c (asm_operand_ok): New function. | |
| (check_asm_operands): Use it. After reload, use constrain_operands | |
| instead. | |
| * recog.h (asm_operand_ok): Declare it. | |
| * stmt.c (expand_asm_operands): Use it to try harder to make | |
| asms initially satisfy their constraints. | |
| Fri Jan 15 17:43:59 1999 Jeffrey A. Law <law@rtl.cygnus.com> | |
| * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Do not create | |
| (mem (lo_sum (...)) for TFmode unless TARGET_V9. | |
| Sat Jan 16 12:47:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (not_repeat_reg): Allow ldp instruction | |
| in delay slot of RPTBD. | |
| Sat Jan 16 12:26:40 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/libgcc.S (___divhi3, ___modhi3): Fix long long | |
| divide and modulo sign problem. | |
| Fri Jan 15 11:02:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * unroll.c (loop_iterations): Return 0 if the last loop insn | |
| is not a jump insn or if the loop has multiple back edges. | |
| 1999-01-15 Manfred Hollstein <manfred@s-direktnet.de> | |
| * configure.in (fixinc_defs): Do not define for m[68]8k-motorola-sysv{,3}; | |
| it's working properly now. Remove comment saying "see m68k-motorola-sysv | |
| as an example". | |
| * configure: Regenerate using autoconf. | |
| * fixinc/fixincl.c (main): Do not ignore SIGCHLD. | |
| Thu Jan 14 22:38:41 1999 Jeffrey A Law (law@cygnus.com) | |
| * unroll.c (find_splittable_givs): For a DEST_ADDR giv, do not share | |
| a register with another DEST_ADDR giv if the address is not valid. | |
| * pa.c (hppa_expand_epilogue): Save and restore the static chain | |
| around the call to mcount. | |
| * h8300.h (ASM_OUTPUT_LABELREF): Use asm_fprintf, not fprintf. | |
| * stmt.c (expand_end_case): Use emit_cmp_and_jump_insns to avoid | |
| generating non-canonical rtl. | |
| 1999-01-14 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * config/i960/i960.c (i960_output_move_double_zero, | |
| i960_output_move_quad_zero): New functions for moving zeros. | |
| (i960_output_move_double, i960_output_move_quad): Additional code | |
| for situation when moving unaligned register group. | |
| * config/i960/i960.h (i960_output_move_double_zero, | |
| i960_output_move_quad_zero): The function definitions. | |
| * config/i960/i960.md (movdi+1, movti+1): Usage of the functions. | |
| 1999-01-13 Vladimir N. Makarov <vmakarov@cygnus.com> | |
| * config/i960/i960.c (i960_function_prologue): New code (optimal | |
| solution) for saving global registers in local registers. | |
| (form_reg_groups, reg_group_compare, split_reg_group): New | |
| functions used by the code. | |
| (reg_group): New structure definition for the new code. | |
| 1999-01-13 Manfred Hollstein <manfred@s-direktnet.de> | |
| * fixinc/fixincl.c (create_file): Pass file creation mask as | |
| third parameter to "open". Use O_TRUNC flag to open instead of | |
| explicitly unlink'ing the file. | |
| (process): and forget about the "chmod" stuff. | |
| Wed Jan 13 20:12:37 1999 Richard Henderson <rth@cygnus.com> | |
| * integrate.c (expand_inline_function): Recognize (mem (addressof)) | |
| and substitute. Copy the return value from there into a new pseudo. | |
| Wed Jan 13 16:47:00 1999 Catherine Moore <clm@cygnus.com> | |
| * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN | |
| before generating a call to abort for volatile functions. | |
| * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define. | |
| (TARGET_ABORT_NORETURN): Define. | |
| (abort-on-noreturn): New option. | |
| Thu Jan 14 13:52:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (in_annul_slot_3): Correctly allow unarycc | |
| and binarycc operations in 3rd annulled delay slot! | |
| Wed Jan 13 16:16:44 1999 Catherine Moore <clm@cygnus.com> | |
| * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN | |
| before generating a call to abort for volatile functions. | |
| * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define. | |
| (TARGET_ABORT_NORETURN): Define. | |
| (abort-on-noreturn): New option. | |
| Wed Jan 13 13:30:08 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * cccp.c (xstrdup): Renamed from `savestring'. All callers changed. | |
| Remove prototype which we get from libiberty.h. | |
| * collect2.c (xstrdup): Likewise. | |
| * genextract.c (xstrdup): Likewise for `copystr'. | |
| (mybzero): Remove it and use `memset' instead. | |
| * genoutput.c (mybcopy, mybzero): Remove these. All callers changed | |
| to use `memcpy' and `memset' instead. | |
| * genrecog.c (xstrdup): Renamed from `copystr'. All callers | |
| changed. Remove prototype. | |
| (mybcopy, mybzero): Remove these and use memcpy/memset. | |
| Wed Jan 13 00:59:04 1999 Jeffrey A Law (law@cygnus.com) | |
| * mips.h (LOAD_EXTEND_OP): Correct for SImode and CCmode moves when | |
| generating code for TARGET_64BIT. | |
| Tue Jan 12 14:05:37 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (print_operand, cases 'm' and 'M'): Do not depend on | |
| HOST_WIDE_INT word-size. | |
| (rs6000_stack_info): Remove redundant alignment of fpmem. | |
| Tue Jan 12 14:05:37 1999 Richard Henderson <rth@cygnus.com> | |
| * rs6000.c (short_cint_operand): Remove CONSTANT_P_RTX handling. | |
| (u_short_cint_operand, reg_or_cint_operand, logical_operand): Likewise. | |
| (input_operand): Adjust CONSTANT_P_RTX handling. | |
| * rs6000.h (PREDICATE_CODES): Remove CONSTANT_P_RTX references. | |
| * rs6000.md (movsi): Adjust CONSTANT_P_RTX handling. | |
| (movhi, movqi): Remove CONSTANT_P_RTX handling. | |
| (movdi): Adjust CONSTANT_P_RTX handling. | |
| 1999-01-12 Manfred Hollstein <manfred@s-direktnet.de> | |
| * configure: Regenerate using autoconf. | |
| * fixinc/Makefile.in (INCLUDES): Add -I$(srcdir)/../../include. | |
| * fixinc/fixincl.c (SIGCHLD): Use SIGCLD on (very) old systems. | |
| (process): "fchmod" isn't available on all systems, use "chmod" | |
| instead. | |
| * fixinc/server.c: Add #include <sys/types.h>. | |
| (STDIN_FILENO): Add default definition if no include file defines | |
| it already. | |
| (STDOUT_FILENO): Likewise. | |
| Tue Jan 12 10:23:24 1999 Stan Cox <scox@cygnus.com> | |
| * mips.md (call_value_internal3c): New pattern for -mips16 -mlong-calls. | |
| 1999-01-12 Manfred Hollstein <manfred@s-direktnet.de> | |
| * m68k/mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to | |
| ensure all prototypes necessary for building libio will be available. | |
| * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Remove | |
| definitions here as they are not host specific. | |
| * m88k/sysv3.h, m88k/xm-sysv3.h: Likewise. | |
| Tue Jan 12 02:53:46 1999 Richard Henderson <rth@cygnus.com> | |
| * cse.c (cse_insn): Never prefer (const (constant_p_rtx)). | |
| Tue Jan 12 02:36:10 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Tue Jan 12 01:30:19 1999 Richard Henderson <rth@cygnus.com> | |
| * rtl.c (rtx_alloc): Use memset instead of inline loop. | |
| * recog.h (recog_op_alt): Declare extern. | |
| Tue Jan 12 00:23:31 1999 Richard Henderson <rth@cygnus.com> | |
| * function.c (purge_addressof_1): If the note accesses a mem+addressof | |
| in a wider mode than any replacement, adjust the cached replacement. | |
| Cache trivial substitutions as well. | |
| Tue Jan 12 00:06:00 1999 Richard Henderson <rth@cygnus.com> | |
| * Makefile.in (OBJECTS): Add sbitmap.o. | |
| (BASIC_BLOCK_H): Add sbitmap.h. | |
| * basic-block.h: Move simple bitmap code to sbitmap.h. | |
| * flow.c: Move simple bitmap code to sbitmap.c. | |
| * sbitmap.h, sbitmap.c: New files. | |
| Mon Jan 11 23:51:50 1999 Richard Henderson <rth@cygnus.com> | |
| * alpha.h (TARGET_SWITCHES): Document switches. | |
| (TARGET_OPTIONS): Likewise. | |
| * alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Use HOST_WIDE_INT_PRINT_DEC. | |
| Mon Jan 11 22:54:14 1999 Richard Henderson <rth@cygnus.com> | |
| * tree.c (new_alias_set): Return zero if !flag_strict_aliasing. | |
| Mon Jan 11 22:36:01 1999 Richard Henderson <rth@cygnus.com> | |
| * basic-block.h (basic_block_head): Rename to x_basic_block_head. | |
| (basic_block_end): Rename to x_basic_block_end. | |
| (BLOCK_HEAD, BLOCK_END): Update. | |
| * caller-save.c: Change basic_block_head/end references to | |
| BLOCK_HEAD/END. | |
| * combine.c, flow.c, function.c, gcse.c, global.c: Likewise. | |
| * graph.c, haifa-sched.c, local-alloc.c, regclass.c: Likewise. | |
| * regmove.c, reload1.c, reorg.c, sched.c: Likewise. | |
| Sat Jan 9 23:54:09 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcc.c (xstrerror): Renamed from my_strerror. All callers | |
| changed. Remove prototype since we get that from libiberty.h. | |
| * protoize.c (xstrerror): Likewise. | |
| Sat Jan 9 23:22:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gcc.c (read_specs): Ensure format specifiers match their arguments. | |
| Sat Jan 9 20:04:24 1999 Richard Henderson <rth@cygnus.com> | |
| * tree.c (copy_node): Oops. That would be copy not zero | |
| in that last change. | |
| Sun Jan 10 15:35:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c: Include system.h. | |
| (c4x_caller_save_map): Disable caller save for RC. | |
| (c4x_optimization_options): Disable scheduling before reload. | |
| (valid_parallel_load_store) : Define return type as int. | |
| Remove unused variable regs. | |
| * config/c4x/c4x.h (REGISTER_MOVE_COST): Make independent of register | |
| class. | |
| * config/c4x/c4x.md (rotlqi3, rotrqi3): Fix up emitted RTL to | |
| handle rotations. | |
| (*db, decrement_and_branch_until_zero): Fix up constraints | |
| to keep reload happy. | |
| Sat Jan 9 18:35:29 1999 Richard Henderson <rth@cygnus.com> | |
| * tree.c (make_node): Call bzero instead of inline clear. | |
| (copy_node, make_tree_vec, build1): Likewise. | |
| (get_identifier): Call strlen instead of inline count. | |
| (maybe_get_identifier): Likewise. | |
| Sun Jan 10 14:04:51 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (in_annul_slot_3): Allow unarycc and binarycc | |
| operations in 3rd annulled delay slot. | |
| (*lshrqi3_const_set): Disallow c constraint for operand0. | |
| (modhi3+1, modhi3+2): Set attribute type to multi. | |
| * config/c4x/c4x.c (c4x_S_constraint): Removed space in middle of | |
| != operator. | |
| Sat Jan 9 11:44:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * gansidecl.h: Allow attribute unused on labels only when we are | |
| version 2.93 or higher. Not all versions of 2.92 have this feature. | |
| * version.c: Bump minor number to 93. | |
| Fri Jan 8 10:51:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/m68k/m68k.h: Declare output_function_epilogue. | |
| * recog.h: Declare next_insn_tests_no_inequality. | |
| Fri Jan 8 01:43:53 1999 Jeffrey A Law (law@cygnus.com) | |
| * stmt.c (optimize_tail_recursion): New function, extracted from ... | |
| (expand_return): Use optimize_tail_recursion. | |
| * tree.h (optimize_tail_recursion): Declare. | |
| * toplev.c (compile_file): Move call to output_func_start_profiler | |
| to after the loop to emit deferred functions. | |
| Thu Jan 7 19:52:53 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
| * system.h (abort): Supply more detailed information on how to | |
| report an Internal Compiler Error. | |
| Thu Jan 7 09:25:58 1999 Bruce Korb (korb@datadesign.com) | |
| * fixinc/fixincl.c (*): More decapitalization of variables | |
| plus some explanatory comments. | |
| * fixinc/Makefile.in fixinc/mkfixinc.sh: | |
| When the fixincl program does not work for a certain system, | |
| we substitute a shell script. Added user commentary when | |
| this happens. | |
| Thu Jan 7 11:26:17 1999 Mark Mitchell <mark@markmitchell.com> | |
| * calls.c (store_unaligned_arguments_into_pseudos): Use xmalloc to | |
| allocate memory that will live beyond this function. | |
| (expand_call): Free it here. | |
| Thu Jan 7 03:08:17 1999 Richard Henderson <rth@cygnus.com> | |
| * sparc.h (PREFERRED_RELOAD_CLASS): Select GENERAL_REGS for | |
| integer data not destined for fp regs. | |
| (LEGITIMIZE_RELOAD_ADDRESS): New. | |
| Thu Jan 7 03:03:42 1999 Stan Cox <scox@cygnus.com> | |
| Richard Henderson <rth@cygnus.com> | |
| Support for HyperSPARC and SPARClite86x: | |
| * sparc.h (TARGET_CPU_hypersparc, TARGET_CPU_sparclite86x): New. | |
| (CPP_CPU32_DEFAULT_SPEC): Fix up for the new targets. | |
| (ASM_CPU32_DEFAULT_SPEC): Likewise. | |
| (TARGET_CPU_DEFAULT): Likewise. | |
| (enum processor_type): Likewise. | |
| (CPP_ENDIAN_SPEC): Handle little endian data. | |
| (LIBGCC2_WORDS_BIG_ENDIAN): Likewise. | |
| (ADJUST_COST): Call sparc_adjust_cost. | |
| * sparc.c (sparc_override_options): Fix up for the new targets. | |
| (supersparc_adjust_cost): Make static. | |
| (hypersparc_adjust_cost): New. | |
| (ultrasparc_adjust_cost): Make static. | |
| (sparc_adjust_cost): New. | |
| * sparc.md (attr cpu): Add hypersparc and sparclite86x. | |
| (function_unit): Add hypersparc scheduling rules. | |
| * configure.in (with_cpu handler): Recognize hypersparc. | |
| Thu Jan 7 23:54:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c: Added space after negation operator. | |
| * config/c4x/c4x.h: Likewise. | |
| * config/c4x/c4x.md: Likewise. | |
| Thu Jan 7 23:39:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.c (c4x_preferred_reload_class): Always return class. | |
| Thu Jan 7 00:29:25 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | |
| * combine.c (num_sign_bit_copies): In NEG, MULT, DIV and MOD cases, | |
| when a test can't be performed due to limited width of | |
| HOST_BITS_PER_WIDE_INT, use the more conservative approximation. | |
| Fix UDIV case for cases where the first operand has the highest bit | |
| set. | |
| Thu Jan 7 00:01:38 1999 Lutz Vieweg <lkv@mania.robin.de> | |
| * pa.h (reg_class): Add FPUPPER_REGS. | |
| (REG_CLASS_NAMES): Similarly. | |
| (REG_CLASS_CONTENTS): Similarly. | |
| (REGNO_REG_CLASS): Handle FPUPPER_REGS. | |
| (FP_REG_CLASS_P): Likewise. | |
| (REG_CLASS_FROM_LETTER): Similarly. | |
| (CLASS_MAX_NREGS): Similarly. | |
| 1999-01-06 Brendan Kehoe <brendan@cygnus.com> | |
| * fixincludes: For HP/UX 10.20, also look in curses_colr/curses.h | |
| for a typedef of bool. Make sure to have a copy of the file is | |
| in place before we look to fix it. Fix typo in variable name to | |
| FILE. | |
| Wed Jan 6 07:51:05 1999 Richard Henderson <rth@cygnus.com> | |
| * expr.c (expand_builtin) [case BUILT_IN_CONSTANT_P]: Use | |
| value_mode for the return mode. | |
| Wed Jan 6 17:55:19 1999 Robert Lipe <robertlipe@usa.net> | |
| * configure.in: New flag --with-dwarf2. If set, enables DWARF-2 | |
| debugging as default. | |
| * config/tm-dwarf2.h: New file. | |
| Wed Jan 6 16:08:54 1999 Jeffrey A Law (law@cygnus.com) | |
| * h8300.h (ASM_OUTPUT_LABELREF): Define. | |
| * pa.h (DONT_RECORD_EQUIVALENCE): Kill. | |
| * local-alloc.c (update_equiv_regs): Corresponding changes. | |
| * tm.texi (DONT_RECORD_EQUIVALENCE): Kill. | |
| * calls.c (special_function_p): Push alloca test inside the large | |
| conditional which excludes functions not at file scope or not | |
| extern. | |
| * calls.c (special_function_p): New function broken out of | |
| expand_call. | |
| (precompute_register_parameters): Likewise. | |
| (store_one_arg): Likewise. | |
| (store_unaligned_argumetns_into_pseudos): Likewise. | |
| (save_fixed_argument_area): Likewise. | |
| (restore_fixed_argument_area): Likewise. | |
| (expand_call): Corresponding changes. | |
| Thu Jan 7 00:12:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * config/c4x/c4x.md (addqi3): If the destination operand is | |
| a hard register other than an extended precision register, | |
| emit addqi3_noclobber. | |
| (*addqi3_noclobber_reload): New pattern added so that reload | |
| will recognize a store of a pseudo, equivalent to the sum | |
| of the frame pointer and a constant, as an add insn. | |
| 1999-01-06 Manfred Hollstein <manfred@s-direktnet.de> | |
| * fixinc/fixincl.c: Re-indent according to the GNU standards. | |
| fixinc/server.c: Likewise. | |
| fixinc/server.h: Likewise. | |
| Wed Jan 6 10:43:29 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> | |
| * config/m68k/m68k.c (const_uint32_operand): Remove CONSTANT_P_RTX | |
| handling. | |
| (const_sint32_operand): Likewise. | |
| Wed Jan 6 09:44:51 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * toplev.h: In addition to checking _JBLEN, also check if `setjmp' | |
| is a macro when deciding if we can use `jmp_buf' in prototypes. | |
| Wed Jan 6 03:18:53 1999 Mark Elbrecht <snowball3@usa.net> | |
| * configure.in (pc-msdosdjgpp): Set x_make to x-go32. | |
| * configure: Rebuilt. | |
| * i386/xm-go32.h: Define LIBSTDCXX. | |
| * i386/x-go32: New. | |
| * i386/go32.h (MD_EXEC_PREFIX): Define. | |
| (FILE_NAME_ABSOLUTE_P): Define. | |
| (LINK_COMMAND_SPEC): Define. | |
| Wed Jan 6 02:23:36 1999 "Charles M. Hannum" <root@ihack.net> | |
| * expr.c (store_expr): If the lhs is a memory location pointed | |
| to be a postincremented (or postdecremented) pointer, always | |
| force the rhs to be evaluated into a pseudo. | |
| Wed Jan 6 00:54:21 1999 Geoff Keating <geoffk@ozemail.com.au> | |
| * real.c (mtherr): Print more reasonable warning messages. | |
| Tue Jan 5 21:57:42 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * Makefile.in (gcc.o, prefix.o, cccp.o, cpplib.o): Depend on prefix.h. | |
| * cccp.c: Include prefix.h, don't prototype prefix.c functions. | |
| (new_include_prefix): Constify char* parameters. | |
| * cppfiles.c (read_name_map): Likewise. | |
| (append_include_chain): Likewise. Also, use a writable char* copy | |
| of parameter `dir' which we then modify, rather than using the | |
| parameter itself to store the new writable string. | |
| (remap_filename): Constify some variables. Also, use a writable | |
| char* to store an allocated string which we will be modifying. | |
| * cpplib.c: Include prefix.h, don't prototype prefix.c functions. | |
| (cpp_start_read): Constify variable `str'. | |
| * cpplib.h (append_include_chain): Constify a char* parameter. | |
| * gcc.c Include prefix.h, don't prototype prefix.c functions. | |
| (add_prefix, save_string): Constify char* parameters. | |
| (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes. | |
| * prefix.c: Include prefix.h. | |
| (get_key_value, translate_name, save_string, update_path, | |
| set_std_prefix): Constify various char* parameters and variables. | |
| (save_string): Use xmalloc, not malloc. | |
| (translate_name): Use a writable temporary variable to create and | |
| modify a string before setting it to a const char*. | |
| * prefix.h: New file to prototype functions exported from prefix.c. | |
| Tue Jan 5 08:52:18 1999 Bruce Korb (korb@datadesign.com) | |
| * fixinc/fixincl.c (various): Added debug code so | |
| Manfred can trace the processing. | |
| * fixinc/inclhack.def (sys/utsname.h): Provide forward declaration of | |
| struct utsname on Ultrix V4.[35]. | |
| * fixinc/{fixincl.x|fixincl.sh|inclhack.sh} : Regenerated. | |
| Mon Jan 4 15:37:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cpplib.c (skip_if_group): Split out the logic that handles | |
| directive recognition to its own function. Don't use | |
| parse markers; use a bare pointer into the buffer. Use | |
| copy/skip_rest_of_line instead of doing it by hand. Remove | |
| `return on any directive' mode which was never used, and take | |
| only one argument. | |
| (consider_directive_while_skipping): New function, subroutine | |
| of skip_if_group. Logic streamlined a bit. | |
| (conditional_skip, do_elif, do_else): Call skip_if_group with | |
| only one argument. | |
| Mon Jan 4 15:27:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
| * cpplib.c (do_undef): EOF immediately after '#undef FOO' is not an | |
| error. | |
| Mon Jan 4 11:55:51 1999 Jason Merrill <jason@yorick.cygnus.com> | |
| * extend.texi (Bound member functions): Document. | |
| Mon Jan 4 11:01:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * mips-tdump.c (st_to_string, sc_to_string, glevel_to_string, | |
| lang_to_string, type_to_string): Make return type const char*. | |
| (print_symbol): Apply `const' keyword to a char*. | |
| (print_file_desc): Cast structure member `crfd' to ulong when | |
| comparing against one. | |
| * mips-tfile.c (pfatal_with_name): Apply `const' keyword to char*. | |
| (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes. | |
| (progname, input_name): Apply `const' keyword to a char*. | |
| Don't redundantly include sys/stat.h. | |
| (alloc_info): Apply `const' keyword to a char*. | |
| (st_to_string, sc_to_string): Likewise. | |
| (hash_string): Cast variable `hash_string' to a symint_t when | |
| comparing against one. | |
| (add_string): Cast PAGE_USIZE to Ptrdiff_t when comparing against one. | |
| Likewise cast it to long when comparing against one. | |
| (add_local_symbol): Apply `const' keyword to a char*. | |
| (add_ext_symbol): Likewise. | |
| (add_unknown_tag): Likewise. | |
| (add_procedure): Cast a printf-style field width to an int. | |
| (add_file): Cast PAGE_USIZE to long when comparing against one. | |
| (parse_begin): Cast a printf-style field width to an int. | |
| (parse_bend): Likewise. | |
| (parse_def): Likewise. | |
| (parse_end): Likewise. | |
| (mark_stabs): Mark parameter `start' with ATTRIBUTE_UNUSED. | |
| (parse_stabs_common): Fix format specifier. | |
| (parse_input): Change type of variable `i' to Size_t. | |
| (write_object): Fix arguments to match format specifiers. | |
| Cast variable `num_write' to long when comparing against one. | |
| (read_seek): Cast variable `sys_read' to symint_t when comparing | |
| against one. Fix arguments to match format specifiers. Cast | |
| variable `size' to long when comparing against one. | |
| (copy_object): Cast result of `sizeof' to int when comparing | |
| against one. Fix arguments to match format specifiers. Cast | |
| variable `ifd' to long when comparing against a signed value. | |
| Likewise, likewise. | |
| Mon Jan 4 10:30:33 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
| * c-common.c (decl_attributes): Allow applying attribute `unused' | |
| on a LABEL_DECL. | |
| * c-parse.in (label): Parse attributes after a label, and call | |
| `decl_attributes' to handle them. | |
| * gansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define. | |
| * genrecog.c (OUTPUT_LABEL, write_tree_1, write_tree): When | |
| generating labels, mark them with ATTRIBUTE_UNUSED_LABEL. | |
| * invoke.texi: Note that labels can be marked `unused'. | |
| Sun Jan 3 23:32:18 1999 Jeff Law (law@cygnus.com) | |
| * version.c: Bump for snapshot. | |
| Sun Jan 3 23:00:42 1999 Jeffrey A Law (law@cygnus.com) | |
| * optabs.c (emit_cmp_and_jump_insns): Use CONSTANT_P canonicalizing | |
| RTL for a compare/jump sequence. | |
| Sun Jan 3 22:58:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
| * optabs.c (emit_cmp_insn): Abort if asked to emit non-canonical RTL | |
| for a target with HAVE_cc0 defined. | |
| (emit_cmp_and_jump_insns): New function. | |
| * expr.h (emit_cmp_and_jump_insns): Prototype it. | |
| * loop.c (check_dbra_loop): Use it to replace calls | |
| to emit_cmp_insn and emit_jump_insn and to canonicalize | |
| the comparison if necessary. | |
| * unroll.c (unroll_loop): Likewise. | |
| Sun Jan 3 21:01:04 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
| * fixincludes (sys/utsname.h): Provide forward declaration of | |
| struct utsname on Ultrix V4.[35]. | |
| * mips.md (div_trap): Use local labels instead of dot-relative | |
| branches. | |
| Sun Jan 3 20:40:34 1999 Jeffrey A Law (law@cygnus.com) | |
| * pa.md (branch, negated branch): Handle (const_int 0) as first | |
| source operand. | |
| * pa.c (output_cbranch): Likewise. | |
| Sun Jan 3 03:20:38 1999 David Edelsohn <edelsohn@gnu.org> | |
| * rs6000.c (rs6000_stack_info): Undo spurious part of last | |
| change. | |
| 1999-01-01 Manfred Hollstein <manfred@s-direktnet.de> | |
| * extend.texi (__builtin_constant_p): Add missing @smallexample. | |
| Fri Jan 1 11:48:20 1999 Jeffrey A Law (law@cygnus.com) | |
| * i386.md (doubleword shifts): Fix dumb mistakes in previous change. | |
| Copyright (C) 1999 Free Software Foundation, Inc. | |
| Copying and distribution of this file, with or without modification, | |
| are permitted in any medium without royalty provided the copyright | |
| notice and this notice are preserved. |