Commit Graph

17810 Commits

Author SHA1 Message Date
Jeff Law
3192f02483 i386.md (movqi): When optimizing a load of (const_int 1) into a NON_QI_REG_P...
�
        * i386.md (movqi): When optimizing a load of (const_int 1) into a
        NON_QI_REG_P, pretend the register is SImode.
Fixes minor egcs-1.1 regression.

From-SVN: r21489
1998-07-29 18:00:16 -06:00
Manfred Hollstein
0ce065bdf6 configure: Fix --without/--disable cases for gxx-include-dir.
1998-07-29  Manfred Hollstein  <manfred@s-direktnet.de>
	* configure: Fix --without/--disable cases for gxx-include-dir.

From-SVN: r21486
1998-07-29 17:13:57 -06:00
Todd Vierling
58600d2429 configure.in: Use xm-netbsd.h as the NetBSD xm file (not xm-siglist).
* configure.in: Use xm-netbsd.h as the NetBSD xm file (not xm-siglist).
        Accept arm32 as arm, m68k4k as m68k, mipsle as mips-dec, and any
        manufacturer id for ns32k.
        * configure: Regenerated.
        * config/netbsd.h: When using ASM_WEAKEN_LABEL, make it global too.
        * config/t-netbsd: Don't compile libgcc1-test as the fns are in libc.
        * config/i386/netbsd.h: Undefine DWARF2_UNWIND_INFO, not define as 0.
        * config/m68k/netbsd.h: Same.
        * config/ns32k/netbsd.h: Same.
        * config/sparc/netbsd.h: Same.

From-SVN: r21480
1998-07-29 16:51:47 -06:00
Jeff Law
15fec413e7 unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO or UNROLL_COMPLETELY loop that starts with a...
P
        * unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO
        or UNROLL_COMPLETELY loop that starts with a jump to its
        exit code.

From-SVN: r21476
1998-07-29 15:41:04 -06:00
Jeff Law
47d41103c5 unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO or UNROLL_COMPLETELY loop that starts with a...
�
        * unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO
        or UNROLL_COMPLETELY loop that starts with a jump to its
        exit code.

From-SVN: r21475
1998-07-29 15:41:01 -06:00
David Edelsohn
a238cd8bd1 rs6000.md (absdi2 define_split): Swap operands of MINUS.
* rs6000/rs6000.md (absdi2 define_split): Swap operands of MINUS.
        * rs6000/rs6000.c (mask64_operand): Use HOST_BITS_PER_WIDE_INT.
        (print_operand, case 'B'): Don't fall through.
        (print_operand, case 'S'): Correct mask begin/end computation.
        Use HOST_BITS_PER_WIDE_INT.
        * rs6000/rs6000.h (CPP_PREDEFINES): Define _LONG_LONG.
        (CONDITIONAL_REGISTER_USAGE): GPR13 fixed if TARGET_64BIT.
        * rs6000/aix41.h (CPP_PREDEFINES): Same.
        * rs6000/aix43.h (CPP_PREDEFINES): Same.

From-SVN: r21474
1998-07-29 15:35:05 -04:00
Jason Merrill
19f1bd3476 decl.c (push_overloaded_decl): Use current_namespace instead of DECL_CONTEXT (decl) to determine where we go.
* decl.c (push_overloaded_decl): Use current_namespace instead of
	DECL_CONTEXT (decl) to determine where we go.

From-SVN: r21473
1998-07-29 10:56:33 -04:00
Nick Clifton
e0d75375e7 remove earlyclobber constraint from extendqisi2_insn
From-SVN: r21471
1998-07-29 14:11:16 +00:00
Jason Merrill
53fdbb3b36 * decl.c (lookup_name_real): Fix typo.
From-SVN: r21469
1998-07-29 09:05:28 -04:00
Jeff Law
53624284c6 Daily bump.
From-SVN: r21466
1998-07-28 18:45:02 -06:00
Jason Merrill
4e88d51bcd configure.in: Fix --without/--disable cases for local-prefix, gxx-include-dir and checking.
* configure.in: Fix --without/--disable cases for local-prefix,
        gxx-include-dir and checking.

