* calls.c (finalize_must_preallocate): New function, extracted from
expand_call.
(expand_call): Use finalize_must_preallocate.
* calls.c (store_one_arg): Mark "variable_size" as possibly unused.
From-SVN: r25407
* gjavah.c (struct namelet): New structure.
(add_namelet): New function.
(print_namelet): New function.
(print_class_decls): Use add_namelet and print_namelet to generate
namespaces and not classes.
(method_printed): New global.
(HANDLE_END_METHOD): Examine method_printed.
(print_method_info): Set method_printed when required. Print
error if function to be ignored is marked virtual. Handle $finit$
method.
(METHOD_IS_FINAL): New macro.
(print_field_info): Use it.
(HANDLE_METHOD): Clear method_printed.
(method_pass): New global.
(HANDLE_END_FIELD): Call add_class_decl on the first pass.
(process_file): Do two passes over both fields and methods.
(HANDLE_METHOD): Examine method_pass.
(root): New global.
(add_class_decl): New function.
(print_class_decls): Don't scan over entire constant pool.
From-SVN: r25403
* regclass.c (record_reg_classes, case 'p'): Set classes appropriately.
An alternative always fails if it needs a pseudo and no suitable
register class can be found.
Bootstrapped on solaris.
From-SVN: r25402
* loop.h (loop_insn_first_p): Declare.
* loop.c (loop_insn_first_p): No longer static.
* unroll.c (iteration_info) Fix comparison to
reg_iv_type->num_elements.
Before accessing reg_biv_class, check index against
max_reg_before_loop.
Fix and enable code for giv iterators.
(loop_iterations): Compare with reg_iv_type->num_elements instead
of with max_reg_before_loop.
From-SVN: r25401
Wed Feb 24 11:26:41 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
* config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't use
PIC_OFFSET_TABLE_REGNUM for register allocation when -fPIC.
From-SVN: r25397
* loop.c (libcall_other_regs): Make extern.
* rtl.h (find_last_value): Add parameter to prototype.
(libcall_other_reg): Add extern declaration.
* rtlanal.c (find_last_value): Add another parameter to allow
a definition using a hardware register to be found as well.
From-SVN: r25378
* cse.c (dump_class): New function.
(invalidate_memory): Fix typo in comment.
* function.c (temp_slot): Add an alias set field.
(assign_stack_temp): Only reuse slots if they will have the
same alias set as before.
(combine_temp_slots): Don't combine if -fstrict-aliasing;
that's unsafe.
* rtl.c (copy_rtx): Copy all the flags (in particular,
MEM_SCALAR_P).
From-SVN: r25372
Mon Feb 22 14:13:23 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
* configure.in (i[34567]86-*-linux-gnu*,
i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
fixincludes.
* configure: Rebuilt.
* fixinc.x86-linux-gnu: New script for fixing asm-statements bug
on x86 linux.
* fixinc/fixinc.x86-linux-gnu: Copy of the previous one.
* fixinc/mkfixinc.sh (i[34567]86-*-linux-gnu*,
i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
fixincludes.
From-SVN: r25370
* c-lex.c (yylex): Replace warning about integer constants being
larger than long-longs, with a warning about integer constants
being larger than the largest target integer.
From-SVN: r25364
* decl2.c (start_objects): Make file scope constructors and
destructors local to the file if ASM_OUTPUT_CONSTRUCTOR and
ASM_OUTPUT_DESTRUCTOR are defined.
From-SVN: r25354
1999-02-19 Mark Mitchell <mark@markmitchell.com>
* cp-tree.h (CLASSTYPE_METHOD_VEC): Adjust comment.
(fn_type_unification): Adjust prototype.
(lookup_fnfields_1): Declare.
* call.c (add_template_candidate_real): Adjust call to
fn_type_unification.
* class.c (add_method): Don't allow duplicate declarations of
constructors or destructors.
(resolve_address_of_overloaded_function): Remove unused variable.
Adjust call to fn_type_unification.
* decl.c (grokfndecl): Be more robust in the face of illegal
specializations.
* decl2.c (check_classfn): Remove hokey handling of member
templates.
* pt.c (determine_specialization): Improve comments. Adjust to
handle template argument deduction as per the standard.
(check_explicit_specialization): Fix comment spacing. Handle
type-conversion operators correctly. Improve error-recovery.
(fn_type_unification): Remove EXTRA_FN_ARG parameter.
(get_bindings_real): Simplify handling of static members.
* search.c (lookup_fnfields_1): Make it have external linkage.
* typeck.c (compparms): Fix comment.
(build_unary_op): Don't try to figure out which template
specialization is being referred to when when the address-of
operator is used with a template function.
From-SVN: r25347