Commit Graph

30454 Commits

Author SHA1 Message Date
Mark Mitchell
71ad4a16b6 decl.c (finish_case_label): Given the LABEL_DECL a DECL_CONTEXT.
* decl.c (finish_case_label): Given the LABEL_DECL a
	DECL_CONTEXT.

From-SVN: r36365
2000-09-12 15:36:23 +00:00
Kazu Hirata
c9541287b7 * genattrtab.c: Fix formatting.
From-SVN: r36364
2000-09-12 09:36:21 -06:00
Kaveh R. Ghazi
3ff5f682dc builtins.c (built_in_decls): New array.
* builtins.c (built_in_decls): New array.
	(expand_builtin_fputs): New function.
	(expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS.

	* builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members.

	* c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs.

	* tree.h (built_in_decls): New array.

From-SVN: r36363
2000-09-12 15:10:50 +00:00
Jeffrey A Law
208b0ab1c8 convex.md: Use "+" instead of "=" for outputs wrapped in a STRICT_LOW_PART.
* convex.md: Use "+" instead of "=" for outputs wrapped in a
        STRICT_LOW_PART.
        * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise.

From-SVN: r36362
2000-09-12 08:58:47 -06:00
Kazu Hirata
a86dc4a3fc * unroll.c: Fix formatting.
From-SVN: r36361
2000-09-12 08:43:25 -06:00
Mark Mitchell
57939159aa c-common.h (genrtl_clear_out_block): Remove.
* c-common.h (genrtl_clear_out_block): Remove.
	* c-semantics.c (genrtl_clear_out_block): Remove.
	(genrtl_while_stmt): Don't call it.
	(genrtl_for_stmt): Likewise.

From-SVN: r36360
2000-09-12 14:29:45 +00:00
Bruce Korb
3af556f74d code cleanups
From-SVN: r36359
2000-09-12 14:28:55 +00:00
Kaveh R. Ghazi
32892c52e4 c-typeck.c (process_init_element): Avoid union init warnings on floating point zero.
* c-typeck.c (process_init_element): Avoid union init warnings on
	floating point zero.  Don't crash on unions containing structs.

testsuite:
	* gcc.dg/wtr-union-init-2.c, gcc.dg/wtr-union-init-3.c: New tests.

From-SVN: r36358
2000-09-12 14:22:45 +00:00
Alexandre Oliva
ae0a1c23b7 sh.h (PREDICATE_CODES): Add CONST_DOUBLE to general_movsrc_operand...
* config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to
general_movsrc_operand, and remove CONST_INT from
general_movdst_operand.

From-SVN: r36357
2000-09-12 12:38:51 +00:00
Gabriel Dos Reis
c3e76028d0 error.c (TFF_PLAIN_IDENTIFIER, [...]): New macros.
* error.c (TFF_PLAIN_IDENTIFIER, TFF_NAMESPACE_SCOPE,
	TFF_CLASS_SCOPE, TFF_CHASE_NAMESPACE_ALIAS, TFF_CHASE_TYPDEF,
	TFF_DECL_SPECIFIERS, TFF_CLASS_KEY_OR_ENUM, TFF_RETURN_TYPE,
	TFF_FUNCTION_DEFAULT_ARGUMENTS, TFF_EXCEPTION_SPECIFICATION,
	TFF_TEMPLATE_HEADER, TFF_TEMPLATE_DEFAULT_ARGUMENTS, TFF_SCOPE):
	New macros.
	(sorry_for_unsupported_tree, print_scope_operator,
	print_left_paren, print_right_paren, print_left_bracket,
	print_right_bracket, print_whitespace): Likewise.
	(aggr_variety): Rename to class_key_or_enum.
	(print_type): Rename to print_type_id.
	(print_type_specifier_seq, print_simple_type_specifier,
	print_elaborated_type_specifier,
	print_rest_of_abstract_declarator,
	print_parameter_declaration_clause, print_exception_specification,
	print_nested_name_specifier, print_template_id,
	typedef_original_name,  print_template_argument_list_start,
	print_template_argument_list_end): New functions.

From-SVN: r36356
2000-09-12 09:10:28 +00:00
Gabriel Dos Reis
eb50138bec * ir.texi: Add more documentation.
From-SVN: r36355
2000-09-12 08:54:21 +00:00
Bernd Schmidt
f1c1dfc389 Fix hard reg cost calculations in CSE; some minor cleanups
From-SVN: r36354
2000-09-12 08:39:36 +00:00
Jeff Law
a6c8d25340 Daily bump.
From-SVN: r36353
2000-09-12 01:45:09 -06:00
Philipp Thomas
81ee06d1a2 POTFILES.in: Remove yet more files caught by the new checking target.
2000-09-12  Philipp Thomas  <pthomas@suse.de>

	* POTFILES.in: Remove yet more files caught by the new
	checking target.
	* gcc.pot: Regenerated.
	* cat-id-tbl.c: Likewise.

From-SVN: r36352
2000-09-12 07:28:39 +00:00
Alexandre Oliva
b4f3dc58b1 * configure: Rebuilt with new ../libtool.m4.
From-SVN: r36351
2000-09-12 06:51:02 +00:00
Mark Mitchell
f444e36b2d c-common.h (genrtl_clear_out_block): Remove.
* c-common.h (genrtl_clear_out_block): Remove.
	* c-semantics.c (genrtl_clear_out_block): Remove.
	(genrtl_while_stmt): Don't call it.
	(genrtl_for_stmt): Likewise.

	* cp-tree.h (struct saved_scope): Remove x_function_parms.
	(current_function_parms): Don't define.
	(struct cp_language_function): Remove parms_stored.
	(current_function_just_assigned_this): Don't define.
	(current_function_parms_stored): Likewise.
	(static_ctors): Declare.
	(static_dtors): Likewise.
	(SF_EXPAND): Don't define.
	(expand_start_early_try_stmts): Remove declaration.
	(store_parm_decls): Likewise.
	* decl.c (static_ctors): Don't declare.
	(static_dtors): Likewise.
	(struct binding_level): Remove this_block.
	(poplevel): Remove dead code.
	(set_block): Likewise.
	(mark_binding_level): Don't mark this_block.
	(mark_saved_scope): Don't mark x_function_parms.
	(init_decl_processing): Don't add current_function_parms as a GC
	root.
	(check_function_type): Change prototype.
	(start_function): Remove RTL-generation code.
	(expand_start_early_try_stmts): Remove.
	(store_parm_decls): Give it internal linkage.  Remove
	RTL-generation code.
	(finish_function): Remove RTL-generation code.
	* decl2.c (static_ctors): Fix formatting.
	(static_dtors): Likewise.
	* method.c (use_thunk): Don't call store_parm_decls.
	(synthesize_method): Likewise.
	* optimize.c (maybe_clone_body): Likewise.
	* parse.y (fn.def2): Likewise.
	(.set_base_init): Likewise.
	(nodecls): Likewise.
	* pt.c (instantiate_decl): Likewise.
	* rtti.c (synthesize_tinfo_fn): Likewise.
	* semantics.c (genrtl_try_block): Simplify.
	(expand_body): Use genrtl_start_function and
	genrtl_finish_function.
	(genrtl_start_function): New function.
	(genrtl_finish_function): Likewise.

From-SVN: r36350
2000-09-12 06:46:00 +00:00
Philipp Thomas
484d9e58a4 POTFILES.in: Remove c-gperf.h, c-iterate.c, cp/hash.h, cp/input.c, c-parse.h and cppulp.c.
2000-09-12  Philipp Thomas  <pthomas@suse.de>

	* POTFILES.in: Remove c-gperf.h, c-iterate.c,
	cp/hash.h, cp/input.c, c-parse.h and cppulp.c.

From-SVN: r36349
2000-09-12 05:33:33 +00:00
Philipp Thomas
847f42b1d7 Makefile.in.in (stamp-check-pot): Don't use $@ in rule.
2000-09-12  Philipp Thomas  <pthomas@suse.de>

	* Makefile.in.in (stamp-check-pot): Don't use $@ in rule.

From-SVN: r36348
2000-09-12 04:10:56 +00:00
Zack Weinberg
a58d32c208 cppfiles.c: Move all default-#defines to top of file.
* cppfiles.c: Move all default-#defines to top of file.
	(open_include_file): Replace by lookup_include_file.
	(read_with_read, read_file): Merged into read_include_file.
	(stack_include_file, purge_cache): New functions.
	(close_cached_fd): Delete.
	(lookup_include_file, read_include_file, _cpp_pop_file_buffer):
	Cache the in-memory buffer, not the file descriptor.

	* cpphash.h (struct include_file): Add buffer, st, refcnt,
	mapped fields.
	(xcnew): New utility macro.
	(DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file.
	* cpplib.h (struct cpp_buffer): Remove mapped field.

	* cpplex.c (parse_string): Accept backslash space newline as a
	line continuation.
	(lex_line): Likewise.
	(_cpp_get_token): Remove hard limit on macro nesting.

testsuite:
	* gcc.dg/cpp/backslash.c: New test.

From-SVN: r36347
2000-09-12 03:42:30 +00:00
Philipp Thomas
4ba01ed2ae Makefile.in.in (stamp-check-pot): New target used for checking POTFILES.
2000-09-12  Philipp Thomas  <pthomas@suse.de>

	* Makefile.in.in (stamp-check-pot): New target used for
	checking POTFILES.
	* gcc.pot: Regenerated.
	* cat-tbl-id.c: Likewise.

From-SVN: r36346
2000-09-12 02:40:16 +00:00
Philipp Thomas
bfa29b637c aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext.
2000-09-12  Philipp Thomas  <pthomas@suse.de>

	* aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext.
	* configure: Rebuilt.

From-SVN: r36345
2000-09-12 02:07:00 +00:00
Benjamin Kosnik
5219f16233 acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* bits/c++config (__GLIBCPP__): Update, in the hopes of making a
	snapshot release soon.
	(_GNU_SOURCE): Define this in the header files, as ISO C99 support
	is pretty much assumed.

	* testsuite/22_locale/global_templates.cc: New file. Add tests for
	use_facet and has_facet.

	* bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
	Modify/correct iconv signatures for glibc2.2.

From-SVN: r36344
2000-09-12 01:06:03 +00:00
Michael Hayes
97ca931623 flow.c (split_block): Fix update of registers live at end of split block.
* flow.c (split_block): Fix update of registers live at
	end of split block.

From-SVN: r36343
2000-09-11 23:59:41 +00:00
Jan Hubicka
d90ffc8d2c i386.md (add?i_3, add?i_5): New.
* i386.md (add?i_3, add?i_5): New.
	(add?i_4): Rename from add?i_3;  Fix compare pattern.
	(sub?i_3, xor?i_3, ior?i_3): New.

	* genrecog.c (write_tree): Output code to clear insn_extract cache.
	* genattrtab.c (write_attr_case): Gen call to extract_insn_cache
	instead of extract_insn and extract_constrain_insn_cache instead of
	extract_insn and constrain_operands.
	* recog.c (extract_insn_cached, extract_constrain_insn_cached):
	New functions.
	(extract_insn): Clear which_alternative.
	(constrain_operands): Set which_alternative to -1 when failed.
	* recog.h (extract_constrain_insn_cached, extract_insn_cached):
	Declare.

From-SVN: r36342
2000-09-11 23:54:11 +00:00
Tom Tromey
14203c9cac Field.java (toString): Don't rely on Class.toString.
* java/lang/reflect/Field.java (toString): Don't rely on
	Class.toString.

From-SVN: r36341
2000-09-11 22:49:29 +00:00
Robert Lipe
c82fd9b858 Fixed to return 0 on success.
From-SVN: r36339
2000-09-11 22:47:05 +00:00
Kazu Hirata
f5d927c07f * final.c: Fix formatting.
From-SVN: r36338
2000-09-11 16:00:04 -06:00
Matthew Hiller
4843bda91e h8300.md (movstrictqi): Changed constraint modifier on operand 0 to '+'.
* config/h8300/h8300.md (movstrictqi): Changed constraint modifier
        on operand 0 to '+'.
        (movstricthi): Likewise.

From-SVN: r36337
2000-09-11 15:53:45 -06:00
Michael Hayes
ed5bb68db3 loop.h (LOOP_IVS): New macro.
* loop.h (LOOP_IVS): New macro.
	(REG_IV_TYPE, REG_IV_INFO): Add ivs argument.
	(struct loop_ivs): New.
	(struct loop_info): Add ivs field.
	(reg_iv_type, reg_iv_info): Delete prototype.
	(reg_biv_class, loop_iv_list): Likewise.
	* loop.c (record_biv, find_life_end): Pass loop argument.
	(reg_iv_type): Remove global array and use
	field in loop_regs structure within loop_ivs structure.
	(reg_iv_info, reg_biv_class, loop_iv_list): Likewise.
	(first_increment_giv, last_increment_giv): Use entry in
	loop_ivs structure.
	(record_initial): Pass ivs pointer.
	* unroll.c (copy_loop_body, remap_split_bivs): Add loop argument.

From-SVN: r36336
2000-09-11 21:48:46 +00:00
Michael Hayes
1ecd860b28 loop.h (LOOP_REGS): New macro.
* loop.h (LOOP_REGS): New macro.
	(struct loop_regs): New.
	(struct loop_info): Add regs field.
	* loop.c (set_in_loop): Remove global array and store
	in loop_regs structure as part of loop_info structure.
	(n_times_set, may_not_optimize): Likewise.
	(reg_single_usage, moved_once): Likewise.
	(count_one_set): Add regs argument.
	(combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise.
	(set_pseudo_multiple_uses): Pass regs pointer.

From-SVN: r36335
2000-09-11 21:46:35 +00:00
Michael Hayes
0a5b41f256 unroll.c (iteration_info): Subsume into loop_iterations.
* unroll.c (iteration_info): Subsume into loop_iterations.
	* loop.h (loop_info): New field iv.

From-SVN: r36334
2000-09-11 21:44:21 +00:00
Michael Hayes
5d6a16e27e basic-block.h (LOOP_TREE, [...]): New.
2000-09-12  Michael Hayes  <mhayes@cygnus.com>

	* basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New.
	(LOOP_EXITS_DOMS, LOOP_ALL): Likewise.
	(flow_loops_update): New prototype.
	(flow_loops_find): Add flags to prototype.
	(struct loop): Add `pre_header_root' and `pre_header_trace' fields.
	* flow.c (flow_loop_pre_header_scan): New.
	(flow_loop_dump): Dump pre-header root and trace and exit dominators.
	(flow_loop_free): Free pre-header root and trace and exit dominators.
	(flow_loops_find): New argument flags.
	(flow_loops_update): New function.
	* toplev.c (rest_of_compilation): Add flag argument to flow_loops_find.

From-SVN: r36333
2000-09-11 21:42:07 +00:00
Michael Hayes
c586192c7d basic-block.h (split_block, [...]): New prototypes.
* basic-block.h (split_block, update_bb_for_insn): New prototypes.
	* flow.c (split_block, update_bb_for_insn): New functions.

From-SVN: r36332
2000-09-11 21:39:33 +00:00
Richard Henderson
a5e5cf67cc * cse.c (fold_rtx): Honor NO_FUNCTION_CSE.
From-SVN: r36331
2000-09-11 14:34:57 -07:00
Richard Henderson
655f2eb93e ia64-protos.h (fr_nonimmediate_operand): Declare.
* config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare.
        * config/ia64/ia64.c (fr_nonimmediate_operand): New.
        (ia64_override_options): Prevent optimizing division for both
        latency and throughput.
        (rtx_needs_barrier): Handle frcpa.
        * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New.
        (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New.
        (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New.
        (TARGET_SWITCHES): Add -minline-divide-min-latency and
        -minline-divide-max-throughput.
        (PREDICATE_CODES): Update.
        * config/ia64/ia64.md (extendsidi2): Remove * from f case.
        (zero_extendsidi2): Likewise.  Fix typo in f case insn.
        (extendsfdf2): Add cases for gr<->fr and fr<->mem.
        (extendsftf2): Likewise.
        (extenddftf2): Likewise.
        (fix_trunctfdi2_alts): New.
        (fixuns_trunctfdi2_alts): New.
        (madd*4): Rename from madd*3.
        (divsi3, modsi3, udivsi3, umodsi3): New.
        (divsi3_internal): New.
        (divdi3, moddi3, udivdi3, umoddi3): New.
        (divdi3_internal_lat, divdi3_internal_thr): New.
        (multf3_alts, maddtf4_alts, nmaddtf4_alts): New.
        (recip_approx): New.

From-SVN: r36330
2000-09-11 14:15:50 -07:00
Alexandre Oliva
b5d7770c3e print-rtl.c (debug_call_placeholder_verbose): New variable.
* print-rtl.c (debug_call_placeholder_verbose): New variable.
(print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is
set.
* integrate.c (copy_rtx_and_substitute): Don't share
LEAF_REG_REMAPpable registers with the inlined function.  Don't
share the function value with calling sequences.

From-SVN: r36329
2000-09-11 21:03:26 +00:00
Alexandre Oliva
da88b35278 20000910-1.c: New test.
* gcc.c-torture/execute/20000910-1.c: New test.
* gcc.c-torture/execute/20000910-2.c: Likewise.

From-SVN: r36328
2000-09-11 21:00:19 +00:00
Jakub Jelinek
2a1da89b74 * c-decl.c (do_case): Fix a typo.
From-SVN: r36327
2000-09-11 22:25:44 +02:00
Jakub Jelinek
6ff85fd82d combine.c (simplify_if_then_else): Don't convert a == b ? b ...
* combine.c (simplify_if_then_else): Don't convert a == b ? b : a
	to a if the comparison is floating mode and not -ffast-math.
	* simplify-rtx.c (simplify_ternary_operation): Likewise.

From-SVN: r36326
2000-09-11 22:20:32 +02:00
J"orn Rennecke
4102c782e3 sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to gen_ic_invalidate_line.
* sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to
	gen_ic_invalidate_line.

From-SVN: r36325
2000-09-11 20:10:35 +01:00
Branko Cibej
79f5e38e0d acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with "grep -c".
2000-09-10  Branko Cibej  <branko.cibej@hermes.si>

	* acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
	  "grep -c".

From-SVN: r36324
2000-09-11 19:05:07 +00:00
Robert Lipe
a5de05b7d5 * gcc.dg/pragma-align.c: New test.
From-SVN: r36323
2000-09-11 18:38:14 +00:00
Philip Blundell
52a21fc6d1 Don't define `arm_elf'
From-SVN: r36322
2000-09-11 17:14:09 +00:00
Ulrich Drepper
669ed2b149 install.texi (LANGUAGES): Update to include new languages.
* install.texi (LANGUAGES): Update to include new languages.
        * INSTALL: Rebuilt.

From-SVN: r36321
2000-09-11 10:50:05 -06:00
DJ Delorie
50936d2734 gcc.c (main): Don't warn about unused -B prefixes
* gcc.c (main): Don't warn about unused -B prefixes
        (unused_prefix_warnings): remove

From-SVN: r36320
2000-09-11 10:40:12 -06:00
Kazu Hirata
00174bdfec * integrate.c: Fix formatting.
From-SVN: r36319
2000-09-11 10:36:56 -06:00
Nathan Sidwell
181d2ba0f3 * error.c (cp_tree_printer, case 'P'): Append break.
From-SVN: r36318
2000-09-11 15:08:44 +00:00
Geoff Keating
b14066a92d * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry.
From-SVN: r36317
2000-09-11 14:39:42 +00:00
Nathan Sidwell
6cd0d4dedf explicit82.C: New test.
* g++.old-deja/g++.pt/explicit82.C: New test.
	* g++.old-deja/g++.pt/explicit83.C: New test.

From-SVN: r36316
2000-09-11 14:21:08 +00:00
Nathan Sidwell
f2d71db623 cp-tree.h (frob_opname): Declare.
* cp-tree.h (frob_opname): Declare.
	* parse.y (saved_scopes): New static variable.
	(cp_parse_init): Adjust.
	(do_id): If lastiddecl is NULL, do do_identifier.
	(operator): Save scope information.
	(unoperator): new reduction. Restore scope information.
	(operator_name): Append unoperator. Call frob_opname.
	* spew.c (frob_opname): Define.

From-SVN: r36315
2000-09-11 14:19:53 +00:00