* function.c (assign_stack_temp_for_type): Clear best_p
when an exact match is found.
* i386.h (LOCAL_ALIGNMENT): Define.
* function.c (assign_stack_local, assign_outer_stack_local): Use it.
(assign_stack_temp_for_type): New function based on assign_stack_temp.
(assign_stack_temp): Call it.
(assign_temp): Use assign_stack_temp_for_type, not assign_stack_temp.
* stmt.c: Use assign_temp, not assign_stack_temp.
* tm.texi: Document LOCAL_ALIGNMENT.
From-SVN: r25143
* gcc.dg/special/ecos.exp: New test driver for new tests with
special requirements.
* gcc.dg/special/alias-1.c: New test.
* gcc.dg/special/gcsec-1.c: New test.
* gcc.dg/special/weak-1.c: New test.
* gcc.dg/special/weak-1a.c: Accompanying file to weak-1.c.
* gcc.dg/special/weak-2.c: New test.
* gcc.dg/special/weak-2a.c: Accompanying file to weak-2.c.
* gcc.dg/special/weak-2b.c: Accompanying file to weak-2.c.
* gcc.dg/special/wkali-1.c: New test.
* gcc.dg/special/wkali-2.c: New test.
* gcc.dg/special/wkali-2a.c: Accompanying file to wkali-2.c.
* gcc.dg/special/wkali-2b.c: Accompanying file to wkali-2.c.
From-SVN: r25139
* cp-tree.h (get_template_base): Don't declare.
(dfs_walk): Declare.
(dfs_unmark): Likewise.
(markedp): Likewise.
* pt.c (unify): Remove duplicate declaration. Pass tparms and
targs to get_template_base.
(get_template_base_recursive): Move here from search.c. Check to
see that the base found can be instantiated to form the desired
type.
(get_template_base): Likewise.
(get_class_bindings): Simplify.
* search.c (get_template_base_recursive): Move to pt.c.
(get_template_base): Likewise.
(markedp): Make it global.
(dfs_walk): Likewise.
(dfs_unmark): Likewise.
From-SVN: r25128
* cp-tree.h (get_template_base): Don't declare.
(dfs_walk): Declare.
(dfs_unmark): Likewise.
(markedp): Likewise.
* pt.c (unify): Remove duplicate declaration. Pass tparms and
targs to get_template_base.
(get_template_base_recursive): Move here from search.c. Check to
see that the base found can be instantiated to form the desired
type.
(get_template_base): Likewise.
(get_class_bindings): Simplify.
* search.c (get_template_base_recursive): Move to pt.c.
(get_template_base): Likewise.
(markedp): Make it global.
(dfs_walk): Likewise.
(dfs_unmark): Likewise.
From-SVN: r25126
* reload1.c (reload_combine_note_store): Second argument is no
longer unused/ignored. Handle multi-register hard regs.
(move2add_note_store): Simplify.
From-SVN: r25124
Tue Feb 9 19:31:09 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* lex.c (java_lang_cloneable): Initialize.
* parse.y (java_lang_cloneable): New static variable.
(qualify_ambiguous_name): Take CONVERT_EXPR into account when
doing one more qualification round.
(valid_ref_assignconv_cast_p): Reject null source or
destination. Allow an array to be cast into java.lang.Cloneable.
(patch_cast): Swapped two first arguments to first call to
valid_ref_assignconv_cast_p.
From-SVN: r25114
* cpplib.c (special_symbol): Move IP to be declared in function
scope, rather than individual case statements.
fixes building under solaris
From-SVN: r25112
1999-02-09 Jim Blandy <jimb@zwingli.cygnus.com>
* configure.in: For PowerPC configurations, accept "401", "ec603e",
"740", and "750" as valid arguments to --with-cpu.
* configure: Rebuilt.
From-SVN: r25107
* Makefile.in (REQUIRED_OFILES): remove mkstemp.o
* configure.in (funcs): Check for and conditionally add mkstemps to
the list of functions libiberty will provide.
* configure: Rebuilt.
From-SVN: r25106
This is being installed only to get it into the repository to help
with the revert, resubmit & review process for the massive rs6000.md
changes.
* rs6000.md (andsi3_internal1 splitter): Don't split if using the
rlwinm instruction.
(anddi3_internal1): Ditto.
(andsi3_internal{2,3}): Correct some insn lengths.
(anddi3*): Restore missing TARGET_POWERPC64, and don't emit old
mnemonics.
From-SVN: r25099
* loop.c (reg_single_usage): New file-scope variable ...
(scan_loop): ... moved out of here. Always initialize.
Test loop_has_call instead of reg_single_usage not zero.
Free reg_single_usage after strength reduction.
(count_loop_regs_set): Assume single_usage non-zero.
(combine_givs_used_by_other): Test reg_single_usage.
(load_mems_and_recount_loop_regs_set): Remove reg_single_usage
as a parameter. Assume non-zero.
From-SVN: r25098
1999-02-08 23:25 -0500 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu>
* cpplib.c (special_symbol): Rewrite. Don't copy things
multiple times. Handle __STDC__ specially. T_CONST
indicates a constant /string/. Don't handle T_*_TYPE and
T_SPEC_DEFINED. Use cpp_buf_line_and_col instead of
adjust_position. Determine the file buffer only if needed.
(initialize_builtins): Handle __SIZE_TYPE__,
__PTRDIFF_TYPE__, __WCHAR_TYPE__, __USER_LABEL_PREFIX__, and
__REGISTER_PREFIX__ with T_CONST special hashtab entries.
Don't provide __OBJC__; the driver does that. Provide
__STDC_VERSION__, using T_CONST. Use T_STDC for
__STDC__. Give install the length of all symbols defined.
(eval_if_expression): Drop code to insert and remove the
"defined" special symbol.
* cpplib.h: Remove SELF_DIR_DUMMY (no longer used). Remove
T_*_TYPE and T_SPEC_DEFINED from enum node_type; add T_STDC.
* cpphash.c (install): Drop the `ivalue' parameter. Constify
the `value' parameter. All callers changed.
* cpphash.h (install): Change prototype to match.
(union hashval): Remove `ival' member.
* cppexp.c (cpp_lex): Handle `defined' here.
From-SVN: r25097