Commit Graph

14589 Commits

Author SHA1 Message Date
Jim Wilson
7581a30fe2 expr.c (expand_expr, [...]): Optimize a reference to an element in a constant string.
* expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
        to an element in a constant string.

From-SVN: r16195
1997-10-26 13:33:27 -07:00
Jeff Law
edaa4ee062 Fix typo in last change.
From-SVN: r16194
1997-10-26 13:25:38 -07:00
Jason Merrill
16540e1b03 rebuild
From-SVN: r16193
1997-10-26 15:01:11 -05:00
Jason Merrill
d84e64d416 dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32 bit PC-relative offset.
* dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
 	bit PC-relative offset.  The exception range table pointer is now in
 	the CIE.
	* frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
	(count_fdes, add_fdes, get_cie): Adjust.
	(cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.

	From H.J. Lu:
	* frame.c (count_fdes, add_fdes): Skip linked once FDE entries.

From-SVN: r16192
1997-10-26 14:54:42 -05:00
Jeff Law
bd123dc9f2 Opps. Checked in some development patches by accident.
From-SVN: r16189
1997-10-26 11:55:13 -07:00
Richard Henderson
962867229a alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just like stack_pointer_rtx.
* alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
        like stack_pointer_rtx.

From-SVN: r16188
1997-10-26 11:48:31 -07:00
Manfred Hollstein
361e618f25 Makefile.in (bootstrap-lean): Combined with `normal' bootstrap targets using "$@" to provide support for...
* Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
        targets using "$@" to provide support for similar but not identical
        targets without having to duplicate code.
        (bootstrap4): New goal.

From-SVN: r16187
1997-10-26 11:45:07 -07:00
Manfred Hollstein
cc71c0ca1f Makefile.in (bootstrap-lean): Combined with `normal' bootstrap targets using "$@" to provide support for...
* Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
        targets using "$@" to provide support for similar but not identical
        targets without having to duplicate code.

From-SVN: r16186
1997-10-26 11:44:33 -07:00
Jeffrey A Law
adb9effb26 Take out find_base_value change -- not needed, only the find_base_term
change was needed.

From-SVN: r16185
1997-10-26 11:39:57 -07:00
Manfred Hollstein
e85988b5d5 Makefile.in (compare, [...]): Combined to one ruleset determining actions to be performed via $@.
* Makefile.in (compare, compare-lean, compare3): Combined to one
        ruleset determining actions to be performed via $@.
        (compare4, compare4-lean): New targets.
        (gnucompare, gnucompare3): Combined to one ruleset determining
        actions to be performed via $@. Also, note which files failed
        the comparison test in .bad_compare.
        (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.

From-SVN: r16184
1997-10-26 11:28:57 -07:00
Jeffrey A Law
7337c67fcd * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
From-SVN: r16183
1997-10-26 11:21:28 -07:00
Jeffrey A Law
6d849a2abd alias.c (find_base_value): Handle PRE_INC, PRE_DEC, POST_INC, and POS_DEC.
* alias.c (find_base_value): Handle PRE_INC, PRE_DEC, POST_INC,
        and POS_DEC.
        (find_base_term): Likewise.

        * alias.c (true_dependence): Fix typo.

From-SVN: r16182
1997-10-26 10:38:13 -07:00
Toon Moene
91585c63e4 fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR if...
* fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
        if the dividend is a multiple of the divisor.

From-SVN: r16181
1997-10-26 10:05:24 -07:00
Jeffrey A Law
6d6d0fa07e toplev.c (flag_rerun_loop_opt): New variable.
* toplev.c (flag_rerun_loop_opt): New variable.
        (f_options): Handle -frerun-loop-opt.
        (rest_of_compilation): If -frerun-loop-opt, then run the loop
        optimizer twice.
        (main): Enable -frerun-loop-opt by default for -O2 or greater.

From-SVN: r16180
1997-10-26 09:56:15 -07:00
Jeffrey A Law
da0af5a56f loop.c (simplify_giv_expr): Adding two invariants results in an invariant.
* loop.c (simplify_giv_expr): Adding two invariants results
        in an invariant.

From-SVN: r16179
1997-10-26 09:20:07 -07:00
Richard Henderson
ca0f22208f expr.c (get_inner_reference): Remove the array bias after converting the index to Pmode.
* expr.c (get_inner_reference): Remove the array bias after
        converting the index to Pmode.

From-SVN: r16178
1997-10-26 09:13:10 -07:00
Jeffrey A Law
a6f7ba1798 mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
* mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
        (TARGET_MULT_BUG): Define.
        (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
        * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.

From-SVN: r16173
1997-10-25 12:16:50 -06:00
Brendan Kehoe
fc55478797 Reverse this, bad call on my part:
1,4d0
< Fri Oct 24 17:49:10 1997  Jim Wilson  <wilson@cygnus.com>
<
< 	* integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
<

From-SVN: r16172
1997-10-25 12:23:10 -04:00
Jim Wilson
f15e65f1fe integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
* integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.

fixes many of the inlining problems causing various suite++ and perennial
test failures, among others

From-SVN: r16171
1997-10-24 20:50:35 -04:00
Jeffrey A Law
17ad8a3bb9 mn10200.c (indirect_memory_operand): Delete unused function.
* mn10200.c (indirect_memory_operand): Delete unused function.
        * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
        * mn10200.md (bset, bclr insns): Handle output in a reg too.

From-SVN: r16169
1997-10-24 17:36:42 -06:00
Richard Henderson
e16b49d379 alpha.md (call patterns): Revert Oct 16 change...
* alpha.md (call patterns): Revert Oct 16 change; if we are to elide
the callee's ldgp, we must do it ourselves, and we use the jsr tag
for more than scheduling.

From-SVN: r16168
1997-10-24 15:57:54 -07:00
Jeff Law
bf4219f03f Another goof in last change.
From-SVN: r16165
1997-10-24 13:56:45 -06:00
Doug Evans
27f654110e * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
From-SVN: r16164
1997-10-24 19:39:08 +00:00
Doug Evans
e632a26c1d (ASM_SPEC): Delete asm_arch.
From-SVN: r16163
1997-10-24 19:36:54 +00:00
Jeff Law
371036e032 Fxi typo in last change.
From-SVN: r16162
1997-10-24 13:34:58 -06:00
Jeffrey A Law
e9ad457396 mn10300.c (symbolic_operand, [...]): New functions.
* mn10300.c (symbolic_operand, legitimize_address): New functions.
        * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
        (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.

From-SVN: r16158
1997-10-24 13:18:29 -06:00
Jeffrey A Law
66724f0abd * version.c: Bump for snapshot.
From-SVN: r16156
1997-10-23 09:34:36 -06:00
J"orn Rennecke
c401498bbf dbxout.c (dbxout_start_new_source_file): Use output_quoted_string for FILENAME.
* dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
	for FILENAME.

From-SVN: r16155
1997-10-23 13:11:19 +01:00
Jason Merrill
7b4f18a381 pt.c (instantiate_decl): SET_DECL_IMPLICIT_INSTANTIATION on new decl.
* pt.c (instantiate_decl): SET_DECL_IMPLICIT_INSTANTIATION on new decl.

Fixes libstdc++ failure.

From-SVN: r16153
1997-10-23 05:55:55 -04:00
Jeffrey A Law
56bf1fd97a toplev.c (flag_exceptions): Default value is 2.
* toplev.c (flag_exceptions): Default value is 2.
        (compile_file): If flag_exceptions still has the value 2, then
        set it to 0.

        * lex.c (lang_init): Enable flag_exceptions by default if no
        command line switch was specified.
Gross hacks to allow front-ends to override -fexceptions.

From-SVN: r16152
1997-10-22 19:29:14 -06:00
H.J. Lu
1181d2d553 libio.h (_IO_LOCK_T): Handle glibc 2 when _IO_MTSAFE_IO is not defined.
* libio.h (_IO_LOCK_T): Handle glibc 2 when _IO_MTSAFE_IO is
        not defined.

        * iovsscanf.c (vsscanf): Make it weak alias of _IO_vsscanf if
        __linux__ is defined instead of __ELF__

        * config/linuxlibc1.mt (USER_INCLUDES): Add libio.h.
OK'd by Ulrich.

From-SVN: r16151
1997-10-22 19:17:58 -06:00
Brendan Kehoe
4966381af5 method.c (build_template_parm_names, [...]): Add static to definitions.
* method.c (build_template_parm_names, build_decl_overload_real):
        Add static to definitions.
        * pt.c (add_to_template_args, note_template_header,
        processing_explicit_specialization, type_unification_real): Likewise.
        ({determine,check}_explicit_specialization): Use a single string for
        error messages.

fixes problems building with sunos4 system cc

From-SVN: r16150
1997-10-22 20:00:20 -04:00
Jeffrey A Law
a04232e5ff rs6000.c (struct machine_function): Add pic_offset_table_rtx.
* rs6000.c (struct machine_function): Add pic_offset_table_rtx.
        (rs6000_save_machine_status): Save pic_offset_table_rtx.
        (rs6000_restore_machine_status: Restore pic_offset_table_rtx.

From-SVN: r16149
1997-10-22 15:10:49 -06:00
Richard Henderson
83ffecd201 com.c (ffecom_expr_): Take an new arg TREE_TYPE that if non-null specifies the type in which to do...
* com.c (ffecom_expr_): Take an new arg TREE_TYPE that if non-null
        specifies the type in which to do the calculation.  Change all callers.
        [FFEBLD_opARRAYREF]: Force the index expr to use sizetype.

From-SVN: r16148
1997-10-22 11:38:47 -07:00
Jeffrey A Law
0bd83abd44 local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions are shared.
* local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
        are shared.

From-SVN: r16147
1997-10-22 09:58:33 -06:00
Jeffrey A Law
b22b9b3ef2 rs6000.md (*movsi_got_internal_mem): New pattern.
* rs6000.md (*movsi_got_internal_mem): New pattern.
        (*movsi_got_internal_mem splitter): New define_split.
Fixes some egcs bugs.

From-SVN: r16146
1997-10-22 00:31:00 -06:00
Michael Meissner
70cfa7adbd Add documentation for Haifa ISSUE_RATE
From-SVN: r16145
1997-10-22 02:06:18 +00:00
Jim Wilson
c1e385dbd1 Fix typo in last obstack.h change.
* obstack.h (obstack_empty_p): Fix spurious space after backslash.

From-SVN: r16144
1997-10-21 18:16:10 -07:00
Jeffrey A Law
c6ee9150da mn10300.md (movqi, movhi): Avoid using address registers as destinations unless absolutely necessary.
* mn10300.md (movqi, movhi): Avoid using address registers as
        destinations unless absolutely necessary.

From-SVN: r16141
1997-10-21 18:41:31 -06:00
Geoff Keating
1a98615242 rs6000.c: Avoid creating a stack frame under SYSV ABI if we only need to save LR.
* rs6000.c: Avoid creating a stack frame under SYSV ABI if we
        only need to save LR.

From-SVN: r16140
1997-10-21 18:31:13 -06:00
Jeffrey A Law
d5255ba2cb * mn10200.c (expand_prologue): Fix typo.
From-SVN: r16139
1997-10-21 14:58:16 -06:00
Jeff Law
9d2128b88e mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed addresses.
* mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
        addresses.
        * mn10200.md (neghi2): Provide an alternative which works if
        the input and output register are the same.

[[Split portion of a mixed commit.]]

From-SVN: r16137.2
1997-10-21 13:55:51 -06:00
Jeff Law
e92f9bcf4d mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed addresses.
* mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
        addresses.
        * mn10200.md (neghi2): Provide an alternative which works if
        the input and output register are the same.

From-SVN: r16136
1997-10-21 13:52:12 -06:00
Jeffrey A Law
576e5accbd mn10300.c (print_operand): Handle 'S'.
* mn10300.c (print_operand): Handle 'S'.
        * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
        shift amount in last alternative

From-SVN: r16134
1997-10-21 13:10:24 -06:00
Jeffrey A Law
5d29a95f92 mn10300.c (expand_epilogue): Rework to handle register restores in "ret" and "retf" instructions correctly.
* mn10300.c (expand_epilogue): Rework to handle register restores
        in "ret" and "retf" instructions correctly.

From-SVN: r16132
1997-10-21 10:04:57 -06:00
Jim Wilson
3bf1b08254 Patches to fix minor optimizer bugs
Patches to fix minor optimizer bugs
	* expmed.c (extract_bit_field): Don't make flag_force_mem disable
	extzv for memory operands.
	* cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
	redundant conditional moves to single operand.

From-SVN: r16129
1997-10-20 16:49:48 -07:00
Doug Evans
ded17aad24 Update sparc docs.
From-SVN: r16127
1997-10-20 22:06:10 +00:00
Nick Clifton
ddbd8d3619 v850.h: Move define of __v850__ from CPP_PREDEFINES to CPP_SPEC.
* v850.h: Move define of __v850__ from CPP_PREDEFINES
        to CPP_SPEC.

        * xm-v850.h: Use __v850 rather than __v850__ to
        identify v850 port.

From-SVN: r16126
1997-10-20 15:33:53 -06:00
Doug Evans
617b50b641 Expect SPARC_DEFAULT_CMODEL to be overridden in cover file.
From-SVN: r16125
1997-10-20 21:29:01 +00:00
Doug Evans
202fd1d57e Update copyright year.
From-SVN: r16124
1997-10-20 21:28:27 +00:00