Commit Graph

72518 Commits

Author SHA1 Message Date
Richard Guenther 93fc8073fc trans-expr.c (gfc_conv_substring): Use fold_build2 and build_int_cst.
2005-12-13  Richard Guenther  <rguenther@suse.de>

	* trans-expr.c (gfc_conv_substring): Use fold_build2 and
	build_int_cst.

From-SVN: r108476
2005-12-13 09:54:03 +00:00
Andrew Haley 65260edb31 re PR java/25366 (ICE in do_resolve_class)
2005-12-13  Andrew Haley  <aph@redhat.com>

        PR java/25366
        PR java/25368
        * class.c (maybe_layout_super_class): Update current_class before
        calling do_resolve_class.

From-SVN: r108474
2005-12-13 09:41:45 +00:00
Jakub Jelinek 78fdb6d283 re PR libfortran/24991 (gfortran build fails with - error:gthr-default.h: No such file or directory)
PR libfortran/24991
	* acinclude.m4 (LIBGFOR_CHECK_PRAGMA_WEAK): Rename to...
	(LIBGFOR_GTHREAD_WEAK): ... this.  Define SUPPORTS_WEAK rather
	than HAVE_PRAGMA_WEAK.  Define GTHREAD_USE_WEAK to 0 on hosts
	that shouldn't use weak in gthr.h.
	* configure.ac: Use LIBGFOR_GTHREAD_WEAK instead of
	LIBGFOR_CHECK_PRAGMA_WEAK.
	* config.h.in: Regenerated.
	* configure: Regenerated.
	* io/io.h (SUPPORTS_WEAK): Don't define here.

	* intrinsics/ftell.c (ftell, FTELL_SUB): Add unlock_unit call.
	* intrinsics/fget.c (fgetc, fputs): Likewise.
	* intrinsics/tty.c (ttynam): Likewise.

From-SVN: r108471
2005-12-13 09:31:41 +01:00
Jakub Jelinek f767c88d72 Update.
From-SVN: r108465
2005-12-13 09:14:41 +01:00
Jakub Jelinek 6541fe758b re PR debug/25023 (ICE in def_cfa_1, at dwarf2out.c:792)
PR debug/25023
	PR target/25293
	* expr.c (emit_move_resolve_push): Handle PRE_MODIFY
	and POST_MODIFY with CONST_INT adjustment equal to PUSH_ROUNDING.
	Fix POST_INC/POST_DEC handling if PUSH_ROUNDING is not identity.
	* config/i386/i386.md (pushhi2, pushqi2): Use pushl instead of pushw.
	Set mode to SI, adjust constraints.
	(pushhi2_rex64, pushqi2_rex64): Set mode to DI.
	* config/i386/i386.h (PUSH_ROUNDING): Round up to 4 instead of 2 for
	32-bit code.

	* gcc.target/i386/pr25293.c: New test.

From-SVN: r108463
2005-12-13 09:08:46 +01:00
Petr Machata 6d32822515 re PR c++/24907 ("int x, ;" accepted)
2005-12-13  Petr Machata  <machata@post.cz>

	PR c++/24907
	* parser.c (cp_parser_simple_declaration): Require comma at the
	beginning of processing second and later declarators, instead of
	allowing the comma at the end of each iteration.

	* g++.dg/parse/comma2.C: New test.

From-SVN: r108462
2005-12-13 09:01:53 +01:00
Mark Mitchell 7e825da03e struct-layout-1.exp: Do not link with libiberty.
* g++.dg/compat/struct-layout-1.exp: Do not link with libiberty.
	* g++.dg/compat/struct-layout-1_generate.c (config.h): Do not include.
	(limits.h): Include unconditionally.
	(stdlib.h): Likewise.
	(hashtab.h): Do not include.
	(getopt.h): Likewise.
	(stddef.h): Include.
	(hashval_t): Define.
	(struct entry): Add "next" field.
	(HASH_SIZE): New macro.
	(hash_table): New variable.
	(switchfiles): Do not use xmalloc.
	(mix): New macro.
	(iterative_hash): New function.
	(hasht): Remove.
	(e_exists): New function.
	(e_insert): Likewise.
	(output): Use, instead of libiberty hashtable functions.
	(main): Do not use getopt.  Do not call htab_create.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r108461
