Commit Graph

74682 Commits

Author SHA1 Message Date
Geoffrey Keating
6f8d8ef049 dwarf2out.c (verify_marks_clear): New.
* dwarf2out.c (verify_marks_clear): New.
	(prune_unused_types): Call verify_marks_clear initially, not
	prune_unmark_dies.

From-SVN: r113241
2006-04-25 05:56:36 +00:00
Mark Mitchell
efe1ad468e re PR c++/27292 (ICE on casts on bitfields)
PR c++/27292
	* typeck.c (decay_conversion): Don't adjust bitfield types.
	(perform_integral_promotions): Treat bitfield enums as enums, not
	as short integer types.
	* tree.c (rvalue): Convert bitfields to their correct types.
	PR c++/27292
	* g++.dg/conversion/bitfield1.C: New test.
	* g++.dg/conversion/bitfield2.C: Likewise.
	* g++.dg/conversion/bitfield3.C: Likewise.

From-SVN: r113240
2006-04-25 03:33:38 +00:00
GCC Administrator
9c9bd27b0b Daily bump.
From-SVN: r113236
2006-04-25 00:17:25 +00:00
Tom Tromey
0623a8c0c2 * java/lang/natClass.cc (_Jv_getInterfaceMethod): Skip <clinit>.
From-SVN: r113229
2006-04-24 21:28:36 +00:00
Julian Brown
9fff64328d floatformat.c (floatformat_to_double): Fix (biased) exponent=0 case.
* floatformat.c (floatformat_to_double): Fix (biased) exponent=0 case.

From-SVN: r113228
2006-04-24 21:24:27 +00:00
Bernd Schmidt
e551ad2608 rtl.def (SS_ASHIFT, SS_NEG): New codes.
* rtl.def (SS_ASHIFT, SS_NEG): New codes.
	* doc/rtl.texi: Document them.
	* simplify-rtx.c (simplify_unary_operation,
	simplify_binary_operation_1): Don't abort when we see them.

From-SVN: r113227
2006-04-24 19:35:38 +00:00
Mark Mitchell
bfa1122312 revert: configure.ac: Completely disregard languages that are not enabled.
Revert:
	2006-04-23  Mark Mitchell  <mark@codesourcery.com>
	* configure.ac: Completely disregard languages that are not
	enabled.
	* configure: Regenerated.

From-SVN: r113226
2006-04-24 16:33:11 +00:00
Andrew Haley
621ae65dcd lang.c (java_init): Handle flag_indirect_classes.
2006-04-21  Andrew Haley  <aph@redhat.com>

        * lang.c (java_init): Handle flag_indirect_classes.
        * jvgenmain.c: Use "class$$" instead of "class$".
        * mangle.c (java_mangle_decl): Accept RECORD_TYPEs sw well as
        DECLs.
        (mangle_class_field): Special case "class$$" as well as "class$".
        * constants.c (build_ref_from_constant_pool): If
        flag_indirect_classes, generate a ref into the heap.
        * decl.c (constants_field_decl_node,
        constants_data_field_decl_node): New.
        * class.c (build_static_class_ref): New.
        (build_classdollar_field): Factor out from build_class_ref().
        (make_field_value): Handle static fields in heap.
        (make_class_data): Make sure we get a static ref to class.
        Make class initializer const if flag_indirect_classes.
        (register_class): Build a class_ref for initialization if
        flag_indirect_classes.
        (emit_indirect_register_classes): New.

2006-04-21  Andrew Haley  <aph@redhat.com>

        * include/execution.h (struct _Jv_CompiledEngine): Define for
        compiled classes.
        * java/lang/natClassLoader.cc (_Jv_RegisterClasses): Call
        _Jv_RegisterLibForGc.
        (_Jv_RegisterClasses_Counted): Likewise.
        (_Jv_NewClassFromInitializer): New.
        (_Jv_RegisterNewClasses): New.
        * sources.am: Regenerate.
        * boehm.cc (_Jv_GC_has_static_roots): new.
        (_Jv_InitGC): Call GC_register_has_static_roots_callback.
        (filename_node, find_file, _Jv_print_gc_store, new_node,
        _Jv_GC_has_static_roots, _Jv_RegisterLibForGc): New.
        * scripts/makemake.tcl: Add -fno-indirect-classes.
        * Makefile.in: Regenerate.
        * link.cc (resolve_pool_entry): Allocate constant pool.
        Allocate fields.

