toplev.c (set_float_handler): Make static.
[gcc.git] / gcc / ChangeLog
index 68d9b255747c08f05f67efdbc7c17add87a20294..880b27b0df78dccdb75866e56a200f605524cac7 100644 (file)
@@ -1,3 +1,111 @@
+2001-08-11  Zack Weinberg  <zackw@panix.com>
+
+       * toplev.c (set_float_handler): Make static.
+       * toplev.h: Don't prototype set_float_handler.
+
+       * simplify-rtx.c: Don't include setjmp.h.
+       (simplify_unary_real, simplify_binary_real, simplify_binary_is2orm1):
+       New functions.
+       (simplify_unary_operation, simplify_binary_operation): Use them,
+       via do_float_handler.
+
+       * fold-const.c: Don't include setjmp.h.
+       (exact_real_inverse_1): New function.
+       (exact_real_inverse): Use it, via do_float_handler.
+
+       * varasm.c: Don't include setjmp.h.
+       (assemble_real_1): New function.
+       (assemble_real): Use it, via do_float_handler.
+       Call internal_error if we get a trap here.
+
+       * c-parse.in, cse.c, cselib.c, config/i386/i386.c,
+       config/pj/pj.c, config/s390/s390.c: Don't include setjmp.h.
+
+2001-08-11  Zack Weinberg  <zackw@panix.com>
+
+       * defaults.h: Define PREFERRED_STACK_BOUNDARY to
+       STACK_BOUNDARY if not already defined.
+
+       * calls.c, function.c, reload1.c, explow.c: Don't default
+       PREFERRED_STACK_BOUNDARY.  Remove all #if/#ifdef on
+       PREFERRRED_STACK_BOUNDARY and/or STACK_BOUNDARY.
+
+       * explow.c (allocate_dynamic_stack_space): Change unsafe #if
+       to run-time test.
+
+       * doc/tm.texi: Document that STACK_BOUNDARY is required;
+       clarify difference between it and PREFERRED_STACK_BOUNDARY.
+
+2001-08-11  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cppmacro.c (enter_macro_context): Push macro expansions even
+       if empty.
+
+2001-08-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * config/rs6000/rs6000.c: Include integrate.h to silence warning.
+       (rs6000_elf_section_type_flags): Actually return a value.
+
+2001-08-11  Ulrich Weigand  <uweigand@de.ibm.com>
+       * s390.c, s390.h, s390.md, s390-protos.h, linux.h, t-linux: 
+       Clean up code: add missing comments and prototypes, fix warnings,
+        remove obsolete code, fix spacing to conform to coding style.
+
+2001-08-11  Ulrich Weigand  <uweigand@de.ibm.com>
+       * config/s390/s390.c (targetm): Define TARGET_ASM_OPEN_PAREN
+       and TARGET_ASM_CLOSE_PAREN.
+       (regclass_map): CC register belongs to class NO_REGS.
+       (legitimize_pic_address): Don't generate unnecessary moves 
+       (to avoid confusing loop optimization).
+       (check_and_change_labels): Replace jump_long by indirect_jump.
+       (s390_final_chunkify): Don't start a new literal pool on section 
+       switch in 64-bit code.
+       (s390_va_start, s390_va_arg): Fixed incorrect sizes for 64-bit.
+       
+       * config/s390/s390.h (TARGET_SWITCHES): Renamed debug_arg to debug.
+       (MAX_BITS_PER_WORD, MAX_LONG_TYPE_SIZE): Set to 64 (for 64-bit).
+       (HARD_REGNO_MODE_OK, RETURN_IN_MEMORY): Support complex integer 
+       modes correctly.
+       (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Remove CC_REGS.
+       (EH_RETURN_HANDLER_RTX): Fixed incorrect offset for 64-bit.
+       (CONST_COSTS): Fixed incorrect costs.
+
+       * config/s390/s390.md (fixuns_trunc[sd]f[sd]i2, udivsi3, umodsi3):
+       Use emit_jump instead of emit_jump_insn (gen_jump).
+       (divsi3, modsi3): Clobber low word of divmoddisi3 before shifting 
+       (to avoid confusing flow analysis).
+       (tablejump, tablejump1, tablejump2): Removed.  Replaced by casesi.
+       (casesi, casesi_jump): New.
+       (jump_long): Removed.  Functionality merged into indirect_jump.
+       (indirect_jump): Accept address_operand, not just register_operand.
+       (cjump_long, icjump_long): Use same logic as indirect_jump.
+       (builtin_setjmp_setup, builtin_setjmp_receiver, builtin_longjmp):
+       Fixed broken setjmp/longjmp handling.
+       (do_builtin_setjmp_setup): Removed.
+
+       * config/s390/linux.h (ASM_OUTPUT_DOUBLE_INT): Work around
+       broken GNU as versions that don't accept .quad with large
+       negative values.  Use hexadecimal output instead.
+       (ASM_OUTPUT_ADDR_DIFF_ELT): Adapt to new casesi insn.
+       (ASM_OPEN_PAREN, ASM_CLOSE_PAREN, FUNCTION_PROLOGUE,
+       FUNCTION_EPILOGUE): Removed.  Now in targetm.
+
+       * config/s390/linux64.h (CALL_USED_REGISTERS): Add CC register.
+
+       * config/s390/fixdfdi.h: Add missing copyright statement.
+       Fix type conflicts on 64-bit.  Add missing SFmode routines.
+
+       * s390.c, s390.h, s390.md, linux.h, linux64.h: Fixed incorrect
+       email address.
+
+2001-08-11  Richard Henderson  <rth@redhat.com>
+
+       * rtl.h (REG_EH_RETHROW): Remove.
+       * rtl.c (reg_note_name): Update.
+       * combine.c (distribute_notes): Don't check for it.
+
 2001-08-11  Richard Henderson  <rth@redhat.com>
 
        * combine.c (distribute_notes): Place REG_SETJMP.