2005-12-13 08:59:01 +01:00
Jakub Jelinek e279639769 re PR c++/25331 (FAIL: tmpdir-g++.dg-struct-layout-1/t028 cp_compat_[xy]_tst.o compile)
PR c++/25331
	* gcc.dg/compat/struct-layout-1_generate.c (subfield): Don't
	put atal* and atpaal* attributes on array elements.
	(generate_fields): Revert 2005-10-07 and 2005-10-11 changes.
	* g++.dg/compat/struct-layout-1_generate.c (subfield): Don't
	put atal* and atpaal* attributes on array elements.
	(generate_fields): Don't prevent atal* attribute on ETYPE_ARRAY.

From-SVN: r108460
2005-12-13 08:56:10 +01:00
Richard Sandiford 1524f80b1c Make-lang.in (fortran/trans-resolve.o): Depend on fortran/dependency.h.
gcc/fortran/
	* Make-lang.in (fortran/trans-resolve.o): Depend on
	fortran/dependency.h.
	* gfortran.h (gfc_expr): Add an "inline_noncopying_intrinsic" flag.
	* dependency.h (gfc_get_noncopying_intrinsic_argument): Declare.
	(gfc_check_fncall_dependency): Change prototype.
	* dependency.c (gfc_get_noncopying_intrinsic_argument): New function.
	(gfc_check_argument_var_dependency): New function, split from
	gfc_check_fncall_dependency.
	(gfc_check_argument_dependency): New function.
	(gfc_check_fncall_dependency): Replace the expression parameter with
	separate symbol and argument list parameters.  Generalize the function
	to handle dependencies for any type of expression, not just variables.
	Accept a further argument giving the intent of the expression being
	tested.  Ignore	intent(in) arguments if that expression is also
	intent(in).
	* resolve.c: Include dependency.h.
	(find_noncopying_intrinsics): New function.
	(resolve_function, resolve_call): Call it on success.
	* trans-array.h (gfc_conv_array_transpose): Declare.
	(gfc_check_fncall_dependency): Remove prototype.
	* trans-array.c (gfc_conv_array_transpose): New function.
	* trans-intrinsic.c (gfc_conv_intrinsic_function): Don't use the
	libcall handling if the expression is to be evaluated inline.
	Add a case for handling inline transpose()s.
	* trans-expr.c (gfc_trans_arrayfunc_assign): Adjust for the new
	interface provided by gfc_check_fncall_dependency.

libgfortran/
	* m4/matmul.m4: Use a different order in the special case of a
	transposed first argument.
	* generated/matmul_c4.c, generated/matmul_c8.c, generated/matmul_c10.c,
	* generated/matmul_c16.c, generated/matmul_i4.c, generated/matmul_i8.c,
	* generated/matmul_i10.c, generated/matmul_r4.c, generated/matmul_r8.c
	* generated/matmul_r10.c, generated/matmul_r16.c: Regenerated.

Co-Authored-By: Victor Leikehman <LEI@il.ibm.com>

From-SVN: r108459
2005-12-13 05:23:12 +00:00
Carlos O'Donell 264c41eda5 c-cppbuiltin.c (builtin_define_float_constants): Add fp_cast parameter, pass to builtin_define_with_hex_fp_value.
2005-12-13  Carlos O'Donell <carlos@codesourcery.com>

gcc/

	* c-cppbuiltin.c (builtin_define_float_constants): Add
	fp_cast parameter, pass to builtin_define_with_hex_fp_value.
	Define __FLT_HAS_DENORM__, __DBL_HAS_DENORM__, __LDBL_HAS_DENORM__.
	(builtin_define_with_hex_fp_value): Use fp_cast when building macro.
	(c_cpp_builtins): If flag_single_precision_constant then set fp_cast
	to "((double)%sL)" otherwise "%s".

