Commit Graph

113458 Commits

Author SHA1 Message Date
Fabien Chêne
52e4e221bd re PR c++/51141 (rev181359 causes Chromium build failure)
gcc/testsuite/ChangeLog

2011-11-18  Fabien Chene  <fabien@gcc.gnu.org>

	PR c++/51141
	* g++.dg/lookup/using46.C: New.
	* g++.dg/lookup/using47.C: New.
	* g++.dg/lookup/using48.C: New.
	* g++.dg/lookup/using49.C: New.
	* g++.dg/lookup/using50.C: New.

gcc/cp/ChangeLog

2011-11-18  Fabien Chene  <fabien@gcc.gnu.org>

	PR c++/51141
	* search.c (lookup_field_1): Handle USING_DECLs for the storted
	case.

From-SVN: r181490
2011-11-18 19:44:23 +01:00
Ulrich Weigand
4a0051e4db pr44707.c: Do not assume assembler supports /* ...
* gcc.c-torture/compile/pr44707.c: Do not assume assembler
	supports /* ... */ comments.

From-SVN: r181489
2011-11-18 18:17:05 +00:00
Georg-Johann Lay
7bc6df2ca1 re PR target/49868 (Implement named address space to place/access data in flash memory)
gcc/
	PR target/49868
	* config/avr/avr.h (base_arch_s): Add field n_segments.
	(ADDR_SPACE_PGM1, ADDR_SPACE_PGM2, ADDR_SPACE_PGM3,
	ADDR_SPACE_PGM4, ADDR_SPACE_PGM5, ADDR_SPACE_PGMX): New address spaces.
	(AVR_HAVE_ELPM, AVR_HAVE_ELPMX): New defines.
	(INIT_EXPANDERS): New define.
	* config/avr/avr-protos.h (avr_mem_pgmx_p): New.
	(avr_init_expanders): New.
	(avr_emit_movmemhi, avr_out_movmem): New.
	(avr_xload_libgcc_p): New.
	* config/avr/avr-c.c (avr_register_target_pragmas): Register
	address spaces __pgm1, __pgm2,  __pgm3,  __pgm4  __pgm5,  __pgmx.
	(avr_cpu_cpp_builtins): Add built-in defines __PGM1,
	__PGM2, __PGM3, __PGM4, __PGM5, __PGMX.
	* config/avr/avr-devices.c (avr_arch_types): Set field n_segments.

	* config/avr/avr.c (AVR_SECTION_PROGMEM): Change define to cover
	3 bits instead of just 1.
	(xstring_empty, xstring_e, rampz_rtx): New static GTYed variables.
	(progmem_section): Change from section to array of sections.
	(progmem_section_prefix): New static variable.
	(avr_file_start): Print set for __RAMPZ__
	(avr_option_override): Move initialization of RTXes from here...
	(avr_init_expanders): ...to this new function.
	(avr_pgm_segment): New static function.
	(avr_decl_pgm_p): Handle error_mark_node.
	(avr_mem_pgmx_p, avr_decl_pgmx_p): New static functions.
	(avr_out_xload,	avr_find_unused_d_reg): New static functions.
	(expand_prologue, expand_epilogue): Use rampz_rtx.
	(print_operand): Hande CONST_STRING.
	(avr_xload_libgcc_p): New static function.
	(avr_out_lpm_no_lpmx, avr_out_lpm): Handle ELPM.
	(avr_progmem_p): Return 2 for 24-bit flash address space.
	(avr_out_sbxx_branch): Clean-up code from ASn macros.
	(out_movqi_r_mr, out_movqi_mr_r): Ditto. And recognize RAMPZ's
	address and print symbolically.
	(avr_asm_named_section, avr_section_type_flags,
	avr_encode_section_info, avr_asm_select_section,
	avr_addr_space_address_mode, avr_addr_space_pointer_mode,
	avr_addr_space_legitimate_address_p, avr_addr_space_convert,
	avr_addr_space_legitimize_address): Handle new address spaces.
	(avr_output_progmem_section_asm_op): New static function.
	(avr_asm_init_sections): Initialize progmem_section[].
	(adjust_insn_length): Handle ADJUST_LEN_XLOAD, ADJUST_LEN_MOVMEM.
	(avr_const_address_lo16): New static function.
	(avr_assemble_integer): Use it to handle 3-byte integers.
	(avr_emit_movmemhi, avr_out_movmem): New functions.
	
	* config/avr/predicates.md (nox_general_operand): Handle new
	address spaces.
	* config/avr/avr.md (unspec): Add UNSPEC_MOVMEM.
	(adjust_len): Add xload, movmem.
	(SP_ADDR): New define_constants.
	(isa): Add "lpm", "lpmx", "elpm", "elpmx".
	(enabled): Handle them.
	(load<mode>_libgcc): New expander.
	(*load.<mode>.libgcc): Rename to load_<mode>_libgcc.
	(xload8_A, xload<mode>_A): New insn-and-splits.
	(xload_8, xload_<mode>_libgcc, xload_<mode>, loadmem_elpm): New insns.
	(mov<mode>): Handle new address spaces.
	(movmemhi): Rewrite using avr_emit_movmemhi.
	(MOVMEM_r_d): New mode attribute.
	(movmem_<mode>, movmem_qi_elpm): New insns.
	(setmemhi, *clrmemqi, *clrmemhi, strlenhi, *strlenhi): Unquote
	C-code.  Use label instead of hard-coded instrunction lengths.
	