From-SVN: r113224
2006-04-24 15:33:16 +00:00
Andrew Haley
5204d06d82 dyn_load.c (GC_has_static_roots): Declare.
2006-03-07  Andrew Haley  <aph@redhat.com>

        * dyn_load.c (GC_has_static_roots): Declare.
        (GC_register_dynlib_callback): Call GC_has_static_roots.

From-SVN: r113223
2006-04-24 13:40:21 +00:00
Andrew Pinski
d84b37b08a re PR tree-optimization/27236 (inliner creates an INDIRECT_REF without TREE_THIS_VOLATILE set for *a)
2006-04-24  Andrew Pinski  <pinskia@gcc.gnu.org>
	Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/27236
	* tree-inline.c (copy_body_r): Make sure to copy
	TREE_THIS_VOLATILE flag.

	* gcc.dg/tree-ssa/pr27236.c: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r113221
2006-04-24 09:06:51 +00:00
Volker Reichelt
4e3bd7d561 re PR c++/19963 (ICE on invalid member declaration)
PR c++/19963
	* class.c (layout_class_type): Skip fields with invalid types.

	* g++.dg/other/incomplete2.C: New test.

From-SVN: r113220
2006-04-24 08:38:05 +00:00
Richard Guenther
c0a3f887e5 re PR middle-end/26869 (Segfault in find_lattice_value() for complex operands.)
2006-04-24  Richard Guenther  <rguenther@suse.de>

	PR middle-end/26869
	* tree-complex.c (update_parameter_components): Don't handle
	unused parameters which have no default def.

	* gcc.dg/torture/pr26869.c: New testcase.

From-SVN: r113219
2006-04-24 08:21:41 +00:00
Andrew Pinski
72fa5e06ab re PR tree-optimization/27218 (ICE in get_indirect_ref_operands, at tree-ssa-operands.c:1515, inlining produces non-gimple)
2006-04-24  Andrew Pinski  <pinskia@gcc.gnu.org>
	Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/27218
	* tree-inline.c (expand_call_inline): Strip useless type
	conversions for the return slot address.

	* g++.dg/tree-ssa/pr27218.C: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r113218
2006-04-24 08:17:42 +00:00
Richard Guenther
0162f1556e cfgloop.h (struct loops): Remove unused field array.
2006-04-24  Richard Guenther  <rguenther@suse.de>

	* cfgloop.h (struct loops): Remove unused field array.  Reorder
	state after num.
	(LOOP_PREFETCH): Remove.

From-SVN: r113217
2006-04-24 08:01:33 +00:00
Richard Guenther
7e1584f82d re PR tree-optimization/22525 (tree based value profiling (-fprofile-use) produces mismatch types in conditional)
2006-04-24  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/22525
	* value-prof.c (tree_mod_pow2): Remove unnecessary temporary
	variable, adjust types of generated expressions.

From-SVN: r113216
2006-04-24 07:58:53 +00:00
Mark Mitchell
e2537f2c03 re PR c++/26912 (friend const member function specialization fails to compile)
PR c++/26912
	* cp-tree.h (build_this_parm): Declare.
	(grok_method_quals): Remove.
	(build_memfn_type): Declare.
	(build_artificial_parm): Declare.
	(do_friend): Remove quals parameter.
	* decl.c (build_this_parm): New function.
	(grokfndecl): Use it.  Do not pass quals to grokclassfn.
	(grokdeclarator): Rename quals to memfn_quals.  Avoid allocating
	unnecessary TYPE_DECLs.  Correct qualification of member function
	types.  Tidy.
	* method.c (implicitly_declare_fn): Use build_this_parm.
	* friend.c (do_friend): Remove quals parameter.
	* decl2.c (grok_method_quals): Remove.
	(build_memfn_type): New function.
	(build_artificial_parm): Give it external linkage.
	(grokclassfn): Remove quals parameter.  Do not build "this"
	PARM_DECL here.
	PR c++/26912
	* g++.dg/template/friend41.C: New test.