gcc/testsuite/

	* gcc.dg/single-precision-constant.c: New test.

libstdc++-v3/

	* include/std/std_limits.h (struct numeric_limits):
	Use __DBL_HAS_DENORM__, __FLT_HAS_DENORM__, __LDBL_HAS_DENORM__.

From-SVN: r108458
2005-12-13 05:12:32 +00:00
Alan Modra 65b1344e31 980523-1.c, [...]: Don't use powerpc-*-* or powerpc64-*-* in target selection strings.
* gcc.dg/980523-1.c, gcc.dg/980526-1.c, gcc.dg/20020103-1.c,
	gcc.dg/20040625-1.c, gcc.dg/asm-b.c, gcc.dg/iftrap-1.c,
	gcc.dg/iftrap-2.c, gcc.dg/simd-3.c, gcc.dg/switch-1.c,
	gcc.dg/tree-ssa/bool-1.c, gcc.dg/tree-ssa/bool-2.c,
	gcc.dg/tree-ssa/bool-4.c, gcc.dg/tree-ssa/bool-5.c,
	gcc.dg/tree-ssa/bool-6.c, gcc.dg/tree-ssa/bool-8.c,
	gcc.dg/tree-ssa/bool-9.c, gcc.target/powerpc/980827-1.c,
	gcc.target/powerpc/20040622-1.c, gcc.target/powerpc/20050603-3.c,
	gcc.target/powerpc/20050830-1.c, gcc.target/powerpc/altivec-6.c,
	gcc.target/powerpc/altivec-14.c, gcc.target/powerpc/altivec-22.c,
	gcc.target/powerpc/doloop-1.c, gcc.target/powerpc/ppc-and-1.c,
	gcc.target/powerpc/ppc-bitfield1.c, gcc.target/powerpc/ppc-compare-1.c,
	gcc.target/powerpc/ppc-mov-1.c, gcc.target/powerpc/ppc-sdata-1.c,
	gcc.target/powerpc/ppc-sdata-2.c,
	gcc.target/powerpc/ppc-stackalign-1.c,
	gcc.target/powerpc/ppc64-abi-1.c, gcc.target/powerpc/ppc64-abi-2.c,
	gcc.target/powerpc/ppc64-abi-3.c, gcc.target/powerpc/ppc64-toc.c,
	gcc.target/powerpc/pr18096-1.c, gcc.target/powerpc/rs6000-ldouble-1.c,
	gcc.target/powerpc/rs6000-ldouble-2.c,
	gcc.target/powerpc/rs6000-power2-1.c,
	gcc.target/powerpc/rs6000-power2-2.c: Don't use powerpc-*-* or
	powerpc64-*-* in target selection strings.  Instead use powerpc*-*-*
	and ilp32 or lp64 as appropriate.  Merge dg-require-effective-target
	option into target selector.
	* gcc.dg/20020919-1.c: Compile for powerpc*-*-*.  Handle powerpc64.
	* gcc.misc-tests/linkage.exp: Set native_cflags for powerpc*-*-linux*.

From-SVN: r108457
2005-12-13 15:35:29 +10:30
Paul Brook dbff657a37 bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=gnu for apcs/atpcs.
* config/arm/bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=gnu for
	apcs/atpcs.

From-SVN: r108450
2005-12-13 01:35:43 +00:00
Paul Brook 99700fec4d bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=gnu for apcs/atpcs.
* config/arm/bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=gnu for
	apcs/atpcs.

From-SVN: r108448
2005-12-13 01:35:10 +00:00
Carlos O'Donell 9174b3cf76 MAINTAINERS (Write After Approval): Add myself.
2005-12-12  Carlos O'Donell <carlos@codesourcery.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r108443
2005-12-13 01:08:45 +00:00
GCC Administrator bd4c70923e Daily bump.
From-SVN: r108439
2005-12-13 00:17:27 +00:00
Andrew Pinski 6b990f0dd7 re PR objc/25348 (ICE encoding zero sized struct array)
2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>

        PR objc/25348
        * objc-act.c (encode_array): Handle arrays to zero sized types.
