Commit Graph

94168 Commits

Author SHA1 Message Date
Martin Jambor a550d677f5 cgraph.c (cgraph_node_can_be_local_p): New function.
2009-06-10  Martin Jambor  <mjambor@suse.cz>

	* cgraph.c (cgraph_node_can_be_local_p): New function.
	(cgraph_make_node_local): New function.
	* cgraph.h (cgraph_node_can_be_local_p): Declare.
	(cgraph_make_node_local): Declare.

From-SVN: r148349
2009-06-10 18:43:24 +02:00
Nathan Froyd d8259b07b0 tree.h (tree_base): Add packed_flag and user_align fields.
gcc/
	* tree.h (tree_base): Add packed_flag and user_align fields.
	Decrease size of spare field.
	(TYPE_USER_ALIGN): Use user_align from tree_base.
	(DECL_USER_ALIGN): Likewise.
	(TYPE_PACKED): Use packed_flag from tree_base.
	(DECL_PACKED): Likewise.
	(tree_type): Delete packed_flag and user_align fields.  Widen
	precision field.  Widen mode field and shuffle fields to align
	mode on an 8-bit boundary.
	(tree_decl_common): Delete decl_flag_1 and user_align fields.
	Renumber decl_flag_* fields.  Fix comments.  Widen
	decl_common_unused field.
	(DECL_HAS_VALUE_EXPR_P): Adjust for renumbering of decl_flag_*
	fields.
	(DECL_EXTERNAL): Likewise.
	(DECL_BIT_FIELD): Likewise.
	(DECL_NONADDRESSABLE_P): Likewise.
	(TYPE_DECL_SUPRESS_DEBUG): Likewise.
	* config/arm/arm-modes.def (XImode): Make it an INT_MODE.

gcc/testsuite/
	* gcc.target/arm/neon-modes-1.c: New test.