libgcc/
	PR target/49868
	* config/avr/t-avr (LIB1ASMFUNCS): Add _xload_2 _xload_3 _xload_4.
	* config/avr/lib1funcs.S (__xload_2, __xload_3, __xload_4):
	New functions.

From-SVN: r181482
2011-11-18 16:44:00 +00:00
Rainer Orth
59659b5967 Support libitm on Solaris 8 and 9/x86 with Sun as
* config/generic/asmcfi.h: Fix comment.
	* config/x86/sjlj.S (_ITM_beginTransaction): Provide ELF PIC code
	sequence without .hidden support, error for non-ELF targets.
	(GTM_longjmp) [__ELF__]: Only use .hidden if
	HAVE_ATTRIBUTE_VISIBILITY.

From-SVN: r181481
2011-11-18 16:15:59 +00:00
Harti Brandt
919f402ca5 re PR libstdc++/51209 (The template _M_find_node in hashtable.h has a bad return value)
2011-11-18  Harti Brandt  <hartmut.brandt@dlr.de>

	PR libstdc++/51209
	* include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
	nullptr when no node is found.
	* include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
	zero when no node is found.

From-SVN: r181480
2011-11-18 16:09:29 +00:00
Paolo Carlini
112eadc763 re PR c++/51150 ([C++11][4.6/4.7 Regression] ICE when result of -> initializes const variable of different type)
/cp
2011-11-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51150
	* pt.c (tsubst_copy_and_build): Handle FIX_TRUNC_EXPR.

/testsuite
2011-11-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51150
	* g++.dg/cpp0x/pr51150.C: New.

From-SVN: r181478
2011-11-18 15:31:38 +00:00
Martin Jambor
39cc8c3d6b re PR tree-optimization/50605 (ice in ipa_get_jf_pass_through_result with -O3)
2011-11-18  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/50605
	* gimple.c (is_gimple_ip_invariant_address): Also handle MEM_REFs
	of IPA invariant decls.

	* testsuite/g++.dg/ipa/pr50605.C: New test.

From-SVN: r181477
2011-11-18 16:13:54 +01:00
Bill Schmidt
f252165363 tree-outof-ssa.c (insert_back_edge_copies): Add call to mark_dfs_back_edges.
2011-11-18  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* tree-outof-ssa.c (insert_back_edge_copies):  Add call to
	mark_dfs_back_edges.

From-SVN: r181476
2011-11-18 14:15:38 +00:00
Dodji Seketeli
0c3251f0aa PR c++/51191 - ICE on alias of alias template instantiation
gcc/cp/

	PR c++/51191
	* pt.c (primary_template_instantiation_p): Don't forget to
	consider alias declarations.

gcc/testsuite/

	PR c++/51191
	* g++.dg/cpp0x/alias-decl-13.C: New test.