2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>

        PR objc/25348
        * objc.dg/encode-9.m: New test.

From-SVN: r108432
2005-12-12 15:58:16 -08:00
Rafael Ávila de Espíndola 59ced94791 tree-flow.h: Allow compilation with a C++ compiler.
2005-12-11 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>

        * tree-flow.h: Allow compilation with a C++ compiler.
        (struct edge_prediction): Prefix all field names  with "ep_".
        * predict.c (tree_predicted_by_p): Likewise for struct
        edge_prediction.
        (tree_predict_edge, combine_predictions_for_bb): Likewise.
        (remove_predictions_associated_with_edge): Likewise.

From-SVN: r108430
2005-12-12 23:12:14 +00:00
Kaveh R. Ghazi d33df7e10d re PR testsuite/20772 (x86 tests should run on both i?86 and x86_64)
PR testsuite/20772
	* g++.old-deja/g++.eh/tmpl2.C: Remove xfail.
	* gcc.dg/asm-b.c: Fix typo.
	* gcc.dg/torture/pr20314-2.c: Test on i?86 lp64.
	* gcc.dg/tree-ssa/stdarg-2.c, gcc.dg/tree-ssa/stdarg-3.c,
	gcc.dg/tree-ssa/stdarg-4.c, gcc.dg/tree-ssa/stdarg-5.c: Test on
	i?86 lp64 and x86_64 ilp32.
	* gcc.target/i386/amd64-abi-1.c, gcc.target/i386/pr23943.c: Test
	on i?86 lp64.
	* gfortran.dg/g77/20010216-1.f: Test on x86_64 ilp32.

From-SVN: r108427
2005-12-12 22:28:02 +00:00
Steven G. Kargl d0497a6573 re PR fortran/25078 (EQUILALENCE requires two or more objects)
PR fortran/25078
        * match.c (gfc_match_equivalence):  Count number of objects.

        gfortran.dg/equiv_5.f90:  New test.

From-SVN: r108426
2005-12-12 20:13:37 +00:00
Jeff Law 0e0ed59411 tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove reassociation code.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove
	reassociation code.
	* passes.c (init_optimization_passes): Run reassociation again
	after loop optimizations.

	* tree-ssa-dom.c (thread_across_edge): Canonicalize condition
	if necessary.
	(optimize_stmt): Ditto.
	(canonicalize_comparison): New function.
	* tree-ssa-operands.c (swap_tree_operands): Make external.
	(get_expr_operands): Stop auto-canonicalization.
	* tree-ssa-reassoc.c: Rewrite.
	(init_optimization_passes): 
	* tree-flow.h (swap_tree_operands): Prototype.
	* Makefile.in (tree-ssa-reassoc.o): Update dependencies.

	* gcc.dg/tree-ssa/ssa-pre-2.c: Update due to reassociation changes.
	* gcc.dg/tree-ssa/reassoc-1.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-2.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-3.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-4.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-5.c: New.
	* gcc.dg/tree-ssa/reassoc-6.c: New.
	* gcc.dg/tree-ssa/reassoc-7.c: New.
	* gcc.dg/tree-ssa/reassoc-8.c: New.
	* gcc.dg/tree-ssa/reassoc-9.c: New.
	* gcc.dg/tree-ssa/reassoc-10.c: New.
	* gcc.dg/tree-ssa/reassoc-11.c: New.

From-SVN: r108425
2005-12-12 12:59:16 -07:00
Andrew Haley e525ba8e6c VMCompiler.java: Directly generate a new instance of gnu.java.security.provider.MD5.
2005-12-12  Andrew Haley  <aph@redhat.com>

        * java/lang/VMCompiler.java: Directly generate a new instance of
        gnu.java.security.provider.MD5.

