]> gcc.gnu.org Git - gcc.git/blobdiff - gcc/ChangeLog
avr.md ("*negsi2"): substitute %@ to __zero_reg__
[gcc.git] / gcc / ChangeLog
index de89784b7a194184e6529c1ca11900165ccf99d2..e603d2de8593adca9e7d00b994763813f81ff0ba 100644 (file)
@@ -1,3 +1,284 @@
+Sat Sep  2 13:58:23 2000  Marek Michalkiewicz <marekm@linux.org.pl>
+
+       * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__
+       * config/avr/libgcc.S: Lost part of the previous patch.
+
+2000-08-31  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t
+       object before calling pthread_mutex_init.
+
+2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm,
+       config/sh/crtn.asm: New files.
+       * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set.
+       (crt1.o, crti.o, crtn.o): New targets.
+       * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added
+       sh/t-elf.
+       * configure: Rebuilt.
+       * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define.
+       * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
+       Undefine for config/elfos.h to redefine.
+       (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h.
+
+2000-09-02  Alexandre Oliva  <aoliva@redhat.com>, Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       * config/sh/sh-protos.h (nonpic_symbol_mentioned_p,
+       legitimize_pic_address, output_pic_addr_const): Declare.
+       * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register.
+       (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise.
+       (TARGET_SWITCHES): New switch -mprefergot.
+       (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot.
+       (PIC_OFFSET_TABLE_REGNUM): Define.
+       (GOT_SYMBOL_TABLE): Likewise.
+       (LEGITIMIZE_ADDRESS): Use legitimize_pic_address.
+       (ENCODE_SECTION_INFO): Define.
+       (FINALIZE_PIC): New macros.
+       (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro.
+       (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const.
+       * config/sh/sh.c (print_operand_address): Use output_pic_addr_const.
+       (prepare_move_operands): Call emit_pic_move or
+       emit_pic_const_move if appropriate.
+       (output_far_jump): For PIC, use braf and output long offset.
+       (machine_dependent_reorg): 
+       (sh_expand_prologue): Save and initialize the PIC register.
+       (sh_expand_epilogue): Restore it.
+       (initial_elimination_offset): Account for it.
+       (nonpic_symbol_mentioned_p): New function.
+       (legitimize_pic_address): Likewise.
+       (output_pic_addr_const): Likewise.
+       * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns.
+       (call, call_value): Use them.
+       (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg,
+       symPLT_label2reg): New expands.
+       * invoke.texi (SH Options): Document -mprefergot.
+
+2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
+
+       * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro.
+       * gcse.c (hash_string_1): New function.
+       (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number.
+       (expr_equiv_p) <ASM_OPERANDS>: Likewise.
+       * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS.
+       (canon_hash_string): New function.
+       (canon_hash) <ASM_OPERANDS>: Disregard filename and line number.
+       (exp_equiv_p) <ASM_OPERANDS>: Likewise.
+       (fold_rtx): Use ASM_OPERANDS accessor macros.
+       * emit-rtl.c (copy_insn_1): Likewise.
+       * integrate.c (copy_rtx_and_substitute): Likewise.
+       * stmt.c (expand_asm_operands): Likewise.  Give an
+       ASM_OPERANDS rtx the mode of the output reg being set from it.
+
+2000-09-01  Fred Fish  <fnf@be.com>
+
+       * fix-header.c (write_rbrac): Add putc and getc to list of
+       functions to protect against prior definition as a macro.
+2000-09-01  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE.
+       (c_size_type_node): Define.
+       * c-decl.c (init_decl_processing): Initialize c_size_type_node.
+       * c-common.c (enum format_lengths, enum format_std_version,
+       format_length_info, format_type_detail, BADLEN, NOLENGTHS,
+       format_kind_info, printf_length_specs, scanf_length_specs, T89_I,
+       T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL,
+       T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD,
+       T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI,
+       TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM,
+       format_types): Define.
+       (format_char_info, print_char_table, scan_char_table,
+       time_char_table): Rearrange for new organization of information
+       about format length modifiers and standard versions.
+       (T_ST): Redefine to use c_size_type_node.
+       (check_format_info): Obtain information about length modifiers and
+       standard versions from tables.  Adjust warning message wordings.
+       Use the name from the user's program for `ll' and `hh' length
+       modifiers in warning messages.  Use more informative names for
+       wanted types where available (for wchar_t, wint_t, size_t, signed
+       size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t).
+
+2000-09-01  Jim Wilson  <wilson@cygnus.com>
+
+       * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN.
+       * combine.c (distribute_notes): Handle REG_NORETURN.
+       * rtl.c (reg_note_name): Add REG_NORETURN.
+       * rtl.h (enum reg_note): Likewise.
+
+       * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from
+       ia64_file_start.
+       * config/ia64/ia64.c (emit_safe_across_calls): Likewise.
+       (rtx_needs_barrier): Handle unspec_volatile 8 and 9.
+       (emit_predicate_relation_info): Handle conditional calls with
+       REG_NORETURN.
+       * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls
+       instead of ia64_file_start.
+       * config/ia64/sysv4.h (ASM_FILE_START): Likewise.
+       * config/ia64/ia64.md (safe_across_calls_all,
+       save_across_calls_normal): New patterns.
+
+       * loop.c (check_final_value): Check for biv use before checking for
+       giv use.  Check for both biv and giv uses.  Always set last_giv_use
+       if there is a giv use.
+
+2000-09-01  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.md (mulsi3): Use grfr_register_operand.
+       (madddi3): Likewise.
+       (maddsi3): New.
+
+Fri Sep  1 10:59:47 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (clear_storage): Don't use emit_move_insn unless
+       either BLKmode or proper size.
+       (store_constructor): Don't call clear_storage if REG of wrong size.
+
+       * flow.c (init_propagate_block_info): Don't mark frame dead at end
+       of function if returns wiht stack pointer depressed.
+
+2000-09-01  Andrew Haley  <aph@redhat.com>
+
+        * dwarf2out.c (stack_adjust_offset): New function.
+        (dwarf2out_stack_adjust): Break out stack adjust logic into
+        new stack_adjust_offset function.  Look inside parallels and
+        sequences for stack adjustments.
+
+2000-08-31  Jeff Law <law@cygnus.com>
+
+       * arm.md: Use no_new_pseudos to determine when it is safe
+       to create new pseudo registers.
+
+        * arm.c (legitimize_pic_address): Use no_new_pseudos to determine
+        when we can safely allocate new registers.
+
+2000-08-31  Geoffrey Keating  <geoffk@cygnus.com>
+
+       * stmt.c (expand_asm_operands): Twiddle generating_concat_p
+       so that CONCATs are not generated for ASMs.
+       * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when
+       not generating_concat_p.
+       * function.c (pop_function_context_from): Reset
+       generating_concat_p.
+       (prepare_function_start): Likewise.
+       * rtl.c (generating_concat_p): Define.
+       * rtl.h (generating_concat_p): Declare.
+       * toplev.c (rest_of_compilation): No CONCATs after RTL generation.
+
+2000-08-22  Philipp Thomas  <pthomas@suse.de>
+            Masanobu Yuhara <yuhara@flab.fujitsu.co.jp>
+
+       * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them
+       for translation.
+
+2000-08-30  Greg McGary  <greg@mcgary.org>
+
+       * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh
+       * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC).
+       * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE.
+
+2000-08-30  Greg McGary  <greg@mcgary.org>
+
+       * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct.
+       (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct.
+       (TREE_INT_CST): New macro.
+       * varasm.c (const_hash, compare_constant_1, record_constant_1):
+       Use new macro TREE_INT_CST.
+
+Wed 30-Aug-2000 23:18:59 BST  Neil Booth  <NeilB@earthling.net>
+
+       * contrib.texi: Add self.
+
+2000-08-30  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns.
+       (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps
+       and labels.
+
+2000-08-30  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * fixinc/gnu-regex.c: Don't define `const'.
+
+Tue Aug 29 22:09:59 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (store_constructor): Allow variable bounds of array type.
+       (expand_expr): Don't blow up if type is ERROR_MARK.
+       * varasm.c (output_constructor): Don't access lower bound of array
+       type unless need it if index is supplied (so it can be a variable
+       if no index is supplied).
+       Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS.
+       Other minor cleanups.
+
+2000-08-29  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS
+       for compilations in stage 1 and subsequent stages, respectively.
+       * configure.in (vax): Add compiler-dependent CFLAGS for stage 1.
+       * configure: Rebuilt.
+       * x-vax, x-vax-gcc: Deleted.
+
+2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * c-common.c (declare_function_name): Use func_id_node,
+       function_id_node, and pretty_function_id_node.  Do not make
+       __func__ visible at file scope.   
+       * c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
+       CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
+       (function_id_node, pretty_function_id_node, func_id_node): New
+       macros.
+       * c-decl.c (init_decl_processing): Initialize function_id_node,
+       pretty_function_id_node, and func_id_node.
+       (c_make_fname_decl): Correct comment.
+
+       * tree.h (struct tree_identifier): Constify pointer member.
+
+       * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
+       * c-pragma.h (struct weak_syms): Constify name and value members.
+       (add_weak): Constify arguments.   
+
+       * calls.c (special_function_p): Constify a char *.
+       (expand_call): Remove variable which is initialized and then
+       never used.
+       * dependence.c (struct def_use, struct induction, struct subscript):
+       Constify 'variable' member.
+       (get_low_bound, have_induction_variable): Constify char * argument.
+       (find_induction_variable): Add braces to avoid dangling else.
+       (classify_dependence): Constify char * arrays.
+       * profile.c (output_func_start_profiler): Constify a char *.
+       * stor-layout.c (finalize_record_size): Constify a char *.
+       * tree.c (is_attribute_p): Constify a char *.
+       * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
+
+       * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
+       for comprehensibility.  Do not call get_identifier if we did
+       not change the DECL_ASSEMBLER_NAME of the decl.  Use alloca to
+       create temporary string constants, not ggc_alloc_string.  No
+       need to copy result of ASM_FORMAT_PRIVATE_NAME.  Use const
+       char * to hold IDENTIFIER_POINTERs.
+
+2000-08-29  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.md (muldi3): Use grfr_register_operand
+       for the inputs.
+
+2000-08-29  Richard Henderson  <rth@cygnus.com>
+
+       * reload.c (push_secondary_reload): Allow class == reload_class
+       if we're using a reload_in/out pattern.
+
+       * config/ia64/ia64.md (reload_inti): Use a TImode scratch.  Use
+       the half that does not conflict with the reload register.
+       (reload_outti): Likewise.
+
+2000-08-29  Kazu Hirata  <kazu@hxi.com>
+
+       * reload.c: Fix formatting.
+
+       * stmt.c: Fix formatting.
+
+       * gcc.c: Fix formatting.
+
 2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
 
        * flags.h (time_report, mem_report): New global flags.
@@ -750,13 +1031,13 @@ Tue Aug 22 20:34:52 2000  Kaz Kojima <kkojima@rr.iij4u.or.jp>
 2000-08-22  David Edelsohn  <edelsohn@gnu.org>
 
        * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
-        text_section() as appropriate instead of emitting text csect
+       text_section() as appropriate instead of emitting text csect
        pseudo-op directly.
        (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
        (UNIQUE_SECTION): Define macro.
        (ASM_OUTPUT_SECTION_NAME): Define macro.
        * rs6000.c (rs6000_override_options): Disable -ffunction-sections
-        on AIX if debugging and -fdata-sections always.
+       on AIX if debugging and -fdata-sections always.
 
 2000-08-22  Steven King  <sxking@uswest.net>
 
@@ -770,9 +1051,9 @@ Tue Aug 22 20:34:52 2000  Kaz Kojima <kkojima@rr.iij4u.or.jp>
 
 2000-08-22  Stan Cox  <scox@redhat.com>
 
-        * Makefile.in (OBJS): Add dependence.o.
-        * dependence.c: New file.
-        
+       * Makefile.in (OBJS): Add dependence.o.
+       * dependence.c: New file.
+       
 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>, John David Anglin  <dave.anglin@nrc.ca>
 
        * calls.c (check_sibcall_argument_overlap_1): Adjust for
@@ -861,19 +1142,19 @@ Tue Aug 22 02:31:26 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        Remove dead comment.
 
        * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
-        * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
-        * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
-        * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
+       * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
+       * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
+       * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
 
-        * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
+       * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
        writable) instead of hardcoded value.
 
        * toplev.c (compile_file): Output to a file even if -fsyntax-only.
 
-        * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
-        MKTEMP_EACH_FILE.
+       * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
+       MKTEMP_EACH_FILE.
 
-        * gcc.c (cc1_options): Do not process -o or run the assembler if
+       * gcc.c (cc1_options): Do not process -o or run the assembler if
        -fsyntax-only.
        * objc/lang-spec.h: Likewise.
 
@@ -982,17 +1263,17 @@ Mon Aug 21 07:41:12 2000  Jeffrey A Law  (law@cygnus.com)
 
 Sun Aug 20 01:41:35 2000  Dennis Chernoivanov  <cdi@sparc.spb.su>
 
-        * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
-        before `process_directive' so that newlines won't be missed
-        for directives.
-        (cpp_printf): Increment `print->lineno' when newline is emitted.
+       * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
+       before `process_directive' so that newlines won't be missed
+       for directives.
+       (cpp_printf): Increment `print->lineno' when newline is emitted.
 
-        * cppmain.c (cb_ident): Likewise.
-        (cb_define): Likewise.
-        (cb_undef): Likewise.
-        (cb_include): Likewise.
-        (cb_def_pragma): Likewise.
-        (dump_macros_helper): Likewise.
+       * cppmain.c (cb_ident): Likewise.
+       (cb_define): Likewise.
+       (cb_undef): Likewise.
+       (cb_include): Likewise.
+       (cb_def_pragma): Likewise.
+       (dump_macros_helper): Likewise.
 
 2000-08-20  Richard Henderson  <rth@cygnus.com>
 
@@ -1600,17 +1881,17 @@ Thu Aug 10 22:47:09 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
 
 2000-08-10  Kazu Hirata  <kazu@hxi.com>
 
-        * h8300.c (expand_a_rotate): New.
-        (emit_a_rotate): Likewise.
-        (h8300_adjust_insn_length): Add support for the rotate insns.
-        * h8300.md (rotlqi3): New.
-        (*rotlqi3_1): Likewise.
-        (rotlhi3): Likewise.
-        (*rotlhi3_1): Likewise.
-        (rotlhi3): Likewise.
-        (*rotlhi3_1): Likewise.
-        * h8300-proto.h: Add prototypes for expand_a_rotate and
-        emit_a_rotate.
+       * h8300.c (expand_a_rotate): New.
+       (emit_a_rotate): Likewise.
+       (h8300_adjust_insn_length): Add support for the rotate insns.
+       * h8300.md (rotlqi3): New.
+       (*rotlqi3_1): Likewise.
+       (rotlhi3): Likewise.
+       (*rotlhi3_1): Likewise.
+       (rotlhi3): Likewise.
+       (*rotlhi3_1): Likewise.
+       * h8300-proto.h: Add prototypes for expand_a_rotate and
+       emit_a_rotate.
 
        * h8300.c: Fix comment typos.
        (dosize): Declare the variable amount as unsigned.
@@ -2039,8 +2320,8 @@ Sun Aug  6 00:54:42 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
 
 2000-08-05  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
 
-        * config/c4x/c4x.md (return_indirect_internal): New.
-        * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
+       * config/c4x/c4x.md (return_indirect_internal): New.
+       * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
 
 2000-08-04  Joseph S. Myers  <jsm28@cam.ac.uk>
 
@@ -2344,8 +2625,8 @@ Fri Aug  4 06:53:46 2000  Clinton Popetz  <cpopetz@cygnus.com>
 
 2000-08-03  Richard Henderson  <rth@cygnus.com>
 
-        * config/i386/i386.md (return_indirect_internal): New.
-        * config/i386/i386.c (ix86_expand_epilogue): Use it.
+       * config/i386/i386.md (return_indirect_internal): New.
+       * config/i386/i386.c (ix86_expand_epilogue): Use it.
 
 2000-08-03  Zack Weinberg  <zack@wolery.cumb.org>
 
This page took 0.045216 seconds and 5 git commands to generate.