1. 17 Apr, 2000 8 commits
  2. 16 Apr, 2000 12 commits
  3. 15 Apr, 2000 13 commits
  4. 14 Apr, 2000 7 commits
    • cpplex.c (cpp_output_tokens, [...]): New public interfaces. · f2d5f0cc
      	* cpplex.c (cpp_output_tokens, cpp_scan_buffer_nooutput): New public
      	interfaces.
      	(safe_fwrite, output_line_command): New static functions.
      	(cpp_expand_to_buffer): Now private to cpplib.
      	(cpp_scan_buffer): Take a printer.
      
      	* cpphash.h: Update prototypes.
      	* cpplib.h: Update prototypes.
      	(cpp_printer): New.
      	(cpp_buffer): Remove last_nominal_fname.
      	(cpp_reader): Remove lineno.
      
      	* cppmain.c: Use a cpp_printer.
      	* fix-header.c: No need to inhibit line commands.  Call
      	cpp_start_read with no printer.
      
      	* cpperror.c (cpp_notice_from_errno): Provide default name.
      	* cppfiles.c (make_IHASH, _cpp_fake_ihash): New functions.
      	(find_include_file, cpp_read_file): Use make_IHASH.
      	(file_cleanup): Set control_macro and clear
      	input_stack_listing_current here.
      	(_cpp_execute_include): Don't output entering-file marker.
      	* cpphash.c (special_symbol): Look for the line number in the
      	buffer, not the reader.
      	(_cpp_macroexpand): No need to disable line commands.
      	(_cpp_dump_definition): No need to generate line commands.
      	(dump_hash_helper): Remove excess newline from output.
      	* cppinit.c (dump_special_to_buffer): No need to generate line
      	commands.
      	(cpp_printer_init): New.
      	(cpp_start_read): Take a printer, and start it up if it's not
      	NULL.  No need to generate line commands.
      	(cpp_finish): Expect no buffers stacked at all.  Take a
      	printer argument, and flush the output buffer if it's not
      	NULL.
      	* cpplex.c (_cpp_lex_token): Return EOF if there's no buffer.
      	Don't put two hashes at the beginning of an assertion.
      	(cpp_get_token): Don't increment pfile->lineno or emit line
      	commands here.  Return EOF if there's no buffer when we get
      	EOF.
      	* cpplib.c (do_define, skip_if_group):
      	No need to disable line commands.
      	(_cpp_output_line_command): Delete function.
      	(do_line): Don't emit line commands here, but set things up so
      	they will be emitted if necessary.  Use _cpp_fake_ihash to
      	make unique nominal_fnames if necessary.
      	(do_elif, do_else, _cpp_handle_eof): Call cpp_error_with_line
      	with 0 for column, not -1.
      	(_cpp_handle_eof): Don't set the control macro here.  Don't
      	clear input_stack_listing_current here.  Don't emit line
      	commands.
      
      From-SVN: r33159
      Zack Weinberg committed
    • In gcc/: · 362c63a5
      	* config/rs6000/sysv4.h (LINK_START_SOLARIS_SPEC): Define to empty
      	always, use the default SVR4 start address.
      
      	* config/rs6000/linux.h (LINK_SPEC): Don't define.
      	(LINK_SHLIB_SPEC): Define.
      	(LINK_START_DEFAULT_SPEC): Define.
      	(LINK_OS_DEFAULT_SPEC): Define.
      
      	* config/rs6000/sysv4.h (ENDFILE_SPEC): Use the %(endfile_*) macros.
      
      	* config/rs6000/eabi.asm (__eabi): Call __init rather than
      	__do_global_ctors to handle constructors.
      	* config/rs6000/sysv4.h (STARTFILE_ADS_SPEC): Use crtbegin.
      	(STARTFILE_YELLOWKNIFE_SPEC): Likewise.
      	(STARTFILE_MVME_SPEC): Likewise.
      	(STARTFILE_SIM_SPEC): Likewise.
      	(ENDFILE_ADS_SPEC): Use crtend.
      	(ENDFILE_YELLOWKNIFE_SPEC): Likewise.
      	(ENDFILE_MVME_SPEC): Likewise.
      	(ENDFILE_SIM_SPEC): Likewise.
      	(STARTFILE_SOLARIS_SPEC): Use crtbegin/crtbeginS.
      	(ENDFILE_SOLARIS_SPEC): Use crtend/crtendS.
      	(STARTFILE_LINUX_SPEC): Use crtbeginS for shared objects.
      	(ENDFILE_LINUX_SPEC): Use crtendS for shared objects.
      	* config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Don't build eabi-ctors.o.
      	(EXTRA_MULTILIB_PARTS): Build crtbeginS/crtendS.
      	(CRTSTUFF_T_CFLAGS_S): Define.
      	* config/rs6000/eabi-ctors.c: Delete.
      
      	* config/rs6000/eabi-ci.asm (__init): Align stack to 16-byte
      	boundary.
      	(__fini): Likewise.
      	* config/rs6000/eabi-cn.asm (__init): Allow for 16-byte stack frame.
      	boundary.
      	(__fini): Likewise.
      
      In gcc/po:
      	* POTFILES.in: Remove config/rs6000/eabi-ctors.c, which was
      	previously commented out anyway.
      
      From-SVN: r33158
      Geoff Keating committed
    • Fix ia64 gdb miscompilation reported by Kevin Buettner. · cfff35c1
      	* combine.c (force_to_mode, case LSHIFTRT): Check that shift shift
      	plus mask size is smaller or equal to the mode size.
      
      From-SVN: r33157
      Jim Wilson committed
    • print-rtl.c (print_rtx, case NOTE): Don't blow up if NOTE_BASIC_BLOCK not yet set. · 4c1545e4
      	* print-rtl.c (print_rtx, case NOTE): Don't blow up if NOTE_BASIC_BLOCK
      	not yet set.
      
      From-SVN: r33156
      Richard Kenner committed
    • expr.c (reload.h): Now included. · 3ef1eef4
      	* expr.c (reload.h): Now included.
      	(emit_block_move): Set volatile_ok when checking for movstr.
      	(emit_move_1): Check for replacements in addresses in multi-word case.
      	* Makefile.in (expr.o): Now includes reload.h.
      
      From-SVN: r33155
      Richard Kenner committed
    • flow.c (count_basic_blocks): Remove unused var PREV_CALL. · 314883b8
      	* flow.c (count_basic_blocks): Remove unused var PREV_CALL.
      	Never have a LIBCALL end a basic block.
      	(find_basic_blocks_1): Likewise.
      	Reorganize CALL_INSN cases.
      
      From-SVN: r33154
      Richard Kenner committed