Commit Graph

57209 Commits

Author SHA1 Message Date
Andrew Haley
bfb7b17224 re PR java/14581 (gcj internal error: Segmentation fault involving switch to a final var)
2004-03-15  Andrew Haley  <aph@redhat.com>

        PR java/14581
        * parse.y (java_complete_lhs): Check that final variable has an
        initializer.

From-SVN: r79505
2004-03-15 17:56:14 +00:00
Mark Mitchell
625cbf9318 re PR c++/14550 (trouble with pointers in templates)
PR c++/14550
	* parser.c (cp_parser_non_integral_constant_expression): Encode
	more of the idiom that surrounded calls to this function within
	the function itself
	(cp_parser_primary_expression): Adjust accordingly.
	(cp_parser_postfix_expression): Likewise.
	(cp_parser_unary_expression): Likewise.
	(cp_parser_cast_expression): Likewise.
	(cp_parser_assignment_expression): Likewise.
	(cp_parser_expression): Likewise.
	(cp_parser_new_expression): Note that new-expressions are not
	allowed in integral constant expressions.
	(cp_parser_delete_expression): Likewise.

	PR c++/14550
	* g++.dg/parse/template14.C: New test.

From-SVN: r79498
2004-03-15 16:16:18 +00:00
Paul Brook
983e64842f * config/arm/arm.c (thumb_expand_prologue): Tie prologue insns to fp.
From-SVN: r79496
2004-03-15 15:30:58 +00:00
Arnaud Charlet
e6f6961425 [multiple changes]
2004-03-15  Jerome Guitton  <guitton@act-europe.fr>

	* 3zsoccon.ads: Fix multicast options.

	* s-thread.ads: Move unchecked conversion from ATSD_Access to Address
	in the spec.

2004-03-15  Robert Dewar  <dewar@gnat.com>

	* sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
	pragma used for a private type.

	* lib-xref.adb (Generate_Reference): Do not generate warning if
	reference is in a different unit from the pragma Unreferenced.

	* 5vtpopde.adb: Minor reformatting
	Fix casing of To_Task_ID

	* sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
	flag if we have an unchecked conversion to an access type in the same
	unit.

2004-03-15  Geert Bosch  <bosch@gnat.com>

	* a-ngcoty.adb (Modulus): In alternate formula for large real or
	imaginary parts, use Double precision throughout.

	* a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
	we want to be able to compile run-time with -gnata for testing, but
	this may also be instantiated in user code that is compiled with -gnata.

