aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2001-08-11Bring s390 backend back in sync with branch.Ulrich Weigand7-164/+390
From-SVN: r44810
2001-08-11rtl.h (REG_EH_RETHROW): Remove.Richard Henderson4-7/+7
* rtl.h (REG_EH_RETHROW): Remove. * rtl.c (reg_note_name): Update. * combine.c (distribute_notes): Don't check for it. From-SVN: r44809
2001-08-11New test from PR #3242Gabriel Dos Reis1-0/+23
From-SVN: r44808
2001-08-11New test from PR #3230Gabriel Dos Reis1-0/+21
From-SVN: r44807
2001-08-11* combine.c (distribute_notes): Place REG_SETJMP.Richard Henderson2-0/+5
From-SVN: r44806
2001-08-11extend.texi (Arrays and pointers implementation): Discourage relying on ↵Richard Henderson2-1/+8
sign-extension of pointers. * doc/extend.texi (Arrays and pointers implementation): Discourage relying on sign-extension of pointers. From-SVN: r44805
2001-08-11New test from PR #3123Gabriel Dos Reis1-0/+9
From-SVN: r44803
2001-08-11New test from GNATS #3073Gabriel Dos Reis1-0/+28
From-SVN: r44802
2001-08-11New test from GNATS.Gabriel Dos Reis1-0/+25
From-SVN: r44801
2001-08-11linux.h (EXTRA_SECTIONS): Remove in_ctors and in_dtors.H.J. Lu2-4/+9
2001-08-11 H.J. Lu <hjl@gnu.org> * config/mips/linux.h (EXTRA_SECTIONS): Remove in_ctors and in_dtors. (EXTRA_SECTION_FUNCTIONS): Remove DTORS_SECTION_ASM_OP and RDATA_SECTION_ASM_OP. From-SVN: r44798
2001-08-11* Correct omitted attribution.Neil Booth1-1/+2
From-SVN: r44797
2001-08-11install.texi (Specific, c4x): Fix cross-reference to the main manual to work ↵Gerald Pfeifer2-4/+15
both for info and HTML versions. * doc/install.texi (Specific, c4x): Fix cross-reference to the main manual to work both for info and HTML versions. From-SVN: r44795
2001-08-11cpphash.c (_cpp_destroy_hashtable): Use ht_destroy.Neil Booth8-12/+51
* cpphash.c (_cpp_destroy_hashtable): Use ht_destroy. * cpphash.h (CPP_IN_SYSTEM_HEADER): Fix. (struct cpp_pool): New member first. * cppinit.c (append_include_chain): Plug memory leaks. * cpplib.c (cpp_register_pragma, cpp_register_pragma_space): Allocate pragma structures from the (aligned) macro pool to avoid leaking memory. * cpplex.c (_cpp_init_pool, _cpp_free_pool): Use pool->first so we don't leak memory. * hashtable.c (ht_destroy): New. * hashtable.h (ht_destroy): New. From-SVN: r44794
2001-08-11pt.c (maybe_fold_nontype_arg): Use TREE_TYPE of ARG as the criterion to ↵Kriang Lerdsuwanakij4-10/+49
avoid rebuilding expression tree... * pt.c (maybe_fold_nontype_arg): Use TREE_TYPE of ARG as the criterion to avoid rebuilding expression tree instead of processing_template_decl. * g++.dg/template/unify1.C: New test. From-SVN: r44793
2001-08-11cpphash.h, cpplib.c: Correct erroneous previous checkin.Neil Booth3-5/+42
* cpphash.h, cpplib.c: Correct erroneous previous checkin. Co-Authored-By: Franz Sirl <Franz.Sirl-kernel@lauterbach.com> From-SVN: r44790
2001-08-11c-lex.c (map): Make const.Neil Booth10-163/+163
* c-lex.c (map): Make const. (cb_file_change): Update for callback passing a line map. Don't assume we have a previous map. Remove sanity check about popping too many files. * cpperror.c (print_location): Make map const. * cppfiles.c (stack_include_file): Update; line maps now hold sysp. (cpp_make_system_header): Similarly. (search_from): Similarly. (_cpp_execute_include): Don't remember where we came from. * cpphash.h (struct cpp_buffer): Remove return_to_line, sysp. (struct cpp_reader): Make map const. (CPP_IN_SYSTEM_HEADER, _cpp_do_file_change): Update. * cpplib.c (do_line): Update; line maps now hold sysp. (cpp_push_buffer): Similarly. (_cpp_do_file_change): Similarly; callback with map instead. (cpp_get_line_maps): Constify return value. (_cpp_pop_buffer): Update. * cpplib.h (struct cpp_file_change): Remove. (struct cpp_callbacks): Update. (cpp_get_line_maps): Constify return value. * cppmacro.c (_cpp_create_definition): Update. * cppmain.c (struct printer): Constify map. (maybe_print_line): Similarly. (print_line): Similarly. Deduce flags 1 and 2 here. (cb_file_change): Update. * line-map.c (free_line_maps): Warn regardless. (add_line_map): Return pointer to const. When passed NULL to_file with LC_LEAVE, use the obvious values for the return point so the caller doesn't have to figure them out. (lookup_line): Return pointer to const. (print_containing_files): Take pointer to const. * line-map.h (struct line_map): New members reason, sysp. (add_line_map): Return pointer to const. (lookup_line): Similarly. (print_containing_files): Take pointer to const. From-SVN: r44789
2001-08-11Daily bump.GCC Administrator2-2/+2
From-SVN: r44787
2001-08-10regmove.c (regmove_optimize): Avoid setting a register twice in a parallel set.Roman Zippel2-0/+14
* regmove.c (regmove_optimize): Avoid setting a register twice in a parallel set. Co-Authored-By: Richard Henderson <rth@redhat.com> From-SVN: r44785
2001-08-10extend.texi (Arrays and pointers implementation): Document behavior of ↵Richard Henderson2-0/+25
pointer/integer conversion. * doc/extend.texi (Arrays and pointers implementation): Document behavior of pointer/integer conversion. From-SVN: r44784
2001-08-10Fix markup.Richard Henderson1-3/+3
From-SVN: r44783
2001-08-10s390x needs 64-bit __LONG_MAX__.Ulrich Weigand2-1/+5
From-SVN: r44781
2001-08-10extend.texi (C Implementation): New chapter.Richard Henderson3-0/+341
* doc/extend.texi (C Implementation): New chapter. * doc/gcc.texi (Top): Link it in. From-SVN: r44777
2001-08-10Fix CVS merge botch.Andrew Cagney2-5/+4
From-SVN: r44774
2001-08-10m68k.c (m68k_svr3_asm_out_constructor): Protect with ifdef CTOR_LIST_BEGIN ↵Richard Henderson2-2/+7
instead of INIT_SECTION_ASM_OP. * config/m68k/m68k.c (m68k_svr3_asm_out_constructor): Protect with ifdef CTOR_LIST_BEGIN instead of INIT_SECTION_ASM_OP. From-SVN: r44770
2001-08-10linux.h (CPP_DEFAULT_CPU_SPEC): New.Andrew Haley1-0/+16
2001-07-26 Andrew Haley <aph@redhat.com> Joern Rennecke <amylaar@redhat.com> * config/sh/linux.h (CPP_DEFAULT_CPU_SPEC): New. (SUBTARGET_CPP_ENDIAN_SPEC): New. (SUBTARGET_CPP_SPEC): New. (CPP_SPEC): Remove. * config/sh/sh.h (SUBTARGET_CPP_ENDIAN_SPEC): New. (SUBTARGET_CPP_PTR_SPEC): New. (CPP_DEFAULT_CPU_SPEC): New. (EXTRA_SPECS): Add SUBTARGET_CPP_ENDIAN_SPEC, SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC. (CPP_SPEC): Break out parts into SUBTARGET_CPP_ENDIAN_SPEC, SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC. (SUBTARGET_CPP_SPEC): Define as an empty string. From-SVN: r44769
2001-08-10calls.c, function.c: Always define PREFERRED_STACK_BOUNDARY if not already ↵Zack Weinberg24-102/+93
defined. * calls.c, function.c: Always define PREFERRED_STACK_BOUNDARY if not already defined. Remove all #ifdefs on STACK_BOUNDARY; this macro is now required. * cselib.c (cselib_process_insn), flow.c (propagate_block), loop.c (find_and_verify_loops), reload.c (reload): Check for rtx code of CALL_INSN, not CALL, when deciding if we need to check for REG_SETJMP note. * gcse.c (compute_hash_table, compute_store_table): Update the #ifdef NON_SAVING_SETJMP code to the new REG_SETJMP logic. * config/avr/avr.c: Fix typo. * config/convex/convex.c (expand_movstr): Use adjust_address. * config/dsp16xx/dsp16xx.c: Define dsp16xx_compare_gen variable. * config/dsp16xx/dsp16xx.md: Correct calls to replace_equiv_address. * config/elxsi/elxsi.c: Include tree.h, expr.h, regs.h, and flags.h. Fix typo. * config/elxsi/elxsi.h: Don't define Rmode (typo for Pmode?) Do define STACK_BOUNDARY. * config/i370/i370.c: Include expr.h. * config/i860/sysv3.h, config/i860/sysv4.h, config/m32r/m32r.h, config/pa/som.h, config/v850/v850.h: Take in_ctors and in_dtors out of EXTRA_SECTIONS; take CTORS_SECTION_FUNCTION and DTORS_SECTION_FUNCTION out of EXTRA_SECTION_FUNCTIONS. * config/m88k/m88k.c: Include c-tree.h after expr.h. * config/pdp11/pdp11.c: Include expr.h and toplev.h. * config/romp/romp.c: Include expr.h after tree.h. Include toplev.h. (output_fpop): Use xmalloc, not oballoc. * config/we32k/we32k.c: Include expr.h. From-SVN: r44768
2001-08-10increase array size to force into memoryJason Merrill1-4/+4
From-SVN: r44764
2001-08-10* config/h8300/h8300.h: Fix formatting.Kazu Hirata2-13/+19
From-SVN: r44763
2001-08-10c-common.h (RETURN_NULLIFIED_P): Lose.Jason Merrill9-43/+96
* c-common.h (RETURN_NULLIFIED_P): Lose. * c-semantics.c (genrtl_return_stmt): Don't check it. Support named return value optimization for inlines, too. * decl.c (finish_function): Nullify returns here. * semantics.c (genrtl_start_function): Not here. (cp_expand_stmt): Don't mess with CLEANUP_STMTs. (nullify_returns_r): No longer static. Just clear RETURN_EXPR. Also nullify the CLEANUP_STMT for the nrv. * cp-tree.h: Declare it. * optimize.c (declare_return_variable): Replace the nrv with the return variable. * typeck.c (check_return_expr): Be more flexible on alignment check. Ignore cv-quals when checking for a matching type. From-SVN: r44762
2001-08-10mips.c (mips_add_large_offset_to_sp): New function.Richard Sandiford2-146/+100
* config/mips/mips.c (mips_add_large_offset_to_sp): New function. (mips_annotate_frame_insn): New function. (mips_emit_frame_related_store): New function. (save_restore_insns): Don't mark instructions that set up the base registers as frame-related. Add REG_FRAME_RELATED_EXPR notes to the store instructions instead. (mips_expand_prologue): If the stack size is moved into a temporary register, do not mark that move as frame-related. Add a REG_FRAME_RELATED_EXPR note to the stack adjustment instruction. From-SVN: r44761
2001-08-10mips.c (save_restore_insns): Don't mark the RA's stack slot as unchanging if ↵Richard Sandiford2-1/+8
current_function_calls_eh_return. * config/mips/mips.c (save_restore_insns): Don't mark the RA's stack slot as unchanging if current_function_calls_eh_return. From-SVN: r44760
2001-08-10mips.md (reload_outcc): Use HARD_REGNO_NREGS to access the second half of ↵Richard Sandiford2-2/+12
the TFmode scratch operand. * config/mips/mips.md (reload_outcc): Use HARD_REGNO_NREGS to access the second half of the TFmode scratch operand. From-SVN: r44759
2001-08-10Restore HPUX gcj bootstrap.Anthony Green2-0/+9
From-SVN: r44758
2001-08-10install.texi (Specific, avr): Fix cross-reference to the main manual to work ↵Gerald Pfeifer2-3/+14
both for info and HTML versions. * doc/install.texi (Specific, avr): Fix cross-reference to the main manual to work both for info and HTML versions. From-SVN: r44755
2001-08-10Daily bump.GCC Administrator2-2/+2
From-SVN: r44753
2001-08-10stmt.c (expand_null_return_1): Remove code to generate simple returns and ↵John David Anglin5-59/+27
"use_goto" argument. * stmt.c (expand_null_return_1): Remove code to generate simple returns and "use_goto" argument. (expand_null_return, expand_value_return): Update all callers. * function.c (expand_function_end): Remove code to generate simple return. * config/vax/vax.md (epilogue): New expander for function return. * doc/md.texi (epilogue): Remove "if defined". From-SVN: r44750
2001-08-09Makefile.in: Partially revert my previous change...Zack Weinberg2-3/+9
* Makefile.in: Partially revert my previous change: put -DGENERATOR_FILE back in HOST_CFLAGS, take it out of the hashtab.o and safe-ctype.o rules. From-SVN: r44748
2001-08-09Move constructor/destructor handling into target hooks.Richard Henderson96-2756/+910
From-SVN: r44747
2001-08-09crtbegin.asm (__JCR_LIST__): New.Richard Henderson3-35/+56
* config/alpha/crtbegin.asm (__JCR_LIST__): New. (__do_global_dtors_aux): Use gp-relative static data to avoid one dynamic relocation. (__do_frame_setup): Register Java classes. * config/alpha/crtend.asm (__JCR_END__): New. From-SVN: r44746
2001-08-09tweak commentJason Merrill1-1/+4
From-SVN: r44744
2001-08-09Makefile.in (HOST_CFLAGS): Take out -DGENERATOR_FILE.Zack Weinberg7-201/+381
* Makefile.in (HOST_CFLAGS): Take out -DGENERATOR_FILE. (CONFIG_H, TCONFIG_H, TM_P_H): Update. (GEN, STAGESTUFF): Add new files. (insn-constants.h, s-constants, tm-preds.h, s-preds, genconstants, genpreds, genconstants.o, genpreds.o): New rules. (hashtab.o, safe-ctype.o): Add -DGENERATOR_FILE. * mkconfig.sh: Include tm-preds.h in tm_p.h; insn-constants.h as well as insn-codes.h and insn-flags.h in config.h; and no extra headers in tconfig.h and hconfig.h. * gencodes.c: Eliminate code to generate predicate declarations or #defines for md-file constants. * genconstants.c, genpreds.c: New files. * i386.md: Re-order guard expressions such that TARGET_64BIT comes first, when this permits better optimization. Add TARGET_64BIT to more x86-64 patterns. Add comment explaining why this is desirable. From-SVN: r44743
2001-08-09fde-glibc.c: Require glibc 2.2.4+ headers.Jakub Jelinek3-98/+59
* config/ia64/fde-glibc.c: Require glibc 2.2.4+ headers. (find_fde_for_dso): Remove. (_Unwind_IteratePhdrCallback): New. (_Unwind_FindTableEntry): Use dl_iterate_phdr. * config/ia64/crtbegin.asm (__ia64_app_header): Remove. From-SVN: r44742
2001-08-09expr.c (emit_single_push_insn): Only exists ifdef PUSH_ROUNDING.Richard Kenner2-11/+23
* expr.c (emit_single_push_insn): Only exists ifdef PUSH_ROUNDING. (move_by_pieces_1): If would call it, abort if no PUSH_ROUNDING. From-SVN: r44740
2001-08-09sched-vis.c (MAX_VISUAL_NO_UNIT): Define.Graham Stott2-3/+13
* sched-vis.c (MAX_VISUAL_NO_UNIT): Define. (vis_no_unit): Use it. (visualize_no_unit): Add the insn only if room exists. From-SVN: r44739
2001-08-09predict.c (estimate_probability): Replace magic numbers with appropriate ↵Graham Stott2-3/+8
enumeration. * predict.c (estimate_probability): Replace magic numbers with appropriate enumeration. From-SVN: r44738
2001-08-09cppexp.c (EXTRACT_PRIO): Uppercase and parenthsize macro parameter.Graham Stott2-2/+8
* cppexp.c (EXTRACT_PRIO): Uppercase and parenthsize macro parameter. (EXTRACT_FLAGS): Likewise. From-SVN: r44737
2001-08-09mips.c (mips_legitimate_address_p): Check for CONST_INT in last patch.Aldy Hernandez2-2/+8
* config/mips/mips.c (mips_legitimate_address_p): Check for CONST_INT in last patch. From-SVN: r44736
2001-08-09Daily bump.GCC Administrator2-2/+2
From-SVN: r44734
2001-08-08check-init.c (flags.h): IncludeAlexandre Petit-Bianco10-153/+541
2001-08-08 Alexandre Petit-Bianco <apbianco@redhat.com> * check-init.c (flags.h): Include (check_init): Don't report uninitialized static class initialization flags, don't free bit index when doing static class initialization optimization. (check_for_initialization): Return type changed to `unsigned int.' (attach_initialized_static_class): New function. * class.c (add_method_1): Create the initialized static class table if necessary. (finish_class): Always emit deferred inline methods. * decl.c (emit_init_test_initialization): Moved to expr.c (complete_start_java_method): Don't traverse DECL_FUNCTION_INIT_TEST_TABLE. (lang_mark_tree): Mark hash tables in function decls. * expr.c (emit_init_test_initialization): Moved from decl.c. (build_class_init): Create LAG_DECL_SPECIFIC for the static class initialization flag, set DECL_CONTEXT and LOCAL_CLASS_INITIALIZATION_FLAG. (java_lang_expand_expr): Emit initialization code for static class initialized flags when entering block, if necessary. * gcj.texi (-fno-optimize-static-class-initialization): Documented. * java-tree.h (flag_optimize_sci): New global variable declaration. (DECL_FUNCTION_INITIALIZED_CLASS_TABLE): New macro. (DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND): Likewise. (LOCAL_FINAL_P): Fixed typo in comment. (FINAL_VARIABLE_P): Likewise. (LOCAL_CLASS_INITIALIZATIO_FLAG): New macro. (LOCAL_CLASS_INITIALIZATIO_FLAG_P): Likewise. (struct lang_decl): New fields `ict', `smic' and `cif.' (check_for_initialization): New returned value for global. (attach_initialized_static_class): New global function. (STATIC_CLASS_INIT_OPT_P): New macro. * lang-options.h (-fno-optimize-static-class-initialization): New flag. * lang.c (java_decode_option): Handle `-fno-optimize-static-class-initialization' * parse.y (start_complete_expand_method): New function. (java_expand_method_bodies): Likewise. (attach_init_test_initialization_flags): Likewise. (adjust_init_test_initialization): Likewise. (emit_test_initialization): Likewise. (java_complete_expand_methods): Nullify abstract and native method bodies. (java_complete_expand_method): New locals `fbody', `block_body' and `exception_copy.' Reorganized: directly return on empty method bodies, call `start_complete_expand_method', remember definitely initialized static class in function, don't expand method bodies. (java_expand_classes): Call `java_expand_method_bodies' before `finish_class' when compiling to native. (resolve_expression_name): Use `orig' after building outer class field access. (patch_invoke): Remember static method invokations. (http://gcc.gnu.org/ml/gcc-patches/2001-08/msg00454.html) From-SVN: r44733
2001-08-08class.c (emit_register_classes): Use assemble_jcr if possible.Anthony Green4-36/+104
2001-08-08 Anthony Green <green@redhat.com> * java/class.c (emit_register_classes): Use assemble_jcr if possible. Keep the original mechanism as a fallback. * defaults.h (JCR_SECTION_NAME): Define if we have named section and weak symbol support. * crtstuff.c (__JCR_LIST__): Define. (__JCR_END__): Define. (_Jv_RegiserClasses): Define weak symbol if possible. (__do_global_ctors_aux): Register classes for ELF targets with weak symbol support. From-SVN: r44731