From-SVN: r108421
2005-12-12 17:29:45 +00:00
John David Anglin 1a83bfc389 re PR target/25258 ([4.0 regression/hpux] gcc generates incorrect stabs debug output)
PR target/25258
	* pa.c (pa_output_function_epilogue): Set cfun->machine->in_nsubspa to
	indicate function epilogue has been output.
	(pa_asm_output_mi_thunk): Likewise.
	(output_deferred_plabels): Put plabels in readonly data section when
	not generating PIC code.
	(som_output_text_section_asm_op): Use .NSUBSPA to output debug
	information.  Add assert.
	(som_output_comdat_data_section_asm_op): New function.
	(pa_som_asm_init_sections): Use som_output_comdat_data_section_asm_op
	instead of output_section_asm_op for COMDAT sections.

From-SVN: r108420
2005-12-12 17:17:51 +00:00
John David Anglin ffb99c1eba re PR testsuite/25167 (FAIL: gcc.dg/weak/weak-14.c)
PR testsuite/25167
	PR testsuite/24478
	* gcc.dg/weak/weak-14.c: Add dg-require-alias.

From-SVN: r108416
2005-12-12 16:42:35 +00:00
Mark Mitchell 36569397ed re PR c++/25300 (ICE with g++.dg/template/inherit.C)
PR c++/25300
	* tree.c (build_qualified_name): Return error_mark_node for
	erroneous input.
	PR c++/25300
	* g++.dg/template/inherit.C: Do not use a generic error message.

From-SVN: r108413
2005-12-12 16:29:44 +00:00
H.J. Lu 74daec8cf2 re PR java/25330 (A race condition in write_classfile)
2005-12-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR java/25330
	* jcf-write.c (write_classfile): Use PID in temporary class
	file. Save/restore errno when reporting error.

From-SVN: r108411
2005-12-12 07:27:43 -08:00
J"orn Rennecke 22e0395a10 cfgcleanup.c (condjump_equiv_p, [...]): Fix whitespace in vincinity of to-be-installed changes.
2005-12-12  J"orn Rennecke <joern.rennecke@st.com>

	* cfgcleanup.c (condjump_equiv_p, try_crossjump_to_edge):
	Fix whitespace in vincinity of to-be-installed changes.
	* struct-equiv.c (merge_memattrs, death_notes_match_p): Fix whitespace.
	(insns_match_p): Likewise.

From-SVN: r108410
2005-12-12 14:55:59 +00:00
Arnaud Charlet e5c681b3ee Remove dummy setting of GCC_FOR_TARGET, no longer needed.
From-SVN: r108409
2005-12-12 12:40:42 +01:00
Arnaud Charlet 40e5351713 Fix typo in previous change.
From-SVN: r108408
2005-12-12 12:32:53 +01:00
Arnaud Charlet b0b8e1767b Update dependencies
From-SVN: r108407
2005-12-12 12:19:12 +01:00
Arnaud Charlet 53fcb103f3 Add rule for ada/exp_sel.o
From-SVN: r108406
2005-12-12 12:00:24 +01:00
Arnaud Charlet 25b06cdac5 (mingw section): Remove EH_MECHANISM setting.
From-SVN: r108405
2005-12-12 11:57:00 +01:00
Nathan Sidwell 121b2cee93 * MAINTAINERS: Add myself as mt maintainer.
From-SVN: r108404
2005-12-12 10:55:59 +00:00
Nathan Sidwell 64f182bdf4 config.gcc (ms1): Replace with ...
* config.gcc (ms1): Replace with ...
	(mt): ... this.
	* config/ms1: Rename to ...
	* config/mt: ... here.  Rename ms1 files to mt.
	* config/mt/mt.c: Adjust gt-mt.h #include.
	* config/mt/t-mt (LIB1ASMSRCS, LIB2FUNCS_EXTRA): Adjust.
	(crti.o, crtn.o): Adjust file names.

	* config.sub: Replace ms1 with mt.  Allow ms1 as an alias.

