Commit Graph

29549 Commits

Author SHA1 Message Date
Zack Weinberg cb7c7fc50e Resurrect - accidentally deleted in previous commit
From-SVN: r35417
2000-08-02 01:19:30 +00:00
Zack Weinberg ce899de2ce argh, forgot to save file
From-SVN: r35416
2000-08-02 01:14:37 +00:00
Zack Weinberg 58fea6afd9 cpperror.c (v_message): Split into _cpp_begin_message and v_message macro.
* cpperror.c (v_message): Split into _cpp_begin_message and
	v_message macro.  All callers updated.
	(_cpp_begin_message): Do inhibit_errors/inhibit_warnings
	checks here.

	* cppfiles.c (cpp_syshdr_flags): New function.
	(read_include_file): Don't call cpp_output_tokens.  Call
	enter_file hook.
	* cppinit.c (dump_macros_helper): Moved to cppmain.c.
	(cpp_reader_init): Don't initialize token_buffer.  Call
	_cpp_init_internal_pragmas.
	(cpp_cleanup): Don't clear token_buffer.
	(cpp_start_read): Don't worry about output from -D processing.
	Don't call cpp_output_tokens.
	(cpp_finish): Don't dump macros here.  Don't call
	cpp_output_tokens.
	* cppmacro.c (_cpp_dump_definition): Rename
	cpp_dump_definition.  Write directly to a FILE *.
	(dump_funlike_macro): Delete.
	(dump_macro_args): New.

	* cpplex.c (TOKEN_LEN): Convert to inline function.
	(_cpp_grow_token_buffer, safe_fwrite, cpp_output_tokens,
	cpp_scan_line, _cpp_dump_list): Delete.
	(cpp_printf, cpp_output_list): New.
	(output_line_command): Don't worry about entering or leaving files.
	(cpp_scan_buffer): Just output each token as we hit it.
	(process_directive): Don't call cpp_output_tokens.
	(_cpp_glue_header_name): Don't use token_buffer.
	(output_token, dump_param_spelling): Write directly to a FILE *.

	* cpplib.c (pass_thru_directive, dump_macro_name,
	pragma_dispatch, do_pragma_gcc): Delete.
	(do_define, do_undef, parse_include, do_line, do_ident, do_pragma,
	do_pragma_poison, cpp_pop_buffer): Call the appropriate hook
	functions.
	(do_error, do_warning, pragma_dependency): Call
	_cpp_begin_message, then cpp_output_list.
	(cpp_register_pragma, cpp_register_pragma_space,
	_cpp_init_internal_pragmas): New.
	(do_pragma): Walk the pragmas table here.
	(do_pragma_once, do_pragma_poison, do_pragma_system_header,
	do_pragma_dependency): Return void.
	(do_pragma_implementation): Moved to cppmain.c.

	* cpplib.h: Update prototypes.
	 (struct cpp_reader): Remove printer, token_buffer,
	token_buffer_size, and limit.  Add struct cb, and pragmas.
	(struct cpp_printer): Remove last_id and written.
	(CPP_WRITTEN, CPP_PWRITTEN, CPP_SET_WRITTEN,
	CPP_ADJUST_WRITTEN): Delete.
	* cpphash.h: Update prototypes.
	(ufputs): New wrapper.

	* cppmain.c (cb_define, cb_undef, cb_include, cb_ident,
	cb_enter_file, cb_leave_file, cb_def_pragma): New functions.
	(main): Set up callbacks.  Register #pragma implementation.
	Dump macros from here.

From-SVN: r35415
2000-08-02 01:13:45 +00:00
Geoff Keating 8cd8f856b3 rtl.h (enum reg_note): Add REG_MAYBE_DEAD.
* rtl.h (enum reg_note): Add REG_MAYBE_DEAD.
* rtl.c (reg_note_name): Add REG_MAYBE_DEAD.
* flow.c (propagate_one_insn): Allow deletion of prologue/epilogue
insns if they have a REG_MAYBE_DEAD note attached.
* config/rs6000/rs6000.c (rs6000_maybe_dead): New function.
(rs6000_emit_load_toc_table): TOC loads may go dead.