From-SVN: r148348
2009-06-10 16:31:29 +00:00
Ian Lance Taylor c25696045a vec.h (DEF_VEC_ALLOC_I): Use DEF_VEC_NONALLOC_FUNCS_I.
* vec.h (DEF_VEC_ALLOC_I): Use DEF_VEC_NONALLOC_FUNCS_I.
	(DEF_VEC_ALLOC_P): Use DEF_VEC_NONALLOC_FUNCS_P.
	(DEF_VEC_ALLOC_O): Use DEF_VEC_NONALLOC_FUNCS_O.
	(DEF_VEC_ALLOC_FUNC_P): Only define VEC_OP (T,A,alloc).
	(DEF_VEC_NONALLOC_FUNCS_P): New macro, broken out of old
	DEF_VEC_ALLOC_FUNC_P.
	(DEF_VEC_ALLOC_FUNC_O): Only define VEC_OP (T,A,alloc).
	(DEF_VEC_NONALLOC_FUNCS_O): New macro, broken out of old
	DEF_VEC_ALLOC_FUNC_O.
	(DEF_VEC_ALLOC_FUNC_I): Only define VEC_OP (T,A,alloc).
	(DEF_VEC_NONALLOC_FUNCS_I): New macro, broken out of old
	DEF_VEC_ALLOC_FUNC_I.
	(vec_stack_p_reserve, vec_stack_p_reserve_exact): Declare.
	(vec_stack_p_reserve_exact_1): Declare.
	(vec_stack_o_reserve, vec_stack_o_reserve_exact): Declare.
	(vec_stack_free): Declare.
	(VEC_stack_alloc): Define.
	(DEF_VEC_ALLOC_P_STACK, DEF_VEC_ALLOC_FUNC_P_STACK): Define.
	(DEF_VEC_ALLOC_O_STACK, DEF_VEC_ALLOC_FUNC_O_STACK): Define.
	(DEF_VEC_ALLOC_I_STACK, DEF_VEC_ALLOC_FUNC_I_STACK): Define.
	* vec.c (void_p): New type.  Call DEF_VEC_P and DEF_VEC_ALLOC_P
	for void_p.
	(stack_vecs): New static variable.
	(vec_stack_p_reserve_exact_1): New function.
	(vec_stack_o_reserve_1): New static function.
	(vec_stack_p_reserve, vec_stack_p_reserve_exact): New functions.
	(vec_stack_o_reserve, vec_stack_o_reserve_exact): New functions.
	(vec_stack_free): New function.
	* df-scan.c (df_ref): Use DEF_VEC_P and DEF_VEC_ALLOC_P_STACK.
	(VEC_df_ref_stack_alloc): Define.
	(df_mw_hardreg_ptr): New type.  Use DEF_VEC_P and
	DEF_VEC_ALLOC_P_STACK.
	(VEC_df_mw_hardreg_ptr_stack_alloc): Define.
	(struct df_collection_rec): Change _vec fields to VEC.  Remove
	_use fields.
	(df_free_collection_rec): Adjust for new fields.
	(df_insn_rescan): Use new df_collection_rec fields.
	(df_notes_rescan, df_canonize_collection_rec): Likewise.
	(df_ref_create_structure, df_ref_record): Likewise.
	(df_get_conditional_uses, df_get_call_refs): Likewise.
	(df_insn_refs_collect, df_bb_refs_collect): Likewise.
	(df_bb_refs_record, df_record_entry_block_defs): Likewise.
	(df_record_exit_block_uses, df_bb_verify): Likewise.
	(df_swap_refs): Change ref_vec parameter to VEC.  Change all
	callers.
	(df_sort_and_compress_refs): Change ref_vec parameter to VEC.
	Remove count parameter.  Change return type to void.  Change all
	callers.
	(df_sort_and_compress_mws): Change mw_vec parameter to VEC.
	Remove count parameter.  Change return type to void.  Change all
	callers.
	(df_install_refs): Change old_vec parameter to VEC.  Remove count
	parameter.  Change all callers.
	(df_install_mws): Change old_vec parameter to VEC.  Remove count
	parameter.  Change all callers.
	(df_refs_verify): Change new_rec parameter to VEC.  Change call
	callers.
	(df_mws_verify): Likewise.

From-SVN: r148347
2009-06-10 16:21:03 +00:00
Alexandre Oliva e7aae3e8df * gcc.c (compare_files): Cast munmap argumento to caddr_t.
From-SVN: r148346
2009-06-10 12:55:34 +00:00
Eric Botcazou c244bf8f9f decl.c (gnat_to_gnu_entity): Use a reference to the original type for the type of the field of the XVS type.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
	a reference to the original type for the type of the field of the
	XVS type.
	(maybe_pad_type): Likewise.

	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
	common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
	Pass correctly typed arguments to create_field_decl.
	<E_Record_Subtype>: Set BLKmode for tagged and limited types in the
	case of contrained discriminants as well.  Use the padded base type
	in the other case as well.  Rename temporary variable.  Tweak test.
	Factor common access pattern.  Set GNU_SIZE only once.

From-SVN: r148345
2009-06-10 12:52:13 +00:00
Dave Korn f788ca8980 trans-decl.c (create_main_function): Don't build main decl twice.
2009-06-10  Dave Korn  <dave.korn.cygwin@gmail.com>

        * trans-decl.c (create_main_function):  Don't build main decl twice.

From-SVN: r148344
2009-06-10 14:34:10 +02:00
Ian Lance Taylor b0cde35bbd * verify.h: Remove extern "C".
From-SVN: r148343
2009-06-10 11:55:21 +00:00
Kai Tietz c9edd8f4cf pr31579.C: Cast pointer via __SIZE_TYPE__ instead of 'unsigned long'.
2009-06-10  Kai Tietz  <kai.tietz@onevision.com>

        * g++.dg/torture/pr31579.C: Cast pointer
        via __SIZE_TYPE__ instead of 'unsigned long'.