From-SVN: r181475
2011-11-18 15:07:41 +01:00
Iain Sandoe
590175d228 re PR target/50678 (FAIL: c52104y on x86_64-apple-darwin10)
gcc/ada:

	PR target/50678
	* init.c (__gnat_error_handler) [Darwin]: Move work-around to the
	bug filed as radar #10302855 from __gnat_error_handler ...
	... to (__gnat_adjust_context_for_raise) [Darwin]: New.
	(HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE) [Darwin]: Define.
	(__gnat_error_handler) [Darwin]: Use __gnat_adjust_context_for_raise.

From-SVN: r181474
2011-11-18 13:19:25 +00:00
Paolo Carlini
72f1c34bd4 hash-long-double-aux.cc: Rename to...
2011-11-18  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/hash-long-double-aux.cc: Rename to...
	* src/hash-long-double-tr1-aux.cc: ... this.
	* src/compatibility-ldbl.cc: Adjust.
	* src/hash_tr1.cc: Likewise.
	* src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
	* include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
	for integer types, hash<float>::operator(), hash<double>::operator(),
	hash<long double>::operator()): Declare noexcept.
	* include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
	* include/debug/vector (hash<__debug::vector>::operator()): Likewise.
	* include/std/system_error (hash<error_code>::operator()): Likewise.
	* include/std/thread (hash<thread::id>::operator()): Likewise.
	* include/std/bitset (hash<bitset>::operator()): Likewise.
	* include/std/typeindex (hash<type_index>::operator()): Likewise.
	* include/profile/bitset (hash<__profile::vector>::operator()):
	Likewise.
	* include/profile/vector (hash<__profile::vector>::operator()):
	Likewise.
	* include/ext/vstring.h (hash<__vstring>::operator(),
	hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
	hash<__u32vstring>::operator()): Likewise.
	* include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
	* include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
	Likewise.
	* include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
	* include/bits/basic_string.h (hash<string>::operator(),
	hash<wstring>::operator(), hash<u16string>::operator(),
	hash<u32string>::operator()): Likewise.
	* include/bits/vector.tcc (hash<vector>::operator()): Likewise.
	* include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
	* libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
	throw().

From-SVN: r181473
2011-11-18 12:37:06 +00:00
Tristan Gingold
1e1ae0afd8 re PR target/49992 (lto-bootstrap reveals duplicate symbols on x86_64-apple-darwin11)
gcc/ada:

2011-11-18  Tristan Gingold  <gingold@adacore.com>
	    Iain Sandoe  <iains@gcc.gnu.org>

	PR target/49992
	* mlib-tgt-specific-darwin.adb (Archive_Indexer_Options): Remove.
	* gcc-interface/Makefile.in (darwin): Remove ranlib special-casing
	for Darwin.


Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>

From-SVN: r181470
2011-11-18 10:54:21 +00:00
Iain Sandoe
10eb188cac re PR target/49992 (lto-bootstrap reveals duplicate symbols on x86_64-apple-darwin11)
toplevel:

	PR target/49992
	* configure.ac: Remove ranlib special-casing for Darwin.
	* configure: Regenerate.

gcc:

	PR target/49992
	* configure.ac: Remove ranlib special-casing for Darwin.
	* configure: Regenerate.

From-SVN: r181469
2011-11-18 10:52:32 +00:00
Uros Bizjak
fff6a306ae re PR tree-optimization/51118 (ICE: tree check: expected tree that contains ‘typed’ structure, have ‘block’ in fold_checksum_tree, at fold-const.c:14160)
PR tree-optimization/51118
	* fold-const.c (fold_checksum_tree): Check for TS_TYPED structure
	before using TREE_TYPE accessor on expr.