From-SVN: r35414
2000-08-02 00:53:59 +00:00
Jim Wilson 7d17b34de5 Finish ABI change started by last patch, this time I tested it.
* config/ia64/ia64.c (ia64_function_arg): Fix last change.  Verify
	type exists before using it.  Use number of words as alignment
	otherwise.
	(ia64_function_arg_partial_nregs, ia64_function_arg_advance,
	ia64_va_arg): Propagate ia64_function_args changes here.

From-SVN: r35413
2000-08-01 15:23:56 -07:00
Richard Henderson 0577bad8bf elfos.h (ASM_DECLARE_OBJECT_NAME): Care for null DECL.
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Care for null DECL.
        * config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.

From-SVN: r35412
2000-08-01 13:24:22 -07:00
Bernd Schmidt 7e2fda6e4a From Joern Rennecke:
* sh.h (CPP_SPEC, TARGET_SWITCHES): Add m4-nofpu.
	* sh.md (udivsi3, divsi3): Don't use libcalls that use the FPU
	unless TARGET_SH3E is set.
	* t-sh (MULTILIB_MATCHES): Add m2=m4-nofpu.

	* sh.md (ashlsi3_d, ashlsi3_k): Remove, replace with
	(ashlsi3_std): New pattern.
	(ashlsi3 expander): Use it for TARGET_SH3.
	* sh.c (gen_ashift): Use it instead of ashlsi3_k.

From-SVN: r35411
2000-08-01 18:45:53 +00:00
Benjamin Kosnik 967add5195 install.html: Edit bits about requiring a special version of the autotools.
2000-08-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* docs/install.html: Edit bits about requiring a special version
	of the autotools.

From-SVN: r35410
2000-08-01 18:07:23 +00:00
Jan Hubicka 6d90e7c0bb loop.c (canonicalize_condition): use destination, not source to determine set's mode.
* loop.c (canonicalize_condition):  use destination, not source to
	determine set's mode.

From-SVN: r35409
2000-08-01 10:36:25 +00:00
Jeff Law f5fddab524 Daily bump.
From-SVN: r35408
2000-08-01 01:45:41 -06:00
Benjamin Kosnik 18acf3baf1 fileops.cc: Update to current glibc sources.
2000-07-31  Benjamin Kosnik  <bkoz@cygnus.com>

	* libio/fileops.cc: Update to current glibc sources.
	* libio/genops.c: Same.
	* libio/iofwide.c: Same.
	* libio/libio.h: Same.
	* libio/libioP.h: Same.
	* libio/wfiledoalloc.c: Same.
	* libio/wgenops.c: Same.