From-SVN: r21464
1998-07-28 17:47:28 -06:00
Jeffrey A Law
2e18cb32cc * gcc.c-torture/compile/980729-1.c: New test.
From-SVN: r21463
1998-07-28 17:18:04 -06:00
David S. Miller
e85b2d66b0 Enable haifa for sparc64 too.
From-SVN: r21461
1998-07-28 16:13:44 -07:00
Jason Merrill
ac478ac0fd cygwin32.h (VALID_MACHINE_TYPE_ATTRIBUTE): New macro.
Tue Jul 28 23:29:04 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * i386/cygwin32.h (VALID_MACHINE_TYPE_ATTRIBUTE): New macro.
        * i386/winnt.c (associated_type): New fn.
        (i386_pe_valid_type_attribute_p): New fn.
        (i386_pe_check_vtable_importexport): Remove.
        (i386_pe_dllexport_p): Use associated_type.
        (i386_pe_dllimport_p): Likewise.
        From Antonio M. O. Neto <anmendes@cruzeironet.com.br>:
        * i386.c (i386_valid_type_attribute_p): Also accept
        attributes for METHOD_TYPEs.

From-SVN: r21456
1998-07-28 16:30:29 -06:00
Peter Gerwinski
28372f4188 tree.c (build_range_type): Copy TYPE_SIZE_UNIT.
�
        * tree.c (build_range_type): Copy TYPE_SIZE_UNIT.

From-SVN: r21455
1998-07-28 16:19:53 -06:00
Jeff Law
f4494d3838 Tweak last entry
From-SVN: r21451
1998-07-28 16:06:42 -06:00
Craig Burley
dd75c2921d gcc.c: Fix commentary describing %g, %u, %U, and %O.
d
        * gcc.c: Fix commentary describing %g, %u, %U, and %O.
        * gcc.c (do_spec_1): Fix support for %O so the
        temporary file name made for it the first time
        gets reused subsequently.

From-SVN: r21450
1998-07-28 15:33:43 -06:00
Craig Burley
e67ac8e6ee gcc.c: Fix commentary describing %g, %u, %U, and %O.
* gcc.c: Fix commentary describing %g, %u, %U, and %O.
        * gcc.c (do_spec_1): Fix support for %O so the
        temporary file name made for it the first time
        gets reused subsequently.

From-SVN: r21449
1998-07-28 15:33:41 -06:00
Mark Mitchell
8fb08bdddf friend.c (is_friend): Be lenient with member functions to deal with nested friends.
* friend.c (is_friend): Be lenient with member functions to deal
	with nested friends.

From-SVN: r21444
1998-07-28 16:50:16 +00:00
Benjamin Kosnik
9b126a1025
try 2

From-SVN: r21443
1998-07-28 14:07:12 +00:00
Benjamin Kosnik
fb3ad9b3d3
friend test

From-SVN: r21442
1998-07-28 14:06:48 +00:00
Benjamin Kosnik
e674dda9ac *** empty log message ***
From-SVN: r21441
1998-07-28 14:06:12 +00:00
Benjamin Kosnik
49e4181d22
try 1

From-SVN: r21440
1998-07-28 14:05:55 +00:00
Benjamin Kosnik
32fcacb013
try 3

From-SVN: r21439
1998-07-28 14:01:25 +00:00
Jason Merrill
282a221c4e class.c (finish_struct_1): Convert integer_zero_node to ssizetype before passing it to set_rtti_entry.
* class.c (finish_struct_1): Convert integer_zero_node to
 	ssizetype before passing it to set_rtti_entry.
	* typeck2.c (initializer_constant_valid_p): Allow conversion of 0
	of any size to a pointer.

From-SVN: r21438
1998-07-28 10:00:46 -04:00
Benjamin Kosnik
9e393e151a *** empty log message ***
From-SVN: r21436
1998-07-28 13:38:38 +00:00
Vladimir N. Makarov
1ed0205e35 cse.c (cse_insn): Enable subsitution inside libcall only for REG, SUBREG, MEM.
�
	* cse.c (cse_insn): Enable subsitution inside libcall only for REG,
	SUBREG, MEM.
	* rtlanal.c (replace_rtx): Prohibit replaces in	CONST_DOUBLE.