From-SVN: r181468
2011-11-18 10:54:02 +01:00
Jiangning Liu
f11656db09 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r181467
2011-11-18 07:44:19 +00:00
Jan Hubicka
108879aa86 re PR target/51134 (x86 memset/memcpy expansion is broken)
PR bootstrap/51134
	* i386.c (atom_cost): Fix 32bit memset description.
	(expand_set_or_movmem_via_loop_with_iter): Output proper bounds check for epilogue loops.
	(expand_movmem_epilogue): Handle epilogues up to size 15 w/o producing byte loop.
	(decide_alg): sse_loop is not useable wthen SSE2 is disabled; when not optimizing always
	use rep movsb or lincall; do not produce word sized loops when optimizing memset for
	size (to avoid need for large constants).
	(ix86_expand_movmem): Get into sync with ix86_expand_setmem; choose unroll factors
	better; always do 128bit moves when producing SSE loops; do not produce loopy epilogue
	when size is too small.
	(promote_duplicated_reg_to_size): Do not look into desired alignments when
	doing vector expansion.
	(ix86_expand_setmem): Track better when promoted value is available; choose unroll factors
	more sanely.; output loopy epilogue only when needed.

From-SVN: r181466
2011-11-18 02:18:28 +00:00
Richard Henderson
1d794721ac re PR libstdc++/51181 (libstdc++.so __sync_sub_and_fetch_4 linkage error causing many test suite failures on m68k-linux)
PR libstdc++/51181
        * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
        of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.

From-SVN: r181465
2011-11-17 17:38:48 -08:00
GCC Administrator
a98f3def7e Daily bump.
From-SVN: r181464
2011-11-18 00:18:46 +00:00
Jonathan Wakely
7e8870e0aa typesizes.cc: Do not run on darwin.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
	on darwin.

From-SVN: r181460
2011-11-18 00:15:55 +00:00
Richard Henderson
f6d9912f6b Merge branch 'rth/atomic/ppc'
From-SVN: r181459
2011-11-17 14:12:31 -08:00
Jonathan Wakely
f631ae2eb1 Remove accidentally committed duplicate ChangeLog entry.
From-SVN: r181458
2011-11-17 22:10:09 +00:00
Steve Ellcey
6725cc583f re PR middle-end/51144 (r181279 possibly miscompilation of genmddeps)
2011-11-17  Steve Ellcey  <sje@cup.hp.com>

	PR middle-end/51144
	* output.h (fprint_w): Remove.
	* final.c (fprint_w): Remove.
	(output_addr_const): Change fprint_w back to fprintf.

From-SVN: r181457
2011-11-17 21:22:11 +00:00
Andrew Pinski
6c1c875d6e host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.
2011-11-17  Andrew Pinski  <apinski@cavium.com>

	* config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.

From-SVN: r181456
2011-11-17 13:01:08 -08:00
Jason Merrill
bb94892a9a re PR c++/51186 (declaring main() with auto but without --std=c++11 gives inconsistent error messages)
PR c++/51186
	* decl.c (grokdeclarator): Improve C++98 trailing return diagnostic.

From-SVN: r181455
2011-11-17 16:00:30 -05:00
Uros Bizjak
f6546dbc89 * lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.
From-SVN: r181454
2011-11-17 22:00:16 +01:00
Andrew MacLeod
e351ae8587 builtins.c (expand_builtin): Remove 4th parameter representing weak/strong mode when...
2011-11-17  Andrew MacLeod  <amacleod@redhat.com>

	* builtins.c (expand_builtin): Remove 4th parameter representing 
	weak/strong mode when __atomic_compare_exchange becomes a library call.

	* gcc.dg/atomic-generic-aux.c (__atomic_compare_exchange): Fail if 
	memory model parameters don't match expected values.
	* gcc.dg/atomic-generic.c: Pass specific memory model parameters to
	__atomic_compare_exchange.
	* gcc.dg/atomic-noinline.c: Pass specific memory model parameters to
	__atomic_compare_exchange_n.
	* gcc.dg/atomic-noinline-aux.c (__atomic_compare_exchange_2): Remove
	weak/strong parameter and fail if memory models aren't correct.

From-SVN: r181453
2011-11-17 20:51:51 +00:00
Uros Bizjak
29e339fd2e gcc-simulate-thread.exp (simulate-thread): Run on all targets.
* lib/gcc-simulate-thread.exp (simulate-thread): Run on all targets.
	Look for simulate_thread_done to determine working gdb.  Reduce timeout
	to 10 seconds and fail when timeout occurs.  Improve error messages.

