Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir) be created if necessary.
* Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
be created if necessary.
(ada.install-common): Let $(DESTDIR)$(bindir) be created
if necessary. Remove erroneous and redundant gnatchop
installation commands. Test for gnatdll before attempting
to install it.
(ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
and gnatdll from all plausible locations.
pa-protos.h (attr_length_millicode_call): Remove second argument.
* pa-protos.h (attr_length_millicode_call): Remove second argument.
(attr_length_indirect_call, attr_length_indirect_call,
attr_length_save_restore_dltp): New prototypes.
* pa.c (attr_length_millicode_call): Remove second argument. Check
INSN_ADDRESSES_SET_P in distance calculation.
(output_millicode_call): Check INSN_ADDRESSES_SET_P before using
INSN_ADDRESSES.
(attr_length_call): Check INSN_ADDRESSES_SET_P in distance calculation.
(output_call): Check INSN_ADDRESSES_SET_P before using INSN_ADDRESSES.
Call attr_length_call directly.
(attr_length_indirect_call, output_indirect_call,
attr_length_save_restore_dltp): New functions.
* pa.md (attr_length_millicode_call): Drop second argument from all
patterns.
(return_internal_pic): Delete.
(return_external_pic): Remove use of PIC register and pic operand and
flag checks.
(epilogue): Use return_internal for both normal and pic code.
(call, call_value): Emit new 32-bit pic patterns for symref and
indirect calls. Remove uses for arg pointer and pic register.
(call_symref_pic, call_symref_pic_post_reload, call_reg_pic,
call_reg_pic_post_reload, call_val_symref_pic,
call_val_symref_pic_post_reload, call_val_reg_pic,
call_val_reg_pic_post_reload): New pre and post reload insn patterns.
Implement define_split and define_peephole2 patterns for pre reload
patterns.
(call_symref_64bit, call_internal_reg_64bit, call_value_symref_64bit,
call_value_internal_reg_64bit): Shorten names.
(all call patterns): Explicitly indicate registers used and clobbered.
Use attr_length_indirect_call and attr_length_save_restore_dltp for
attribute length calculation. Move code generation for indirect calls
to output_indirect_call.
(sibcall, sibcall_value): Don't restore PIC register.
(exception_receiver, builtin_setjmp_receiver): Add blockage after PIC
register retore.
* libgcc2.c: Include auto-host.h.
(ATTRIBUTE_HIDDEN): New.
(__clz_tab): Don't declare here for clz and ctz.
(__clzsi2, __clzdi2): Use count_leading_zeros.
(__ctzsi2, __ctzdi2): Use count_trailing_zeros.
(__popcount_tab): Mark ATTRIBUTE_HIDDEN.
(__paritysi2, __paritydi2): Use shifts instead of __popcount_tab.
* longlong.h (__clz_tab): Mark ATTRIBUTE_HIDDEN.
* optabs.c (expand_unop): Use word_mode for outmode of bit scaners.
* libgcc2.c (__ffsdi2, __clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
__popcountsi2, __popcountdi2, __paritysi2 __paritydi2): Change
return type to Wtype.
* libgcc-std.ver (GCC_3.4): Fix inheritance.
* config/i386/i386.md (ffssi2): Use nonimmediate_operand for
expander input constraint.
Ulrich Weigand [Sat, 1 Feb 2003 01:01:38 +0000 (01:01 +0000)]
reload.c (find_reloads): Do not use the mode specified in the insn pattern as reload mode for address...
gcc/
* reload.c (find_reloads): Do not use the mode specified in the insn
pattern as reload mode for address operands. Do not generate optional
reloads for operands where a mandatory reload was already pushed.
Generate optional reloads only in the final pass though find_reloads.
(have_replacement_p): New function.
Gerald Pfeifer [Fri, 31 Jan 2003 23:58:30 +0000 (00:58 +0100)]
install.texi (Testing): Remove a reference to our obsolete /testresults web pages and strip redundant...
* doc/install.texi (Testing): Remove a reference to our obsolete
/testresults web pages and strip redundant information concerning
test results.
(Binaries): Refer to Microsoft Windows instead of listing all
possible variants.
Tom Tromey [Fri, 31 Jan 2003 22:50:48 +0000 (22:50 +0000)]
jni.cc (_Jv_JNI_NewObjectArray): Check that initializer can be cast to element type.
* jni.cc (_Jv_JNI_NewObjectArray): Check that initializer can be
cast to element type.
(_Jv_JNI_SetObjectArrayElement): Check array bounds.
(_Jv_JNI_GetObjectArrayElement): Likewise.
configure.in: Adjust command to source config-ml.in to account for changes to the...
2003-01-31 Christian Cornelssen <ccorn@cs.tu-berlin.de>,
Andreas Schwab <schwab@suse.de>
* configure.in: Adjust command to source config-ml.in to account
for changes to the libffi_basedir definition.
(libffi_basedir): Remove ${srcdir} from value and include trailing
slash if nonempty.
* configure: Regenerate.
Co-Authored-By: Andreas Schwab <schwab@suse.de>
From-SVN: r62193
Tom Tromey [Fri, 31 Jan 2003 17:59:00 +0000 (17:59 +0000)]
aclocal.m4, [...]: Rebuilt.
* aclocal.m4, configure, include/config.h.in: Rebuilt.
* acinclude.m4 (CHECK_FOR_BROKEN_MINGW_LD): Resurrected; was in
aclocal.m4 and lost in some merge.
Danny Smith [Fri, 31 Jan 2003 07:33:56 +0000 (07:33 +0000)]
timevar.c (getrusage): Don't ever declare if not HAVE_GETRUSAGE.
* timevar.c (getrusage): Don't ever declare if not HAVE_GETRUSAGE.
(times): Don't ever declare if not HAVE_TIMES.
(clock): Don't ever declare if not HAVE_CLOCK.
flow.c (update_life_info): Zap life info after cleanup_cfg.
* flow.c (update_life_info): Zap life info after cleanup_cfg.
(regno_uninitialized): Use correct live at function entry set.
(regno_clobbered_at_setjmp): Likewise.
* gengtype.c (struct walk_type_data): Add needs_cast_p.
(walk_type): Set needs_cast_p in walk_type_data.
(write_types_process_field): Supply casts when required to suppress
warnings.
(write_root): Cast gt_pch_n_S to suppress warning.
* Makefile.in: Remove -Wno-error from gtype-desc.o and c-decl.o.
* cp/Make-lang.in: Remove -Wno-error from cp/decl.o.
* config/rs6000/rs6000.c (print_operand): Mask off high bits only
when they might exist.
* config/rs6000/t-rs6000: Remove -Wno-error from varasm.o,
insn-conditions.o, and rs6000.o.
Jeff Sturm [Thu, 30 Jan 2003 23:20:45 +0000 (23:20 +0000)]
natClass.cc (initializeClass): Check tables when (state == JV_STATE_IN_PROGRESS).
* java/lang/natClass.cc (initializeClass): Check tables when
(state == JV_STATE_IN_PROGRESS).
(_Jv_GetInterfaces): Use _Jv_WaitForState to link interface.
* java/lang/natClassLoader.cc (_Jv_WaitForState): Handle
interpreted classes.
(linkClass0): Use _Jv_WaitForState.
* ggc-page.c (G.context_depth_allocations): New.
(G.context_depth_collections): New.
(alloc_page): Set G.context_depth_allocations.
(ggc_collect): Set G.context_depth_collections.
(ggc_push_context): Limit to HOST_BITS_PER_LONG contexts.
(ggc_pop_context): Early exit for no allocations or collections.
Mark Mitchell [Thu, 30 Jan 2003 16:02:58 +0000 (16:02 +0000)]
class.c (check_field_decls): Only check C_TYPE_FIELDS_READONLY for class types.
* class.c (check_field_decls): Only check C_TYPE_FIELDS_READONLY
for class types.
* cp-tree.h (C_TYPE_FIELDS_READONLY): Use a lang-specific bit
rather than TYPE_LANG_FLAG_0.
(TYPE_BUILT_IN): Remove.
(TYPE_DEPENDENT_P): New macro.
(TYPE_DEPENDENT_P_VALID): Likewise.
(lang_type_class): Add fields_readonly.
* decl.c (record_builtin_type): Don't set TYPE_BUILT_IN.
* pt.c (dependent_type_p_r): New function, split out from ...
(dependent_type_p): ... here. Memoize results.
* search.c (dependent_base_p): Use dependent_type_p, not
uses_template_parms.
* typeck.c (build_modify_expr): Only check C_TYPE_FIELDS_READONLY
for class types.
Kazu Hirata [Thu, 30 Jan 2003 15:36:19 +0000 (15:36 +0000)]
h8300-protos.h: Update the prototype for compute_plussi_cc.
* config/h8300/h8300-protos.h: Update the prototype for
compute_plussi_cc.
(cpp_reader): Declare before it is used.
* config/h8300/h8300.c (compute_plussi_cc): Change the return
type to int.
* config/h8300/h8300.md (monitor_prologue): Call abort() if we
see an unknown H8 variant.
PR target/9316
* config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC.
* config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC.
* config/rs6000/t-rtems: New file. multilib variants to match OS.
* config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of
rs6000/t-ppcgas so we get the desired multilibs.
Alexandre Oliva [Thu, 30 Jan 2003 11:52:51 +0000 (11:52 +0000)]
config.if: If gcc_version is already set, just use it.
* config.if: If gcc_version is already set, just use it. Don't set
gcc_version_trigger if it's already set, otherwise set it to
gcc/version.c, but only if the file exists. If it is not set and
gcc/version.c does not exist, try to extract the version number from
$CC.
Mark Mitchell [Thu, 30 Jan 2003 07:24:02 +0000 (07:24 +0000)]
c-common.c (builtin_define_float_constants): Define __<TYPE>_HAS_INFINITY__ and __<TYPE>_HAS_QUIET_NAN__.
* c-common.c (builtin_define_float_constants): Define
__<TYPE>_HAS_INFINITY__ and __<TYPE>_HAS_QUIET_NAN__.
* call.c (build_field_call): Use build_new_op, not build_opfncall.
(prep_operand): New function.
(build_new_op): Use it. Remove dead code.
* class.c (pushclass): Change "modify" parameter type from int to
bool.
(currently_open_class): Use same_type_p, not pointer equality.
(push_nested_class): Adjust calls to pushclass, remove modify
parameter.
* cp-tree.h (INTEGRAL_OR_ENUMERATION_TYPE_P): New macro.
(pushclass): Change prototype.
(push_nested_class): Likewise.
(grokoptypename): Remove.
(build_opfncall): Remove.
(value_dependent_expression_p): Declare.
(resolve_typename_type): Likewise.
(resolve_typename_type_in_current_instantiation): Likewise.
(enter_scope_of): Remove.
(tsubst): Remove.
(tsubst_expr): Likewise.
(tsubst_copy): Likewise.
(tsubst_copy_and_build): Likewise.
* decl.c (warn_about_implicit_typename_lookup): Remove.
(finish_case_label): Return error_mark_node for erroneous labels.
(start_decl): Adjust calls to push_nested_class.
(grokfndecl): Call push_scope/pop_scope around call to
duplicate_decls.
(grokdeclarator): Do not call tsubst.
(start_function): Adjust calls to push_nested_class.
* decl2.c (grok_array_decl): Use build_new_op, not build_opfncall.
(check_classfn): Use push_scope/pop_scope around type comparisions.
(grokoptypename): Remove.
(push_sscope): Adjust call to push_nested_class.
* error.c (dump_type): Show cv-qualification of typename types.
* init.c (build_member_call): Use build_new_op, not
build_opfncall.
* method.c (build_opfncall): Remove.
* parser.c (cp_parser): Add allow_non_constant_expression_p and
non_constant_expression_p.
(cp_parser_constant_expression): Adjust prototype.
(cp_parser_resolve_typename_type): Remove.
(cp_parser_non_constant_expression): New function.
(cp_parser_non_constant_id_expression): Likewise.
(cp_parser_new): Set allow_non_constant_expression_p and
non_constant_expression_p.
(cp_parser_primary_expression): Reject `this' and `va_arg' in
constant-expressions. Note that dependent names aren't really
constant.
(cp_parser_postfix_expression): Reject conversions to non-integral
types in constant-expressions. Neither are increments or
decrements.
(cp_parser_unary_expression): Reject increments and decrements in
constant-expressions.
(cp_parser_direct_new_declarator): Adjust call to
cp_parser_constant_expression.
(cp_parser_cast_expression): Reject conversions to non-integral
types in constant-expressions.
(cp_parser_assignment_expression): Rejects assignments in
constant-expressions.
(cp_parser_expression): Reject commas in constant-expressions.
(cp_parser_labeled_statement): Adjust call to
cp_parser_constant_expression.
(cp_parser_direct_declarator): Simplify array bounds, even in
templates, when they are non-dependent. Use
resolve_typename_type, not cp_parser_resolve_typename_type.
(cp_parser_class_head): Use resolve_typename_type, not
cp_parser_resolve_typename_type.
(cp_parser_member_declaration): Adjust call to
cp_parser_constant_expression.
(cp_parser_constant_initializer): Likewise.
(cp_parser_constructor_declarator): Use resolve_typename_type, not
cp_parser_resolve_typename_type.
(cp_parser_late_parsing_default_args): Adjust call to
push_nested_class.
* pt.c (tsubst): Give it internal linkage.
(tsubst_expr): Likewise.
(tsubst_copy): Likewise.
(tsubst_copy_and_build): Likewise.
(push_access_scope_real): Likewise.
(tsubst_friend_class): Likewise.
(instantiate_class_template): Adjust call to pushclass.
(value_dependent_expression_p): Give it external linkage.
Robustify.
(resolve_typename_type): New function.
* semantics.c (finish_call_expr): Use build_new_op, not
build_opfncall.
(begin_constructor_declarator): Remove.
(begin_class_definition): Adjust call to pushclass.
(enter_scope_of): Remove.
* typeck.c (comptypes): Resolve typename types as appropriate.
(build_x_indirect_ref): Use build_new_op, not build_opfncall.
(build_x_compound_expr): Likewise.
(build_modify_expr): Likewise.
(build_x_modify_expr): Likewise.
* typeck2.c (build_x_arrow): Likewise.
* g++.dg/parser/constant1.C: New test.
* include/std/std_limits.h (numeric_limits<float>::has_infinity):
Use __FLT_HAS_INIFINITY__ to initialize.
(numeric_limits<float>::has_quiet_NaN): Likewise.
(numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
to initialize.
(numeric_limits<double>::has_quiet_NaN): Likewise.
(numeric_limits<long double>::has_infinity): Use
__LDBL_HAS_INIFINITY__ to initialize.
(numeric_limits<long_double>::has_quiet_NaN): Likewise.
Loren J. Rittle [Thu, 30 Jan 2003 05:19:31 +0000 (05:19 +0000)]
Make-lang.in (po-generated): Find the targets in $(parsedir).
* Make-lang.in (po-generated): Find the targets in $(parsedir).
Propagate change to all other rules as required.
(java/parse-scan.o): Add explicit dependency on
$(parsedir)/java/parse-scan.c .
Laurent Guerby [Thu, 30 Jan 2003 00:46:22 +0000 (00:46 +0000)]
re PR ada/8344 (mips-rtems build problem)
2003-01-29 Laurent Guerby <guerby@acm.org>
PR ada/8344
* final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
* Makefile.in: match previous change.
* Make-lang.in: match previous change.
Joel Sherrill [Wed, 29 Jan 2003 17:43:57 +0000 (17:43 +0000)]
5rosinte.ads: Add SIGXCPU.
2003-01-29 Joel Sherrill <joel@OARcorp.com>
* 5rosinte.ads: Add SIGXCPU.
* 5rtpopsp.adb: New file.
* Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
* Makefile.in: Recognize more RTEMS targets and add the RTEMS
specific file 5rtpopsp.adb.
* adaint.h: Add include of <stdio.h> when target is RTEMS. This
is likely needed for all newlib targets.
* init.c: Add RTEMS specific version of __gnat_initialize().
David Edelsohn [Wed, 29 Jan 2003 17:37:25 +0000 (17:37 +0000)]
rs6000.c (function_arg_pass_by_reference): Return true for variable sized types.
* config/rs6000/rs6000.c (function_arg_pass_by_reference):
Return true for variable sized types.
(rs6000_va_arg): Handle variable sized types passed by reference
on non-SVR4 ABI.
Richard Earnshaw [Wed, 29 Jan 2003 16:50:34 +0000 (16:50 +0000)]
arm.c (arm_legtimize_address): New function.
* arm.c (arm_legtimize_address): New function.
* arm-protos.h (arm_legtimize_address): Add prototype.
* arm.h (ARM_LEGITIMIZE_ADDRESS): Use arm_legitimize_address.
(LEGITIMIZE_ADDRESS, THUMB_LEGITIMIZE_ADDRESS): Wrap with
do ... while (0)
Joel Sherrill [Wed, 29 Jan 2003 15:01:39 +0000 (15:01 +0000)]
re PR target/9295 ([mips-rtems] config/mips/rtems.h init/fini issue)
2003-01-13 Joel Sherrill <joel@OARcorp.com>
* config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic
RTEMS code knows which C++ initialization style the toolset
configuration is using. This was tracked as PR9295.
Joel Sherrill [Wed, 29 Jan 2003 14:57:36 +0000 (14:57 +0000)]
re PR bootstrap/9293 ([m68k-elf/rtems] config/m68k/t-crtstuff bug)
2003-01-29 Joel Sherrill <joel@OARcorp.com>
* config/m68k/t-crtstuff: Replace spaces with tabs, add
$(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o.
This issue was tracked as PR9293.
Joel Sherrill [Wed, 29 Jan 2003 14:54:09 +0000 (14:54 +0000)]
re PR bootstrap/9292 (hppa1.1-rtems configurery problems)
2003-01-29 Joel Sherrill <joel@OARcorp.com>
* config.gcc (hppa1.1-rtems): Did not include t-rtems nor enable
RTEMS threads.
* config/pa/rtems.h (LIB_SPEC): Use -N when linking.
This issue was tracked as PR9292.