Commit Graph

23103 Commits

Author SHA1 Message Date
Ian Lance Taylor
652374d338 splay-tree.c (splay_tree_insert): Add initialization to avoid warning.
* splay-tree.c (splay_tree_insert): Add initialization to avoid
        warning.

From-SVN: r28269
1999-07-26 11:57:25 -06:00
Philip Blundell
4bdc1ac79d Apply Philip Blundell <pb@nexus.co.uk>'s patch to add PIC support to the Thumb.
From-SVN: r28268
1999-07-26 16:35:08 +00:00
Zack Weinberg
3a27d5755d Update my email address
From-SVN: r28267
1999-07-26 16:31:02 +00:00
Andrew Haley
63063278a7 initfini.c (__init): Use a full word immediate for __fini...
1999-07-26  Andrew Haley  <aph@cygnus.com>

	* config/m32r/initfini.c (__init): Use a full word immediate for
	__fini: this allows it to be placed in any memory region.

	* config/m32r/t-m32r: Compile crtinit.o and crtfini.o for
	-mmodel=medium.  This is OK for all memory models.

From-SVN: r28266
1999-07-26 12:19:16 +00:00
Nick Clifton
dd18ae5606 Replace %R%s with %r
From-SVN: r28264
1999-07-26 10:59:55 +00:00
Nick Clifton
fe0503eabf Implement new macro: ASM_FPRINTF_EXTENSIONS
From-SVN: r28263
1999-07-26 09:25:29 +00:00
Mark Mitchell
a7a64a77ef cp-tree.h (CP_INTEGRAL_TYPE_P): New macro.
* cp-tree.h (CP_INTEGRAL_TYPE_P): New macro.
	(ARITHMETIC_TYPE_P): Adjust definition for standard conformance.
	(strip_top_quals): Declare.
	(ncp_convert): Likewise.
	(type_after_usual_arithmetic_converions): Likewise.
	(composite_pointer_type): Likewise.
	* call.c (strip_top_quals): Don't make it static.
	(promoted_arithmetic_type_p): New function.
	(conditional_conversion): Likewise.
	(null_ptr_cst_p): Allow `false' as a NULL pointer constant.
	(standard_conversion): Use same_type_p.  Don't build BASE_CONVs
	for converting a type to itself.
	(reference_binding): Honor LOOKUP_NO_TEMP_BIND.
	(implicit_conversion): Make sure the from and to types are
	complete.
	(add_builtin_candidate): Correct handling of ?: operator.
	(add_builtin_candidates): Improve documentation.
	(build_conditional_expr): New function.
	(can_convert): Implement in terms of can_convert_arg.
	(ncp_convert): New function.
	* typeck.c (type_after_usual_arithmetic_conversions): New
	function, split out from common_type.
	(composite_pointer_type): New function, split out from
	build_conditional_expr.
	(common_type): Use type_after_usual_arithmetic_conversions.
	Remove redundant attribute merging.
	(comptypes): Tidy.  Handle COMPLEX_TYPE.
	(build_binary_op_nodefault): Use null_ptr_cst_p.
	(build_conditional_expr): Remove.
	(convert_for_assignment): Use new conversion functions.

	* cp-tree.h (abstract_virtuals_error): Change declaration.
	* typeck2.c (abstract_virtuals_error): Check to see if an error
	ocurred, and return a boolean value accordingly.
	(build_functional_cast): Adjust accordingly.
	* class.c (finish_struct_1): Likewise.
	* cvt.c (ocp_convert): Likewise.
	* decl.c (cp_finish_decl): Likewise.
	(grokparams): Likewise.
	(grok_op_properties): Likewise.
	(start_function): Likewise.
	* init.c (build_new_1): Likewise.

	* pt.c (unify): Don't get confused by pointers-to-member functions.

	* search.c (build_cplus_new): Robustify.

From-SVN: r28262
1999-07-26 08:18:19 +00:00
Jeff Law
5cabd6f5f4 Daily bump.
From-SVN: r28261
1999-07-26 01:45:38 -06:00
Richard Henderson
0174469a67 i860.h (EXPAND_BUILTIN_SAVEREGS): New.
* i860.h (EXPAND_BUILTIN_SAVEREGS): New.
        (BUILD_VA_LIST_TYPE): New.
        (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.
        * i860.c (output_delayed_branch): Disable.
        (output_delay_insn): Likewise.
        (i860_saveregs): New.
        (i860_build_va_list): New.
        (i860_va_start): New.
        (i860_va_arg): New.
        * i860.md: Disable all peepholes using output_delayed_branch.
        * i860/sysv4.h (I860_SVR4_VA_LIST): New.

From-SVN: r28259
1999-07-26 00:04:47 -07:00
Richard Henderson
eb11a47347 Update copyright.
From-SVN: r28258
1999-07-25 23:49:13 -07:00
Richard Henderson
bffe09ecf9 clipper.h (EXPAND_BUILTIN_SAVEREGS): Remove argument.
* clipper.h (EXPAND_BUILTIN_SAVEREGS): Remove argument.
        (BUILD_VA_LIST_TYPE): New.
        (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.
        * clipper.c (clipper_builtin_saveregs): Only dump registers.
        Return the address of the save area.
        (clipper_build_va_list): New.
        (clipper_va_start): New.
        (clipper_va_arg): New.

From-SVN: r28257
1999-07-25 23:48:07 -07:00
Richard Henderson
965eb47478 arc.h (EXPAND_BUILTIN_VA_START): New.
* arc.h (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.
        * arc.c (arc_setup_incoming_varargs): Set alias set of
        varargs save area.
        (arc_va_start): New.
        (arc_va_arg): New.

From-SVN: r28254
1999-07-25 23:37:29 -07:00
Jeffrey A Law
80c83e6322 svr4.h (CTORS_SECTION_ASM_OP): Do not emit directives in column zero.
* config/svr4.h (CTORS_SECTION_ASM_OP): Do not emit directives in
        column zero.
        (DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): Likewise.
        (FINI_SECTION_ASM_OP, ASM_OUTPUT_SECTION_NAME): Likewise.

From-SVN: r28253
1999-07-26 00:07:02 -06:00
Richard Henderson
63966b3bc6 alpha.h (EXPAND_BUILTIN_SAVEREGS): Delete.
* alpha.h (EXPAND_BUILTIN_SAVEREGS): Delete.
        (BUILD_VA_LIST_TYPE): New.
        (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.
        * alpha.c (alpha_builtin_saveregs): Delete.
        (alpha_build_va_list): New.
        (alpha_va_start): New.
        (alpha_va_arg): New.

From-SVN: r28252
1999-07-25 22:48:39 -07:00
Geoffrey Keating
820964cd73 Add myself to list, check write access
From-SVN: r28251
1999-07-26 04:27:09 +00:00
Jeffrey A Law
1e1ec63328 gcc.texi: More changes related to list conversion.
* gcc.texi: More changes related to list conversion.
        * invoke.texi: Likewise.

From-SVN: r28250
1999-07-25 21:59:19 -06:00
Jeffrey A Law
0e8b618835 * README: More listname related changes.
From-SVN: r28249
1999-07-25 21:58:29 -06:00
Bryce McKinlay
41296e2a23 natString.cc (substring): optimize where substring is entire String.
1999-07-22  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/lang/natString.cc (substring): optimize where substring is
	entire String.
	* java/io/File.java (getName): don't return separator with file name.
	* java/io/natFile.cc (attr): fix overflow.

From-SVN: r28246
1999-07-26 03:51:44 +01:00
Richard Henderson
648d2ffce8 m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.
* m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.
        * m88k.h, m88k.c: Likewise.
        * mn10300.h, mn10300.c: Likewise.
        * pa.h, pa.c: Likewise.
        * rs6000.h, rs6000.c: Likewise.
        * sh.h, sh.c: Likewise.
        * sparc.h, sparc.c: Likewise.

From-SVN: r28245
1999-07-25 18:21:59 -07:00
Richard Henderson
5379f4a4c4 Rebuild.
From-SVN: r28244
1999-07-25 18:21:24 -07:00
Richard Henderson
d3707adb79 builtins.c (expand_builtin_saveregs): Remove static, remove exp and ignore arguments, bail if no EXPAND_BUILTIN_SAVEREGS.
* builtins.c (expand_builtin_saveregs): Remove static, remove exp
        and ignore arguments, bail if no EXPAND_BUILTIN_SAVEREGS.
        (expand_builtin_next_arg): Accept ARGLIST not EXP.
        (stabilize_va_list): New function.
        (std_expand_builtin_va_start): New function.
        (expand_builtin_va_start): New function.
        (get_varargs_alias_set): New function.
        (std_expand_builtin_va_arg): New function.
        (expand_builtin_va_arg): New function.
        (expand_builtin_va_end): New function.
        (expand_builtin_va_copy): New function.
        (expand_builtin): Call them.
        * c-common.c (c_common_nodes_and_builtins): Build __builtin_va_list,
        __builtin_{varargs_start,stdarg_start,end,copy}.
        (build_va_arg): New function.
        * c-common.h (CTI_PTR_TYPE, ptr_type_node): Delete.
        (build_va_arg): Declare.
        * c-decl.c (ptr_type_node, va_list_type_node): New.
        * c-parse.gperf (__builtin_va_arg): New.
        * c-parse.in (VA_ARG): New token.
        (unary_expr): Recognize it.
        * expr.c (expand_expr): Expand VA_ARG_EXPR.
        * expr.h (std_expand_builtin_va_start): Declare.
        (std_expand_builtin_va_arg): Declare.
        (expand_builtin_va_arg): Declare.
        (get_varargs_alias_set): Declare.
        * tree.def (VA_ARG_EXPR): New.
        * tree.h (BUILT_IN_VARARGS_START): New.
        (BUILT_IN_STDARG_START, BUILT_IN_VA_END): New.
        (ptr_type_node, va_list_type_node): Declare.
        * tm.texi (EXPAND_BUILTIN_SAVEREGS): Kill unused ARGLIST argument.
        * m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.
        * m88k.h, m88k.c: Likewise.
        * mn10300.h, mn10300.c: Likewise.
        * pa.h, pa.c: Likewise.
        * rs6000.h, rs6000.c: Likewise.
        * sh.h, sh.c: Likewise.
        * sparc.h, sparc.c: Likewise.

        * emit-rtl.c (operand_subword): Copy alias set.
        (change_address): Likewise.

From-SVN: r28243
1999-07-25 18:21:03 -07:00
Richard Henderson
4a4b0aa39e decl.c (ptr_type_node, [...]): New.
* decl.c (ptr_type_node, va_list_type_node): New.
        * gxx.gperf (__builtin_va_arg): New.
        * parse.y (VA_ARG): New token.
        (unary_expr): Recognize it.

From-SVN: r28242
1999-07-25 18:19:44 -07:00
Richard Henderson
88c7af34ac com.c (ptr_type_node, [...]): New.
* com.c (ptr_type_node, va_list_type_node): New.
        (ffecom_init_0): Init and use ptr_type_node.

From-SVN: r28241
1999-07-25 18:19:16 -07:00
Richard Henderson
8824cf7e49 * decl.c (va_list_type_node): New.
From-SVN: r28240
1999-07-25 18:19:02 -07:00
Jeffrey A Law
fcd2e40223 g++FAQ.texi: Deleted per Joe Buck's request.
* g++FAQ.texi: Deleted per Joe Buck's request.
        * Makefile.in: Corresponding changes.

From-SVN: r28238
1999-07-25 15:26:16 -06:00
Jeffrey A Law
0a35e2fdec pa.c (compute_frame_size): Scan all the used callee saved registers, not just the first one.
* pa.c (compute_frame_size): Scan all the used callee saved registers,
        not just the first one.

From-SVN: r28237
1999-07-25 15:10:31 -06:00
Anthony Green
6c9c5c1f7a gjavah.c (print_stub): New function.
* gjavah.c (print_stub): New function.
        (METHOD_IS_NATIVE): New macro.
        (print_mangled_classname): Make static.
        (HANDLE_END_FIELD): Don't emit fields during stub generation.
        (process_file): Perform stub generation.
        (HANDLE_METHOD): Don't emit class decls during stub
        generation.
        (HANDLE_END_METHOD): Take into account stub generation.
        (print_method_info): Handle stub generation.
        (print_stub): New function.
        (print_cxx_classname): Make signature consistant with others.
        (help): Describe -stubs option.
        (main): Create stub file.
        (version): Use version.c.
        (print_full_cxx_name): New function.
        (print_c_decl): Use print_full_cxx_name.

From-SVN: r28236
1999-07-25 10:12:49 +00:00
Anthony Green
a08b508225 * mauve-libgcj: Disable Object Serialization tests.
From-SVN: r28235
1999-07-25 08:48:25 +00:00
Jeff Law
d3bd0bb70a Daily bump.
From-SVN: r28233
1999-07-25 01:45:09 -06:00
Jeff Law
2ac4184c35 Daily bump.
From-SVN: r28231
1999-07-24 01:45:11 -06:00
Jason Merrill
1ceb5ff350 lex.c: Sync with C frontend.
* lex.c: Sync with C frontend.
	(whitespace_cr): New fn.
	(skip_white_space): Use it.
	(init_parse): Reorder.
	(yyprint): Support CONSTANT.
	(pragma_getc, pragma_ungetc): Bring back.
	(read_line_number): Change in_system_header directly.
	(handle_generic_pragma, handle_cp_pragma, yyerror): Move up in file.
	(parse_float): Update to C version.
	(yylex): Handle '$' under the letter case.
	Remove looking_for_typename handling.
	Support hex floating point constants.
	Follow C's lead for choosing type of integer constants.
	Rearrange stuff to match C frontend.
	(yyungetc, reinit_parse_for_block, yylex): Support indent_level.
	* spew.c (yylex): Clear looking_for_typename if we see a TYPESPEC.

From-SVN: r28230
1999-07-23 20:45:51 -04:00
Mark Mitchell
b0385db881 call.c (reference_binding): Tweak.
* call.c (reference_binding): Tweak.
	(mayble_handle_implicit_object): Use direct_reference_binding to
	create the right implicit conversion sequence.

From-SVN: r28228
1999-07-23 20:53:54 +00:00
Philip Blundell
ed0e65302b arm.h (TARGET_SWITCHES): Add -m{no-}single-pic-base.
* config/arm/arm.h (TARGET_SWITCHES): Add
-m{no-}single-pic-base.  Correct help string for -mshort-load-words.
(TARGET_OPTIONS): Add -mpic-register=.
(ARM_FLAG_SINGLE_PIC_BASE, TARGET_SINGLE_PIC_BASE): Define.
(arm_pic_register_string): Declare.
(NEED_PLT_GOT): Delete, replace with ...
(NEED_GOT_RELOC, NEED_PLT_RELOC): ... these.  New macros.
(OUTPUT_INT_ADDR_CONST): Replace NEED_PLT_GOT with NEED_GOT_RELOC.
(ASM_OUTPUT_MI_THUNK): Replace NEED_PLT_GOT with NEED_PLT_RELOC.
* config/arm/arm.c (arm_override_options): Add new option
-mpic-register=N.
(arm_pic_register_string): New variable.
(arm_finalize_pic): Respect TARGET_SINGLE_PIC_BASE.
(output_func_prologue): If TARGET_SINGLE_PIC_BASE, treat the PIC
register as never live.  Use NEED_PLT_RELOC not NEED_PLT_GOT.
(output_return_instruction): Likewise.
* config/arm/elf.h (NEED_PLT_GOT): Delete, replace with ...
(NEED_GOT_RELOC, NEED_PLT_RELOC): ... these.  Define to flag_pic.
* config/arm/arm.md: Use NEED_PLT_RELOC in place of NEED_PLT_GOT.

* invoke.texi (ARM Options): Fix spelling.  Remove duplicate
mention of -msched-prolog.  Document new options -msingle-pic-base
and -mpic-register=.

From-SVN: r28227
1999-07-23 13:19:49 +00:00
Jeff Law
59ba45cdbf Daily bump.
From-SVN: r28225
1999-07-23 01:45:08 -06:00
Mark Mitchell
638dd8fc32 pt.c (convert_nontype_argument): Don't call decl_constant_value if we're converting to a reference type.
* pt.c (convert_nontype_argument): Don't call decl_constant_value
	if we're converting to a reference type.

From-SVN: r28224
1999-07-23 04:32:17 +00:00
Richard Henderson
19699da404 haifa-sched.c (reemit_notes): Tidy.
* haifa-sched.c (reemit_notes): Tidy.
        * sched.c (reemit_notes): Duplicate 1998-08-31 patch to
        haifa's routine.

From-SVN: r28223
1999-07-22 18:26:40 -07:00
Richard Henderson
7e4ce834b2 explow.c (trunc_int_for_mode): New function.
* explow.c (trunc_int_for_mode): New function.
        (plus_constant_wide): Use it.
        * combine.c (simplify_and_const_int): Likewise.
        (merge_outer_ops): Likewise.
        (simplify_shift_const): Likewise.
        * cse.c (simplify_unary_operation): Likewise.
        (simplify_binary_operation): Likewise.
        * emit-rtl.c (operand_subword): Likewise.
        * rtl.h: Declare it.

From-SVN: r28222
1999-07-22 18:21:31 -07:00
Mark Mitchell
27b8d0cd53 call.c (NEED_TEMPORARY_P): New macro.
* call.c (NEED_TEMPORARY_P): New macro.
	(standard_conversion): Set it, for derived-to-base conversions.
	(reference_related_p): New function.
	(reference_compatible_p): Likewise.
	(convert_class_to_reference): Likewise.
	(direct_reference_binding): Likewise.
	(reference_binding): Rework for standards-compliance.
	(convert_like): Adjust accordingly.
	(maybe_handle_ref_bind): Simplify; the right conversion sequences
	are now built up in reference_binding.
	(initialize_reference): New function.
	* cp-tree.h (ICS_USER_FLAG): Document.
	(ICS_THIS_FLAG): Likewise.
	(ICS_BAD_FLAG): Likewise.
	(NEED_TEMPORARY_P): Likewise.
	(cp_lvalue_kind): New type.
	(real_lvalue_p): Return it.
	* error.c (dump_expr): Provide more accurate representation for
	AGGR_INIT_EXPRs.
	* init.c (expand_default_init): Do not try to perform implicit
	conversions for a brace-enclosed initializer.
	* search.c (lookup_conversions): Document.
	* tree.c (lvalue_p_1): Return a cp_lvalue_kind.  Calculate
	appropriately.
	(real_lvalue_p): Adjust accordingly.
	(lvalue_p): Likewise.
	(build_cplus_new): Don't allow the creation of an abstract class.
	* typeck.c (convert_for_initialization): Use initialize_reference.

From-SVN: r28221
1999-07-23 01:01:16 +00:00
Alexandre Petit-Bianco
ac1d97ceb6 re GNATS gcj/14 (Conditional expression in method call doesn't compile)
Thu Jul 22 12:41:12 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* check-init.c (check_init): Handle MAX_EXPR.

(Fix to net PR #14.)

From-SVN: r28220
1999-07-22 12:29:56 -07:00
Bernd Schmidt
5f5780e6ad Fix a typo in arm_print_operand.
From-SVN: r28219
1999-07-22 13:40:14 +00:00
Nick Clifton
67ebece1ad revert previous delta
From-SVN: r28218
1999-07-22 12:11:43 +00:00
Bernd Schmidt
28f4ec01e9 Break out builtin function expansion from expr.c
From-SVN: r28217
1999-07-22 11:04:58 +00:00
Vladik Goytin
89d68df8d6 Vladik Goytin (goytin@yahoo.com)
Define (ASM_OUTPUT_SECTION_NAME): Support section attribute for the target
'arm-semi-aout' for the sections .text and .data only.

From-SVN: r28216
1999-07-22 09:20:49 +00:00
Jeff Law
b698aafec8 Daily bump.
From-SVN: r28214
1999-07-22 01:45:13 -06:00
Mark Mitchell
b366352bbd defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.
* defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.
	* tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it.
 	* dwarf2out.c (dwarf2out_init): Don't output a label to mark the
 	start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is
	false.
	* config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL):
	Define to zero.

From-SVN: r28213
1999-07-22 02:16:55 +00:00
Michael Meissner
a6c7a886f4 Print the names of the hardcoded virtural registers
From-SVN: r28212
1999-07-21 23:53:09 +00:00
Andrew Haley
d342a2e1eb prims.cc (JvRunMain): Always initialize arithexception.
1999-07-19  Andrew Haley  <aph@cygnus.com>

        * prims.cc (JvRunMain): Always initialize arithexception.
        (_Jv_divI): New function.
        (_Jv_remI): New function.
        (_Jv_divJ): New function.
        (_Jv_remI): New function.
        * include/jvm.h: Add these new functions.

        Makefile.am: add DIVIDESPEC.
        aclocal.m4: ditto.
        configure.host: set DIVIDESPEC.
        libgcj.spec.in: pass DIVIDESPEC to compiler.
        configure: rebuilt.
        Makefile.in: rebuilt.

From-SVN: r28211
1999-07-21 15:11:56 +00:00
Nick Clifton
9daca635ba Fix typo in previous delta
From-SVN: r28210
1999-07-21 15:09:36 +00:00
Andrew Haley
0b094f655a lang.c (flag_use_divide_subroutine): New variable.
1999-07-15  Andrew Haley  <aph@cygnus.com>

        * lang.c (flag_use_divide_subroutine): New variable.
        * typeck.c: (convert_ieee_real_to_integer): Bounds check
        fp-to-integer conversion.
        (convert): Call convert_ieee_real_to_integer when flag_fast_math
        is not set.

        * expr.c (build_java_soft_divmod): New function.
        (build_java_binop): Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.
        * decl.c: soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (init_decl_processing) Initialize the new builtins.
        * java-tree.h soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (build_java_soft_divmod): New function.
        * parse.y: Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.
        * parse.c: Rebuilt.

        * jvspec.c (lang_specific_driver): Always allow an extra arg (for
        a --specs= arg) even if not linking.
        * lang-options.h (DEFINE_LANG_NAME ("Java")): Add
        -fuse-divide-subroutine

From-SVN: r28209
1999-07-21 14:51:24 +00:00
Andrew Haley
aa4759c11c lang.c (flag_use_divide_subroutine): New variable.
1999-07-15  Andrew Haley  <aph@cygnus.com>

        * lang.c (flag_use_divide_subroutine): New variable.
        * typeck.c: (convert_ieee_real_to_integer): Bounds check
        fp-to-integer conversion.
        (convert): Call convert_ieee_real_to_integer when flag_fast_math
        is not set.

        * expr.c (build_java_soft_divmod): New function.
        (build_java_binop): Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.
        * decl.c: soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (init_decl_processing) Initialize the new builtins.
        * java-tree.h soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (build_java_soft_divmod): New function.
        * parse.y: Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.

From-SVN: r28208
1999-07-21 14:28:33 +00:00