From-SVN: r181452
2011-11-17 20:56:39 +01:00
Richard Henderson
c39169c82c Unify implementations of __builtin_mem_*_fence and __sync_synchronize.
* builtins.c (expand_builtin_mem_thread_fence): Remove.
	(expand_builtin_mem_signal_fence): Remove.
	(expand_builtin_atomic_thread_fence): Use expand_mem_thread_fence.
	(expand_builtin_sync_synchronize): Likewise.
	(expand_builtin_atomic_signal_fence): Use expand_mem_signal_fence.
	* optabs.c (expand_asm_memory_barrier): Split out from
	expand_builtin_mem_signal_fence.
	(expand_mem_thread_fence): New, a combination of code from
	expand_builtin_mem_thread_fence and expand_builtin_sync_synchronize.
	(expand_mem_signal_fence): Moved and renamed from
	expand_builtin_mem_signal_fence.
	(expand_atomic_exchange): Use expand_mem_thread_fence.
	(expand_atomic_load, expand_atomic_store): Likewise.
	* expr.h, optabs.h: Update decls.

From-SVN: r181451
2011-11-17 11:29:04 -08:00
Bin Cheng
cfb9952179 re PR rtl-optimization/50663 (conditional propagation missed in cprop.c pass)
PR rtl-optimization/50663
	* cprop.c (implicit_set_indexes): New global variable.
	(insert_set_in_table): Add additional parameter and record implicit
	set information.
	(hash_scan_set): Add additional parameter and pass it to above.
	(hash_scan_insn): Pass false to hash_scan_set.
	(compute_hash_table_work): Pass true to hash_scan_set.
	(compute_cprop_data): Add implicit set to AVIN of block which the
	implicit set is recorded for.
	(one_cprop_pass): Handle implicit_set_indexes array.

From-SVN: r181446
2011-11-17 17:11:16 +00:00
Jason Merrill
830dea94f2 class.c (add_implicitly_declared_members): Update move conditions.
N3203
	* class.c (add_implicitly_declared_members): Update move
	conditions.

From-SVN: r181445
2011-11-17 11:35:11 -05:00
Jason Merrill
a8e237782f re PR c++/51137 ([C++0x] [4.7 Regression] ICE with -std=c++0x and virtual inheritance)
PR c++/51137
	* class.c (build_base_path): Don't do calculation in templates.

From-SVN: r181444
2011-11-17 11:34:59 -05:00
Michael Matz
f14c43566a re PR tree-optimization/50644 (ICE in set_is_used added today)
PR middle-end/50644
	PR middle-end/50741

	* tree-ssa-live.c (mark_all_vars_used_1): Recurse only for decls of
	current function.
	(remove_unused_locals): Ditto.

testsuite/

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

From-SVN: r181443
2011-11-17 16:03:56 +00:00
Rainer Orth
d846e425c9 Provide all dummy functions in alloc_cpp.cc, eh_cpp.cc
* alloc_cpp.cc [__osf__] (_ZnwX, _ZdlPv, _ZnaX, _ZdaPv,
	_ZnwXRKSt9nothrow_t, _ZdlPvRKSt9nothrow_t, _ZdaPvRKSt9nothrow_t):
	Dummy functions.
	* eh_cpp.cc [__osf__] (__cxa_allocate_exception, __cxa_throw,
	__cxa_begin_catch, __cxa_end_catch, __cxa_tm_cleanup): Likewise.

From-SVN: r181442
2011-11-17 11:34:33 +00:00
Rainer Orth
1502e1556c Skip simulate-thread tests on all alpha targets
* lib/gcc-simulate-thread.exp (simulate-thread): Skip on
	alpha*-*-*.

From-SVN: r181441
2011-11-17 11:25:10 +00:00
Jonathan Wakely
ee42e4b6ef status_cxx2011.xml: Status of piecewise construction and ios_base::failure.
* doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
	and ios_base::failure.
	* doc/xml/manual/backwards_compatibility.xml: List headers in
	alphabetical order.

From-SVN: r181438
2011-11-17 10:14:11 +00:00
Richard Henderson
4eace304b8 Copy ALIAS_SET_MEMORY_BARRIER when creating a new MEM for atomic ops.
* config/alpha/alpha.c (alpha_split_compare_and_swap_12): Copy
	ALIAS_SET_MEMORY_BARRIER when creating a new memory.
	(alpha_split_atomic_exchange_12): Likewise.
	* config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Likewise.