From-SVN: r148342
2009-06-10 13:41:30 +02:00
H.J. Lu 412ac8d55e extend.texi: Add description for __builtin_ia32_crc32di.
2009-06-10  H.J. Lu  <hongjiu.lu@intel.com>

	* doc/extend.texi: Add description for __builtin_ia32_crc32di.

From-SVN: r148341
2009-06-10 03:33:48 -07:00
Anthony Green 2cd04f4d7a Finish committing moxie port
From-SVN: r148340
2009-06-10 05:46:07 +00:00
Anthony Green cceb575c43 Commit moxie port.
From-SVN: r148339
2009-06-10 05:23:39 +00:00
Benjamin Kosnik fd9380a6cd move.h: Doxygen group fixes.
2009-06-09  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/move.h: Doxygen group fixes.

From-SVN: r148337
2009-06-10 02:14:32 +00:00
Ian Lance Taylor bf4066870d system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if compiling with C++.
* system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if
	compiling with C++.
	* optabs.c (optab_table): Only use designated initializers if
	HAVE_DESIGNATED_INITIALIZERS is defined.
	(convert_optab_table): Likewise.
	(init_optabs): Always call init_insn_codes if
	HAVE_DESIGNATED_INITIALIZERS is not defined.

From-SVN: r148336
2009-06-10 02:01:06 +00:00
Ian Lance Taylor 780ca5bf71 * ansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define for C++.
From-SVN: r148333
2009-06-10 01:48:14 +00:00
GCC Administrator f7bc95cd37 Daily bump.
From-SVN: r148332
2009-06-10 00:16:53 +00:00
Francois-Xavier Coudert fdfbd469f4 inclhack.def (darwin_stdint_1, [...]): New fixes.
* inclhack.def (darwin_stdint_1, darwin_stdint_2,
	darwin_stdint_3, darwin_stdint_4): New fixes.
	* tests/base/stdint.h: Adjust test results for new fixes.
	* fixincl.x: Regenerate.

From-SVN: r148328
2009-06-09 22:09:58 +00:00
Ian Lance Taylor 744aa42fab targhooks.c (default_builtin_vectorized_function): Change fn parameter to unsigned int.
./:	* targhooks.c (default_builtin_vectorized_function): Change fn
	parameter to unsigned int.
	(default_builtin_vectorized_conversion): Change code parameter to
	unsigned int.
	(default_builtin_reciprocal): Change fn parameter to unsigned int.
	* targhooks.h: Update declarations.
	* config/rs6000/rs6000.c (rs6000_builtin_conversion): Change code
	parameter to unsigned int.

	* c-typeck.c (comptypes_check_enum_int): New static function.
	(comptypes_internal): Add enum_and_int_p parameter.  Change all
	callers.
	(comp_target_types): Add location parameter.  Change all callers.
	(tagged_types_tu_compatible_p): Add enum_and_int_p parameter.
	Change all callers.
	(function_types_compatible_p, type_lists_compatible_p): Likewise.
	(build_conditional_expr): Add colon_loc parameter.  Change all
	callers.
	(convert_for_assignment): Add location parameter.  Change all
	callers.
	* c-parser.c (c_parser_conditional_expression): Pass location of
	colon to build_conditional_expr.
	* c-tree.h (build_conditional_expr): Update declaration.
objc/:
	* objc-act.c (objc_gimplify_expr): Change return type to int.
	* objc-act.h: Update declaration.
testsuite/:
	* gcc.dg/Wcxx-compat-12.c: New testcase.

From-SVN: r148325
2009-06-09 20:34:13 +00:00
Janne Blomqvist a3f2b83383 PR libfortran/40334 backspace regression
From-SVN: r148324
2009-06-09 23:29:33 +03:00
Ghassan Shobaki e5871e24c1 MAINTAINERS: Added my name to the write-after-approval list
2009-06-09  Ghassan Shobaki  <ghassan.shobaki@amd.com>

        * MAINTAINERS: Added my name to the write-after-approval list