2004-03-15  Olivier Hainque  <hainque@act-europe.fr>

	* s-stalib.ads (Exception_Code): New type, to represent Import/Export
	codes. Having a separate type for this is useful to enforce consistency
	throughout the various run-time units.
	(Exception_Data): Use Exception_Code for Import_Code.

	* s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
	Natural and Integer in various places.
	(Register_VMS_Exception): Use Base_Code_In to compute the exception code
	with the severity bits masked off.
	(Register_VMS_Exception): Handle the additional exception data pointer
	argument.

	* raise.c (_GNAT_Exception structure): Remove the handled_by_others
	component, now reflected by an exported accessor.
	(is_handled_by): New routine to compute whether the propagated
	occurrence matches some handler choice specification. Extracted out of
	get_action_description_for, and expanded to take care of the VMS
	specifities.
	(get_action_description_for): Use is_handled_by instead of an explicit
	complex condition to decide if the current choice at hand catches the
	propagated occurrence.

	* raise.h (Exception_Code): New type for C.

	* rtsfind.ads (RE_Id, RE_Unit_Table): Add
	System.Standard_Library.Exception_Code, to allow references from the
	pragma import/export expander.

	* a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
	New accessors to allow easy access to GNAT exception data
	characteristics.
	(GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
	redundant Handled_By_Others component, helper for the personality
	routine which will now be able to call the appropriate exception data
	accessor instead.

	* cstand.adb (Create_Standard): Adjust the type of the Import_Code
	component of Standard_Exception_Type to be the closest possible to
	Exception_Code in System.Standard_Library, that we cannot get at this
	point. Expand a ??? comment to notify that this type node should
	probably be rewritten later on.

	* exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
	registration call to include a pointer to the exception object in the
	arguments.

	* init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
	instead of int and explicit bitmasks.

2004-03-15  Vincent Celier  <celier@gnat.com>

	* vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
	equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.

	* a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
	longer needed now that it is in the spec of
	System.Tasking.Task_Attributes.

	* adaint.h, adaint.c: (__gnat_create_output_file): New function

	* gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =

	* g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.

	* make.adb (Gnatmake): Do not check the executable suffix; it is being
	taken care of in Scan_Make_Arg.
	(Scan_Make_Arg): Add the executable suffix only if the argument
	following -o, in canonical case, does not end with the executable
	suffix.  When in verbose mode and executable file name does not end
	with executable suffix, output the executable name, in canonical case.

	* s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
	to avoid warnings when instantiating Ada.Task_Attributes.
	Minor reformating.

	* mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
	in the correct order.

	* prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
	redirect standard output and error to a file for the invocation of the
	compiler, then read the file.

	* prj-nmsc.adb (Find_Sources): Use the Display_Value for each
	directory, instead of the Value.
	(Find_Source_Dirs): Remove useless code & comments.

2004-03-15  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
	tagged type is inherited, and the parent operation is not frozen yet,
	force generation of a freeze node for the inherited operation, so the
	corresponding dispatch entry is properly initialized.
	(Make_Predefined_Primitive_Specs): Check that return type is Boolean
	when looking for user-defined equality operation.

	* exp_ch4.adb (Expand_Composite_Equality): Check that return type is
	boolean when locating primitive equality of tagged component.

	* exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
	bit-aligned field and the right-hand side a string literal, introduce
	a temporary before expanding assignment into a loop.

	* exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
	priority in full, to ensure that any expanded subepxressions of it are
	elaborated in the scope of the init_proc.

	* exp_prag.adb (Expand_Pragma_Import): Search for initialization call
	after object declaration, skipping over code that may have been
	generated for validity checks.

	* sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
	discriminants, ignore the known discriminants of its full view, if
	any, to check legality.

	* sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
	component if type has unknown discriminants.
	(Analyze_Private_Extension_Declaration): Discriminant constraint is
	null if type has unknown discriminants.

	* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
	for end label when present.

	* s-fileio.adb (Open): When called with a C_Stream, use given name for
	temporary file, rather than an empty string.

2004-03-15  Ed Falis  <falis@gnat.com>

	* s-thread.adb: Removed, no longer used.

2004-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* decl.c (target.h): Now include.
	(gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
	in new build_pointer_from_mode calls for non-fat/non-thin pointer.
	(validate_size): For POINTER_TYPE, get smallest size permitted on
	machine.

	* fe.h: Sort Einfo decls and add Set_Mechanism.

	* Makefile.in: (LIBGNAT_SRCS): Remove types.h.
	(ada/decl.o): Depends on target.h.

	* trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
	FUNCTION_BOUNDARY; always use TYPE_ALIGN.

2004-03-15  Thomas Quinot  <quinot@act-europe.fr>

	* 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.

	* exp_ch4.adb (Expand_N_Indexed_Component): Do not call
	Insert_Dereference_Action when rewriting an implicit dereference into
	an explicit one, this will be taken care of during expansion of the
	explicit dereference.
	(Expand_N_Slice): Same. Always do the rewriting, even for the case
	of non-packed slices, since the dereference action generated by
	expansion of the explicit dereference is needed in any case.
	(Expand_N_Selected_Component): When rewriting an implicit dereference,
	analyze and resolve the rewritten explicit dereference so it is seen
	by the expander.
	(Insert_Dereference_Action): This procedure is now called only for the
	expansion of an N_Explcit_Dereference_Node. Do insert a check even for
	dereferences that do not come from source (including explicit
	dereferences resulting from rewriting implicit ones), but do not
	recursively insert a check for the dereference nodes contained within
	the check.
	(Insert_Dereference_Action): Clarify and correct comment.

From-SVN: r79494
2004-03-15 15:51:00 +01:00
Andrew Haley
0bb1600af1 re PR java/14551 (Switch w sign-extended byte and >16 labels causes error in tree.c)
2004-03-12  Andrew Haley  <aph@redhat.com>

        PR java/14551
        * typeck.c (convert): Clear TREE_OVERFLOW after an integer
        conversion.

From-SVN: r79493
2004-03-15 14:15:09 +00:00
Gabriel Dos Reis
5c3c69f4ba c-pretty-print.c (pp_c_semicolon): Fix formatting.
* c-pretty-print.c (pp_c_semicolon): Fix formatting.
	(pp_c_cv_qualifier): Document.
	(pp_c_space_for_pointer_operator): Likewise.
	(pp_c_integer_constant): Likewise.
	(pp_c_identifier): Likewise.
	(pp_c_init_declarator): Don't print function body.

From-SVN: r79492
2004-03-15 10:32:41 +00:00
Paolo Carlini
33674f003a locale_facets.tcc (money_get<>::_M_extract): Adjust the logic underlying the parsing of symbol to deal correctly with an...
2004-03-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
	Adjust the logic underlying the parsing of symbol to deal
	correctly with an optional sign component (i.e., when either
	negative_sign or positive_sign is empty)
	* testsuite/22_locale/money_get/get/char/19.cc: New.
	* testsuite/22_locale/money_get/get/wchar_t/19.cc: New.

2004-03-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
	Do not accept an incomplete currency symbol.
	* testsuite/22_locale/money_get/get/char/18.cc: New.
	* testsuite/22_locale/money_get/get/wchar_t/18.cc: New.

From-SVN: r79491
2004-03-15 09:02:30 +00:00
GCC Administrator
d08418fa77 Daily bump.
From-SVN: r79488
2004-03-15 00:16:13 +00:00
Gerald Pfeifer
238f2fefbc gcc_release (SNAPSHOTS_DIR): New variable.
* gcc_release (SNAPSHOTS_DIR): New variable.  Use it.
	(announce_snapshot): Use it.

From-SVN: r79484
2004-03-14 22:38:57 +00:00
Joseph Myers
2dd7696088 contrib.texi, [...]: Capitalize "gcc", "g++" and "g77" or mark up with appropriate markup.
* doc/contrib.texi, doc/extend.texi, doc/gcov.texi,
	doc/install.texi, doc/invoke.texi, doc/makefile.texi,
	doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize
	"gcc", "g++" and "g77" or mark up with appropriate markup.  Adjust
	wording and grammar.

From-SVN: r79482
2004-03-14 22:29:38 +00:00
Roger Sayle
ae2bcd98fa alias.c (get_alias_set): Replace calls via (*lang_hooks.foo) () with lang_hooks.foo ().
* alias.c (get_alias_set): Replace calls via (*lang_hooks.foo) ()
	with lang_hooks.foo ().
	* builtins.c (expand_builtin_va_arg): Likewise.
	* c-common.c (fname_as_string, c_common_truthvalue_conversion,
	c_common_type_for_mode, c_common_nodes_and_builtins,
	handle_mode_attribute, handle_vector_size_attribute): Likewise.
	* c-convert.c (convert): Likewise.
	* c-format.c (check_format_types): Likewise.
	* c-objc-common.c (c_tree_printer): Likewise.
	* c-typeck.c (build_unary_op, build_conditional_expr,
	build_binary_op): Likewise.
	* calls.c (try_to_integrate, expand_call,
	emit_library_call_value_1): Likewise.
	* cgraph.c (cgraph_node_name, cgraph_function_possibly_inlined_p):
	Likewise.
	* cgraphunit.c (record_call_1, cgraph_analyze_function,
	cgraph_expand_function): Likewise.
	* convert.c (convert_to_pointer, convert_to_integer): Likewise.
	* coverage.c (build_fn_info_type, build_ctr_info_type,
	build_gcov_info, create_coverage): Likewise.
	* dbxout.c (dbxout_init): Likewise.
	* diagnostic.c (diagnostic_report_current_function): Likewise.
	* dojump.c (do_jump): Likewise.
	* dwarf2out.c (dwarf2_name): Likewise.
	* except.c (init_eh): Likewise.
	* explow.c (expr_size, int_expr_size): Likewise.
	* expmed.c (make_tree, const_mult_add_overflow_p, expand_mult_add):
	Likewise.
	* expr.c (store_expr, store_constructor, safe_from_p,
	expand_expr_real, do_store_flag, try_casesi): Likewise.
	* function.c (push_function_context_to, pop_function_context_from,
	free_after_parsing, assign_stack_local_1, assign_stack_temp_for_type,
	put_var_into_stack, allocate_struct_function, current_function_name):
	Likewise.
	* integrate.c (copy_decl_for_inlining, expand_inline_function):
	Likewise.
	* langhooks.c (lhd_clear_binding_stack, write_global_declarations,
	lhd_print_error_function): Likewise.
	* opts.c (handle_option, decode_options): Likewise.
	* passes.c (open_dump_file): Likewise.
	* print-tree.c (print_node): Likewise.
	* stmt.c (expand_fixup, fixup_gotos, expand_asm_operands,
	expand_decl_cleanup, emit_case_nodes): Likewise.
	* stor-layout.c (variable_size): Likewise.
	* toplev.c (announce_function, wrapup_global_declarations,
	check_global_declarations, compile_file, default_tree_printer,
	process_options, lang_dependent_init, finalize): Likewise.
	* tree-dump.c (dequeue_and_dump): Likewise.
	* tree-inline.c (remap_decl, remap_block, copy_body_r,
	initialize_inlined_parameters, declare_return_variable,
	inlinable_function_p, expand_call_inline, optimize_inline_calls,
	walk_tree, copy_tree_r): Likewise.
	* tree-optimize.c (tree_rest_of_compilation): Likewise.
	* tree.c (decl_assembler_name, tree_size, size_in_bytes, staticp,
	unsafe_for_reeval, get_unwidened, get_narrower, get_callee_fndecl,
	variably_modified_type_p, dump_tree_statistics): Likewise.
	* varasm.c (assemble_variable, compare_constant, copy_constant,
	force_const_mem, compute_reloc_for_constant, output_constant,
	output_addressed_constants, initializer_constant_valid_p): Likewise.

From-SVN: r79481
2004-03-14 22:26:14 +00:00
Kelley Cook
89acbae0bc install.texi: Make autoconf 2.13 the exception, not the rule.
2004-03-14  Kelley Cook  <kcook@gcc.gnu.org>

	* doc/install.texi: Make autoconf 2.13 the exception, not the rule.

From-SVN: r79480
2004-03-14 22:15:13 +00:00
Gerald Pfeifer
004a835502 gcc_release (announce_snapshot): Use changedir instead of plain cd.
* gcc_release (announce_snapshot): Use changedir instead of
	plain cd.

From-SVN: r79475
2004-03-14 11:39:31 +00:00
Andreas Tobler
d01b30dcaf install.texi: Reflect autoconf and automake version for libffi.
2004-03-14  Andreas Tobler  <a.tobler@schweiz.ch>

	* doc/install.texi: Reflect autoconf and automake version for
	libffi. Update autoconf version to 2.59.

From-SVN: r79474
2004-03-14 10:34:12 +01:00
Roger Sayle
5785c7de74 fold-const.c (negate_expr, [...]): Replace calls via (*lang_hooks.foo) () with lang_hooks.foo ().
* fold-const.c (negate_expr, operand_equal_for_comparison_p,
	optimize_bit_field_compare, decode_field_reference, all_ones_mask_p,
	make_range, build_range_check, fold_range_test, unextend,
	constant_boolean_node, fold_binary_op_with_conditional_arg,
	fold_truthop, fold_mathfn_compare, fold_inf_compare,
	fold_single_bit_test, fold): Replace calls via (*lang_hooks.foo) ()
	with lang_hooks.foo ().

From-SVN: r79471
2004-03-14 01:07:16 +00:00
Richard Earnshaw
edc621221a * arm.h (EXTRA_CONSTRAINT_STR_ARM): Update comment.
From-SVN: r79468
2004-03-14 00:23:03 +00:00
GCC Administrator
db4397e7c5 Daily bump.
From-SVN: r79465
2004-03-14 00:16:14 +00:00
Andreas Tobler
406c98b264 natFileChannelPosix.cc: Implement munmap_adaptor and msync_adaptor for older POSIX_C_SOURCES specs.
2004-03-14  Andreas Tobler <a.tobler@schweiz.ch>

	* gnu/java/nio/channels/natFileChannelPosix.cc: Implement
	munmap_adaptor and msync_adaptor for older POSIX_C_SOURCES specs.
	(MappedByteBufferImpl::unmapImpl): Use munmap_adaptor.
	(MappedByteBufferImpl::forceImpl): Use msync_adptor.

From-SVN: r79462
2004-03-14 00:07:58 +01:00
Dara Hazeghi
7db956db83 * doc/install.texi: Note status of -fnew-ra.
From-SVN: r79459
2004-03-13 21:48:56 +00:00
Eric Botcazou
e6d55fd78e re PR tree-optimization/14470 ([tree-ssa] trouble with post-increment)
PR middle-end/14470
	* expr.c (store_expr): Call emit_queue before generating the move
	from the temporary to the original target.  Protect the temporary
	from emit_queue.

From-SVN: r79452
2004-03-13 18:16:14 +00:00
Jakub Jelinek
cfbab41c7d re PR target/14533 (s390x internal compiler error: in legitimize_pic_address, at config/s390/s390.c:2276)
PR target/14533
	* config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
	other than UNSPEC_GOTOFF.

	* gcc.dg/20040311-2.c: New test.

From-SVN: r79442
2004-03-13 12:22:27 +01:00
Richard Earnshaw
1e1ab407a6 arm.c (arm_legitimate_address_p): New argument, OUTER.
* arm.c (arm_legitimate_address_p): New argument, OUTER.  Pass through
to arm_legitimate_index_p.  Update all callers with SET as default
value.
(arm_legitimate_index_p): New argument, OUTER.  Restrict the index
range if OUTER is a sign-extend operation on QImode.  Correctly
reject shift operations on sign-extended QImode addresses.
(bad_signed_byte_operand): Delete.
(arm_extendqisi_mem_op): New function.
* arm.h (EXTRA_CONSTRAINT_ARM): Delete.  Replace with...
(EXTRA_CONSTRAINT_STR_ARM): ... this.  Handle extended address
constraints.
(CONSTRAINT_LEN): New.
(EXTRA_CONSTRAINT): Delete.  Replace with...
(EXTRA_CONSTRAINT_STR): ... this.
(PREDICATE_CODES): Remove bad_signed_byte_operand.
* arm.md (extendqihi_insn): Use new constraint Uq.  Rework.  Length
is now always default.
(define_splits for bad sign-extend loads): Delete.
(arm_extendqisi, arm_extendqisi_v5): Likewise.
* arm/vfp.md (arm_movsi_vfp, arm_movdi_vfp, movsf_vfp, movdf_vfp):
Rework 'U' constraint to 'Uv'.
* arm-protos.h: Remove bad_signed_byte_operand.  Add
arm_extendqisi_mem_op.
* doc/md.texi (ARM constraints): Rename VFP constraint (now Uv).
Add Uq constraint.

From-SVN: r79440
2004-03-13 11:19:23 +00:00
Alan Modra
fa78dbea45 rs6000.c (rs6000_va_arg): Replace SPLIT_COMPLEX_ARGS with targetm version.
* config/rs6000/rs6000.c (rs6000_va_arg): Replace SPLIT_COMPLEX_ARGS
	with targetm version.

From-SVN: r79437
2004-03-13 18:21:58 +10:30
Alan Modra
c53bdcf59b re PR target/14567 ([3.4 only] long double and va_arg complex args)
PR target/14567
	* config/rs6000/rs6000.h (UNITS_PER_ARG, RS6000_ARG_SIZE): Delete.
	(HARD_REGNO_MODE_OK): Disallow TFmode for fp31.
	* config/rs6000/rs6000.c (rs6000_arg_size): New function.
	Update all users of RS6000_ARG_SIZE.
	(function_arg_advance): Count fregno using mode size.
	(function_arg): Handle long double split over regs and memory.
	(function_arg_partial_nregs): Likewise.
	(rs6000_va_arg): Repackage complex args.

From-SVN: r79436
2004-03-13 17:44:12 +10:30
Benjamin Kosnik
8b0d605196 allocator: New.
2004-03-13  Benjamin Kosnik  <bkoz@redhat.com>

	* config/allocator: New.
	* config/allocator/bitmap_allocator_base.h: New.
	* config/allocator/malloc_allocator_base.h: New.
	* config/allocator/mt_allocator_base.h: New.
	* config/allocator/new_allocator_base.h: New.
	* include/bits/allocator.h: Include c++allocator.h.
	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
	* aclocal.m4: Regenerate.
	* configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
	* configure: Regenerate.
	* include/Makefile.am (host_headers_extra): Add c++allocator.h.
	* include/Makefile.in: Regenerate.
	* docs/html/configopts.html: Add enable-libstdcxx-allocator.

From-SVN: r79435
2004-03-13 06:54:25 +00:00
Dean Ferreyra
992ab1225d re PR target/14047 (__progmem__ attribute doesn't work)
PR target/14047
	* config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
	(avr_insert_attributes): Pass "attributes" to avr_progmem_p.
	* config/avr/avr-protos.h (avr_progmem_p): Change prototype.

From-SVN: r79434
2004-03-13 09:51:48 +03:00
Dean Ferreyra
427ee3601d re PR target/14047 (__progmem__ attribute doesn't work)
PR target/14047
	* config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
	(avr_insert_attributes): Pass "attributes" to avr_progmem_p.
	* config/avr/avr-protos.h (avr_progmem_p): Change prototype.

From-SVN: r79433
2004-03-13 09:43:30 +03:00
Kazu Hirata
58354fa8a1 re PR other/14544 (gcc.c-torture/execute/20040307-1.c fails on 16-bit targets)
PR other/14544
	* gcc.c-torture/execute/20040307-1.c: Remove the 24-bit
	bit-field.

From-SVN: r79427
2004-03-13 03:01:55 +00:00
GCC Administrator
ba6e856b2d Daily bump.
From-SVN: r79417
2004-03-13 00:16:13 +00:00
Benjamin Kosnik
eef56029ed allocator.h: Revert.
2004-03-12  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/allocator.h: Revert.

From-SVN: r79413
2004-03-12 23:52:08 +00:00
Paolo Carlini
d4cd08dda5 howto.html: Add entry for DR 253 [Ready].
2004-03-12  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/howto.html: Add entry for DR 253 [Ready].
	* include/bits/gslice_array.h: Add comment about DR 253.
	* include/bits/indirect_array.h: Likewise.
	* include/bits/mask_array.h: Likewise.
	* include/bits/slice_array.h: Likewise.

From-SVN: r79412
2004-03-12 23:32:03 +00:00
Jakub Jelinek
c973d557ba rs6000-protos.h (rs6000_output_dwarf_dtprel): Add prototype.
* config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Add
	prototype.
	* config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): New.
	* config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Define.

From-SVN: r79408
2004-03-12 22:52:13 +01:00
Benjamin Kosnik
ce7df2fd97 14176.cc: New.
2004-03-12  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/20_util/allocator/14176.cc: New.
	* include/ext/mt_allocator.h: Formatting fixes.

From-SVN: r79407
2004-03-12 21:11:51 +00:00
Andrew Pinski
4319ac925d host-darwin.c (darwin_rs6000_gt_pch_use_address): Use ret instead of result.
2003-03-12  Andrew Pinski  <apinski@apple.com>

        * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
        Use ret instead of result. Use addr instead of base.

From-SVN: r79404
2004-03-12 11:45:49 -08:00
David Edelsohn
bb674cef28 install.texi (*-ibm-aix*): Document assembler and achiver fixes required by libstdc++ and update...
* doc/install.texi (*-ibm-aix*): Document assembler and achiver
        fixes required by libstdc++ and update installation instructions
        for libstdc++.a.

From-SVN: r79401
2004-03-12 13:45:24 -05:00
Danny Smith
b1f123c732 winnt.c (i386_pe_strip_name_encoding_full): Strip leading '@' on fastcall symbols before stripping suffix.
* config/i386/winnt.c (i386_pe_strip_name_encoding_full): Strip
	leading '@' on fastcall symbols before stripping suffix.

From-SVN: r79400
2004-03-12 18:25:18 +00:00
Roger Sayle
67962db535 combine.c (unmentioned_reg_p): New function to check whether an expression is a "specialization" of another, i.e.
* combine.c (unmentioned_reg_p): New function to check whether an
	expression is a "specialization" of another, i.e. that there are
	no registers or memory references mentioned in the first that don't
	appear in the second.
	(unmentioned_reg_p_1): New helper subroutine of unmentioned_reg_p.
	(combine_instructions): Also try combining instructions using the
	REG_EQUAL note from a preceding log-linked instruction.

From-SVN: r79398
2004-03-12 17:38:30 +00:00
Roger Sayle
8937b6a209 * config/i386/i386.c (ix86_split_ashrdi): Optimize shift by 63.
From-SVN: r79397
2004-03-12 17:21:32 +00:00
Matt Austern
b8d5073947 Enabled linkonce support for Darwin.
* src/powerpc/darwin.S: Fix EH information so it corresponds to
	changes in EH format resulting from addition of linkonce support.
	* src/powerpc/darwin_closure.S: Likewise.

From-SVN: r79396
2004-03-12 17:19:34 +00:00
Matt Austern
4746cf8447 Enabled linkonce support for Darwin.
* target.h (struct gcc_target): New target hook, unwind_label.
	* target-def.h (TARGET_ASM_EMIT_UNWIND_LABEL): New hook.
	* output.h (default_emit_unwind_label): New function.
	* default.h (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): New macro.
	(TARGET_USES_WEAK_UNWIND_INFO): New target macro.
	(TARGET_SUPPORTS_HIDDEN): New target macro.
	* dwarf2out.c (struct dw_fde_struct): Add field for function decl
	that corresponds to this FDE.
	(FRAME_BEGIN_LABEL): Allow target to override default label.
	(output_call_frame_info): If FDEs are linknonce, then use extra
	indirection for FDE encoding, output a label for each FDE, and
	output an empty label for each function without an FDE.
	(dwarf2out_begin_prologue): Set up decl field when creating an FDE.
	* varasm.c (globalize_decl): Call ASM_MAKE_LABEL_LINKONCE for
	decls with DECL_ONE_ONLY set, if that macro is defined.
	(make_decl_one_only): Don't use DECL_COMMON if we're compiling
	for a SUPPORTS_ONE_ONLY target.
	* config/darwin-protos.h (darwin_unique_section): Declare.
	(darwin_asm_named_section): Likewise.
	(darwin_section_type_flags): Likewise.
	(darwin_non_lazy_pcrel): Likewise.
	(darwin_emit_unwind_label): Likewise.
	(darwin_make_decl_one_only): Likewise.
	* config/darwin.c (machopic_finish): Get rid of tweak that
	eliminate stubs for symbols that are defined.
	(darwin_encode_section_info): Don't treat weak functions as defined.
	(darwin_make_decl_one_only): Define.
	(darwin_asm_named_section): Likewise.
	(darwin_section_type_flags): Likewise.
	(darwin_unique_section): Likewise.
	(darwin_emit_unwind_label): Likewise.
	(darwin_non_lazy_pcrel): Likewise.
	(darwin_asm_output_dwarf_delta): Difference between two labels is
	local only if both labels are local.
	* config/darwin.h (MAKE_DECL_ONE_ONLY): Define.
	(ASM_MAKE_LABEL_LINKONCE): Likewise.
	(TARGET_SUPPORTS_HIDDEN): Likewise.
	(TARGET_USES_WEAK_UNWIND_INFO): Likewise.
	(TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): Likewise.
	(FRAME_BEGIN_LABEL): Likewise.
	(ASM_DECLARE_OBJECT_NAME): Make references to weak symbols indirect.
	(ASM_DECLARE_FUNCTION_NAME): Likewise.
	(darwin_eh_frame_section): Give __eh_frame section the coalesced flag.
	(TARGET_ASM_UNIQUE_SECTION): Define.
	(EH_FRAME_SECTION_NAME): Define.
	(EH_FRAME_SECTION_ATTR): Likewise.
	(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise.
	(TARGET_ASM_NAMED_SECTION): Likewise.
	(TARGET_SECTION_TYPE_FLAGS): Likewise.
	* doc/tm.texi: Document TARGET_USES_WEAK_UNWIND_INFO,
	TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, TARGET_SUPPORTS_HIDDEN,
	TARGET_ASM_EMIT_UNWIND_LABEL.

	* cp/decl2.c (maybe_make_one_only): Look at
	TARGET_EXPLICIT_INSTANTIATION_ONE_ONLY when deciding whether
	to make an explicit instantiation weak.
	* cp/method.c (use_thunk): Make sure we call comdat_linkage
	when appropriate.
	* cp/pt.c (do_type_instantiation): On systems where weak symbols
	don't go in a static archive's TOC, explicit instantiation of a
	class must imply *explicit* instantiation of its memeber.

From-SVN: r79394
2004-03-12 17:09:03 +00:00
Ulrich Weigand
cd33cf6e2f * gcc.dg/20040305-2.c: Add missing return statement.
From-SVN: r79387
2004-03-12 15:16:30 +00:00
Kaveh R. Ghazi
fd0c8c8d00 builtins.c (expand_builtin_mathfn): Add pow10* to the existing exp10* case.
* builtins.c (expand_builtin_mathfn): Add pow10* to the
	existing exp10* case.
	(expand_builtin): Likewise.

testsuite:
	* gcc.dg/builtins-34.c: Also check pow10*.

From-SVN: r79383
2004-03-12 13:33:42 +00:00
Paolo Carlini
e362800142 2004-03-12 Paolo Carlini <pcarlini@suse.de>
* Fix address in Steven's Changelog entry.

From-SVN: r79381
2004-03-12 12:19:28 +00:00
Eric Botcazou
79b4b7d2fd re PR bootstrap/14522 (Bad sed command in the configure script)
2004-03-12  Eric Botcazou  <ebotcazou@gcc.gnu.org>
            Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/14522
	* configure.in: Cope with shells that do not support unquoted ^
	* configure: Regenerate.

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>

From-SVN: r79380
2004-03-12 12:10:17 +00:00
Michael Koch
9eacb73bce DateFormatSymbols.java: Fixed file name in copyright.
2004-03-12  Michael Koch  <konqueror@gmx.de>

	* java/text/DateFormatSymbols.java: Fixed file name in copyright.

From-SVN: r79379
2004-03-12 11:24:03 +00:00
Eric Botcazou
ca0b6e3b47 tm.texi (registers): Add entry for REGMODE_NATURAL_SIZE.
* doc/tm.texi (registers) <Values in Registers>: Add
	entry for REGMODE_NATURAL_SIZE.

From-SVN: r79377
2004-03-12 10:53:15 +00:00
Richard Henderson
42ba513004 re PR target/14547 (Passing _Complex long double does not follow the ABI)
PR target/14547
        * target.h (struct gcc_target): Move calls substructure before
        booleans.  Add split_complex_arg.
        * function.c (assign_parms, split_complex_args): Use it.
        * calls.c (expand_call): Likewise.
        (split_complex_values): Likewise.  Check for splittable types
        before allocating memory.
        (split_complex_types): Likewise.
        * system.h (SPLIT_COMPLEX_ARGS): Poison.
        * expr.h (SPLIT_COMPLEX_ARGS): Remove.
        * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New.
        * config/alpha/alpha.c (alpha_split_complex_arg): New.
        (TARGET_SPLIT_COMPLEX_ARG): New.
        * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove.
        * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New.
        (rs6000_override_options): Zap it for non-AIX.
        (rs6000_function_value): Use targetm.calls.split_complex_arg.
        * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove.
        * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New.
        * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove.
        * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old
        SPLIT_COMPLEX_ARGS entry.

From-SVN: r79376
2004-03-12 02:03:32 -08:00
Michael Koch
ac011d28bb [multiple changes]
2004-03-12  Ito Kazumitsu  <ito.kazumitsu@hitachi-cable.co.jp>

	* java/net/URI.java (toURL): Implemented.

2004-03-12  Ito Kazumitsu  <ito.kazumitsu@hitachi-cable.co.jp>

	* java/net/URI.java
	(URI_REGEXP) updated to contain scheme specific part.
	(SCHEME_SPEC_PART_GROUP) new constant.
	(AUTHORITY_GROUP, PATH_GROUP, QUERY_GROUP, FRAGMENT_GROUP)
	updated to make room for SCHEME_SPEC_PART_GROUP.
	(parseURI) parse scheme specific part.
	(resolve, isAbsolute, isOpaque, getRawSchemeSpecificPart,
	getSchemeSpecificPart, getAuthority, getUserInfo, getPath,
	getQuery, getFragment) implemented.

2004-03-12  Dalibor Topic  <robilad@kaffe.org>

	* libraries/javalib/java/net/URI.java
	partially implemented using java.util.regex.
	(URI_REGEXP) new constant. Used to parse URIs.
	(SCHEME_GROUP) new constant representing index of scheme group
	in parsed URI.
	(AUTHORITY_GROUP) new constant representing index of authority
	group in parsed URI.
	(PATH_GROUP) new constant representing index of path group in
	parsed URI.
	(QUERY_GROUP) new constant representing index of query group in
	parsed URI.
	(FRAGMENT_GROUP) new constant representing index of fragment
	group in parsed URI.
	(getURIGroup) new static utility method.
	(parseURI) implemented.
	(quote) stub for new static utility method.
	(quoteAuthority) stub for new static utility method.
	(quoteHost) stub for new static utility method.
	(quotePath) stub for new static utility method.
	(quoteUserInfo) stub for new static utility method.
	(URI) implemented.
	(create) don't throw URISyntaxException. Implemented.
	(toString) implemented.

From-SVN: r79375
2004-03-12 08:15:54 +00:00
Michael Koch
75e0f3fe0f 2004-03-12 Michael Koch <konqueror@gmx.de>
* java/net/HttpURLConnection.java
	(getResponseCode): Fix another typo in javadoc.

From-SVN: r79374
2004-03-12 08:02:42 +00:00
Richard Henderson
75959f0a1d alpha.c (xfloating_ops, [...]): New.
* config/alpha/alpha.c (xfloating_ops, vax_cvt_ops): New.
        (alpha_lookup_xfloating_lib_func): Use them, return rtx.
        (alpha_emit_xfloating_arith): Update to match.
        (alpha_emit_xfloating_compare): Likewise.
        (alpha_emit_xfloating_cvt): Likewise.
        (alpha_emit_xfloating_libcall): Take already built symbol,
        mark call const.
        * config/alpha/alpha.md (extendsftf2, extenddftf2): Take
        op1 in a register.

From-SVN: r79371
2004-03-11 23:14:56 -08:00