From-SVN: r181436
2011-11-16 20:44:27 -08:00
David Edelsohn
00449933e6 inclhack.def (aix_once_init_[12]): New fixes.
* inclhack.def (aix_once_init_[12]): New fixes.
        * fixincl.x: Regenerate.
        * tests/base/pthread.h: Update.

From-SVN: r181434
2011-11-16 21:28:07 -05:00
GCC Administrator
091d26a69c Daily bump.
From-SVN: r181431
2011-11-17 00:18:35 +00:00
Uros Bizjak
e6972b8faa memopt-6.c: Cleanup tmedge tree dump.
* gcc.dg/tm/memopt-6.c: Cleanup tmedge tree dump.
	* gcc.dg/tm/memopt-13.c: Cleanup tmmark tree dump.
	* g++.dg/eh/array1.C: Cleanup gimple tree dump.

From-SVN: r181426
2011-11-17 00:09:17 +01:00
Tobias Burnus
c3f3495248 re PR fortran/39427 (F2003: Procedures with same name as types/type constructors)
gcc/fortran
2011-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39427
        PR fortran/37829
        * decl.c (match_data_constant, match_data_constant,
        * variable_decl,
        gfc_match_decl_type_spec, access_attr_decl,
        check_extended_derived_type, gfc_match_derived_decl,
        gfc_match_derived_decl, gfc_match_derived_decl) Modified to deal
        with DT constructors.
        * gfortran.h (gfc_find_dt_in_generic,
        gfc_convert_to_structure_constructor): New function prototypes.
        * interface.c (check_interface0, check_interface1,
        gfc_search_interface): Ignore DT constructors in generic list.
        * match.h (gfc_match_structure_constructor): Update prototype.
        * match.c (match_derived_type_spec): Ensure that one uses the DT
        not the generic function.
        * module.c (MOD_VERSION): Bump.
        (dt_lower_string, dt_upper_string): New functions.
        (find_use_name_n, find_use_operator, compare_true_names,
        find_true_name, add_true_name, fix_mio_expr, load_needed,
        read_module, write_dt_extensions, write_symbol): Changes to deal with
        different symtree vs. sym names.
        (create_derived_type): Create also generic procedure.
        * parse.c (gfc_fixup_sibling_symbols): Don't regard DT and
        * generic
        function as the same.
        * primary.c (gfc_convert_to_structure_constructor): New
        * function.
        (gfc_match_structure_constructor): Restructured; calls
        gfc_convert_to_structure_constructor.
        (build_actual_constructor, gfc_match_rvalue): Update for DT generic
        functions.
        * resolve.c (resolve_formal_arglist, resolve_structure_cons,
        is_illegal_recursion, resolve_generic_f, resolve_variable,
        resolve_fl_variable_derived, resolve_fl_derived0,
        resolve_symbol): Handle DT and DT generic constructors.
        * symbol.c (gfc_use_derived, gfc_undo_symbols,
        gen_special_c_interop_ptr, gen_cptr_param,
        generate_isocbinding_symbol, gfc_get_derived_super_type): Handle
        derived-types, which are hidden in the generic type.
        (gfc_find_dt_in_generic): New function
        * trans-array.c (gfc_conv_array_initializer): Replace
        * FL_PARAMETER
        expr by actual value.
        * trans-decl.c (gfc_get_module_backend_decl,
        * gfc_trans_use_stmts):
        Ensure that we use the DT and not the generic function.
        * trans-types.c (gfc_get_derived_type): Ensure that we use the
        * DT
        and not the generic procedure.

gcc/testsuite/
2011-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39427
        PR fortran/37829
        * gfortran.dg/constructor_1.f90: New.
        * gfortran.dg/constructor_2.f90: New.
        * gfortran.dg/constructor_3.f90: New.
        * gfortran.dg/constructor_4.f90: New.
        * gfortran.dg/constructor_5.f90: New.
        * gfortran.dg/constructor_6.f90: New.
        * gfortran.dg/use_only_5.f90: New.
        * gfortran.dg/c_ptr_tests_17.f90: New.
        * gfortran.dg/c_ptr_tests_18.f90: New.
        * gfortran.dg/used_types_25.f90: New.
        * gfortran.dg/used_types_26.f90: New
        * gfortran.dg/type_decl_3.f90: New.
        * gfortran.dg/function_types_3.f90: Update dg-error.
        * gfortran.dg/result_1.f90: Ditto.
        * gfortran.dg/structure_constructor_3.f03: Ditto.
        * gfortran.dg/structure_constructor_4.f03: Ditto.