From-SVN: r113213
2006-04-24 03:50:31 +00:00
H.J. Lu
d24b23bb89 Makefile.in (c-convert.o): Add dependency on $(TARGET_H)
2006-04-23  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.in (c-convert.o): Add dependency on $(TARGET_H)
	(tree-vect-patterns.o): Likewise.
	(jump.o): Likewise.
	(cselib.o): Likewise.
	(loop-doloop.o): Likewise.
	(regclass.o): Likewise.
	(reload1.o): Likewise.
	(explow.o): Replace target.h with $(TARGET_H).
	(ipa-prop.o): Likewise.
	(ipa-cp.o): Likewise.
	(ipa-inline.o): Likewise.
	(reorg.o): Likewise.
	(reg-stack.o): Likewise.

From-SVN: r113212
2006-04-23 20:04:29 -07:00
GCC Administrator
e5690f0d23 Daily bump.
From-SVN: r113210
2006-04-24 00:17:11 +00:00
David Edelsohn
7d2cf7e356 pr15551.C: Include cstdio.
* g++.dg/opt/pr15551.C: Include cstdio.
        (main): Use remove instead of unlink.

From-SVN: r113206
2006-04-23 19:58:36 -04:00
Matthias Klose
44cabb1260 Make-lang.in (treelang.check): Don't set and pass TRANSFORM.
2006-04-22  Matthias Klose  <doko@debian.org>

        * Make-lang.in(treelang.check): Don't set and pass TRANSFORM.

From-SVN: r113201
2006-04-23 18:15:34 +00:00
Eric Botcazou
e8c3ff9712 tree-tailcall.c (pass_tail_recursion): Use gate_tail_calls too.
* tree-tailcall.c (pass_tail_recursion): Use gate_tail_calls too.

testsuite/
	* gcc.dg/sibcall-7.c: New test.
	* gcc.dg/tree-ssa/tailrecursion-1.c: Pass -foptimize-sibling-calls.
	* gcc.dg/tree-ssa/tailrecursion-2.c: Likewise.
	* gcc.dg/tree-ssa/tailrecursion-3.c: Likewise.
	* gcc.dg/tree-ssa/tailrecursion-4.c: Likewise.
	* gcc.dg/tree-ssa/tailrecursion-5.c: Likewise.

From-SVN: r113200
2006-04-23 18:14:13 +00:00
Mark Mitchell
38a4afeecd re PR c++/26534 ([4.1] bitfield wrong optimize)
2006-04-23  Mark Mitchell  <mark@codesourcery.com>

	PR c++/26534
	* c-common.h (c_build_bitfield_integer_type): Declare.
	* c-decl.c (c_build_bitfield_integer_type): Move to ...
	* c-common.c (c_build_bitfield_integer_type): ... here.

2006-04-23  Mark Mitchell  <mark@codesourcery.com>

	PR c++/26534
	* cp-tree.h (is_bitfield_expr_with_lowered_type): New function.
	* typeck.c (is_bitfield_expr_with_lowered_type): New function.
	(decay_conversion): Convert bitfield expressions to the correct
	type.
	(build_modify_expr): Remove spurious conversions.
	* class.c (layout_class_type): Modify the type of bitfields to
	indicate a limited range. 
	* call.c (standard_conversion): Adjust the type of bitfield
	expressions used in an rvalue context.
	(build_conditional_expr): Likewise.
	
2006-04-23  Mark Mitchell  <mark@codesourcery.com>

	PR c++/26534
	* g++.dg/opt/bitfield1.C: New test.
	* g++.dg/compat/abi/bitfield1_main.C: Add -w.
	* g++.dg/compat/abi/bitfield1_x.C: Likewise.
	* g++.dg/compat/abi/bitfield1_y.C: Likewise.
	* g++.dg/compat/abi/bitfield2_main.C: Likewise.
	* g++.dg/compat/abi/bitfield2_x.C: Likewise.
	* g++.dg/compat/abi/bitfield2_y.C: Likewise.
	* g++.dg/abi/bitfield1.C: Add dg-warning markers.
	* g++.dg/abi/bitfield2.C: Likewise.
	* g++.dg/init/bitfield1.C: Likewise.