From-SVN: r148322
2009-06-09 18:39:31 +00:00
Sebastian Pop bcbe3b255e graphite.c: Revert previous patch.
2009-06-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite.c: Revert previous patch.

From-SVN: r148321
2009-06-09 18:20:52 +00:00
Jason Merrill 869fef887f re PR c++/40381 (Revision 142379 caused ICE with deleted functions)
PR c++/40381
	* decl2.c (mark_used): Return after complaining about deleted fn.

From-SVN: r148319
2009-06-09 14:18:45 -04:00
Sebastian Pop dc2a6925a1 re PR bootstrap/40103 (CLooG header files are not -Wc++-compat ready)
2009-06-09  Sebastian Pop  <sebastian.pop@amd.com>

	PR bootstrap/40103
	* graphite.c: Remove pragma GCC diagnostic warning "-Wc++-compat".

From-SVN: r148318
2009-06-09 17:30:23 +00:00
Tobias Burnus ebcbc56dd2 trans-decl.c (gfc_generate_function_code): Use
2009-06-09  Tobias Burnus  <burnus@net-b.de>

        * trans-decl.c (gfc_generate_function_code): Use
        * gfc_option.rtcheck
        instead of flag_bounds_check.
        * intrinsic.texi (ISO_FORTRAN_ENV): Document INT{8,16,32,64} and
        REAL{32,64,128}.

From-SVN: r148317
2009-06-09 19:21:45 +02:00
Ghassan Shobaki d81f5387a1 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com>
* tree-ssa-loop-prefetch.c
        (loop_prefetch_arrays): Fixed a portability problem in printf format
        string.

From-SVN: r148316
2009-06-09 17:00:31 +00:00
Martin Jambor 8056eb4f3b re PR tree-optimization/40351 (ice in generate_subtree_copies for Linux kernel build)
2009-06-09  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/40351
	* tree-sra.c (propagate_subacesses_accross_link): Check that a refrence
	to a potential artifical subaccess can be constructed.

	* testsuite/gcc.c-torture/compile/pr40351.c: New file.