From-SVN: r108403
2005-12-12 10:54:49 +00:00
Nathan Sidwell dcc8a60324 renam ms1 files to mt (part 2)
From-SVN: r108402
2005-12-12 10:50:25 +00:00
Nathan Sidwell 9d26d26412 Rename ms1 files to mt (part 1)
From-SVN: r108401
2005-12-12 10:48:53 +00:00
Gabriel Dos Reis c981d2231d varray.h: Allow compilation with a C++ compiler.
* varray.h: Allow compilation with a C++ compiler.
        (union varray_data_tag): Prefix all field names with "vdt_".
        (VARRAY_CHAR, VARRAY_UCHAR, VARRAY_SHORT, VARRAY_USHORT,
        VARRAY_INT, VARRAY_UINT, VARRAY_LONG, VARRAY_ULONG,
        VARRAY_WIDE_INT, VARRAY_UWIDE_INT, VARRAY_GENERIC_PTR,
        VARRAY_GENERIC_PTR_NOGC, VARRAY_CHAR_PTR, VARRAY_RTX,
        VARRAY_RTVEC, VARRAY_TREE, VARRAY_BITMAP, VARRAY_REG, VARRAY_BB,
        VARRAY_ELT_LIST, VARRAY_EDGE, VARRAY_TREE_PTR): Adjust definition.
        (VARRAY_PUSH_CHAR, VARRAY_PUSH_UCHAR, VARRAY_PUSH_SHORT,
        VARRAY_PUSH_USHORT, VARRAY_PUSH_INT, VARRAY_PUSH_UINT, 
        VARRAY_PUSH_LONG, VARRAY_PUSH_ULONG, VARRAY_PUSH_WIDE_INT, 
        VARRAY_PUSH_UWIDE_INT, VARRAY_PUSH_GENERIC_PTR, 
        VARRAY_PUSH_GENERIC_PTR_NOGC, VARRAY_PUSH_CHAR_PTR, 
        VARRAY_PUSH_RTX, VARRAY_PUSH_RTVEC, VARRAY_PUSH_TREE, 
        VARRAY_PUSH_BITMAP, VARRAY_PUSH_REG, VARRAY_PUSH_BB, 
        VARRAY_PUSH_EDGE, VARRAY_PUSH_TREE_PTR): Likewise.
        (VARRAY_TOP_CHAR, VARRAY_TOP_UCHAR, VARRAY_TOP_SHORT, 
        VARRAY_TOP_USHORT, VARRAY_TOP_INT, VARRAY_TOP_UINT, 
        VARRAY_TOP_LONG, VARRAY_TOP_ULONG, VARRAY_TOP_WIDE_INT, 
        VARRAY_TOP_UWIDE_INT, VARRAY_TOP_GENERIC_PTR, 
        VARRAY_TOP_GENERIC_PTR_NOGC, VARRAY_TOP_CHAR_PTR, VARRAY_TOP_RTX, 
        VARRAY_TOP_RTVEC, VARRAY_TOP_TREE, VARRAY_TOP_BITMAP, 
        VARRAY_TOP_REG, VARRAY_TOP_BB, VARRAY_TOP_EDGE, 
        VARRAY_TOP_TREE_PTR): Likewise.
        * varray.c (varray_grow): Likewise.
        (varray_clear): Likewise.

From-SVN: r108399
2005-12-12 09:14:12 +00:00
Andrew Pinski 761c0d29cb re PR libobjc/25354 (There should be an automated testsuite for objc_sizeof_type and objc_alignof_type)
2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>

        PR libobjc/25354
        * objc.dg/gnu-encoding: New directory.
        * objc.dg/gnu-encoding/compat-common.h: New file.
        * objc.dg/gnu-encoding/struct-layout-1.h: New file.
        * objc.dg/gnu-encoding/struct-layout-1_test.h: New file.
        * objc.dg/gnu-encoding/vector-defs.h: New file.
        * objc.dg/gnu-encoding/gnu-encoding.exp: New file.
        * objc.dg/gnu-encoding/generate-random.c: New file.
        * objc.dg/gnu-encoding/generate-random_r.c: New file.
        * objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c: New file.
        * objc.dg/gnu-encoding/generate-random.h: New file.


