Commit Graph

23170 Commits

Author SHA1 Message Date
Richard Henderson
a9b8384d6e m88k.c (m88k_builtin_saveregs): Break out the constructor code to m88k_va_start, leaving only the register spill.
* m88k.c (m88k_builtin_saveregs): Break out the constructor code
        to m88k_va_start, leaving only the register spill.
        (m88k_build_va_list): New.
        (m88k_va_start): New.
        (m88k_va_arg): New.
        * m88k.h (BUILD_VA_LIST_TYPE): New.
        (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.

From-SVN: r28287
1999-07-27 00:21:59 -07:00
Geoffrey Keating
cc95be936a Correct typo in my last change
From-SVN: r28286
1999-07-27 06:49:29 +00:00
Geoff Keating
05e4a2abdf rs6000.c (rs6000_expand_builtin_saveregs): Rename from expand_builtin_saveregs.
* config/rs6000/rs6000.c (rs6000_expand_builtin_saveregs):
	Rename from expand_builtin_saveregs.
	* config/rs6000/rs6000.c (EXPAND_BUILTIN_SAVEREGS): Change caller.

From-SVN: r28285
1999-07-27 06:34:43 +00:00
Richard Henderson
c2749e2df1 i960.c (i960_setup_incoming_varargs): Use get_varargs_alias_set for the register spill block.
* i960.c (i960_setup_incoming_varargs): Use get_varargs_alias_set
        for the register spill block.
        (i960_build_va_list): New.
        (i960_va_start): New.
        (i960_va_arg): New.
        * i960.h (BUILD_VA_LIST_TYPE): New.
        (EXPAND_BUILTIN_VA_START): New.
        (EXPAND_BUILTIN_VA_ARG): New.
        * i960.md (store_multiple): Use change_address on individul mems.

From-SVN: r28284
1999-07-26 22:53:14 -07:00
Richard Henderson
daf68dd71f builtins.c (stabilize_va_list): Don't INDIRECT_REF through an ARRAY_TYPE.
* builtins.c (stabilize_va_list): Don't INDIRECT_REF through
        an ARRAY_TYPE.
        (std_expand_builtin_va_start): Back out one word if !stdarg_p.
        (expand_builtin_va_end): Evaluate arg for side effects.
        * c-common.c (c_common_nodes_and_builtins): Construct a
        va_list_arg_type_node to handle array decomposition to pointer.

From-SVN: r28283
1999-07-26 22:43:56 -07:00
Richard Henderson
f654e52683 except.c (start_dynamic_cleanup): Use force_operand on the buffer's address.
* except.c (start_dynamic_cleanup): Use force_operand on the
        buffer's address.

From-SVN: r28282
1999-07-26 18:53:02 -07:00
Mark Mitchell
5bb2f1e705 tree.c (build_cplus_new): Adjust call to abstract_virtuals_error as per 1999-07-26 change.
* tree.c (build_cplus_new): Adjust call to abstract_virtuals_error
	as per 1999-07-26 change.

	* typeck.c (c_sizeof): Don't allow non-static data members.
	(expr_sizeof): Likewise.

From-SVN: r28280
1999-07-27 01:35:35 +00:00
Jason Merrill
4c8a3a8994 new
From-SVN: r28279
1999-07-26 21:11:10 -04:00
Jason Merrill
809a5db6e4 input.c (feed_input): Only touch lineno and input_filename if !USE_CPPLIB.
* input.c (feed_input): Only touch lineno and input_filename
	if !USE_CPPLIB.  Save the old values before setting the new ones.

From-SVN: r28278
1999-07-26 20:37:44 -04:00
Richard Henderson
cc7fd3980a c4x.h (EXPAND_BUILTIN_VA_ARG): New.
* c4x.h (EXPAND_BUILTIN_VA_ARG): New.
        * c4x.c (c4x_va_arg): New.

From-SVN: r28277
1999-07-26 16:44:33 -07:00
Jason Merrill
1946537baa input.c (feed_input): Add file, line parms.
* input.c (feed_input): Add file, line parms.
	* lex.c (begin_definition_of_inclass_inline, feed_defarg): Adjust.
	(real_yylex): Check linemode before input_redirected().

	* typeck.c (c_expand_return): Downgrade pedwarn about returning NULL
	from op new to warning.

From-SVN: r28276
1999-07-26 18:24:00 -04:00
Jason Merrill
e7f9deaeff cpplib.c (cpp_get_token): Don't return a CPP_POP if the buffer has manual_pop set.
* cpplib.c (cpp_get_token): Don't return a CPP_POP if the buffer
	has manual_pop set.

From-SVN: r28275
1999-07-26 18:01:44 -04:00
Ian Lance Taylor
e428b1a8c6 * ansidecl.h: Copy attribute support macros from egcs.
From-SVN: r28274
1999-07-26 13:22:19 -06:00
Mark Mitchell
4f8fb8c43e New test
From-SVN: r28273
1999-07-26 18:26:21 +00:00
Mark Mitchell
4143af330f cp-tree.h (ncp_convert): Rename to perform_implicit_conversion.
* cp-tree.h (ncp_convert): Rename to perform_implicit_conversion.
	* call.c: All uses changed.
	* typeck.c: Likewise.

From-SVN: r28272
1999-07-26 18:12:16 +00:00
Nathan Sidwell
8bc6495183 exception.cc (__cplus_type_matcher): Match __eh_matcher prototype.
* exception.cc (__cplus_type_matcher): Match __eh_matcher
	prototype.

From-SVN: r28271
1999-07-26 18:00:41 +00:00
Nathan Sidwell
1652ca3e7f eh-common.h (__eh_matcher): Prototype correctly.
1999-07-26  Nathan Sidwell  <nathan@acm.org>

	* eh-common.h (__eh_matcher): Prototype correctly.

From-SVN: r28270
1999-07-26 18:00:03 +00:00
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