From-SVN: r148315
2009-06-09 18:52:57 +02:00
Olivier Hainque ff346f7075 utils2.c (build_call_alloc_dealloc_proc): New helper for build_call_alloc_dealloc with arguments to be interpreted...
ada/
        * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
        helper for build_call_alloc_dealloc with arguments to be interpreted
        identically.  Process the case where a GNAT_PROC to call is provided.
        (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
        and return an allocator for DATA_SIZE bytes aimed at containing a
        DATA_TYPE object, using the default __gnat_malloc allocator.  Honor
        DATA_TYPE alignments greater than what the latter offers.
        (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
        release a DATA_TYPE object designated by DATA_PTR using the
        __gnat_free entry point.
        (build_call_alloc_dealloc): Expect object data type instead of naked
        alignment constraint. Use the new helpers.
        (build_allocator): Remove special processing for the super-aligned
        case, now handled by build_call_alloc_dealloc.  Pass data type instead
        of the former alignment argument, as expected by the new interface.
        * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
        and comment.
        * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
        Remove special processing for the super-aligned case, now handled
        by build_call_alloc_dealloc.  Pass data type instead of the former
        alignment argument, as expected by the new interface.

        testsuite/
        * gnat.dg/align_max.adb: New test.

From-SVN: r148314
2009-06-09 15:32:03 +00:00
Andrew Haley 6aa0b21841 freebsd.S: Add missing file.
2009-06-09  Andrew Haley  <aph@redhat.com>

        * src/x86/freebsd.S: Add missing file.

From-SVN: r148313
2009-06-09 15:23:38 +00:00
Nathan Froyd 479c15c22a Makefile.am (LTLDFLAGS): Define.
* Makefile.am (LTLDFLAGS): Define.
	(LINK): Define.
	* Makefile.in: Regenerate.

From-SVN: r148311
2009-06-09 14:37:31 +00:00
Andrew Haley b7b857bbe2 Import from libffi 3.0.8:
2009-06-08  Andrew Haley  <aph@redhat.com>

	Import from libffi 3.0.8:

	* doc/libffi.texi: New file.
	* doc/libffi.info: Likewise.
	* doc/stamp-vti: Likewise.
	* man/Makefile.am: New file.
	* man/ffi_call.3: New file.

	* Makefile.am (EXTRA_DIST): Add src/x86/darwin64.S,
	src/dlmalloc.c.
	(nodist_libffi_la_SOURCES): Add X86_FREEBSD.

	* configure.ac: Bump version to 3.0.8.
	parisc*-*-linux*: Add.
	i386-*-freebsd* | i386-*-openbsd*: Add.
	powerpc-*-beos*: Add.
	AM_CONDITIONAL X86_FREEBSD: Add.
	AC_CONFIG_FILES: Add man/Makefile.

	* include/ffi.h.in (FFI_FN): Change void (*)() to void (*)(void).

From-SVN: r148309
2009-06-09 10:21:19 +00:00
Jason Merrill 3dbbb7af5b parser.c (cp_parser_type_id_1): 'auto' type is ok with a late-specified return type.
* parser.c (cp_parser_type_id_1): 'auto' type is ok with a
	late-specified return type.

From-SVN: r148306
2009-06-09 00:18:54 -04:00
GCC Administrator 92b672095e Daily bump.
From-SVN: r148302
2009-06-09 00:16:49 +00:00
Kaz Kojima bd9a3465f1 sh-protos.h (sh_optimization_options): Declare.
* config/sh/sh-protos.h (sh_optimization_options): Declare.
	(sh_override_options): Likewise.
	* config/sh/sh.c: Include params.h.
	(sh_optimization_options): New.
	(sh_override_options): Likewise.
	* config/sh/sh.c (OPTIMIZATION_OPTIONS): Use sh_optimization_options.
	(OVERRIDE_OPTIONS): Use sh_override_options.

From-SVN: r148299
2009-06-08 23:40:09 +00:00
Jakub Jelinek 8845deabba dwarf2out.c (emit_cfa_remember): New variable.
* dwarf2out.c (emit_cfa_remember): New variable.
	(add_fde_cfi): If emit_cfa_remember, recurse to add
	DW_CFA_remember_state first.
	(dwarf2out_begin_epilogue): Don't add_fde_cfi DW_CFA_remember_state,
	instead just set emit_cfa_remember.

From-SVN: r148298
2009-06-09 00:39:32 +02:00
Paul Thomas d7f26adfaf Update ChangeLog for commit Rev. 148290
From-SVN: r148296
2009-06-08 22:14:26 +02:00
Jan Hubicka 9ea81b0cae re PR debug/40126 (-O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section})
PR debug/40126
	* dwarf2out.c (dwarf2out_abstract_function): Free decl_loc_table.

From-SVN: r148293
2009-06-08 19:25:51 +00:00
Jan Hubicka 21ecdec5db re PR middle-end/39834 (verify_cgraph_node failed with -O3 -Winline)
PR debug/39834
	* gcc.dg/torture/pr39834.c
	PR middle-end/39834
	* cgraphunit.c (save_inline_function_body): Do not copy transform hooks
	for saved inline bodies.
	* ipa-passes.c (do_per_function): Do not add the hoks multiple times
	for given function.

From-SVN: r148292
2009-06-08 19:21:33 +00:00
Paul Thomas 568e8e1e73 trans-array.h: Replace prototypes for gfc_conv_descriptor_offset...
2009-06-08  Paul Thomas  <pault@gcc.gnu.org>

	* trans-array.h : Replace prototypes for
	gfc_conv_descriptor_offset, gfc_conv_descriptor_stride,
	gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound with new
	prototypes of the same names with _get or _set appended.
	* trans-array.c : Make the originals of the above static and
	new functions for the _get and _set functions. Update all the
	references to these descriptor access functions.
	* trans-expr.c : Update references to the above descriptor
	access functions.
	* trans-intrinsic.c : The same.
	* trans-openmp.c : The same.
	* trans-stmt.c : The same.

From-SVN: r148290
2009-06-08 18:50:37 +00:00
Adam Nemet 72e4821846 jump.c (returnjump_p): Handle delayed branches.
* jump.c (returnjump_p): Handle delayed branches.  Add missing
	function comment.

From-SVN: r148289
2009-06-08 18:49:17 +00:00
Jan Hubicka 6ce2002b03 re PR middle-end/40102 (Revision 147294 caused ICE: verify_cgraph_node)
PR middle-end/40102
	* cgraph.c (cgraph_create_edge_including_clones): Also asume that the
	original node might've been modified.
	* tree-inline.c (copy_bb): Do not assume that all clones are the same.

	PR middle-end/40102
	* g++.dg/torture/pr40102.C: New testcase.

From-SVN: r148287
2009-06-08 17:17:52 +00:00
Andrew Haley 491e6ad11c README: Import from libffi 3.0.8.
2009-06-08  Andrew Haley  <aph@redhat.com>

	* README: Import from libffi 3.0.8.

From-SVN: r148286
2009-06-08 17:16:16 +00:00
Andrew Haley 3b5b1a73fa [multiple changes]
2009-06-08  Andrew Haley  <aph@redhat.com>

	* testsuite/libffi.call/err_bad_abi.c: Add xfails.
	* testsuite/libffi.call/cls_longdouble_va.c: Add xfails.
	* testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*.
	* testsuite/libffi.call/err_bad_typedef.c: Add xfails.

	* testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args.
	* testsuite/libffi.call/stret_medium.c: Likewise.
	* testsuite/libffi.call/stret_large2.c: Likewise.
	* testsuite/libffi.call/stret_large.c:  Likewise.

2008-12-26  Timothy Wall  <twall@users.sf.net>

        * testsuite/libffi.call/cls_longdouble.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_align_longdouble.c,
        testsuite/libffi.call/cls_align_longdouble_split.c,
        testsuite/libffi.call/cls_align_longdouble_split2.c: mark expected
        failures on x86_64 cygwin/mingw.

2008-12-22  Timothy Wall  <twall@users.sf.net>

        * testsuite/libffi.call/closure_fn0.c,
        testsuite/libffi.call/closure_fn1.c,
        testsuite/libffi.call/closure_fn2.c,
        testsuite/libffi.call/closure_fn3.c,
        testsuite/libffi.call/closure_fn4.c,
        testsuite/libffi.call/closure_fn5.c,
        testsuite/libffi.call/closure_fn6.c,
        testsuite/libffi.call/closure_loc_fn0.c,
        testsuite/libffi.call/closure_stdcall.c,
        testsuite/libffi.call/cls_align_pointer.c,
        testsuite/libffi.call/cls_pointer.c,
        testsuite/libffi.call/cls_pointer_stack.c: use portable cast from
        pointer to integer (intptr_t).
        * testsuite/libffi.call/cls_longdouble.c: disable for win64.

2008-07-24  Anthony Green  <green@redhat.com>

        * testsuite/libffi.call/cls_dbls_struct.c,
        testsuite/libffi.call/cls_double_va.c,
        testsuite/libffi.call/cls_longdouble.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_pointer.c,
        testsuite/libffi.call/cls_pointer_stack.c,
        testsuite/libffi.call/err_bad_abi.c: Clean up failures from
        compiler warnings.

2008-03-04  Anthony Green  <green@redhat.com>
            Blake Chaffin
            hos@tamanegi.org

        * testsuite/libffi.call/cls_align_longdouble_split2.c
          testsuite/libffi.call/cls_align_longdouble_split.c
          testsuite/libffi.call/cls_dbls_struct.c
          testsuite/libffi.call/cls_double_va.c
          testsuite/libffi.call/cls_longdouble.c
          testsuite/libffi.call/cls_longdouble_va.c
          testsuite/libffi.call/cls_pointer.c
          testsuite/libffi.call/cls_pointer_stack.c
          testsuite/libffi.call/err_bad_abi.c
          testsuite/libffi.call/err_bad_typedef.c
          testsuite/libffi.call/stret_large2.c
          testsuite/libffi.call/stret_large.c
          testsuite/libffi.call/stret_medium2.c
          testsuite/libffi.call/stret_medium.c: New tests from Apple.

From-SVN: r148285
2009-06-08 17:03:31 +00:00
Jakub Jelinek b792a33ca4 re PR c++/40373 (ICE with invalid destructor call)
PR c++/40373
	* call.c (check_dtor_name): Return false even if
	get_type_value (name) is error_mark_node.

	* g++.dg/template/dtor7.C: New test.

From-SVN: r148282
2009-06-08 18:48:11 +02:00
Kaveh R. Ghazi 5f4a82c0c5 configure.ac: Detect MPC in default directory.
* configure.ac: Detect MPC in default directory.
	* configure: Regenerate.

From-SVN: r148280
2009-06-08 16:30:30 +00:00
Jakub Jelinek eb9ed98a95 tree-object-size.c (addr_object_size): Add OSI argument.
* tree-object-size.c (addr_object_size): Add OSI argument.
	Handle also INDIRECT_REF with SSA_NAME inside of it as base address.
	(compute_builtin_object_size, expr_object_size): Adjust callers.
	(plus_stmt_object_size): Call addr_object_size instead of
	compute_builtin_object_size.

	* gcc.dg/builtin-object-size-2.c (test1): Adjust expected results.
	* gcc.dg/builtin-object-size-4.c (test1): Adjust expected results.
	* gcc.dg/builtin-object-size-6.c: New test.

From-SVN: r148279
2009-06-08 18:28:38 +02:00
Jakub Jelinek 85a988d14e re PR c++/40370 (ICE with invalid array bound in template class)
PR c++/40370
	PR c++/40372
	* parser.c (cp_parser_direct_declarator): Don't set TREE_SIDE_EFFECTS
	on error_mark_node.  Check for VLAs outside of function context
	before check whether to wrap bounds into a NOP_EXPR with
	TREE_SIDE_EFFECTS.

	* g++.dg/template/error41.C: New test.
	* g++.dg/template/error42.C: New test.

From-SVN: r148278
2009-06-08 18:26:01 +02:00
Ghassan Shobaki db34470d17 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com>
Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
        
        * tree-ssa-loop-prefetch.c 
        (gather_memory_references): Introduced a counter for the number of 
        memory references.
        (anything_to_prefetch_p): Introduced a counter for the number of 
        prefetches.
        (is_loop_prefetching_profitable): New function with a cost model 
        for prefetching.
        (loop_prefetch_arrays): Use the new cost model to determine if 
        prefetching is profitable.
        * params.def (MIN_INSN_TO_PREFETCH_RATIO, 
        PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.
        * params.h (MIN_INSN_TO_PREFETCH_RATIO, 
        PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.
        * doc/invoke.texi (MIN_INSN_TO_PREFETCH_RATIO, 
        PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.


Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>

From-SVN: r148277
2009-06-08 16:00:13 +00:00
Paolo Carlini b01630bb3d random.tcc (gamma_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Redo, using the Marsaglia/Tsang algorithm.
2009-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/random.tcc (gamma_distribution<>::operator()
	(_UniformRandomNumberGenerator&, const param_type&): Redo, using
	the Marsaglia/Tsang algorithm.
	(gamma_distribution<>::param_type::_M_initialize): Adjust.
	(operator<<(basic_ostream<>&, gamma_distribution<>),
	operator>>(basic_ostream<>&, gamma_distribution<>): Likewise.

	* include/bits/random.tcc(student_t_distribution<>::_M_gaussian):
	Remove, just use normal_distribution.
	(operator<<(basic_ostream<>&, student_t_distribution<>),
	operator>>(basic_ostream<>&, student_t_distribution<>): Adjust.
	(linear_congruential_engine<>::operator()()): Move inline.
	(lognormal_distribution<>::operator()(_UniformRandomNumberGenerator&,
	const param_type&)): Move inline, just use normal_distribution.
	(operator<<(basic_ostream<>&, lognormal_distribution<>),
	operator>>(basic_ostream<>&, lognormal_distribution<>): Adjust.
	(weibull_distribution<>::operator()(_UniformRandomNumberGenerator&,
	const param_type&)): Move here, out of line.
	(piecewise_constant_distribution<>::param_type::param_type()): Move
	inline.
	* include/bits/random.h: Adjust, minor tweaks.

From-SVN: r148276
2009-06-08 14:38:48 +00:00
Revital Eres 06ddd8716e re PR testsuite/40359 (Revision 148211 caused a lot of failures in the vect test suite.)
PR40359

From-SVN: r148275
2009-06-08 13:26:44 +00:00
Michael Matz eb7adebcd8 re PR debug/40012 (Revision 146817 generated bad debug info for local variables)
PR debug/40012

        * cfgexpand.c (set_rtl): Store place also in DECL_RTL, if all
        partitions use the same.
        (expand_one_var): Deal with DECL_RTL sometimes begin set also
        for basevars of SSA_NAMEs.
        (expand_used_vars): Reset TREE_USED for basevars of SSA_NAMEs,
        to not expand them twice.
        (gimple_expand_cfg): Clear DECL_RTL for those decls that have
        multiple places.

From-SVN: r148273
2009-06-08 11:37:12 +00:00
Alexandre Oliva 2153915d0a common.opt (fcompare-debug=, [...]): New.
gcc/ChangeLog:
* common.opt (fcompare-debug=, fcompare-debug-second): New.
(fdump-final-insns=, gtoggle): New.
* doc/invoke.texi: Document them.
* final.c (rest_of_clean_state): Dump final insn stream.
* gcc.c (invoke_as): Hook in -fcompare-debug.
(static_spec_functions): Add compare-debug-dump-opt,
compare-debug-self-opt and compare-debug-auxbase-opt.
(compare_debug, compare_debug_second, compare_debug_opt): New.
(switches_debug_check, n_switches_debug_check): New.
(debug_auxbase_opt, debug_check_temp_file): New.
(process_command): Handle -fno-compare-debug, -fcompare-debug and
-fcompare-debug=*.
(do_self_spec): Handle arguments after switches.
(do_spec_1): Add .gk extension to temp file basenames for compare.
(check_live_switch): Take SWITCH_IGNORE into account, and earlier.
(cc1_options): Use it instead of normal auxbase computation for
the second compare-debug compilation.
(compare_files): New.
(main): Set up and implement compare debug mode.
(compare_debug_dump_opt_spec_function): New.
(compare_debug_self_opt_spec_function): New.
(compare_debug_auxbase_opt_spec_function): New.
* toplev.c (process_options): Handle flag_gtoggle,
flag_dump_final_insns.
* coverage.c (coverage_begin_output): Don't overwrite .gcno file
during -fcompare-debug-second compilation.
gcc/cp/ChangeLog:
* repo.c (get_base_filename): Use aux_base_name rather than
alternate temporary file during second compare debug compilation.
(finish_repo): Skip during -fcompare-debug-second.
gcc/ada/ChangeLog:
* lib-writ.adb (flag_compare_debug): Import.
(Write_ALI): Skip during -fcompare-debug-second.
gcc/fortran/ChangeLog:
* options.c (gfc_post_options): Disable dump_parse_tree
during -fcompare-debug-second.
gcc/objc/ChangeLog:
* objc-act.c (objc_init): Skip print_struct_values during
-fcompare-debug-second.

From-SVN: r148271
2009-06-08 07:46:02 +00:00