From-SVN: r35407
2000-08-01 07:44:11 +00:00
Mark Mitchell da92f7ff07 * flow.c (clear_log_links): Fix typo.
From-SVN: r35406
2000-08-01 06:42:51 +00:00
Alexandre Oliva 89820b4331 ltconfig, ltmain.sh: Update from libtool multi-language branch.
* ltconfig, ltmain.sh: Update from libtool multi-language branch.
* ltcf-c.sh (need_lc): Fix test message.  Set wl for archive_cmds.
(ac_cv_prog_cc_pic): Don't print `cached' without `checking'.
* ltcf-cxx.sh (need_lc): Set based on postdeps.

From-SVN: r35405
2000-08-01 04:45:34 +00:00
Jeffrey A Law 7905cfefe1 loop.c (check_dbra_loop): Make change from July 17...
* loop.c (check_dbra_loop): Make change from July 17, 2000 work
        on targets which need more than one insn for a compare/cbranch
        operation.

From-SVN: r35404
2000-07-31 22:19:47 -06:00
Jeffrey A Law 68c8d8ce93 20000731-2.c: New test.
* gcc-c-torture/execute/20000731-2.c: New test.
Fix will be applied shortly...

From-SVN: r35403
2000-07-31 22:11:57 -06:00
Alexandre Oliva 606ce3919d * configure.in (qCXX_FOR_TARGET): Use echo instead of expr.
From-SVN: r35402
2000-08-01 04:10:47 +00:00
Jim Wilson f9f45ccb5f Adjust structure parameter passing to match ABI change.
* config/ia64/ia64.c (ia64_function_arg): Use alignment not size
	when computing offset.

From-SVN: r35401
2000-07-31 20:22:53 -07:00
Denis Chertykov 003661ddec * genpeep.c (main): Handle DEFINE_PEEPHOLE2.
From-SVN: r35400
2000-07-31 21:16:19 -06:00
Jeffrey A Law 929a66d220 20000731-1.c: New test.
* gcc.c-torture/execute/20000731-1.c: New test.
        * gcc.c-torture/execute/20000731-1.x: Expected to fail for i?86-*-*.

From-SVN: r35399
2000-07-31 21:14:49 -06:00
Kazu Hirata 663522cbde * combine.c: Fix formatting.
From-SVN: r35398
2000-07-31 21:11:55 -06:00
Kazu Hirata c127c1274f * h8300.md: Fix formatting.
From-SVN: r35397
2000-07-31 21:05:52 -06:00
Geoff Keating 1868b43959 flow.c (clear_log_links): Nuke global_live_at_start and global_live_at_end data...
* flow.c (clear_log_links): Nuke global_live_at_start and
global_live_at_end data, since if the log_links stuff is invalid
so is global_live_at_*.

From-SVN: r35396
2000-08-01 01:27:45 +00:00
Richard Henderson 45e84bd9d1 * tm.texi (Addressing Modes): Clarify PRE/POST_MODIFY descriptions.
From-SVN: r35395
2000-07-31 17:07:43 -07:00
Zack Weinberg 6ead1e9971 [multiple changes]
2000-07-31  Jakub Jelinek  <jakub@redhat.com>

	* cpplex.c (_cpp_get_line): If index is 0, return line 0 col 0.
	(_cpp_get_token): Don't macro expand a just pasted token if it
	was pasted at no_expand_level.

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

2000-07-31  Zack Weinberg  <zack@wolery.cumb.org>

	* cppmacro.c (find_param, count_params, save_expansion):
	Permit 'defined' as a macro parameter name.

From-SVN: r35394
2000-07-31 23:47:19 +00:00
Zack Weinberg ed39843b41 Oops - this went with the previous change set
From-SVN: r35393
2000-07-31 23:39:08 +00:00
Jason Merrill ab4fa7ed31 * lang-specs.h: Use %i in rule for .ii files.
From-SVN: r35392
2000-07-31 17:00:36 -04:00
Jakub Jelinek 42eb567d5c * gcc.dg/cpp/20000725-1.c: New test.
From-SVN: r35391
2000-07-31 21:51:10 +02:00
Alexandre Oliva 04179d4a51 configure.in (qCXX_FOR_TARGET): Quote `&' characters in CXX_FOR_TARGET for sed.
* configure.in (qCXX_FOR_TARGET): Quote `&' characters in
CXX_FOR_TARGET for sed.

From-SVN: r35390
2000-07-31 19:29:03 +00:00
Zack Weinberg 4871239e64 Makefile.in: Rename cpp to cpp0, tradcpp to tradcpp0, and xcpp to cpp throughout.
* Makefile.in: Rename cpp to cpp0, tradcpp to tradcpp0, and
	xcpp to cpp throughout.
	(native): Remove unnecessary dependency on cpp.

	* gcc.c (trad_capable_cpp, C specs): Rename cpp to cpp,
	tradcpp to tradcpp0.
	(.i spec): Add missing output-file spec to cc1 command line.

	* ch/lang-specs.h, cp/lang-specs.h, f/lang-specs.h,
	objc/lang-specs.h: Rename cpp to cpp0 and/or tradcpp to tradcpp0.

From-SVN: r35389
2000-07-31 18:29:58 +00:00
Zack Weinberg 5f1240b6ba c90-digraph-1.c: Restore { dg-do run } marker.
* gcc.dg/c90-digraph-1.c: Restore { dg-do run } marker.
	* gcc.dg/noncompile/990416-1.c: Do not expect an implicit-
	declaration warning for __builtin_dwarf_reg_size.

From-SVN: r35387
2000-07-31 18:19:28 +00:00
Zack Weinberg 111458f1bf c-decl.c (mesg_implicit_function_declaration): Init to -1.
* c-decl.c (mesg_implicit_function_declaration): Init to -1.
	(implicit_decl_warning): New function.
	(implicitly_declare): Use it.
	* c-typeck.c (build_external_ref): Use implicit_decl_warning
	to complain about implicit decls of builtins.

	* c-lang.c (lang_init): Set mesg_implicit_function_declaration
	based on pedantic && flag_isoc99, if not already set.
	* c-tree.h: Declare mesg_implicit_function_declaration.
	Prototype implicit_decl_warning.

	* gcc.dg/c99-impl-decl-1.c: No longer XFAIL.

From-SVN: r35385
2000-07-31 18:10:31 +00:00
Jeffrey D. Oldham cdbca1727c Makefile.in (ssa.o): Updated header files in dependences.
* Makefile.in (ssa.o): Updated header files in dependences.
	* basic-block.h: Added compute_immediate_postdominators declaration.
	* config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Added
	definition.
	* flow.c (compute_immediate_dominators): Updated comment.
	(compute_immediate_postdominators): Added definition.
	* rtl.h (HARD_REGISTER_P): Added definition.
	* ssa.c: Include additional header files.
	(assert): Added definition.
	(ssa_rename_to_lookup): Added to reimplement ssa_rename_to to
	include select hard registers.
	(ssa_rename_to_insert): Likewise.
	(ssa_rename_from_initialize): Likewise.
	(ssa_rename_from_lookup): Likewise.
	(original_register): Likewise.
	(ssa_rename_from_insert): Added to reimplement ssa_rename_from to
	include select hard reigsters.
	(ssa_rename_from_traverse): Likewise.
	(ssa_rename_from_free): Likewise.
	(ssa_rename_from_print): Likewise.
	(ssa_rename_from_print_1): Likewise.
	(ssa_rename_from_hash_function): Likewise.
	(ssa_rename_from_equal): Likewise.
	(ssa_rename_from_delete): Likewise.
	(simplify_to_immediate_dominators): Removed in favor of
	flow.c:compute_immediate_dominators.
	(find_evaluations_1): Modified to work with hard registers.
	(insert_phi_node): Likewise.
	(insert_phi_nodes): Likewise.
	(struct rename_set_data): Updated prev_reg comment.
	(create_delayed_rename): Modified to work with hard registers.
	(RENAME_NO_RTX): Updated comment.
	(apply_delayed_renames): Modified to work with hard registers.
	(rename_insn_1): Likewise and added handling of CLOBBER rtls.
	(rename_block): Updated to use revised ssa_rename_to interface.
	(rename_registers): Updated to use revised ssa_rename_to and
	ssa_rename_from interface.
	(convert_to_ssa): Revised to use compute_immediate_dominators and
	deal with hard registers.
	(make_regs_equivalent_over_bad_edges): Modified to work with hard
	registers.  Added check for illegal unification of hard register.
	(make_equivalent_phi_alternatives_equivalent): Modified to work
	with hard registers.
	(compute_conservative_reg_partition): Likewise.
	(coalesce_if_unconflicting): Modified to work with hard registers
	and check for conflicting hard registers.
	(mark_phi_and_copy_regs): Revised loop to work only on pseudo
	registers.
	(rename_equivalent_regs_in_insn): Modified to work with hard
	registers.
	(record_canonical_element_1): Added definition.
	(check_hard_regs_in_partition): Added definition.
	(convert_from_ssa): Added data structure deallocation and check
	for illegal hard register unification.
	(conflict_hard_regs_p): Added definition.
	* toplev.c (rest_of_compilation): Added comment.

From-SVN: r35384
2000-07-31 17:33:28 +00:00
Anthony Green ca47b73994 crtbegin.asm (__EH_FRAME_BEGIN__): Align correctly.
2000-07-30  Anthony Green  <green@redhat.com>

        * config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Align correctly.

From-SVN: r35383
2000-07-31 17:23:25 +00:00
Jason McMullan 9d53e58583 builtins.c (expand_builtin_apply): Don't defer pop during argument setup.
* builtins.c (expand_builtin_apply): Don't defer pop during
        argument setup.

From-SVN: r35382
2000-07-31 09:37:34 -07:00
Herman A.J. ten Brugge e079dcdb68 calls.c (combine_pending_stack_adjustment_and_call): Only use preferred_unit_stack_boundary when it is > 1.
* calls.c (combine_pending_stack_adjustment_and_call): Only use
        preferred_unit_stack_boundary when it is > 1.

From-SVN: r35381
2000-07-31 08:04:41 -06:00
Joseph Myers 980d86e9b4 c-common.c (init_function_format_info): Add C99 format functions in C99 mode.
* c-common.c (init_function_format_info): Add C99 format functions
	in C99 mode.

From-SVN: r35380
2000-07-31 08:00:34 -06:00
Casper Dik 9c08f7e6be * Makefile.in: Remove naked "^L".
From-SVN: r35379
2000-07-31 07:58:51 -06:00
Kazu Hirata 64e3a41371 * local-alloc.c: Fix formatting.
From-SVN: r35378
2000-07-31 07:57:02 -06:00
Joseph Myers bbe65572cd c-decl.c (get_parm_info): Don't treat 'const void'...
* c-decl.c (get_parm_info): Don't treat 'const void', 'volatile
	void' or 'register void' as being the special case of 'void' alone
	in a parameter list.

From-SVN: r35377
2000-07-31 07:11:39 -06:00
Joseph Myers b0c4bfae21 * gcc.dg/noncompile/voidparam-1.c: New test.
From-SVN: r35376
2000-07-31 07:10:37 -06:00
Kazu Hirata b5eaf9ba59 h8300.c (get_shift_alg): Remove the variable alg.
* h8300.c (get_shift_alg): Remove the variable alg.
        (emit_a_shift): Rearrange code to improve readability.

        * h8300.md (movsi_h8300hs): Rearrange code to improve readability.

From-SVN: r35375
2000-07-31 07:08:11 -06:00
Joseph Myers 6fffb55cd7 c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for discarding qualifiers into a plain warning.
* c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for
        discarding qualifiers into a plain warning.

From-SVN: r35374
2000-07-31 07:01:23 -06:00
Jeff Law c30d43bf62 Rotate out 6 more months of ChangeLog entries.
From-SVN: r35373
2000-07-31 06:59:37 -06:00
Kazu Hirata 184ef18e6a h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and HImode on all architectures and a...
* h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
        HImode on all architectures and a combination of HImode and SImode
        on H8/300H and H8/S.

From-SVN: r35372
2000-07-31 06:51:11 -06:00
Kazu Hirata 9492393e34 * h8300.c (split_adds_subs): Rearrange code for conciseness.
From-SVN: r35371
2000-07-31 06:44:28 -06:00
Jan Hubicka 91f9a498c4 i386.md (addsi to lea splitter, [...]): Fix bugs in my last checkin.
* i386.md (addsi to lea splitter, ashlqi3_1_lea): Fix bugs
	in my last checkin.

From-SVN: r35370
2000-07-31 10:30:44 +00:00
Jan Hubicka e7adb6fbb7 recog.c (extract_insn): Set operand_mode according to operand if match_operand is VOIDmode.
* recog.c (extract_insn): Set operand_mode according to
	operand if match_operand is VOIDmode.

From-SVN: r35369
2000-07-31 08:42:26 +00:00
Jan Hubicka 22251f806b * recog.c (validate_replace_rtx_1): Do not abort for (nil) expression.
From-SVN: r35368
2000-07-31 08:37:30 +00:00
Geoff Keating fbddce27a7 c-parse.in (extdefs): Call ggc_collect between external definitions.
* c-parse.in (extdefs): Call ggc_collect between external
definitions.

From-SVN: r35367
2000-07-31 08:28:01 +00:00
Jeff Law c47fef6e2e Daily bump.
From-SVN: r35366
2000-07-31 01:45:07 -06:00