Brendan Kehoe [Tue, 30 Nov 1999 12:02:09 +0000 (12:02 +0000)]
sparc.h (MASK_FASTER_STRUCTS, [...]): Define.
* sparc.h (MASK_FASTER_STRUCTS, TARGET_FASTER_STRUCTS): Define.
(TARGET_SWITCHES): Add -mfaster-structs/-mno-faster-structs flags.
(ROUND_TYPE_ALIGN): Use better value of -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.
From-SVN: r30722
Nick Clifton [Tue, 30 Nov 1999 11:05:05 +0000 (11:05 +0000)]
Fix psimode truncation patterns to not accept MEMs that are not valid for
PSImode.
From-SVN: r30721
Michael Hayes [Tue, 30 Nov 1999 10:42:29 +0000 (10:42 +0000)]
flow.c (flow_nodes_print, [...]): New functions.
* 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.
From-SVN: r30720
Jeff Law [Tue, 30 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30719
Philippe De Muyter [Tue, 30 Nov 1999 08:36:13 +0000 (09:36 +0100)]
cppinit.c (CAT): The argument list of this macro may not contain spaces !
* cppinit.c (CAT): The argument list of this macro may not contain
spaces !
From-SVN: r30718
David S. Miller [Tue, 30 Nov 1999 06:03:30 +0000 (22:03 -0800)]
Move quantity tables and register equivalence chains into
per-qty and per-register structure arrays respectively.
From-SVN: r30717
Mark Mitchell [Mon, 29 Nov 1999 23:39:29 +0000 (23:39 +0000)]
* pt.c (tsubst_decl): Robustify.
From-SVN: r30716
Richard Kenner [Mon, 29 Nov 1999 23:02:14 +0000 (18:02 -0500)]
Install proper change
From-SVN: r30715
Richard Kenner [Mon, 29 Nov 1999 22:56:39 +0000 (22:56 +0000)]
fold-const.c (extract_muldiv, [...]): Reverse operation if C is negative.
* 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.
From-SVN: r30714
Richard Kenner [Mon, 29 Nov 1999 22:44:52 +0000 (22:44 +0000)]
expr.c (store_constructor_field): If bit position is not multiple of alignment of TARGET's mode, use BLKmode.
* expr.c (store_constructor_field): If bit position is not multiple
of alignment of TARGET's mode, use BLKmode.
From-SVN: r30713
Richard Kenner [Mon, 29 Nov 1999 22:35:51 +0000 (22:35 +0000)]
expr.c (expand_expr_unaligned): Add more code from full case that is needed when OP0 is in a register.
* expr.c (expand_expr_unaligned): Add more code from full case
that is needed when OP0 is in a register.
From-SVN: r30712
Bruce Korb [Mon, 29 Nov 1999 22:31:15 +0000 (22:31 +0000)]
Update e-address
From-SVN: r30711
Alexandre Petit-Bianco [Mon, 29 Nov 1999 20:43:24 +0000 (20:43 +0000)]
parse.y (catch_clause_parameter:): Still set `$$' to NULL_TREE in case of error.
Tue Nov 23 10:55:18 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (catch_clause_parameter:): Still set `$$' to NULL_TREE
in case of error. Error message tuned.
This fixes a catch clause error handling reported on the java-discuss
mailing list:
http://sourceware.cygnus.com/ml/java-discuss/1999-q4/msg00358.html
From-SVN: r30710
Per Bothner [Mon, 29 Nov 1999 19:43:55 +0000 (11:43 -0800)]
exception.cc: Remove prototype declarations for malloc and free.
1999-11-27 Per Bothner <per@bothner.com>
* exception.cc: Remove prototype declarations for malloc and free.
These clash with recent versions of glibc, which specifies `throws ()'
when __cplusplus is defined. Instead, #include <stdlib.h>.
From-SVN: r30709
J"orn Rennecke [Mon, 29 Nov 1999 18:11:35 +0000 (18:11 +0000)]
Fix for gcc.c-torture/noncompile/920824-1.c on SH (and mips?)
Fix for gcc.c-torture/noncompile/920824-1.c on SH (and mips?)
* dwarfout.c (field_byte_offset): Size can be zero if there was
an error.
From-SVN: r30708
Alexandre Petit-Bianco [Mon, 29 Nov 1999 17:40:31 +0000 (17:40 +0000)]
hu Nov 4 16:27:01 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (resolve_qualified_expression_name): Handle PLUS_EXPR.
(qualify_ambiguous_name): Likewise.
(This patch fixes the gcj PR #55.)
From-SVN: r30707
Bernd Schmidt [Mon, 29 Nov 1999 17:35:07 +0000 (17:35 +0000)]
Delete unused vars.
From-SVN: r30706
Bernd Schmidt [Mon, 29 Nov 1999 14:48:30 +0000 (14:48 +0000)]
Add missing return types
From-SVN: r30705
Bruce Korb [Mon, 29 Nov 1999 14:35:50 +0000 (14:35 +0000)]
don't skip GLIBC files any more, more C++ header testing, corrected spelling of mach
From-SVN: r30704
Bernd Schmidt [Mon, 29 Nov 1999 12:18:56 +0000 (12:18 +0000)]
New test: gcc.dg/991129-1.c
From-SVN: r30703
Bernd Schmidt [Mon, 29 Nov 1999 12:09:54 +0000 (12:09 +0000)]
Verify class is ok when allocating reload reg in push_reload
From-SVN: r30702
Bernd Schmidt [Mon, 29 Nov 1999 11:51:16 +0000 (11:51 +0000)]
Fix bug in reloads_conflict
From-SVN: r30701
Bernd Schmidt [Mon, 29 Nov 1999 11:44:57 +0000 (11:44 +0000)]
Clean up parts of the scheduler
From-SVN: r30700
Bernd Schmidt [Mon, 29 Nov 1999 11:06:51 +0000 (11:06 +0000)]
Delete useless patterns
From-SVN: r30699
Bernd Schmidt [Mon, 29 Nov 1999 10:51:09 +0000 (10:51 +0000)]
Fix abort in loop_iterations
From-SVN: r30698
Mark Mitchell [Mon, 29 Nov 1999 09:05:34 +0000 (09:05 +0000)]
Make ChangeLog entry clearer
From-SVN: r30697
Jeff Law [Mon, 29 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30696
David S. Miller [Mon, 29 Nov 1999 08:07:23 +0000 (00:07 -0800)]
sparc.c (init_cumulative_args): Fix type of third arg.
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.
From-SVN: r30695
Jeff Law [Mon, 29 Nov 1999 06:18:49 +0000 (23:18 -0700)]
Fix a typo.
From-SVN: r30694
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:50:04 +0000 (02:50 +0000)]
com.c (ffecom_file_, [...]): Constify a char*.
* com.c (ffecom_file_, ffecom_file, file_buf,
ffecom_open_include_): Constify a char*.
(ffecom_possible_partial_overlap_): Mark parameter `expr2' with
ATTRIBUTE_UNUSED.
(ffecom_init_0): Use a fully prototyped cast in call to bsearch.
(lang_print_error_function): ANSI-fy.
* com.h (ffecom_file): Constify a char*.
* fini.c (main): Call return, not exit.
* g77spec.c (lang_specific_driver): Use non-const *in_argv in
assignment.
* intrin.c (ffeintrin_cmp_name_): Don't needlessly cast away
const-ness.
From-SVN: r30693
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:26:49 +0000 (02:26 +0000)]
com.c (ffecom_get_invented_identifier): Rewrite to take an ellipses.
* com.c (ffecom_get_invented_identifier): Rewrite to take an ellipses.
(ffecom_char_enhance_arg_, ffecom_do_entry_,
ffecom_f2c_make_type_, ffecom_gen_sfuncdef_,
ffecom_start_progunit_, ffecom_start_progunit_,
ffecom_start_progunit_, ffecom_sym_transform_assign_,
ffecom_transform_equiv_, ffecom_transform_namelist_,
ffecom_vardesc_, ffecom_vardesc_array_, ffecom_vardesc_dims_,
ffecom_end_transition, ffecom_lookup_label, ffecom_temp_label):
Adjust accordingly.
* com.h (ffecom_get_invented_identifier): Likewise.
* sts.c (ffests_printf): New function taking ellipses.
(ffests_printf_1D, ffests_printf_1U, ffests_printf_1s,
ffests_printf_2Us): Delete.
* sts.h: Likewise.
* std.c (ffestd_R1001dump_, ffestd_R1001dump_1005_1_,
ffestd_R1001dump_1005_2_, ffestd_R1001dump_1005_3_,
ffestd_R1001dump_1005_4_, ffestd_R1001dump_1005_5_,
ffestd_R1001dump_1010_2_, ffestd_R1001dump_1010_3_,
ffestd_R1001dump_1010_4_, ffestd_R1001dump_1010_5_,
ffestd_R1001rtexpr_): Call `ffests_printf', not `ffests_printf_*'.
* ste.c (ffeste_io_ialist_, ffeste_io_cilist_, ffeste_io_cllist_,
ffeste_io_icilist_, ffeste_io_inlist_, ffeste_io_olist_): Likewise.
From-SVN: r30692
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:08:36 +0000 (02:08 +0000)]
libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.
* libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.
(asprintf, vasprintf): Provide declarations.
From-SVN: r30691
Robert Lipe [Sun, 28 Nov 1999 21:44:43 +0000 (21:44 +0000)]
sco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn table from .fini into .dtor.
* i386/sco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn
table from .fini into .dtor.
From-SVN: r30690
Anthony Green [Sun, 28 Nov 1999 20:45:34 +0000 (20:45 +0000)]
tree.h (struct tree_decl): Add malloc_flag.
* 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.
From-SVN: r30689
Jeffrey A Law [Sun, 28 Nov 1999 20:24:48 +0000 (20:24 +0000)]
* pa.md (reload shift-add patterns): Remove.
From-SVN: r30688
Herman A.J. ten Brugge [Sun, 28 Nov 1999 20:05:50 +0000 (21:05 +0100)]
* reorg.c (dbr_schedule) Print more statistics. Corrected
problem when printing info when 3 delay slots are filled.
From-SVN: r30687
Jeff Law [Sun, 28 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30686
Jakub Jelinek [Sun, 28 Nov 1999 08:08:02 +0000 (09:08 +0100)]
combine.c (setup_incoming_promotions): Pass an outgoing regno to FUNCTION_ARG_REGNO_P which it expects.
* combine.c (setup_incoming_promotions): Pass an outgoing
regno to FUNCTION_ARG_REGNO_P which it expects.
From-SVN: r30685
Andreas Jaeger [Sun, 28 Nov 1999 08:03:00 +0000 (09:03 +0100)]
* mips/linux.h (CPP_PREDEFINES): Undefine before redefining.
From-SVN: r30684
Philippe De Muyter [Sun, 28 Nov 1999 07:58:37 +0000 (08:58 +0100)]
* hashtab.c (sys/types.h): File included.
From-SVN: r30683
Philippe De Muyter [Sun, 28 Nov 1999 07:56:53 +0000 (08:56 +0100)]
* cccp.c (do_include): Avoid initialization of automatic variable.
From-SVN: r30682
Philippe De Muyter [Sun, 28 Nov 1999 07:47:57 +0000 (08:47 +0100)]
integrate.c (mark_stores): Function definition made void, to match previous declaration.
* 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'.
From-SVN: r30681
William Bader [Sun, 28 Nov 1999 07:41:09 +0000 (07:41 +0000)]
* gcc_update: Allow patches compressed by bzip2.
From-SVN: r30680
Mark Mitchell [Sat, 27 Nov 1999 18:04:50 +0000 (18:04 +0000)]
Fix typo
From-SVN: r30679
Mark Mitchell [Sat, 27 Nov 1999 18:01:48 +0000 (18:01 +0000)]
decl2.c (finish_file): Call expand_body for inline functions that will be written out but that do not...
* decl2.c (finish_file): Call expand_body for inline functions
that will be written out but that do not yet have RTL.
* semantics.c (expand_body): Do not generate RTL For inline
functions that do not yet need to be written out.
From-SVN: r30678
Richard Kenner [Sat, 27 Nov 1999 14:55:36 +0000 (14:55 +0000)]
expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is known to be multiple of divisor.
* expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is
known to be multiple of divisor.
From-SVN: r30677
Richard Kenner [Sat, 27 Nov 1999 14:47:23 +0000 (14:47 +0000)]
* expr.c (store_constructor): Don't clobber TARGET if CLEARED.
From-SVN: r30676
Bernd Schmidt [Sat, 27 Nov 1999 14:08:36 +0000 (14:08 +0000)]
New test: compile/991127-1.c
From-SVN: r30675
Richard Kenner [Sat, 27 Nov 1999 13:59:20 +0000 (13:59 +0000)]
combine.c (try_combine): Add code to try to merge a set of a two-word pseudo to a constant with a...
* 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.
From-SVN: r30674
Richard Kenner [Sat, 27 Nov 1999 13:50:13 +0000 (13:50 +0000)]
fold-const.c (negate_expr, [...]): New.
* 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.
From-SVN: r30673
Jeff Law [Sat, 27 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30672
Bernd Schmidt [Fri, 26 Nov 1999 11:44:37 +0000 (11:44 +0000)]
Avoid GNU C extension
From-SVN: r30671
Jeff Law [Fri, 26 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30670
Mark Mitchell [Thu, 25 Nov 1999 20:32:04 +0000 (20:32 +0000)]
Make-lang.in (CXX_SRCS): Add optimize.c.
1999-11-25 Mark Mitchell <mark@codesourcery.com>
* Make-lang.in (CXX_SRCS): Add optimize.c.
* Makefile.in (CXX_OBJS): Add optimize.o.
(CXX_TREE_H): Add splay-tree.h, system.h, and $(CONFIG_H).
(spew.o, lex.o, decl.o, decl2.o, typeck2.o, typeck.o): Adjust.
(class.o, call.o, friend.o, init.o, method.o, cvt.o): Likewise.
(search.o, tree.o, ptree.o, rtti.o, except.o, expr.o): Likewise.
(xref.o, pt.o, error.o, errfn.o, repo.o, semantics.o): Likewise.
(dump.o): Likewise.
(optimize.o): New target.
* class.c: Don't include splay-tree.h.
* cp-tree.def (CTOR_COMPLETE): Rename to CTOR_STMT.
* cp-tree.h: Include splay-tree.h.
(DECL_UNINLINABLE): New macro.
(CTOR_BEGIN_P, CTOR_END_P): New macros.
(flag_inline_trees): New variable.
(local_variable_p): New function.
(nonstatic_local_decl_p): Likewise.
(optimize_function): Likewise.
(cplus_unsave_expr_now): Remove.
(copy_tree_r): Declare.
(remap_save_expr): Likewise.
* decl.c (local_variable_p): Don't
make it static.
(local_variable_p_walkfn): New function.
(make_rtl_for_local_static): Remove code to try to avoid writing
out static constants.
(emit_local_var): Fix indentation.
(nonstatic_local_decl_p): New function.
(check_default_argument): Use local_variable_p_walkfn, not
local_variable_p, when walking the tree.
(start_function): Set the DECL_CONTEXT for automatically generated
labels.
(finish_constructor_body): Use CTOR_STMT to mark the end of a
constructor.
* decl2.c: Don't include splay-tree.h.
(flag_inline_trees): Define.
* dump.c: Don't include
splay-tree.h.
* except.c (expand_end_catch_block): Fix comment formatting.
(expand_end_eh_spec): Set DECL_CONTEXT on temporary variables.
(expand_throw): Tidy comment.
* init.c (build_vec_delete_1): Use create_temporary_var.
* lex.c (cplus_tree_code_type): Make it static.
(cplus_tree_code_length): Likewise.
(cplus_tree_code_name): Likewise.
* optimize.c: New file.
* semantics.c (finish_goto_stmt): Set DECL_UNLINABLE for functions
with computed gotos.
(setup_vtbl_ptr): Mark the beginnings of constructors with
CTOR_STMT.
(expand_stmt): Handle CTOR_STMT, not CTOR_COMPLETE.
(expand_body): Call optimize_function. Save bodies if we're doing
inlining on trees.
* tree.c: Don't include splay-tree.h. Include insn-config.h and
integrate.h.
(copy_tree_r): Make it public.
(statement_code_p): New function.
(mark_local_for_remap_r): Likewise.
(cp_usave_r): Likewise.
(cp_unsave): Likewise.
(build_cplus_new): Set DECL_CONTEXT for temporary variables.
(walk_tree): Walk into `s' class nodes. Walk statement chains.
(copy_tree_r): Handle 's' class nodes. Restore chains for
statements. Nullify scopes. Don't copy types.
(init_tree): Set lang_unsave to cp_unsave.
(remap_save_expr): Define.
* ir.texi: Document CTOR_STMT.
From-SVN: r30669
Mark Mitchell [Thu, 25 Nov 1999 20:06:25 +0000 (20:06 +0000)]
/gcc/../texinfo/makeinfo/Makefile ] ...
/gcc/../texinfo/makeinfo/Makefile ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../texinfo/makeinfo/makeinfo ; else echo makeinfo ; fi`" "MAKEINFOFLAGS=" "RANLIB_FOR_TARGET=` if [ -f /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ; else if [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] ; then echo ranlib; else t='s,^,i686-pc-linux-gnu-,'; echo ranlib | sed -e $t ; fi; fi`" "RANLIB_TEST_FOR_TARGET=[ -f ` if [ -f /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ; else if [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] ; then echo ranlib; else t='s,^,i686-pc-linux-gnu-,'; echo ranlib | sed -e $t ; fi; fi` ] || ( [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib ] )" "SHELL=/bin/sh" "STAGE_PREFIX=" "exeext=" "build_exeext=" "objext=.o" "exec_prefix=/usr/local" "prefix=/usr/local" "local_prefix=/usr/local" "gxx_include_dir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../..`echo /usr/local | sed -e 's|^/usr/local||' -e 's|/[^/]*|/..|g'`/include/g++-3" "tooldir=" "gcc_tooldir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../i686-pc-linux-gnu" "bindir=/usr/local/bin" "libsubdir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96" "datadir=/usr/local/share" "distdir=../tmp/\$(subdir)" "localedir=/usr/local/share/locale" "CC=gcc" "CXX_FOR_BUILD=" "CXXFLAGS=" "CXX_FOR_TARGET=" ../cc1plus
make[1]: Entering directory `/home/mitchell/dev/egcs/objdir/gcc/cp'
gcc -DIN_GCC -g -W -Wall -W -Wall -o ../cc1plus `cat ../stamp-objlist` ../c-common.o ../c-pragma.o call.o decl.o errfn.o expr.o pt.o typeck2.o class.o decl2.o error.o lex.o parse.o ptree.o rtti.o spew.o typeck.o cvt.o except.o friend.o init.o method.o search.o semantics.o tree.o xref.o repo.o dump.o optimize.o ../../libiberty/libiberty.a
make[1]: Leaving directory `/home/mitchell/dev/egcs/objdir/gcc/cp'
bash$ cd ~/dev/egcs/gcc
bash$ cvs update ChangeLog
P ChangeLog
bash$ cd cp
* except.c (init_eh_for_function): But still zero
eh_return_context, eh_return_stack_adjust, and eh_return_handler.
From-SVN: r30668
Mark Mitchell [Thu, 25 Nov 1999 19:21:27 +0000 (19:21 +0000)]
except.h (eh_status): Adjust documentation for x_protect_list.
* 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.
From-SVN: r30667
Kaveh R. Ghazi [Thu, 25 Nov 1999 16:58:32 +0000 (16:58 +0000)]
c-common.c (check_format_info): Don't call a variadic function with a non-literal format string.
* 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.
From-SVN: r30666
Mark Mitchell [Thu, 25 Nov 1999 16:14:00 +0000 (16:14 +0000)]
* tree.c (unsave_expr_now): Handle NULL_TREE as input.
From-SVN: r30665
Jan Hubicka [Thu, 25 Nov 1999 12:53:44 +0000 (13:53 +0100)]
reg-stack.c (subst_stack_regs_pat): Swap operands in commutative operations when needed.
* 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.
From-SVN: r30664
Andreas Jaeger [Thu, 25 Nov 1999 11:11:43 +0000 (12:11 +0100)]
mips.md (casesi_internal): Add missing brace.
1999-11-25 Andreas Jaeger <aj@suse.de>
* config/mips/mips.md (casesi_internal): Add missing brace.
From-SVN: r30663
Jason Merrill [Thu, 25 Nov 1999 09:31:49 +0000 (09:31 +0000)]
dwarf2out.c (pend_type, [...]): Lose.
* 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.
From-SVN: r30662
Jeff Law [Thu, 25 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30661
Gavin Romig-Koch [Thu, 25 Nov 1999 04:44:27 +0000 (04:44 +0000)]
* config/mips/mips.md (call_value_multiple_interanal1): New.
From-SVN: r30660
Jason Merrill [Thu, 25 Nov 1999 02:36:40 +0000 (02:36 +0000)]
dwarf2out.c (free_AT, free_die): New fns.
* 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.
From-SVN: r30659
Jason Merrill [Thu, 25 Nov 1999 02:33:31 +0000 (02:33 +0000)]
search.c (note_debug_info_needed): Do perform this optimization for dwarf2.
* search.c (note_debug_info_needed): Do perform this optimization
for dwarf2.
(maybe_suppress_debug_info): Likewise. Start by clearing
TYPE_DECL_SUPPRESS_DEBUG.
From-SVN: r30658
Mark Mitchell [Thu, 25 Nov 1999 02:17:23 +0000 (02:17 +0000)]
* except.c (emit_handlers): Zero catch_clauses after emitting them.
From-SVN: r30657
Mark Mitchell [Thu, 25 Nov 1999 01:56:13 +0000 (01:56 +0000)]
pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.
* pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.
* decl2.c (finish_vtable_vardecl): Don't prune vtables here.
From-SVN: r30656
Tom Tromey [Thu, 25 Nov 1999 00:36:51 +0000 (00:36 +0000)]
prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayElementFromElementType.
* prims.cc (_Jv_NewObjectArray): Use
_Jv_GetArrayElementFromElementType.
(_Jv_NewPrimArray): Likewise.
* java/lang/natObject.cc (clone): Use
_Jv_GetArrayElementFromElementType instead of sizeof.
* java/lang/natSystem.cc (arraycopy): Use
_Jv_GetArrayElementFromElementType.
* include/jvm.h (_Jv_GetArrayElementFromElementType): New
function.
From-SVN: r30655
Andrew Haley [Wed, 24 Nov 1999 18:57:08 +0000 (18:57 +0000)]
sh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add the case where we need to reload fpul from a system register.
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.
From-SVN: r30654
Andreas Jaeger [Wed, 24 Nov 1999 17:07:37 +0000 (18:07 +0100)]
linux.h (CPP_PREDEFINES): Added.
* config/mips/linux.h (CPP_PREDEFINES): Added.
(LINK_SPEC): Remove -Y since this is only needed on sparc.
From-SVN: r30653
Andreas Jaeger [Wed, 24 Nov 1999 15:19:20 +0000 (16:19 +0100)]
linux.h (TARGET_VERSION): Added.
* config/mips/linux.h (TARGET_VERSION): Added.
(HANDLE_SYSV_PRAGMA): Added.
(DEFAULT_VTABLE_THUNKS): Added.
From-SVN: r30652
Jan Hubicka [Wed, 24 Nov 1999 13:14:57 +0000 (14:14 +0100)]
local-alloc.c (qty): New structure and static variable.
* 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.
From-SVN: r30651
Jeff Law [Wed, 24 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30650
Geoff Keating [Wed, 24 Nov 1999 06:35:10 +0000 (06:35 +0000)]
mips.h (ASM_SPEC): Don't pass -G to the assembler when -membedded-pic is passed.
* 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.
From-SVN: r30649
Geoff Keating [Wed, 24 Nov 1999 06:25:14 +0000 (06:25 +0000)]
mips.md (div_trap_normal): Don't ask for the REGNO of (const_int 0)...
* 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.
From-SVN: r30648
Mark Mitchell [Wed, 24 Nov 1999 01:24:59 +0000 (01:24 +0000)]
loop.c (loop_optimize): Always find_loop_tree_blocks and unroll_block_trees when generating debuggable code.
* loop.c (loop_optimize): Always find_loop_tree_blocks and
unroll_block_trees when generating debuggable code.
From-SVN: r30647
Mark Mitchell [Wed, 24 Nov 1999 01:19:04 +0000 (01:19 +0000)]
tree.h (unsave_expr_1): New function.
* 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.
From-SVN: r30646
Mark Mitchell [Wed, 24 Nov 1999 01:18:15 +0000 (01:18 +0000)]
Makefile.in (gencheck): Don't depend on lang_tree_files.
* Makefile.in (gencheck): Don't depend on lang_tree_files.
(gencheck.o): Do depend on lang_tree_files.
From-SVN: r30645
Mark Mitchell [Tue, 23 Nov 1999 20:48:38 +0000 (20:48 +0000)]
integrate.h (copy_decl_for_inlining): New declaration.
1999-11-23 Mark Mitchell <mark@codesourcery.com>
* 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.
From-SVN: r30644
Gavin Romig-Koch [Tue, 23 Nov 1999 19:18:48 +0000 (19:18 +0000)]
mips.h (ISA_HAS_FP4,ISA_HAS_CONDMOVE,ISA_HAS_8CC): Split the second two from the first.
* 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.
From-SVN: r30643
Jeffrey A Law [Tue, 23 Nov 1999 18:17:00 +0000 (18:17 +0000)]
pa.md (call_internal_symref, [...]): No mode needed on the address operand.
* 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.
From-SVN: r30642
Kaveh R. Ghazi [Tue, 23 Nov 1999 16:17:52 +0000 (16:17 +0000)]
decl.c (pushdecl, [...]): Don't call a variadic function with a non-literal format string.
* decl.c (pushdecl, grokdeclarator): Don't call a variadic
function with a non-literal format string.
* lex.c (do_identifier): Likewise.
* typeck.c (build_unary_op): Likewise.
From-SVN: r30641
Kaveh R. Ghazi [Tue, 23 Nov 1999 15:53:22 +0000 (15:53 +0000)]
expr.c (build_chill_function_call): Don't call a variadic function with a non-literal format string.
* expr.c (build_chill_function_call): Don't call a variadic
function with a non-literal format string.
* grant.c (write_spec_module): Likewise.
* parse.c (require, expect): Likewise.
* tasking.c (get_struct_type_name, get_struct_debug_type_name,
get_tasking_code_name, get_struct_variable_name,
get_process_wrapper_name, build_start_process): Likewise.
* typeck.c (valid_array_index_p): Likewise.
From-SVN: r30640
Jason Merrill [Tue, 23 Nov 1999 14:47:08 +0000 (09:47 -0500)]
revert AT_containing_type change
From-SVN: r30639
Bernd Schmidt [Tue, 23 Nov 1999 12:10:36 +0000 (12:10 +0000)]
Copy propagation for hoisted mems in loop.c.
From-SVN: r30638
Bryce McKinlay [Tue, 23 Nov 1999 11:40:26 +0000 (11:40 +0000)]
re GNATS java.net/57 (potential buffer overruns)
1999-11-23 Bryce McKinlay <bryce@albatross.co.nz>
* java/net/natPlainSocketImpl.cc: Fix potential buffer overruns in
Exception messages. PR java.net/57.
(bind): set SO_REUSEADDR before bind.
* java/net/natPlainDatagramSocketImpl.cc: Fix potential buffer
overruns. PR java.net/57.
From-SVN: r30637
Jeff Law [Tue, 23 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30636
Mark Mitchell [Tue, 23 Nov 1999 08:08:53 +0000 (08:08 +0000)]
* cp-tree.h (DECL_NEEDED_P): Tweak to match documentation.
From-SVN: r30635
Mark Mitchell [Tue, 23 Nov 1999 08:07:09 +0000 (08:07 +0000)]
cp-tree.def (CTOR_COMPLETE): New tree node.
* cp-tree.def (CTOR_COMPLETE): New tree node.
* decl.c (finish_constructor_body): Add it, to mark the end of the
constructor.
(finish_function): Don't call end_protect_partials here.
* ir.texi (CTOR_COMPLETE): Document it.
* semantics.c (expand_stmt): Handle it.
From-SVN: r30634
Hans-Peter Nilsson [Tue, 23 Nov 1999 08:03:47 +0000 (08:03 +0000)]
Makefile.in (gencheck.o): Depend on gencheck.h.
* 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.
From-SVN: r30633
Rainer Orth [Tue, 23 Nov 1999 07:57:06 +0000 (07:57 +0000)]
config-ml.in (sparc*-*-*): Disable sparcv9 support if the necessary libraries are missing.
* config-ml.in (sparc*-*-*): Disable sparcv9 support if the
necessary libraries are missing.
From-SVN: r30632
Rainer Orth [Tue, 23 Nov 1999 07:57:06 +0000 (07:57 +0000)]
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.
From-SVN: r30631
Mark Mitchell [Tue, 23 Nov 1999 07:31:07 +0000 (07:31 +0000)]
cp-tree.def (CTOR_COMPLETE): New tree node.
* cp-tree.def (CTOR_COMPLETE): New tree node.
(finish_constructor_body): Add it, to mark the end of the
constructor.
(finish_function): Don't call end_protect_partials here.
* ir.texi (CTOR_COMPLETE): Document it.
* semantics.c (expand_stmt): Handle it.
From-SVN: r30630
Jeff Law [Tue, 23 Nov 1999 06:17:32 +0000 (23:17 -0700)]
freebsd.h: New, FreeBSD architecture independent file.
* 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.
*POTFILES.in: Add config/freebsd.h
From-SVN: r30628
David O'Brien [Tue, 23 Nov 1999 06:09:34 +0000 (06:09 +0000)]
xm-i386.h: Define `__i386__' if not defined...
* 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.
From-SVN: r30627
R. Kelley Cook [Tue, 23 Nov 1999 05:59:41 +0000 (22:59 -0700)]
* invoke.texi (ARM Options): Add in -mno-alignment-traps
From-SVN: r30626
Mark Mitchell [Tue, 23 Nov 1999 02:49:41 +0000 (02:49 +0000)]
cp-tree.def (FUNCTION_NAME): New tree node.
* cp-tree.def (FUNCTION_NAME): New tree node.
* cp-tree.h (current_function_name_declared): Tweak documentation.
(lang_decl_flags): Add pretty_function_p, adjust dummy.
(DECL_PRETTY_FUNCTION_P): New macro.
* decl.c (cp_finish_decl): Handle declarations of __FUNCTION__,
etc., in a template function. Use at_function_scope_p instead of
expanding it inline.
* pt.c (tsubst_decl): Handle DECL_PRETTY_FUNCTION_P declarations
specially.
(tsubst): Handle FUNCTION_NAME.
(tsubst_copy): Likewise.
(instantiate_decl): Prevent redeclarations of __PRETTY_FUNCTION__,
etc. in instantiation.
* semantics.c (begin_compound_stmt): Declare __FUNCTION__, etc.,
even in template functions.
(setup_vtbl_ptr): Don't declare __PRETTY_FUNCTION in the
conditional scope at the top of a destructor.
* error.c (dump_function_decl): Use `[ with ... ]' syntax for
specializations too.
From-SVN: r30625
Jason Merrill [Tue, 23 Nov 1999 01:50:36 +0000 (01:50 +0000)]
dwarf2out.c (die_struct): Remove die_attr_last and die_child_last.
* 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.
(gen_struct_or_union_type_die): Don't add a DW_AT_containing_type
that points to ourself.
(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.
From-SVN: r30624
J"orn Rennecke [Mon, 22 Nov 1999 23:56:34 +0000 (23:56 +0000)]
combine.c (combine_simplify_rtx): When handling a SUBREG, take SUBREG_WORD into account.
* combine.c (combine_simplify_rtx): When handling a SUBREG,
take SUBREG_WORD into account.
(if_then_else_cond): Likewise.
From-SVN: r30623
Benjamin Kosnik [Mon, 22 Nov 1999 23:35:50 +0000 (23:35 +0000)]
stl_rope.h: Fix initialization order.
* stl_rope.h: Fix initialization order.
* stl_deque.h: Use static_casts<size_type>(signed_type).
Co-Authored-By: Matthias Klose <doko@cs.tu-berlin.de>
From-SVN: r30622