From-SVN: r113199
2006-04-23 18:04:33 +00:00
Roger Sayle
acb188c1ba re PR target/21283 (ICE with doubles)
PR target/21283
	* config/fr30/fr30.md (define_split): Avoid calling gen_lowpart on
	a SImode SUBREG of a floating point register after no_new_pseudos.

From-SVN: r113198
2006-04-23 17:44:46 +00:00
Roger Sayle
a02ee5b2cf fr30.md (addsi_small_int): Use REGNO_PTR_FRAME_P to identify potentially eliminable registers to...
* config/fr30/fr30.md (addsi_small_int): Use REGNO_PTR_FRAME_P to
	identify potentially eliminable registers to additionally catch
	VIRTUAL_INCOMING_ARGS_REGNUM.
	(addsi3): Update the conditions on when to use addsi_small_int.

From-SVN: r113197
2006-04-23 17:39:54 +00:00
Roger Sayle
c21242e8e0 re PR target/16641 (fr30-elf-gcc compiler error when building newlib-1.12.0)
PR target/16641
	* config/fr30/fr30.h (GO_IF_LEGITIMATE_ADDRESS): Check REGNO for
	STACK_POINTER_RTX and FRAME_POINTER_RTX instead of comparing the
	rtx to stack_pointer_rtx or frame_pointer_rtx directly.

From-SVN: r113196
2006-04-23 17:25:30 +00:00
Marc Glisse
05a2763ef3 re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std)
2006-04-23  Marc Glisse  <marc.glisse@normalesup.org>

	PR libstdc++/27199
	* ext/pool_allocator.h: Add using declarations for size_t, ptrdiff_t.
	* ext/bitmap_allocator.h: Likewise; qualify with std::.
	* ext/new_allocator.h: Likewise.
	* ext/malloc_allocator.h: Likewise.
	* ext/array_allocator.h: Likewise.
	* ext/mt_allocator.h: Likewise.
	* ext/functional: Likewise for size_t.
	* ext/debug_allocator.h: Likewise.
	* bits/char_traits.h: Qualify with std:: size_t.
	* debug/hash_multimap.h: Likewise.

From-SVN: r113195
2006-04-23 14:54:26 +00:00
Paul Thomas
c9379bf062 re PR fortran/25099 (Conformance of arguments to ELEMENTAL subroutines)
2006-04-23  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/25099
	* resolve.c (resolve_call): Check conformity of elemental
	subroutine actual arguments.

2006-04-23  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/25099
	* gfortran.dg/elemental_subroutine_4.f90: New test.
	* gfortran.dg/assumed_size_refs_1.f90: Add error to non-conforming
	call sub (m, x).

From-SVN: r113194
2006-04-23 11:56:37 +00:00
Paolo Carlini
db03587b6c lwg-active.html, [...]: Import Revision 42.
2006-04-23  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 42.

From-SVN: r113193
2006-04-23 11:44:40 +00:00
Eric Botcazou
1464eeb8be fold-const.c (range_predecessor): Use operand_equal_p as the predicate for equality.
* fold-const.c (range_predecessor): Use operand_equal_p
	as the predicate for equality.
	(range_successor): Likewise.

From-SVN: r113192
2006-04-23 09:06:32 +00:00
Jerry DeLisle
54ffdb125c re PR libfortran/20257 (Fortran runtime error: End of record occurs when writing large arrays)
2006-04-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/20257
	* io/io.h: Add prototypes for get_internal_unit and free_internal_unit.
	* io/unit.c (get_internal_unit): Initialize unit number, not zero.
	(free_internal_unit): New function to consolidate freeing memory.
	(get_unit): Initialize internal_unit_desc to NULL when unit is
	external.
	* io/unix.c (mem_close): Check for not NULL before freeing memory.
	* io/transfer.c (read_block): Reset bytes_left and skip error if unit
	is preconnected and default record length is reached.
	(read_block_direct): Ditto.
	(write_block): Ditto.
	(write_buf): Ditto.
	(data_transfer_init): Only flush if not internal unit.
	(finalize_transfer): Ditto and delete code to free memory used by
	internal units.
	(st_read_done): Use new function - free_internal_unit.
	(st_write_done): Use new function - free_internal unit.