2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>

        * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and        the name.
        (get_inner_array_type): Fix to skip over _C_ARY_B and size.
        (rs6000_special_round_type_align): Update for the ABI fix.
        (objc_layout_finish_structure): Correct the encoding which is passed to
        ROUND_TYPE_ALIGN.

From-SVN: r108398
2005-12-11 21:47:52 -08:00
Mark Mitchell 3897c0aae8 re PR c++/25337 (ICE with template processing)
PR c++/25337 
	* pt.c (tsubst_copy_and_build): Permit dependent types for the
	object in a class member access expression.
	PR c++/25337
	* g++.dg/template/defarg7.C: New test.

From-SVN: r108394
2005-12-12 01:40:25 +00:00
Alan Modra 392cc400f4 re PR target/25299 (Another ABI incompatibility with Apple's gcc)
PR target/25299
	* config/rs6000/rs6000.c (rs6000_special_round_type_align): Increase
	alignment to doubleword if the first field is a double array.
	* config/rs6000/linux64.h (TARGET_ALIGN_NATURAL): Define.

From-SVN: r108393
2005-12-12 11:58:50 +10:30
GCC Administrator e78ac651b0 Daily bump.
From-SVN: r108390
2005-12-12 00:17:33 +00:00
Daniel Berlin 4ee00913ca tree-ssa-structalias.c (process_constraint): Remove code to transform addressofs into scalar.
2005-12-11  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-structalias.c (process_constraint): Remove code to
	transform addressofs into scalar.
	(create_variable_info_for): In whole-program IPA, globals don't
	point to ANYTHING by default.

2005-12-11  Daniel Berlin  <dberlin@dberlin.org>

	* timevar.def (TV_IPA_PTA): New.
	* tree-pass.h (pass_ipa_pta): New
	* tree-ssa-structalias.c: Include cgraph.h
	(in_ipa_mode): New.
	(predbitmap_obstack): New.
	(EXECUTE_IF_IN_NONNULL_BITMAP): New.
	(struct constraint_stats): Add num_edges.
	(new_var_info): Don't call bitmap_clear.
	(struct constraint_edge): Update docs.
	(new_constraint_edge): Remove src param.
	(struct constraint_graph): Add zero_weight_succs,
	zero_weight_preds.  Update docs.
	(constraint_expr_equal): Reformat.
	(constraint_edge_equal): Update for removal of src.
	(constraint_edge_less): Ditto.
	(constraint_edge_vec_find): Ditto.
	(erase_graph_self_edge): Update for removal of src and and zero
	weight bitmap.
	(clear_edges_for_node): Ditto.
	(add_graph_edge): Ditto.
	(get_graph_weights): Ditto.
	(allocate_graph_weights): Ditto.
	(merge_graph_nodes): Ditto.
	(int_add_graph_edge): Ditto.
	(valid_graph_edge): Ditto.
	(valid_weighted_graph_edge): Ditto.
	(build_constraint_graph): Ditto.
	(scc_visit): Ditto.
	(collapse_nodes): Ditto.
	(process_unification_queue): Ditto.
	(topo_visit): Ditto.
	(solve_graph): Ditto.
	(do_structure_copy): Ditto.
	(perform_var_substitution): Ditto.
	Init and release obstack.
	(handle_ptr_arith): Try to resolve directly.
	(find_func_aliases): Don't call update_alias_info here
	Handle RETURN_EXPR, and CALL_EXPR's in IPA mode.
	(do_sd_constraint): Add code for propagating faster.
	Update.
	(do_ds_constraint): Ditto.
	(count_num_arguments): New function.
	(create_function_info_for): Ditto.
	(create_variable_info_for): Handle FUNCTION_DECL.
	(intra_create_variable_infos): Use make_constraint_to_anything.
	(init_alias_vars): Init obstacks here.
	(need_to_solve): Handle zero weight graph changes.
	(compute_points_to_sets): Call update_alias_info here.
	(delete_points_to_sets): Free zero weight preds/succs here.
	(gate_ipa_pta): New.
	(ipa_pta_execute): New

2005-12-11  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-structalias.c (var_anyoffset): Removed.
	(anyoffset_tree): Ditto.
	(anyoffset_id): Ditto.
	(do_deref): Take vector of constraints, no return value.
	Update to work on vector.		 
	(get_constraint_for): Ditto.
	(get_constraint_for_component_ref): Ditto.
	(do_structure_copy): Ditto.
	(handle_ptr_arith): Ditto.
	(find_func_aliases): Ditto.
	(set_uids_in_ptset): Remove anyoffset handling.
	(init_base_vars): Ditto.

From-SVN: r108384
2005-12-11 22:44:19 +00:00
Aldy Hernandez 1005cc9c0d * lang.opt: Add RejectNegative to ffixed-form and ffree-form.
From-SVN: r108381
2005-12-11 11:42:32 +00:00
Andrew Pinski 4540a3ade1 re PR libobjc/25347 (objc_alignof_type gets the wrong alignment for unions (objc_sizeof_type is wrong also too))
2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR libobjc/25347
        * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
        but use the struct layout functions.
        (objc_alignof_type): Likewise.
        (objc_layout_structure): Handle _C_UNION_B also.
        (objc_layout_structure_next_member): Likewise.
        (objc_layout_finish_structure): Likewise.

2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR libobjc/25347
        * objc.dg/encode-8.m: New test.

From-SVN: r108379
2005-12-10 22:59:12 -08:00
Andrew Pinski 153b4898d2 re PR libobjc/25346 (objc_sizeof_type does not handle _Bool at all)
2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR libobjc/25346
        * objc/objc-api.h (_C_BOOL): New define.
        * encoding.c (objc_sizeof_type): Handle _C_BOOL.
        (objc_alignof_type): Likewise.
        (objc_skip_typespec): Likewise.

2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR libobjc/25346
        * objc.dg/encode-7.m: New test.

From-SVN: r108378
2005-12-10 22:28:35 -08:00
Mark Mitchell b91365538a re PR c++/25010 (Segmentation fault (infinite recursion in cgraph_clone_inlined_nodes))
PR c++/25010
	* ipa-inline.c (cgraph_clone_inlined_nodes): Do not assume that
	DECL_EXTERNAL functions have no bodies.  Tidy.
	PR c++/25010
	* g++.dg/opt/inline10.C: New test.

From-SVN: r108377
2005-12-11 04:24:50 +00:00
Mark Mitchell 40805a12e4 re PR c++/25010 (Segmentation fault (infinite recursion in cgraph_clone_inlined_nodes))
PR c++/25010
	* ipa-inline.c (cgraph_clone_inlined_nodes): Do not assume that
	DECL_EXTERNAL functions have no bodies.  Tidy.
	PR c++/25010
	* g++.dg/opt/inline10.C: New test.

From-SVN: r108375
2005-12-11 04:16:32 +00:00
Terry Laurenzo 92aed1cbf4 Fixes java/PR9861
From-SVN: r108374
2005-12-11 01:34:02 +00:00
Paolo Carlini b6105bf2c3 sso_string_base.h (__sso_string_base<>::_M_compare): Add...
2005-12-10  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_compare):
	Add, specialized for char and wchar_t to immediately return true
	when a string is compared to itself.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_compare):
	Likewise, for the same _Rep.
	* include/ext/vstring.h (compare(const string&)): Use it.

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_destroy):
	Deallocate passed size + 1.
	(_M_dispose, _M_reserve): Adjust.

From-SVN: r108372
2005-12-11 00:41:29 +00:00
Steven G. Kargl 42e25796b5 Fix testsuite after this commit:
2005-12-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>

    PR fortran/25068
    * gfortran.dg/iostat_3.f90: New test.

From-SVN: r108371
2005-12-11 00:39:14 +00:00
GCC Administrator 12c21b1d14 Daily bump.
From-SVN: r108368
2005-12-11 00:17:11 +00:00