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
Jim Wilson
a944a4ebfd
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
1997-10-20 14:16:21 -07:00
Doug Evans
f0a9fa6c6a
Lotsa sparc stuff.
...
From-SVN: r16109
1997-10-20 20:50:34 +00:00
Doug Evans
a0a301fc97
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
1997-10-20 20:49:22 +00:00
Geoff Keating
2d5b6dea25
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
1997-10-20 14:13:24 -06:00
Jason Merrill
92b968383e
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
1997-10-20 15:14:09 -04:00
Mark Mitchell
92eca6404c
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
1997-10-20 14:46:24 -04:00
Jason Merrill
a6967cc077
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
1997-10-20 14:09:06 -04:00
Klaus Kaempf
3a133c72de
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
1997-10-20 09:50:29 -06:00
Klaus Kaempf
a3b0df2d4a
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
1997-10-20 02:29:55 -06:00
Jeff Law
c12894e1c3
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
1997-10-20 02:11:49 -06:00