From-SVN: r21435
1998-07-28 12:54:04 +00:00
Mark Mitchell
4d17a06f32 cplus-dem.c (type_kind_t): New type.
* cplus-dem.c (type_kind_t): New type.
	(demangle_template_value_parm): Add type_kind_t parameter.  Rely
	on this paramter, rather than demangling the type again.
	(demangle_integral_value): Pass tk_integral.
	(demangle_template_: Pass the value returned from do_type.
	(do_type): Return a type_kind_t.  Pass tk_integral to
	demangle_template_value_parm for array bounds.
	(demangle_fund_type): Likewise.

From-SVN: r21434
1998-07-28 11:45:32 +00:00
Mark Mitchell
36a117a5b3 cp-tree.h (TI_USES_TEMPLATE_PARMS): Remove.
* cp-tree.h (TI_USES_TEMPLATE_PARMS): Remove.
	(build_template_decl_overload): Remove.
	(set_mangled_name_for_decl): New function.
	(innermost_args): Remove is_spec parameter.
	(most_specialized, most_specialized_class): Remove declarations.
	(lookup_template_class): Add entering_scope parameter.
	(maybe_process_partial_specialization): New function.
	(finish_template_decl): Likewise.
	(finish_template_type): Likewise.
	* class.c (finish_struct): Clean up processing of member template
	specializations.
	* decl.c (pushtag): Fix	formatting.
	(lookup_tag): Improve handling of pseudo-global levels.
	(make_typename_type): Adjust call to lookup_template_class.
	(shadow_tag): Use maybe_process_partial_specialization.
	(xref_tag): Improve handling of member friends.
	(start_function): Call push_nested_class before
	push_template_decl.  Don't call push_template_decl for
	specializations.
	* decl2.c (grok_x_components): Don't call xref_tag for
	template instantiations.  Handle UNION_TYPEs like RECORD_TYPEs.
	(grokclassfn): Use set_mangled_name_for_decl.
	(arg_assoc_class): Adjust call to innermost_args.
	(mark_used): Don't call instantiate_decl for a TEMPLATE_DECL.
	* error.c (dump_function_name): Improve printing of template
	function names.
	* friend.c (is_friend): Don't compare types of decls to determine
	friendship, unless flag_guiding_decls.
	(make_friend_class): Partial specializations cannot be friends.
	(do_friend): Use set_mangled_name_for_decl.  Call
	push_template_decl_real instead of push_template_decl.
	* method.c (build_decl_overload_real): Remove prototype.  Give it
	external linkage.
	(build_overload_identififer): Adjust call to innermost_args.
	(build_template_decl_overload): Remove.
	(set_mangled_name_for_decl): New function.
	* parse.y (.finish_template_type): New non-terminal.
	(template_def): Use finish_template_decl.  Use template_extdef
	instead of extdef.
	(template_extdef, template_datadef): New non-terminals, containing
	only those rules for things which can be templates.
	(datadef): Tidy.
	(template_type, self_template_type): Use .finish_template_type.
	(named_class_head): Use maybe_process_partial_specialization.
	* pt.c (mangle_class_name_for_template): Remove context parameter.
	(get_class_bindings): Remove outer_args parameter.
	(complete_template_args): Remove.
	(add_outermost_template_args): New function.
	(register_specialization): Return the specialization.
	(unregister_specialization): New function.
	(tsubst_template_parms): Likewise.
	(most_specialized, most_specialized_class): Prototype here as
	static.
	(original_template): Rename to most_general_template.
	(tsubst_template_parms): New function.
	(set_mangled_name_for_template_decl): Likewise.
	(TMPL_ARGS_DEPTH): New macro.
	(TMPL_ARGS_HAVE_MULTIPLE_LEVELS): Adjust.
	(TMPL_ARGS_LEVEL): New macro.
	(SET_TMPL_ARGS_LEVEL): Likewise.
	(TMPL_ARG): Likewise.
	(SET_TMPL_ARG): Likewise.
	(TMPL_ARGS_DEPTH): Likewise.
	(finish_member_template_decl): Use finish_template_decl.
	(maybe_process_partial_specialization): New function, split out
	from tsubst.
	(inline_needs_template_parms): Use TMPL_PARMS_DEPTH.
	(maybe_begin_member_template_processing): Use new macros.
	(is_member_template): Likewise.
	(is_member_template_class): Likewise.
	(add_to_template_args): Likewise.  Deal with multiple levels of
	args.
	(maybe_process_partial_specialization): New function.
	(retrieve_specialization): Add consistency check.
	(determine_specialization): Return full argument list.
	(check_explicit_specialization): Tweak friend handling.  Use full
	argument lists.  Simplify.
	(current_template_args): Use new macros.
	(push_template_decl_real): Change ill-named mainargs to specargs.
	Check that a partial specialization actually specializes at least
	one parameter.   Improve friend handling.  Modify for full
	template arguments.
	(classtype_mangled_name): Don't mangle the names of
	specializations.
	(lookup_template_class): Add entering_scope parameter.  Use it to
	avoid finding a template type when an instantiation is required.
	Simplify.  Use full template arguments.
	(tsubst_friend_function): Use unregister_specialization.  Use new
	macros.  Use full template arguments.
	(tsubst_friend_class): Substitute, using tsubst_template_parms,
	into the template parameters before passing them to
	redeclare_class_template.
	(instantiate_class_template): Simplify.  Use full template
	arguments.  Adjust calls to get_class_bindings.  Use
	SET_IDENTIFIER_TYPE_VALUE where needed.  Improve friend handling.
	(innermost_args): Use new macros.
	(tsubst_aggr_type): New function, split out from tsubst.
	(tsubst): Use tsubst_aggr_type, tsubst_template_parms, new calling
	conventions for lookup_tmeplate_class.  Refine handling of partial
	instantiations.   Remove calls to complete_template_args.
	Simplify.  Add consistency checks.  Use set_mangled_name_for_decl
	and set_mangled_name_for_template_decl.
	(tsubst_copy): Use tsubst_aggr_type.
	(instantiate_template): Use full template arguments.
	(more_specialized): Improve formatting.
	(more_specialized_class): Adjust calls to get_class_bindings.
	(get_bindings_real): Don't call complete_template_args.
	(most_specialized): Don't overwrite input; create a new list.
	(most_specialized_class): Use most_general_template.
	(regenerate_decl_from_template): Use unregister_specialization.
	Use full template arguments.
	(instantiate_decl): Use full template arguments.
	(set_mangled_name_for_template_decl): New function.
	* semantics.c (begin_class_definition): Use
	maybe_process_partial_specialization.
	(finish_member_class_template): New function.
	(finish_template_decl): Likewise.
	(finish_template_type): Likewise.
	(typeck.c): Don't crash after issuing a compiler_error.
	* Makefile.in (CONFLICTS): Adjust; we removed a s/r conflict.

From-SVN: r21433
1998-07-28 01:03:16 +00:00
Jeff Law
0167ae91ff Daily bump.
From-SVN: r21431
1998-07-27 18:45:03 -06:00
Jason Merrill
3551c17764 * typeck2.c (build_functional_cast): Handle default-initialization.
From-SVN: r21427
1998-07-27 17:47:41 -04:00
Jason Merrill
b3abfd6fc1 tree.c (simple_cst_equal, [...]): OK if the elts are identical.
* tree.c (simple_cst_equal, case CONSTRUCTOR): OK if the elts are
	identical.

From-SVN: r21425
1998-07-27 17:42:35 -04:00
Jeffrey A Law
198f32a6e4 * pa.c (move_operand): Accept CONSTANT_P_RTX.
From-SVN: r21423
1998-07-27 15:20:00 -06:00
Mike Stump
31e9c6ed12 * compare_tests: New script.
From-SVN: r21422
1998-07-27 15:12:03 -06:00
Alexandre Oliva
91fa313b84 * test_summary: assigned copyright to FSF
From-SVN: r21421
1998-07-27 21:01:54 +00:00
Gerald Pfeifer
59d3b2e4f1 test_summary: Corrected script name in comments providing documentation.
P
	* test_summary: Corrected script name in comments providing
	documentation.  Added linebreaks for lines with > 80 characters.

From-SVN: r21420
1998-07-27 14:37:47 -06:00
Gerald Pfeifer
18aca90238 test_summary: Corrected script name in comments providing documentation.
F
	* test_summary: Corrected script name in comments providing
	documentation.  Added linebreaks for lines with > 80 characters.

From-SVN: r21419
1998-07-27 14:37:46 -06:00
Jason Merrill
66c2127e18 * call.c (build_over_call): Pass 1 to popclass.
From-SVN: r21418
1998-07-27 13:03:39 -04:00
Jason Merrill
92ac31f12b parse.y (direct_notype_declarator): Add precedence declaration to notype_unqualified_id case.
* parse.y (direct_notype_declarator): Add precedence declaration
	to notype_unqualified_id case.
	* tree.c (ovl_member): Fix for single function in OVL.

From-SVN: r21417
1998-07-27 10:38:11 -04:00
Dave Brolley
74a4fbfcc8 stor-layout.c (layout_type): Handle arrays of bits, for Chill.
Mon Jul 27 17:18:52 1998  Dave Brolley  <brolley@cygnus.com>
	* stor-layout.c (layout_type): Handle arrays of bits, for Chill.
	* expr.c (get_inner_reference): Handle zero-based, unsigned, array
	index conversion.

From-SVN: r21416
1998-07-27 10:37:00 -04:00
Jeff Law
4944f54f41 mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
`
        * mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
        (DEBUGGER_ARG_OFFSET): Likewise.
        * mn10300.md (movsf): Remove last change.  Not needed.

From-SVN: r21415
1998-07-27 07:53:27 -06:00
Jeff Law
217b83c96a mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
* mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
        (DEBUGGER_ARG_OFFSET): Likewise.
        * mn10300.md (movsf): Remove last change.  Not needed.

From-SVN: r21414
1998-07-27 07:53:24 -06:00
Dave Brolley
45e0984cdb c-lex.c (yylex): Fix boundary conditions in character literal and string literal loops.
Mon Jul 27 14:22:36 1998  Dave Brolley  <brolley@cygnus.com>
	* c-lex.c (yylex): Fix boundary conditions in character literal and
	string literal loops.

From-SVN: r21413
1998-07-27 08:51:56 -04:00
Dave Brolley
ea6c114284 c-lex.c (yylex): Fix boundary conditions in character literal and string literal loops.
1998-07-27  Dave Brolley  <brolley@cygnus.com>
	* c-lex.c (yylex): Fix boundary conditions in character literal and
	string literal loops.

From-SVN: r21412
1998-07-27 08:37:16 -04:00
Stan Cox
84530511d2 configure.in: Added i[34567]86-*-win32.
config.sub: Ditto.
configure: Rebuilt.
longlong.h (count_leading_zeros): Sparclite scan instruction
i386.c (ix86_prologue): Added SUBTARGET_PROLOGUE invocation.
i386/cygwin32.h (STARTFILE_SPEC, LIB_SPEC, SUBTARGET_PROLOGUE): Add -pg support.
i386/win.h: New file.  Hybrid mingw32.h/cygwin32.h configuration.

From-SVN: r21411
1998-07-27 11:56:18 +00:00
Jason Merrill
cb99b4a0ce x
From-SVN: r21409
1998-07-27 07:09:14 -04:00
Jeff Law
51d68ee878 Daily bump.
From-SVN: r21404
1998-07-26 18:45:02 -06:00
Dave Love
a64d77963e 980615-0.f: New test.
1998-07-26  Dave Love  <d.love@dl.ac.uk>
	* g77.f-torture/noncompile/980615-0.f: New test.

From-SVN: r21403
1998-07-26 14:57:37 +00:00
Dave Love
19ede93469 New test.
From-SVN: r21402
1998-07-26 14:55:48 +00:00
Craig Burley
99b712ffc9 Fix 980615-0.f:
Sat Jul 25 17:23:55 1998  Craig Burley  <burley@gnu.org>
	Fix 980615-0.f:
	* stc.c (ffestc_R1229_start): Set info to ANY as well.

From-SVN: r21401
1998-07-26 14:49:27 +00:00