* loop.c (check_dbra_loop): New locals jump, first_compare, and
compare_and_branch. Call get_condition to set first_compare.
Set compare_and_branch to number of compare/branch instructions.
Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
Replace '2' with compare_and_branch.
From-SVN: r19435
* decl.c (maybe_push_to_top_level): Always clear
current_template_parms and processing_template_decl.
(pushtag): Remove check of current_class_type and some comments,
since maybe_push_to_top_level no longer creates confusion.
From-SVN: r19434
Sun Apr 26 09:13:41 1998 Craig Burley <burley@gnu.org>
* libU77/hostnm_.c (G77_hostnm_0): Fix off-by-one error
that was trashing the byte just beyond the CHARACTER*(*)
argument.
From-SVN: r19429
* cp-tree.h (CLASSTYPE_IS_TEMPLATE): New macro.
(DECL_CLASS_TEMPLATE_P): Likewise.
(DECL_PRIMARY_TEMPLATE): Likewise.
(PRIMARY_TEMPLATE_P): Use it.
(push_template_decl_real): New function.
(redeclare_class_template): Take new template parameters as
input.
(is_specialization_of): New function.
(comp_template_args): Declare.
* decl.c (pushtag): Handle friend template classes.
(xref_tag): Likewise. Use new calling convention for
redeclare_class_template.
* decl2.c (grok_x_components): Handle friend templates.
* friend.c (is_friend): Use is_specialization_of where
appropriate. Deal with friend class templates.
(make_friend_class): Let a class template be friends with itself.
* pt.c (comp_template_args): Remove declaration.
(tsubst_friend_class): New function.
(push_template_decl_real): New function.
(push_template_decl): Use it.
(redeclare_class_template): Adjust for new calling convention.
(comp_template_args): Give it external linkage.
(instantiate_class_type): Use tsubst_friend_class to deal
with friend templates.
* typeck.c (comptypes): Use comp_template_args, rather than
expanding it inline.
* parse.y (component_decl): Handle a nested template type
like other component type declarations.
From-SVN: r19418
* alias.c (alias_invariant): New variable.
(record_base_value): New argument INVARIANT.
(memrefs_conflict_p): If a register has an entry in the alias_invariant
array, try substituting that value for the register.
* rtl.h: Declare record_base_value.
* loop.c, unroll.c: Update callers of record_base_value.
* alias.c (find_base_value, find_base_term): SIGN_EXTEND and
ZERO_EXTEND do not affect base values.
From-SVN: r19408
* expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
if the argument is the address of a structure or array.
* configure.in: Enable Haifa scheduler by default for SPARC.
From-SVN: r19405
d
* dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
appropriately.
(dbxout_type_method_1, dbxout_type): Likewise.
(print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
(dbxout_type): Fix check for when to print a type range in
octal vs decimal.
From-SVN: r19402
�
* dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
appropriately.
(dbxout_type_method_1, dbxout_type): Likewise.
(print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
(dbxout_type): Fix check for when to print a type range in
octal vs decimal.
From-SVN: r19401
d
* Makefile.in (libgcc2.ready): Add explicit dependancy from
$(STMP_FIXPROTO) to ensure all necessary include files have
been created and to guarantee proper parallel builds.
From-SVN: r19395
�
* Makefile.in (libgcc2.ready): Add explicit dependancy from
$(STMP_FIXPROTO) to ensure all necessary include files have
been created and to guarantee proper parallel builds.
From-SVN: r19394
* cp-tree.def: Add WRAPPER. USER_CONV now only has two ops.
* cp-tree.h: Add WRAPPER support.
* call.c (add_candidate): Split out from add_*_candidate fns.
(build_over_call): Take the candidate instead of function and args.
Enforce access control here. Emit overload warnings here.
(add_warning): New fn.
(joust): Add WARN parm. If not set, call add_warning instead of
printing a warning. Reenable some warnings.
(tourney): Pass it.
(convert_like): Adjust.
(build_new_op): Adjust.
(build_new_function_call): Adjust.
(build_user_type_conversion_1): Adjust.
(USER_CONV_FN): Adjust.
* tree.c (build_expr_wrapper, build_expr_ptr_wrapper,
build_int_wrapper): New fns.
From-SVN: r19393