Jason Merrill [Mon, 27 Oct 1997 20:04:45 +0000 (20:04 +0000)]
* Makefile.in: check-target-libio depends on all-target-libstdc++.
From-SVN: r16206
Richard Henderson [Sun, 26 Oct 1997 21:47:50 +0000 (13:47 -0800)]
alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
* alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
Patch from Klaus Kaempf <kkaempf@progis.de>.
From-SVN: r16196
Jim Wilson [Sun, 26 Oct 1997 20:33:27 +0000 (20:33 +0000)]
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
Jeff Law [Sun, 26 Oct 1997 20:25:38 +0000 (13:25 -0700)]
Fix typo in last change.
From-SVN: r16194
Jason Merrill [Sun, 26 Oct 1997 20:01:11 +0000 (15:01 -0500)]
rebuild
From-SVN: r16193
Jason Merrill [Sun, 26 Oct 1997 19:54:42 +0000 (19:54 +0000)]
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
Jeff Law [Sun, 26 Oct 1997 18:55:13 +0000 (11:55 -0700)]
Opps. Checked in some development patches by accident.
From-SVN: r16189
Richard Henderson [Sun, 26 Oct 1997 18:48:31 +0000 (10:48 -0800)]
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
Manfred Hollstein [Sun, 26 Oct 1997 18:45:07 +0000 (18:45 +0000)]
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
Manfred Hollstein [Sun, 26 Oct 1997 18:44:33 +0000 (18:44 +0000)]
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
Jeffrey A Law [Sun, 26 Oct 1997 18:39:57 +0000 (18:39 +0000)]
Take out find_base_value change -- not needed, only the find_base_term
change was needed.
From-SVN: r16185
Manfred Hollstein [Sun, 26 Oct 1997 18:28:57 +0000 (18:28 +0000)]
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
Jeffrey A Law [Sun, 26 Oct 1997 18:21:28 +0000 (18:21 +0000)]
* Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
From-SVN: r16183
Jeffrey A Law [Sun, 26 Oct 1997 17:38:13 +0000 (17:38 +0000)]
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
Toon Moene [Sun, 26 Oct 1997 17:05:24 +0000 (18:05 +0100)]
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
Jeffrey A Law [Sun, 26 Oct 1997 16:56:15 +0000 (16:56 +0000)]
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
Jeffrey A Law [Sun, 26 Oct 1997 16:20:07 +0000 (16:20 +0000)]
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
Richard Henderson [Sun, 26 Oct 1997 16:13:10 +0000 (08:13 -0800)]
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
Jeffrey A Law [Sat, 25 Oct 1997 18:16:50 +0000 (18:16 +0000)]
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
Brendan Kehoe [Sat, 25 Oct 1997 16:23:10 +0000 (12:23 -0400)]
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
Jim Wilson [Sat, 25 Oct 1997 00:50:35 +0000 (00:50 +0000)]
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
Jeffrey A Law [Fri, 24 Oct 1997 23:36:42 +0000 (23:36 +0000)]
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
Richard Henderson [Fri, 24 Oct 1997 22:57:54 +0000 (15:57 -0700)]
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
Jeff Law [Fri, 24 Oct 1997 19:56:45 +0000 (13:56 -0600)]
Another goof in last change.
From-SVN: r16165
Doug Evans [Fri, 24 Oct 1997 19:39:08 +0000 (19:39 +0000)]
* sparc/sparc.h (ASM_SPEC): Delete asm_arch.
From-SVN: r16164
Doug Evans [Fri, 24 Oct 1997 19:36:54 +0000 (19:36 +0000)]
(ASM_SPEC): Delete asm_arch.
From-SVN: r16163
Jeff Law [Fri, 24 Oct 1997 19:34:58 +0000 (13:34 -0600)]
Fxi typo in last change.
From-SVN: r16162
Jeffrey A Law [Fri, 24 Oct 1997 19:18:29 +0000 (19:18 +0000)]
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
Jeffrey A Law [Thu, 23 Oct 1997 15:34:36 +0000 (15:34 +0000)]
* version.c: Bump for snapshot.
From-SVN: r16156
J"orn Rennecke [Thu, 23 Oct 1997 12:11:19 +0000 (12:11 +0000)]
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
Jason Merrill [Thu, 23 Oct 1997 09:55:55 +0000 (09:55 +0000)]
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
Jeffrey A Law [Thu, 23 Oct 1997 01:29:14 +0000 (01:29 +0000)]
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
H.J. Lu [Thu, 23 Oct 1997 01:17:58 +0000 (01:17 +0000)]
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
Brendan Kehoe [Thu, 23 Oct 1997 00:00:20 +0000 (00:00 +0000)]
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
Jeffrey A Law [Wed, 22 Oct 1997 21:10:49 +0000 (21:10 +0000)]
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
Richard Henderson [Wed, 22 Oct 1997 18:38:47 +0000 (11:38 -0700)]
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
Jeffrey A Law [Wed, 22 Oct 1997 15:58:33 +0000 (15:58 +0000)]
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
Jeffrey A Law [Wed, 22 Oct 1997 06:31:00 +0000 (06:31 +0000)]
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
Michael Meissner [Wed, 22 Oct 1997 02:06:18 +0000 (02:06 +0000)]
Add documentation for Haifa ISSUE_RATE
From-SVN: r16145
Jim Wilson [Wed, 22 Oct 1997 01:16:10 +0000 (01:16 +0000)]
Fix typo in last obstack.h change.
* obstack.h (obstack_empty_p): Fix spurious space after backslash.
From-SVN: r16144
Jeffrey A Law [Wed, 22 Oct 1997 00:41:31 +0000 (00:41 +0000)]
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
Geoff Keating [Wed, 22 Oct 1997 00:31:13 +0000 (18:31 -0600)]
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
Jeffrey A Law [Tue, 21 Oct 1997 20:58:16 +0000 (20:58 +0000)]
* mn10200.c (expand_prologue): Fix typo.
From-SVN: r16139
Jeff Law [Tue, 21 Oct 1997 19:55:51 +0000 (13:55 -0600)]
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
Jeff Law [Tue, 21 Oct 1997 19:52:12 +0000 (13:52 -0600)]
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
Jeffrey A Law [Tue, 21 Oct 1997 19:10:24 +0000 (19:10 +0000)]
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
Jeffrey A Law [Tue, 21 Oct 1997 16:04:57 +0000 (16:04 +0000)]
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
Jim Wilson [Mon, 20 Oct 1997 23:49:48 +0000 (23:49 +0000)]
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
Doug Evans [Mon, 20 Oct 1997 22:06:10 +0000 (22:06 +0000)]
Update sparc docs.
From-SVN: r16127
Nick Clifton [Mon, 20 Oct 1997 21:33:53 +0000 (21:33 +0000)]
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
Doug Evans [Mon, 20 Oct 1997 21:29:01 +0000 (21:29 +0000)]
Expect SPARC_DEFAULT_CMODEL to be overridden in cover file.
From-SVN: r16125
Doug Evans [Mon, 20 Oct 1997 21:28:27 +0000 (21:28 +0000)]
Update copyright year.
From-SVN: r16124
Jim Wilson [Mon, 20 Oct 1997 21:16:21 +0000 (21:16 +0000)]
Fix O32 -p bug reported by Ralf Baechle.
* mips/mips.c (compute_frame_size): Not a leaf function if
profile_flag set.
From-SVN: r16110
Doug Evans [Mon, 20 Oct 1997 20:50:34 +0000 (20:50 +0000)]
Lotsa sparc stuff.
From-SVN: r16109
Doug Evans [Mon, 20 Oct 1997 20:49:22 +0000 (20:49 +0000)]
sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
* sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
(DEFAULT_ARCH32_P): New macro.
(TARGET_ARCH{32,64}): Allow compile time or runtime selection.
(enum cmodel): Declare.
(sparc_cmodel_string,sparc_cmodel): Declare.
(SPARC_DEFAULT_CMODEL): Provide default.
(TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
(TARGET_FULLANY): Deleted.
(TARGET_CM_MEDMID): New macro.
(CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
(ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
(CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
(CPP_SPEC): Rewrite.
(CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
(CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
(ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
(ASM_SPEC): Add %(asm_arch).
(EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
Rename asm_default to asm_cpu_default.
Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
(NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
(MASK_INT64,MASK_LONG64): Delete.
(MASK_ARCH64): Renamed to MASK_64BIT.
(MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
(EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
(TARGET_SWITCHES): Always provide 64 bit options.
(ARCH64_SWITCHES): Delete.
(TARGET_OPTIONS): New option -mcmodel=.
(INT_TYPE_SIZE): Always 32.
(MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
(INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
(FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
(PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
* sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
CPP_SPEC.
(CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
* sparc/linux.h: Likewise.
* sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
(ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
(TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
(SPARC_DEFAULT_CMODEL): Define.
(CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
(CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
(LONG_DOUBLE_TYPE_SIZE): Define.
(ASM_SPEC): Add %(asm_arch).
* sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
(CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
(TARGET_CPU_DEFAULT): Add ultrasparc case.
* sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
(TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
(SPARC_DEFAULT_CMODEL): Define.
* sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
(TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
MASK_LONG64, MASK_MEDANY.
(SPARC_DEFAULT_CMODEL): Define.
(CPP_PREDEFINES): Delete.
(CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
(ASM_SPEC): Add %(asm_arch).
(LONG_DOUBLE_TYPE_SIZE): Define.
(DWARF2_DEBUGGING_INFO): Define.
* sparc/splet.h (CPP_SPEC): Delete.
* sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
(FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
(BLOCK_PROFILER): Likewise.
* sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
(sparc_override_options): Handle code model selection.
(sparc_init_expanders): Renamed from sparc64_init_expanders.
* sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
(sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
(sethi_di_fullany): Delete.
From-SVN: r16108
Geoff Keating [Mon, 20 Oct 1997 20:13:24 +0000 (14:13 -0600)]
t-ppccomm: Use -msdata=none for crtstuff.
* rs6000/t-ppccomm: Use -msdata=none for crtstuff.
Should fix ctor/dtor problems on ppc-linux.
From-SVN: r16107
Jason Merrill [Mon, 20 Oct 1997 19:14:09 +0000 (19:14 +0000)]
except.c (expand_exception_blocks): Call do_pending_stack_adust.
* except.c (expand_exception_blocks): Call do_pending_stack_adust.
(expand_end_catch_block): Likewise.
(expand_end_eh_spec): Likewise.
From-SVN: r16106
Mark Mitchell [Mon, 20 Oct 1997 18:46:24 +0000 (18:46 +0000)]
decl.c (duplicate_decls): Handle template specializations correctly.
Mon Oct 20 11:44:20 1997 Mark Mitchell <mmitchell@usa.net>
* decl.c (duplicate_decls): Handle template specializations
correctly.
* error.c (dump_function_name): Fix printing of specializations of
member functions that are not member templates.
* cp-tree.h (processing_specialization): Make global.
* pt.c (processing_specialization): Likewise.
* lex.c (cons_up_default_function): Save and restore
processing_specialization to avoid confusion.
From-SVN: r16101
Jason Merrill [Mon, 20 Oct 1997 18:09:06 +0000 (18:09 +0000)]
decl.c (init_decl_processing): Give null_node unknown* type.
* decl.c (init_decl_processing): Give null_node unknown* type.
* typeck.c (comp_target_types): Handle UNKNOWN_TYPE.
(common_type): Likewise.
* error.c (args_as_string): Recognize null_node.
From-SVN: r16100
Klaus Kaempf [Mon, 20 Oct 1997 15:50:29 +0000 (15:50 +0000)]
vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
* alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
(DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
(MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
(UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
* alpha/alpha.md (arg_home): Likewise.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
Co-Authored-By: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
From-SVN: r16099
Klaus Kaempf [Mon, 20 Oct 1997 08:29:55 +0000 (08:29 +0000)]
alpha.c (output_prolog, VMS): Use alloca for entry_label and don't truncate to 64 characters.
* alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
truncate to 64 characters.
vmskrunch changes need this.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
Co-Authored-By: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
From-SVN: r16098
Jeff Law [Mon, 20 Oct 1997 08:11:49 +0000 (02:11 -0600)]
alpha.c (vmskrunch): Delete
* alpha/alpha.c (vmskrunch): Delete
* alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
* make-l2.com: Support openVMS/Alpha.
* vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
Some patches from Klaus.
From-SVN: r16097
J"orn Rennecke [Mon, 20 Oct 1997 00:56:45 +0000 (00:56 +0000)]
* longlong.h (count_leading_zeros): Add missing casts to USItype.
From-SVN: r16096
Jeffrey A Law [Mon, 20 Oct 1997 00:40:44 +0000 (00:40 +0000)]
* i386/bsd386.h (ASM_COMMENT_START): Define.
From-SVN: r16095
Doug Evans [Sun, 19 Oct 1997 16:46:47 +0000 (16:46 +0000)]
Undo cvs entry 1.4 "Reorg sethi_{hi,si} patterns." and add comment why.
From-SVN: r16080
Jeff Law [Sun, 19 Oct 1997 16:29:32 +0000 (10:29 -0600)]
Initial revision
From-SVN: r16070
Jason Merrill [Sat, 18 Oct 1997 21:10:32 +0000 (21:10 +0000)]
tree.c (restore_tree_status): Also free up temporary storage when we finish a toplevel function.
* tree.c (restore_tree_status): Also free up temporary storage
when we finish a toplevel function.
(dump_tree_statistics): Print stats for backend obstacks.
* libgcc2.c (__throw): Don't copy the return address.
* dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
* except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
* toplev.c (main): Initialize exceptions_via_longjmp.
* tree.c: Add extra_inline_obstacks.
(save_tree_status): Use it.
(restore_tree_status): If this is a toplevel inline obstack and we
didn't want to save anything on it, recycle it.
(print_inline_obstack_statistics): New fn.
* function.c (pop_function_context_from): Pass context to
restore_tree_status.
* obstack.h (obstack_empty_p): New macro.
From-SVN: r16050
Doug Evans [Sat, 18 Oct 1997 19:48:25 +0000 (19:48 +0000)]
* expr.c (use_group_regs): Don't call use_reg for MEMs.
From-SVN: r16046
Jeffrey A Law [Sat, 18 Oct 1997 06:52:58 +0000 (06:52 +0000)]
* i386/freebsd.h (ASM_COMMENT_START): Fix.
From-SVN: r15993
Jim Wilson [Sat, 18 Oct 1997 05:46:19 +0000 (05:46 +0000)]
v850.c (ep_memory_offset): New function.
* v850.c (ep_memory_offset): New function.
(ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
* v850.h (CONST_OK_FOR_*): Add and correct comments.
(CONSTANT_ADDRESS_P): Add comment.
(EXTRA_CONSTRAINT): Define 'U'.
* v850.md: Add comments on bit field instructions.
(addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
(lshrsi3): Use N not J constraint.
* v850.md (v850_tst1+1): New define_split for tst1 instruction.
* v850.c (reg_or_0_operand): Call register_operand.
(reg_or_int5_operand): Likewise.
* v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
(TARGET_SWITCHES): Add "big-switch".
(ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
(CASE_DROPS_THROUGH): Comment out.
(CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
* v850.md (cmpsi): Delete compare mode.
(casesi): New pattern.
* v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
* v850.md (ashlsi3): Use SImode not QImode for shift count.
(lshrsi3): Likewise.
* v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
unreachable switch statement after 'b' support. Remove "b" from
strings for 'b' support.
* v850.md (branch_normal, branch_invert): Change %b to b%b.
v850 patches from Jim.
From-SVN: r15992
Jeffrey A Law [Sat, 18 Oct 1997 05:31:26 +0000 (05:31 +0000)]
Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an empty line if @inhibit_libc@ is empty.
* Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
empty line if @inhibit_libc@ is empty.
From-SVN: r15991
Robert Lipe [Sat, 18 Oct 1997 05:21:23 +0000 (05:21 +0000)]
sco5.h: Let ELF use dwarf2 unwinding.
* i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
(EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
(EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
(DWARF2_UNWIND_INFO): Let this track object file format.
(EXTRA_SECTIONS): Add in_eh.
(EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
(EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
From-SVN: r15990
Jason Merrill [Sat, 18 Oct 1997 02:09:13 +0000 (02:09 +0000)]
* tree.h, vector.h: Fix accidental divergence from SGI release.
From-SVN: r15989
Doug Evans [Fri, 17 Oct 1997 23:26:02 +0000 (23:26 +0000)]
* ginclude/va-sparc.h: Rewrite v9 support.
From-SVN: r15987
Doug Evans [Fri, 17 Oct 1997 23:25:26 +0000 (23:25 +0000)]
Rewrite v9 support.
From-SVN: r15986
Doug Evans [Fri, 17 Oct 1997 23:21:12 +0000 (23:21 +0000)]
(output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
fmovd so it works if a quad float ends up in one of the upper 32
float regs.
From-SVN: r15985
Doug Evans [Fri, 17 Oct 1997 23:20:03 +0000 (23:20 +0000)]
sparc.c (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD...
* sparc.c (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
fmovd so it works if a quad float ends up in one of the upper 32
float regs.
From-SVN: r15984
David S. Miller [Fri, 17 Oct 1997 23:01:29 +0000 (23:01 +0000)]
sparc.md (pic_{lo_sum,sethi}_di): New patterns necessary for PIC support on sparc64.
* sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
necessary for PIC support on sparc64.
From-SVN: r15982
Doug Evans [Fri, 17 Oct 1997 22:45:15 +0000 (22:45 +0000)]
Reorg sethi_{hi,si} patterns.
From-SVN: r15979
Jeff Law [Fri, 17 Oct 1997 22:16:29 +0000 (16:16 -0600)]
Add some stuff.
From-SVN: r15978
Doug Evans [Fri, 17 Oct 1997 21:59:06 +0000 (21:59 +0000)]
sparc.c (output_double_int): Output DI mode values correctly when HOST_BITS_PER_WIDE_INT is 64.
* sparc/sparc.c (output_double_int): Output DI mode values
correctly when HOST_BITS_PER_WIDE_INT is 64.
From-SVN: r15977
David S. Miller [Fri, 17 Oct 1997 21:35:20 +0000 (21:35 +0000)]
sparc.h (FUNCTION_PROFILER): Fix format string when TARGET_MEDANY.
* sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
TARGET_MEDANY.
From-SVN: r15974
David S. Miller [Fri, 17 Oct 1997 21:21:12 +0000 (21:21 +0000)]
* sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
From-SVN: r15972
David S. Miller [Fri, 17 Oct 1997 21:16:36 +0000 (21:16 +0000)]
* sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
From-SVN: r15971
Doug Evans [Fri, 17 Oct 1997 20:41:17 +0000 (20:41 +0000)]
First pass at updating to current sparc v9 abi.
From-SVN: r15969
Doug Evans [Fri, 17 Oct 1997 20:39:37 +0000 (20:39 +0000)]
sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
* sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
* sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
(PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
(SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
(SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
(SPARC_FP_ARG_FIRST): New macro.
(CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
(REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
(NPARM_REGS): There are 32 fp argument registers now.
(FUNCTION_ARG_REGNO_P): Likewise.
(FIRST_PARM_OFFSET): Update to new v9 abi.
(REG_PARM_STACK_SPACE): Define for arch64.
(enum sparc_arg_class): Delete.
(sparc_arg_count,sparc_n_named_args): Delete.
(struct sparc_args): Redefine and use for arch32 as well as arch64.
(GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
(FUNCTION_ARG_ADVANCE): Rewrite.
(FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
(FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
(FUNCTION_ARG_CALLEE_COPIES): Delete.
(FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
(STRICT_ARGUMENT_NAMING): Define.
(doublemove_string): Declare.
* sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
(single_move_string): Use GEN_INT, and HOST_WIDE_INT.
(doublemove_string): New function.
(output_move_quad): Clean up some of the arch64 support.
(compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
Don't add 8 bytes of reserved space if arch64.
(sparc_builtin_saveregs): Combine arch32/arch64 versions.
(init_cumulative_args): New function.
(function_arg_slotno): New static function.
(function_arg,function_arg_partial_nregs): New functions.
(function_arg_{pass_by_reference,advance}): New functions.
(function_arg_padding): New function.
First pass at updating to current v9 abi.
From-SVN: r15968
Jeff Law [Fri, 17 Oct 1997 15:54:01 +0000 (09:54 -0600)]
Fix from Joern.
From-SVN: r15955
Christian Iseli [Fri, 17 Oct 1997 15:46:57 +0000 (17:46 +0200)]
regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P for hard regs to determine base and index...
* regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
for hard regs to determine base and index registers.
From-SVN: r15954
Christian Iseli [Fri, 17 Oct 1997 15:40:52 +0000 (17:40 +0200)]
reload.c (debug_reload_to_stream): New function.
* reload.c (debug_reload_to_stream): New function. Specify stream
into which to write debug info.
(debug_reload): Modify to call debug_reload_to_stream with stderr.
Thanks. Installed.
From-SVN: r15953
Richard Henderson [Thu, 16 Oct 1997 22:06:43 +0000 (15:06 -0700)]
combine.c (can_combine_p): Don't combine with an asm whose output is a hard register.
* combine.c (can_combine_p): Don't combine with an asm whose
output is a hard register.
From-SVN: r15940
Mike Stump [Thu, 16 Oct 1997 21:45:24 +0000 (21:45 +0000)]
c-decl.c (start_struct): Ensure that structs with forward declarations are in fact packed when...
* c-decl.c (start_struct): Ensure that structs with forward
declarations are in fact packed when -fpack-struct is given.
* stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
we are packing a structure. This allows a structure with only
bytes to be aligned on a byte boundary and have no padding on a
m68k.
From-SVN: r15939
Judy Goldberg [Thu, 16 Oct 1997 21:33:36 +0000 (21:33 +0000)]
pt.c (determine_explicit_specialization): Initialize "dummy" to keep Purify quiet.
* pt.c (determine_explicit_specialization): Initialize "dummy"
to keep Purify quiet.
From-SVN: r15938
Richard Kenner [Thu, 16 Oct 1997 21:16:09 +0000 (21:16 +0000)]
rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
* rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
Bring over from gcc2.
From-SVN: r15937
Richard Henderson [Thu, 16 Oct 1997 18:37:59 +0000 (11:37 -0700)]
alpha.c (alpha_return_addr_rtx): New variable.
* alpha.c (alpha_return_addr_rtx): New variable.
(alpha_save_machine_status): New; save it.
(alpha_restore_machine_status): New; restore it.
(alpha_init_expanders): New; clear it.
(alpha_return_addr): New; set it.
(alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
is overly conservative, so search the insns explicitly.
(alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
(alpha_sa_size [VMS && !VMS]): Likewise.
* alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
(INIT_EXPANDERS): New definition.
* alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
(output_prolog [!VMS]): Use them.
* alpha.c (output_prolog [!VMS]): Move gp detection to ...
(alpha_does_function_need_gp): ... a new function. Refine the
CALL_INSN test to just TYPE_JSR.
* alpha.md (most call insns): Fix some jsr/ibr type transpositions.
From-SVN: r15936
Jeffrey A Law [Thu, 16 Oct 1997 15:39:00 +0000 (15:39 +0000)]
* version.c: Bump for snapshot.
From-SVN: r15932
Jeff Law [Thu, 16 Oct 1997 15:30:26 +0000 (09:30 -0600)]
configure.in: Create compatibility code in bits/libc-lock.h file.
* configure.in: Create compatibility code in bits/libc-lock.h file.
* libio.h (_IO_LOCK_T): Handle glibc 2 when _IO_MTSAFE_IO is
not defined.
* filedoalloc.c (_IO_file_doallocate): Don't call
_IO_cleanup_registration_needed if __linux__ is defined.
* iofclose.c (fclose): Make it weak alias of _IO_fclose if
__ELF__ is defined.
* iovsprintf.c (vsprintf): Make it weak alias of _IO_vsprintf
if __ELF__ is defined.
* iovsscanf.c (vsscanf): Make it weak alias of _IO_vsscanf if
__ELF__ is defined.
* config/linuxlibc1.mt (MT_CFLAGS): Defined as -D_G_HAVE_MMAP.
(IO_OBJECTS): Add filedoalloc.o fileops.o genops.o iofclose.o
iovsprintf.o iovsscanf.o strops.o.
From-SVN: r15931
Paul Koning [Thu, 16 Oct 1997 08:02:09 +0000 (08:02 +0000)]
Make-lang.in (stmp-f2c.h): Don't configure the runtime directory if LANGUAGES does not include f77.
* Make-lang.in (stmp-f2c.h): Don't configure the runtime
directory if LANGUAGES does not include f77.
From-SVN: r15930
Ian Lance Taylor [Thu, 16 Oct 1997 07:39:03 +0000 (07:39 +0000)]
asprintf.c: Consistently use either stdarg or varargs.
* asprintf.c: Consistently use either stdarg or varargs.
Bring over from devo.
From-SVN: r15929
Jason Merrill [Thu, 16 Oct 1997 07:20:46 +0000 (03:20 -0400)]
method.c (build_overload_value): Handle TEMPLATE_CONST_PARMs here.
* method.c (build_overload_value): Handle TEMPLATE_CONST_PARMs here.
(build_overload_int): Not here.
Wed Oct 15 00:35:28 1997 Mike Stump <mrs@wrs.com>
* class.c (build_type_pathname): Remove.
(prepare_fresh_vtable): Fix problem with complex MI vtable names.
From-SVN: r15928
Richard Kenner [Thu, 16 Oct 1997 03:37:28 +0000 (03:37 +0000)]
pa.c (move_operand): Respect -mdisable-indexing.
* pa.c (move_operand): Respect -mdisable-indexing.
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
Bring over from gcc2. Fixes ada -O2 bootstrap.
From-SVN: r15927