Commit Graph

14665 Commits

Author SHA1 Message Date
Jim Wilson
ff3467a9eb Fix alpha-linux GNU libc build failures.
* combine.c (try_combine): When setting elim_i2, check whether newi2pat
	sets i2dest.  When calling distribute_notes for i3dest_killed, pass
	elim_i2 and elim_i1.  When setting elim_i1, check if newi2pat
	sets i1dest.

From-SVN: r16334
1997-11-04 18:08:25 -08:00
Jeffrey A Law
f754c4a10a rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES and LABEL_REFS fields.
* rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
        and LABEL_REFS fields.
        * rtl.h (LABEL_REFS): Update.

From-SVN: r16333
1997-11-04 18:56:33 -07:00
Jim Wilson
4911814e8e Fix bitfield insert/extract aliasing problem found by GNAT.
* mips.md (insv, extzv, extv): Add change_address call.
	(movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.

From-SVN: r16331
1997-11-04 17:49:52 -08:00
Jim Wilson
474eff8855 Fix c++ problem resulting from ADDRESSOF support.
* integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.

From-SVN: r16330
1997-11-04 17:15:04 -08:00
Jim Wilson
3feffdfe8e Bug fix for v850 port.
* reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.

From-SVN: r16329
1997-11-04 17:08:08 -08:00
Jim Wilson
ab00eb0aa3 Fix shared library problem found by GNAT users.
* mips.c (mips_expand_epilogue): Emit blockage insn before call to
	save_restore_insns if no FP and GP will be restored.

From-SVN: r16327
1997-11-04 16:55:50 -08:00
Jim Wilson
31c8581d25 Fix nightly testing mips64-elf build failure.
* dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
	Convert CCmode to word_mode before calling GET_MODE_SIZE.

From-SVN: r16326
1997-11-04 16:50:18 -08:00
Jim Wilson
7636d56743 Fix irix5 build problem resulting from FSF merge.
* acconfig.h (HAVE_INTTYPES_H): Undef.
	* configure.in (inttypes.h): Check for conflicts between sys/types.h
	and inttypes.h, and verify that intmax_t is defined.
	* config/mips/x-iris (CC, OPT, OLDCC): Comment out.
	* config/mips/x-iris3: Likewise.

From-SVN: r16325
1997-11-04 16:30:37 -08:00
Jeff Law
52be7f110c Move test from execute to compile.
From-SVN: r16321
1997-11-04 16:21:27 -07:00
Jeffrey A Law
73774bc7c0 alias.c (find_base_value): When copying arguments, return the tenative value for a hard register.
* alias.c (find_base_value): When copying arguments, return the
        tenative value for a hard register.

From-SVN: r16319
1997-11-04 16:09:21 -07:00
Doug Evans
30c317f5da lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
* lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
	(real_yylex): Record wide strings using target endianness, not host.

From-SVN: r16316
1997-11-04 21:57:40 +00:00
Doug Evans
645ebf3767 c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
* c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
	(yylex): Record wide strings using target endianness, not host.

From-SVN: r16315
1997-11-04 21:56:24 +00:00
Jeffrey A Law
f762058716 mn10200.h (ASM_OUTPUT_BSS): Delete.
* mn10200.h (ASM_OUTPUT_BSS): Delete.
        (ASM_OUTPUT_ALIGNED_BSS): New macro
        * mn10300.h (ASM_OUTPUT_BSS): Delete.
        (ASM_OUTPUT_ALIGNED_BSS): New macro.
        * v850.h (ASM_OUTPUT_BSS): Delete.
        (ASM_OUTPUT_ALIGNED_BSS): New macro.

From-SVN: r16312
1997-11-04 13:38:45 -07:00
J"orn Rennecke
1686f1a2ae * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
From-SVN: r16309
1997-11-04 02:11:45 +00:00
Brendan Kehoe
a8a63732c4 repo.c (rindex): Add decl unconditionally.
* repo.c (rindex): Add decl unconditionally.
	(get_base_filename, open_repo_file): Don't cast rindex.
	* xref.c (rindex): Add decl unconditionally.
	(index): Remove unused decl.
	(open_xref_file): Don't cast rindex.

fix potential problems with 64-bit compilers and casting an int up to a char*

From-SVN: r16306
1997-11-03 18:20:24 -05:00
Jeff Law
08bb4b3b2c Remove last combine patch. rth & jim are working on a new one.
From-SVN: r16304
1997-11-03 14:55:49 -07:00
Jeffrey A Law
f6857708b8 * configure.in (sco5): Use cpio to install header files.
From-SVN: r16303
1997-11-03 14:40:15 -07:00
Manfred Hollstein
58d0cbe742 configure.in: Use delta.mt for m68k-motorola-sysv.
* configure.in: Use delta.mt for m68k-motorola-sysv.
        * config/delta.mt: New makefile fragment.

From-SVN: r16299
1997-11-02 23:33:01 -07:00
Manfred Hollstein
e566af0431 aclocal.m4 (conftestdata_from, [...]): Names shortened to 14 char length.
* aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
        14 char length.
        * configure: Rebuild.

From-SVN: r16298
1997-11-02 23:30:09 -07:00
Richard Henderson
be2053f3dd combine.c (try_combine): Don't elim_i1 when it is used in i2src.
* combine.c (try_combine): Don't elim_i1 when it is used in i2src.

        * combine.c (try_combine): When setting elim_i2, check whether newi2pat
        sets i2dest.  When calling distribute_notes for i3dest_killed, pass
        elim_i2 and elim_i1.

Co-Authored-By: Jim Wilson <wilson@cygnus.com>

From-SVN: r16296
1997-11-02 23:24:36 -07:00
Jeff Law
0ae231b228 Initialize I.
From-SVN: r16293
1997-11-02 23:11:33 -07:00
Jeff Law
afb6fb7665 New test.
From-SVN: r16292
1997-11-02 23:07:39 -07:00
Craig Burley
a2977d2db3 Important patch from Burley.
From-SVN: r16291
1997-11-02 23:07:04 -07:00
Richard Henderson
af75269882 com.c (ffecom_expr_): Only use TREE_TYPE argument for simple arithmetic...
* com.c (ffecom_expr_): Only use TREE_TYPE argument for simple
        arithmetic; convert types as necessary; recurse with target tree type.

CVS _----------------------------------------------------------------------

From-SVN: r16287
1997-11-02 19:49:29 -07:00
Robert Lipe
cbd44549e6 * i386/sco5.h: enable -gstabs once again.
From-SVN: r16284
1997-11-02 19:42:31 -07:00
Jeffrey A Law
5663681816 * arm.c (output_move_double): Allocate 3 entries in otherops array.
From-SVN: r16281
1997-11-02 19:26:49 -07:00
Jason Merrill
b9ddcfac31 * class.c (build_vbase_path): Propagate the result type properly.
From-SVN: r16279
1997-11-02 18:07:03 -05:00
Jeff Law
e9a25f70a0 Update mainline egcs to gcc2 snapshot 971021.
From-SVN: r16278
1997-11-02 14:19:36 -07:00
Jason Merrill
bb84e66919 Makefile.in (install): Some of HEADERS come from the stl dir now.
* Makefile.in (install): Some of HEADERS come from the stl dir now.
	* algorithm, deque, functional, iterator, list, map, memory, numeric,
 	queue, set, stack, utility, vector: Now in stl dir.

stl/:
	* algo.h, algobase.h, alloc.h, bvector.h, defalloc.h, deque.h,
 	function.h, hash_map.h, hash_set.h, hashtable.h, heap.h, iterator.h,
 	list.h, map.h, multimap.h, multiset.h, pair.h, pthread_alloc.h,
 	rope.h, ropeimpl.h, set.h, slist.h, stack.h, stl_config.h, tempbuf.h,
 	tree.h, type_traits.h, vector.h: Update to October 27 SGI snapshot.
	* algorithm, deque, functional, hash_map, hash_set, iterator, list,
 	map, memory, numeric, pthread_alloc, queue, rope, set, slist, stack,
 	stl_algo.h, stl_algobase.h, stl_alloc.h, stl_bvector.h,
 	stl_construct.h, stl_deque.h, stl_function.h, stl_hash_fun.h,
 	stl_hash_map.h, stl_hash_set.h, stl_hashtable.h, stl_heap.h,
 	stl_iterator.h, stl_list.h, stl_map.h, stl_multimap.h, stl_multiset.h,
 	stl_numeric.h, stl_pair.h, stl_queue.h, stl_raw_storage_iter.h,
 	stl_relops.h, stl_rope.h, stl_set.h, stl_slist.h, stl_stack.h,
 	stl_tempbuf.h, stl_tree.h, stl_uninitialized.h, stl_vector.h,
 	utility, vector: New files in October 27 SGI snapshot.

From-SVN: r16277
1997-11-02 15:28:22 -05:00
Jeff Law
c3bcf315fa This commit was generated by cvs2svn to compensate for changes in r16274,
which included commits to RCS files with non-trunk default branches.

From-SVN: r16275
1997-11-02 01:46:26 -07:00
Jeff Law
336b436af5 Initial revision
From-SVN: r16272
1997-11-02 01:39:28 -07:00
Jeffrey A Law
8072f69c31 alias.c (init_alias_analysis): Handle -fno-alias-check when optimizing correctly.
* alias.c (init_alias_analysis): Handle -fno-alias-check when
        optimizing correctly.

From-SVN: r16268
1997-11-01 23:28:31 -07:00
Jeffrey A Law
6cad9e3280 expr.c (expand_builtin_setjmp): Don't emit a SETJMP note or set current_function_calls_setjmp anymore.
* expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
        or set current_function_calls_setjmp anymore.

From-SVN: r16267
1997-11-01 22:15:13 -07:00
Mike Stump
9ad8a5f011 except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG notes for sjlj exceptions too.
* except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
        notes for sjlj exceptions too.
        (expand_eh_region_end): Similarly for EH_REGION_END notes.
        (exception_optimize): Optimize EH regions for sjlj exceptions too.
        * final.c (final_scan_insn): Don't output labels for EH REGION
        notes if doing sjlj exceptions.

From-SVN: r16266
1997-11-01 21:43:34 -07:00
Jeffrey A Law
f8671389c5 flow.c (find_basic_blocks): If we delete the label for an exception handler...
* flow.c (find_basic_blocks): If we delete the label for an
        exception handler, remove it from the EH label list and remove
        the EH_BEGIN/EH_END notes for that EH region.

From-SVN: r16265
1997-11-01 19:15:01 -07:00
Jeffrey A Law
e67edc156e * libF77/signal_.c: Undo last change until we can fix it right.
From-SVN: r16264
1997-11-01 18:02:05 -07:00
Jason Merrill
a886ae747e flow.c (find_basic_blocks): Generate correct flow control information when exception handling notes are present.
* flow.c (find_basic_blocks): Generate correct flow control
        information when exception handling notes are present.

From-SVN: r16263
1997-11-01 16:45:10 -07:00
Jeffrey A Law
c2c85462f3 dwarf2out.c (output_call_frame_info): Fix length argument to ASM_OUTPUT_ASCII.
* dwarf2out.c (output_call_frame_info): Fix length argument
        to ASM_OUTPUT_ASCII.
        (output_die, output_pubnames, output_line_info): Likewise.

From-SVN: r16262
1997-11-01 13:43:02 -07:00
Brendan Kehoe
b2bb2710f3 lex.c (FILE_NAME_NONDIRECTORY): Delete macro.
* lex.c (FILE_NAME_NONDIRECTORY): Delete macro.
        (file_name_nondirectory): New function, doing the same as the macro.
        (set_typedecl_interface_info): Use it instead of the macro.
        (check_newline): Likewise.
        (handle_cp_pragma): Likewise.

        * repo.c (get_base_filename): Cast result of rindex to char*.
        (open_repo_file): Likewise.
        * xref.c (open_xref_file): Likewise.
        * error.c (dump_char): Make its arg int, not char.

bring over the changes that went in yesterday to fix irix6 native cc
build problems

From-SVN: r16261
1997-11-01 14:50:18 -05:00
Brendan Kehoe
5a0fa1de62 except.c (expand_builtin_throw): Replace remaining use of saved_throw_type with a call to get_eh_type.
* except.c (expand_builtin_throw) [!DWARF2_UNWIND_INFO]: Replace
        remaining use of saved_throw_type with a call to get_eh_type.

From-SVN: r16260
1997-11-01 13:38:16 -05:00
Brendan Kehoe
cf9d67e3e8 except.c (push_eh_info): Pass the number of fields - 1 down, not the exact number of fields.
* except.c (push_eh_info): Pass the number of fields - 1 down, not
        the exact number of fields.

cuz in finish_builtin_type, its comment sez

   LEN is the number of elements
   in FIELDS minus one, or put another way, it is the maximum subscript
   used in FIELDS.

and its code does

  for (i = 0; i < len; i++)
    {
      layout_type (TREE_TYPE (fields[i]));
      DECL_FIELD_CONTEXT (fields[i]) = type;
      TREE_CHAIN (fields[i]) = fields[i+1];
    }
  DECL_FIELD_CONTEXT (fields[i]) = type;
  DECL_CLASS_CONTEXT (fields[i]) = type;

thus expecting the final ones to be fields[4], not fields[5] (which is
the actual size from 0, not the last field member)

From-SVN: r16257
1997-10-31 18:17:35 -05:00
Jeffrey A Law
27ca375af6 * version.c: Bump for snapshot.
From-SVN: r16255
1997-10-31 09:47:28 -07:00
Jeff Law
468c74c3f9 Fix typo.
From-SVN: r16253
1997-10-31 09:41:19 -07:00
Jeffrey A Law
53ca5d4fb4 Makefile.in (install targets): Add a dummy target for sunos make.
* Makefile.in (install targets): Add a dummy target for sunos make.
        (SUBDIR): Remove 'info'.  It's unneeded.

From-SVN: r16252
1997-10-31 09:38:44 -07:00
Jeffrey A Law
8d4e65a635 dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to output ASCII by default.
* dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
        output ASCII by default.  Only use ASM_OUTPUT_DWARF_STRING if
        flag_debug_asm is on.
        (output_die, output_pubnames, output_line_info): Likewise.

From-SVN: r16251
1997-10-31 09:30:48 -07:00
Jeffrey A Law
ec907dd81e alias.c (init_alias_analysis): Add struct_value_incoming_rtx and static_chain_rtx into the potential base...
* alias.c (init_alias_analysis): Add struct_value_incoming_rtx
        and static_chain_rtx into the potential base values array if
        they are registers.
Fixes bugs exposed by improved alias propagation code.

        * alias.c (new_reg_base_value): New array of potential base values.
        (unique_id): Now file scoped static.
        (find_base_value, case REG): Return the value in reg_base_value
        array for the REG if it exists.  Else, return the value from
        new_reg_base_value if copying args and REG is a hard register.
        (find_base_value, case PLUS): If either operand of the PLUS is
        a REG, try to get its base value.  Handle base + index and
        index + base.
        (record_set): Use new_reg_base_value instead of reg_base_value.
        (init_alias_analysis): Allocate space for new_reg_base_value too.
        Rework code to iterate over the insns propagating base value
        information until nothing changes.
Improve alias propagation significantly.

From-SVN: r16250
1997-10-31 08:35:31 -07:00
Jeffrey A Law
8c316ae21c global.c (global_alloc): Free the conflict matrix after reload has finished.
* global.c (global_alloc): Free the conflict matrix after
        reload has finished.

From-SVN: r16249
1997-10-31 07:08:40 -07:00
Jason Merrill
6874c2647b [multiple changes]
Fri Oct 31 01:45:31 1997  Jason Merrill  <jason@yorick.cygnus.com>

	* libgcc2.c (L_eh): Define __eh_pc.
	Replace __eh_type with generic pointer __eh_info.

Fri Oct 31 01:47:57 1997  Jason Merrill  <jason@yorick.cygnus.com>

	Support for nested exceptions.
	* tinfo2.cc (__is_pointer): New fn.
	* exception.cc (struct cp_eh_info): Define.
	(__cp_exception_info, __uncatch_exception): New fns.
	(__cp_push_exception, __cp_pop_exception): New fns.
	* except.c: Lose saved_throw_{type,value,cleanup,in_catch}.
 	Lose empty_fndecl.
	(init_exception_processing): Likewise.  __eh_pc is now external.
	(push_eh_info): New fn.
	(get_eh_{info,value,type,caught}): New fns.
	(push_eh_cleanup): Just call __cp_pop_exception.
	(expand_start_catch_block): Use push_eh_info.  Start the eh region
	sooner.
	(expand_end_eh_spec): Use push_eh_info.
	(expand_throw): Call __cp_push_exception to set up the exception info.
	Just pass the destructor or 0 as the cleanup.  Call __uncatch_exception
	when we rethrow.
	(expand_builtin_throw): Don't refer to empty_fndecl.

From-SVN: r16248
1997-10-31 04:52:55 -05:00
J"orn Rennecke
59fe8c2c20 expr.c (expand_increment): When enqueing a postincrement for a MEM...
* expr.c (expand_increment): When enqueing a postincrement for a MEM,
	use copy_to_reg if address is not a general_operand.

From-SVN: r16247
1997-10-31 00:40:46 +00:00
J"orn Rennecke
d1271dedce profile.c (output_func_start_profiler): Clear flag_inline_functions for the duration of the call to rest_of_compilation.
* profile.c (output_func_start_profiler): Clear flag_inline_functions
	for the duration of the call to rest_of_compilation.

From-SVN: r16246
1997-10-31 00:23:07 +00:00