From-SVN: r181425
2011-11-16 22:37:43 +01:00
Joseph Myers
16e835bb5c * config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.
From-SVN: r181423
2011-11-16 20:35:27 +00:00
David Edelsohn
27b0b3571e rs6000.c (rs6000_xcoff_section_type_flags): Default to minimum alignment if decl is NULL.
* config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
        Default to minimum alignment if decl is NULL.

From-SVN: r181422
2011-11-16 13:33:52 -05:00
Uros Bizjak
c05e32f58d sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode sequence for AVX.
* config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode
	sequence for AVX.
	(<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.

From-SVN: r181421
2011-11-16 19:28:08 +01:00
Matthew Gretton-Dann
a6bbb56fef pr30858.c: Update expected output for architectures with multiple vector sizes.
2011-10-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

	* gcc.dg/vect/pr30858.c: Update expected output for
	architectures with multiple vector sizes.

From-SVN: r181420
2011-11-16 18:19:37 +00:00
Matthew Gretton-Dann
425d737b36 lib1funcs.asm (udivsi3): Add support for divide functions.
2011-11-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

	* config/arm/lib1funcs.asm (udivsi3): Add support for divide
	functions.
	(aeabi_uidivmod): Likewise.	
	(umodsi3): Likewise.
	(divsi3): Likewise.
	(aeabi_idivmod): Likewise.
	(modsi3): Likewise.

From-SVN: r181419
2011-11-16 18:02:12 +00:00
Venkataramanan Kumar
0fe1f31b9e * doc/invoke.texi: Document AMD bdver1 and btver1.
From-SVN: r181417
2011-11-16 17:31:38 +00:00
Richard Earnshaw
77b1138b71 re PR target/49641 (Wrong code for ARMv4T and stmia)
2011-11-16  Richard Earnshaw  <rearnsha@arm.com>
	    Bernd Schmidt <bernds@coudesourcery.com>
	    Sebastian Huber <sebastian.huber@embedded-brains.de>

	PR target/49641
	* config/arm/arm.c (store_multiple_sequence): Avoid cases where
	the base reg is stored iff compiling for Thumb1.

	* gcc.target/arm/pr49641.c: New test.

Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
Co-Authored-By: Sebastian Huber <sebastian.huber@embedded-brains.de>

From-SVN: r181416
2011-11-16 17:02:44 +00:00
Andrew MacLeod
3b04e1e4c4 re PR libstdc++/51102 (missing macros in <atomic>)
2011-11-16  Andrew MacLeod  <amacleod@redhat.com>

	PR libstdc++/51102
	* include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
	ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.

From-SVN: r181414
2011-11-16 15:43:15 +00:00
Razya Ladelsky
1a4571cb56 re PR tree-optimization/49960 (inconsistent outputs when enabling autopar for a self -dependence testcase)
PR tree-optimization/49960

	* tree-data-ref.c (initialize_data_dependence_relation): Add initializations. 
	Remove call to compute_self_dependence.
	(compute_affine_dependence): Remove the !DDR_SELF_REFERENCE condition.
	(compute_self_dependence): Remove old code. Add call to compute_affine_dependence.
	(compute_all_dependences): Remove call to compute_self_dependence. 
	Add call to compute_affine_dependence.

From-SVN: r181411
2011-11-16 15:01:47 +00:00
Razya Ladelsky
4122ed2b77 re PR tree-optimization/49960 (inconsistent outputs when enabling autopar for a self -dependence testcase)
PR tree-optimization/49960

	* gcc.dg/autopar/pr49960.c: New test.
	* gcc.dg/autopar/pr49960-1.c: New test.

From-SVN: r181410
2011-11-16 14:59:14 +00:00