From-SVN: r113190
2006-04-23 02:04:58 +00:00
GCC Administrator
e8bbccd643 Daily bump.
From-SVN: r113187
2006-04-23 00:17:14 +00:00
Andreas Tobler
6d0b58a9aa configure.ac: Weaken the check for MMAP.
2006-04-22  Andreas Tobler  <a.tobler@schweiz.ch>

	* configure.ac: Weaken the check for MMAP.
	* configure: Rebuilt.
	* include/config.h.in: Likewise.

From-SVN: r113182
2006-04-23 00:17:26 +02:00
Andreas Tobler
ac6ed182ed README: Remove notice about 'Crazy Comments'.
2006-04-22  Andreas Tobler  <a.tobler@schweiz.ch>

	* README: Remove notice about 'Crazy Comments'.
	* src/debug.c: Remove lint directives. Cleanup white spaces.
	* src/java_raw_api.c: Likewise.
	* src/prep_cif.c: Likewise.
	* src/raw_api.c: Likewise.
	* src/ffitest.c: Delete. No longer needed, all test cases migrated
	to the testsuite.
	* src/arm/ffi.c: Remove lint directives.
	* src/m32r/ffi.c: Likewise.
	* src/pa/ffi.c: Likewise.
	* src/powerpc/ffi.c: Likewise.
	* src/powerpc/ffi_darwin.c: Likewise.
	* src/sh/ffi.c: Likewise.
	* src/sh64/ffi.c: Likewise.
	* src/x86/ffi.c: Likewise.
	* testsuite/libffi.call/float2.c: Likewise.
	* testsuite/libffi.call/promotion.c: Likewise.
	* testsuite/libffi.call/struct1.c: Likewise.

From-SVN: r113181
2006-04-22 23:17:35 +02:00
Kazu Hirata
9542abd378 revert: op-common.h: Fix a typo.
Revert:
	* config/soft-fp/op-common.h: Fix a typo.

From-SVN: r113180
2006-04-22 16:45:28 +00:00
Frank Ch. Eigler
110c45636c re PR libmudflap/26864 (multithreaded mudflap not working)
2006-04-22  Frank Ch. Eigler  <fche@redhat.com>

	PR libmudflap/26864
	* common.opt (flag_mudflap_threads): Overload flag_mudflap.
	* tree-mudflap.c (flag_mudflap_threads): Derive from flag_mudflap.

From-SVN: r113179
2006-04-22 16:22:54 +00:00
Kazu Hirata
66a4ad3731 op-common.h, [...]: Fix comment typos.
* config/soft-fp/op-common.h, double-int.h, tree-ssa-dom.c:
	Fix comment typos.
	* doc/tm.texi: Fix a typo.

From-SVN: r113178
2006-04-22 16:19:56 +00:00
Kazu Hirata
9f9a713e7a * decl.c: Fix comment typos.
From-SVN: r113175
2006-04-22 16:12:34 +00:00
Joseph Myers
4f19e578a2 * gcc.c-torture/compile/20060421-1.c: New testcase.
From-SVN: r113173
2006-04-22 16:31:09 +01:00
Geoffrey Keating
d6eeb3ba58 dwarf2out.c (struct die_struct): Document that die_sib makes a circular linked list.
* dwarf2out.c (struct die_struct): Document that die_sib makes
	a circular linked list.
	(FOR_EACH_CHILD): New.
	(reverse_die_lists): Delete.
	(reverse_all_dies): Delete.
	(add_dwarf_attr): Correct documentation.
	(remove_child_with_prev): New.
	(remove_child_TAG): Update for change to die_struct, use
	remove_child_with_prev.
	(add_child_die): Update for change to die_struct.
	(splice_child_die): Use remove_child_with_prev and add_child_die.
	(print_die): Use FOR_EACH_CHILD.
	(die_checksum): Likewise.
	(assign_symbol_names): Likewise.
	(output_location_lists): Likewise.
	(build_abbrev_table): Likewise.
	(calc_die_sizes): Likewise.
	(mark_dies): Likewise.
	(unmark_dies): Likewise.
	(unmark_all_dies): Likewise.
	(output_die): Likewise.
	(prune_unused_types_mark): Likewise.
	(prune_unused_types_walk): Likewise.
	(same_die_p): Update for change to die_struct.
	(break_out_includes): Likewise.
	(prune_unused_types_prune): Likewise.
	(add_sibling_attributes): Use FOR_EACH_CHILD, simplify logic.
	(prune_unmark_dies): Use FOR_EACH_CHILD, don't clear die_mark if
	it's already clear.
	(dwarf2out_finish): Don't call reverse_all_dies.

From-SVN: r113171
2006-04-22 08:50:36 +00:00
Jakub Jelinek
6d360fd8f2 re PR fortran/26769 (Implement transpose() and reshape() for real instead of using integer)
PR fortran/26769
	* iresolve.c (gfc_resolve_reshape): Use reshape_r16 for real(16).
	(gfc_resolve_transpose): Use transpose_r16 for real(16).

	* Makefile.am (i_transpose_c): Add generated/transpose_r16.c.
	(i_reshape_c): Add generated/reshape_r16.c.
	* Makefile.in: Regenerated.
	* generated/transpose_r16.c: Generated new file.
	* generated/redhape_r16.c: Generated new file.

From-SVN: r113169
2006-04-22 09:08:58 +02:00
Eric Christopher
7a0b46c944 Commit ChangeLog entries.
From-SVN: r113168
2006-04-22 01:33:34 +00:00
Eric Christopher
d1c788827f decl.c: Fix typo in function name.
2006-04-21  Eric Christopher  <echristo@apple.com>

	* decl.c: Fix typo in function name.

2006-04-21  Eric Christopher  <echristo@apple.com>

	* df-core.c, tree-outof-ssa.c, config/i386/i386.c: Fix typos
	in comments and function names.

From-SVN: r113167
2006-04-22 01:23:09 +00:00
GCC Administrator
3707352931 Daily bump.
From-SVN: r113162
2006-04-22 00:17:14 +00:00
Volker Reichelt
f01da1a506 re PR c/25875 (ICE: segmentation fault)
PR c/25875
	* c-typeck.c (digest_init): Robustify.

	* gcc.dg/init-bad-4.c: New test.

From-SVN: r113153
2006-04-21 23:02:26 +00:00
Volker Reichelt
5d5e98dc75 * c-typeck.c (pop_init_level): Simplify.
From-SVN: r113152
2006-04-21 22:58:28 +00:00
Joseph Myers
a71536acf8 de.po, [...]: Update.
* de.po, es.po, sv.po: Update.
	* zh_TW.po: New.

From-SVN: r113148
2006-04-21 20:49:54 +01:00
Joseph Myers
ef8b9222b7 * de.po: Update.
From-SVN: r113146
2006-04-21 20:45:50 +01:00
Steve Ellcey
3144998ac1 * config/pa/t-pa64: Add dependencies on $(GCC_PASSES).
From-SVN: r113141
2006-04-21 17:39:15 +00:00
Paul Brook
87b24aaf2b arm.c (arm_override_options): Error on iWMMXt and hardware floating point.
2006-04-21  Paul Brook  <paul@codesourcery.com>

gcc/
	* config/arm/arm.c (arm_override_options): Error on iWMMXt and
	hardware floating point.
gcc/testsuite/
	* gcc.dg/arm-vfp1.c: Skip on iWMMXt cpus.

From-SVN: r113138
2006-04-21 17:05:51 +00:00
David Edelsohn
e3604432aa rs6000.h (REG_CLASS_CONTENTS): Add sfp to NON_FLOAT_REGS.
* config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Add sfp to
	NON_FLOAT_REGS.

From-SVN: r113136
2006-04-21 10:10:22 -04:00