Arnaud Charlet [Mon, 21 Nov 2011 11:35:55 +0000 (12:35 +0100)]
sem_ch6.adb (Is_Public_Subprogram_For): New procedure
2011-11-21 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Is_Public_Subprogram_For): New procedure
(Process_PPCs): Invariants only apply to public subprograms.
2011-11-21 Robert Dewar <dewar@adacore.com>
* sem_util.adb, sem_util.ads, sem_attr.adb, restrict.adb,
restrict.ads: Fix for No_Implicit_Aliasing in the renames case.
2011-11-21 Robert Dewar <dewar@adacore.com>
* a-finali.ads: Use pragma Pure_12 for this unit
* aspects.adb: Add aspect Pure_12
* aspects.ads: Add aspect Pure_12
* opt.ads: Add note on Pure_12
* par-prag.adb: Add dummy entry for Pure_12
* sem_prag.adb: Implement Pure_12 pragma
* snames.ads-tmpl: Add Entry for Pure_12
2011-11-21 Sergey Rybin <rybin@adacore.com frybin>
* vms_data.ads: Add qualifiers for new gnatpp options
'--call_threshold' and '--par_threshold".
* gnat_ugn.texi: Add description for new gnatpp options
'--call_threshold' and '--par_threshold".
2011-11-21 Robert Dewar <dewar@adacore.com>
* lib.ads: Minor reformatting.
2011-11-21 Robert Dewar <dewar@adacore.com>
* lib-load.ads: Add comment.
From-SVN: r181563
Arnaud Charlet [Mon, 21 Nov 2011 11:28:32 +0000 (12:28 +0100)]
sem_elab.adb: Minor reformatting
2011-11-21 Gary Dismukes <dismukes@adacore.com>
* sem_elab.adb: Minor reformatting
From-SVN: r181562
Arnaud Charlet [Mon, 21 Nov 2011 11:26:14 +0000 (12:26 +0100)]
[multiple changes]
2011-11-21 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb: Minor reformatting.
2011-11-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Check_Formal_Package_Instance): If a formal
subprogram of the formal package is covered by an others
association with a box initialization, no check is needed
against the actual in the instantiation of the formal package.
2011-11-21 Robert Dewar <dewar@adacore.com>
* sem_elab.adb (Check_Internal_Call_Continue): Suppress junk
elab warning from within precondition/postcondition etc.
From-SVN: r181561
Arnaud Charlet [Mon, 21 Nov 2011 11:22:47 +0000 (12:22 +0100)]
[multiple changes]
2011-11-21 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Actuals): In Ada 2012, a function call
with out parameters may generate assignments to force constraint
checks. These checks must be properly placed in the code after the
declaration or statement that contains the call.
2011-11-21 Fedor Rybin <frybin@adacore.com>
* gnat_ugn.texi: Adding info on current gnattest limitations an
support of -X option.
2011-11-21 Robert Dewar <dewar@adacore.com>
* a-cfdlli.adb, a-cbdlli.adb: Minor reformatting.
From-SVN: r181559
Paolo Carlini [Mon, 21 Nov 2011 11:22:37 +0000 (11:22 +0000)]
2011-11-21 Paolo Carlini <paolo.carlini@oracle.com>
* Fix last ChangeLog entry.
From-SVN: r181558
Daniel Krugler [Mon, 21 Nov 2011 11:21:13 +0000 (11:21 +0000)]
re PR libstdc++/51185 ([C++0x] false-positive results of std::is_constructible)
2011-11-21 Daniel Krugler <daniel.kruegler@googlemail.com>
PR libstdc++/51185
* include/std/type_traits (__is_base_to_derived_ref,
__is_lvalue_to_rvalue_ref): Fix.
* testsuite/20_util/is_constructible/51185.cc: New.
* testsuite/20_util/is_constructible/value-2.cc: Extend.
From-SVN: r181557
Paolo Carlini [Mon, 21 Nov 2011 10:48:53 +0000 (10:48 +0000)]
2011-11-21 Paolo Carlini <paolo.carlini@oracle.com>
* Fix last ChangeLog entry.
From-SVN: r181556
Paolo Carlini [Mon, 21 Nov 2011 10:47:37 +0000 (10:47 +0000)]
tuple (__conv_types, [...]): Remove.
2011-11-21 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (__conv_types, __one_by_one_convertible,
__all_convertible): Remove.
(tuple<>::tuple(_UElements&&...),
tuple<>::tuple(const tuple<_UElements...>&),
tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322.
From-SVN: r181555
Georg-Johann Lay [Mon, 21 Nov 2011 09:00:26 +0000 (09:00 +0000)]
avr.h (struct base_arch_s): Add field sfr_offset.
* config/avr/avr.h (struct base_arch_s): Add field sfr_offset.
* config/avr/avr-devices.c: Ditto. And initialize it.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in define
__AVR_SFR_OFFSET__.
* config/avr/avr-protos.h (out_movqi_r_mr, out_movqi_mr_r): Remove.
(out_movhi_r_mr, out_movhi_mr_r): Remove.
(out_movsi_r_mr, out_movsi_mr_r): Remove.
* config/avr/avr.md (*cbi, *sbi): Use %i instead of %m-0x20.
(*insv.io, *insv.not.io): Ditto.
* config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r): Make static.
(print_operand): Implement "%i" to print address as I/O address.
(output_movqi): Clean up call of out_movqi_mr_r.
(output_movhi): Clean up call of out_movhi_mr_r.
(avr_file_start): Use avr_current_arch->sfr_offset instead of
magic -0x20. Use TMP_REGNO, ZERO_REGNO instead of 0, 1.
(avr_out_sbxx_branch): Use %i instead of %m-0x20.
(out_movqi_r_mr, out_movqi_mr_r): Ditto. And make static.
(out_movhi_r_mr, out_movhi_mr_r): Ditto. And use avr_asm_len.
(out_shift_with_cnt): Clean up code: Use avr_asm_len.
(output_movsisf): Use output_reload_insisf for all CONSTANT_P sources.
(avr_out_movpsi): USE avr_out_reload_inpsi for all CONSTANT_P sources.
Clean up call of avr_out_store_psi.
(output_reload_in_const): Don't cut symbols longer than 2 bytes.
(output_reload_insisf): Filter CONST_INT_P or CONST_DOUBLE_P to
try if setting pre-cleared register is advantageous.
(avr_out_plus_1): Use gen_int_mode instead of GEN_INT.
From-SVN: r181552
Georg-Johann Lay [Mon, 21 Nov 2011 08:56:44 +0000 (08:56 +0000)]
re PR target/49313 (Inefficient libgcc implementations for avr)
PR target/49313
* config/avr/t-avr (LIB2FUNCS_EXCLUDE): Add _moddi3, _umoddi3.
(LIB1ASMFUNCS): Add _divdi3, _udivdi3, _udivmod64, _negdi2.
* config/avr/lib1funcs.S (wmov): New assembler macro.
(__umoddi3, __udivdi3, __udivdi3_umoddi3): New functions.
(__moddi3, __divdi3, __divdi3_moddi3): New functions.
(__udivmod64): New function.
(__negdi2): New function.
From-SVN: r181551
Gerald Pfeifer [Mon, 21 Nov 2011 02:29:09 +0000 (02:29 +0000)]
* config.host (*-*-freebsd[12], *-*-freebsd[12].*,
*-*-freebsd*aout*): Remove.
From-SVN: r181550
Joey Ye [Mon, 21 Nov 2011 02:16:12 +0000 (02:16 +0000)]
expr.c (expand_expr_real_1): Correctly handle strict volatile bitfield loads smaller than mode size.
2011-11-20 Joey Ye <joey.ye@arm.com>
* expr.c (expand_expr_real_1): Correctly handle strict volatile
bitfield loads smaller than mode size.
testsuite:
* gcc.dg/volatile-bitfields-1.c: New.
From-SVN: r181549
Jason Merrill [Mon, 21 Nov 2011 02:05:03 +0000 (21:05 -0500)]
* pt.c (tsubst_pack_expansion): Fix SFINAE.
From-SVN: r181548
Jason Merrill [Mon, 21 Nov 2011 02:04:54 +0000 (21:04 -0500)]
re PR c++/48322 ([C++0x] Plural variadic parameter packs are not expanded well)
PR c++/48322
gcc/cp/
* cp-tree.h (PACK_EXPANSION_EXTRA_ARGS): New.
* cp-tree.def (EXPR_PACK_EXPANSION): Add an operand for it.
* pt.c (tsubst_pack_expansion): Set and use it.
(iterative_hash_template_arg): Hash it.
(template_args_equal): Compare it.
(comp_template_args_with_info): Handle nulls.
* tree.c (cp_walk_subtrees): Walk it.
* typeck.c (structural_comptypes): Compare it.
* ptree.c (cxx_print_type): Print it.
libstdc++-v3/
* include/std/tuple (tuple(_UElements&&...)): Fix SFINAE.
From-SVN: r181547
Jason Merrill [Mon, 21 Nov 2011 02:04:38 +0000 (21:04 -0500)]
pt.c (type_unification_real): Set input_location during default arg instantiation.
* pt.c (type_unification_real): Set input_location
during default arg instantiation.
From-SVN: r181546
Gerald Pfeifer [Mon, 21 Nov 2011 01:16:24 +0000 (01:16 +0000)]
update_web_docs_svn: Make $DOCSDIR group writable after creating it.
* update_web_docs_svn: Make $DOCSDIR group writable after
creating it.
From-SVN: r181545
Hans-Peter Nilsson [Mon, 21 Nov 2011 00:41:12 +0000 (00:41 +0000)]
static-object.mk (c_flags-$o): Save c_flags.
* static-object.mk (c_flags-$o): Save c_flags.
($(base)$(objext)): Use it.
From-SVN: r181544
GCC Administrator [Mon, 21 Nov 2011 00:18:27 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181543
Richard Henderson [Sun, 20 Nov 2011 23:16:30 +0000 (15:16 -0800)]
mips: Install the __sync libfuncs for mips16
* config/mips/mips.c (mips_init_libfuncs): Call init_sync_libfuncs.
From-SVN: r181539
Paolo Carlini [Sun, 20 Nov 2011 22:37:54 +0000 (22:37 +0000)]
re PR c++/51230 (Broken diagnostic: 'template_parm_index' not supported by dump_type)
/cp
2011-11-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51230
* pt.c (unify_inconsistency): Handle non-type parameters better.
* error.c (dump_expr): Handle TEMPLATE_TEMPLATE_PARM.
/cp
2011-11-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51230
* g++.dg/template/error46.C: New.
From-SVN: r181538
Uros Bizjak [Sun, 20 Nov 2011 22:26:14 +0000 (23:26 +0100)]
re PR target/51235 (ICE: in extract_insn, at recog.c:2137 (unrecognizable insn) with -O -ftree-vectorize -mavx2 -mxop)
PR target/51235
* config/i386/i386.c (ix86_expand_vcond): Generate TARGET_XOP
patterns for supported mode only.
PR target/51236
* config/i386/i386.c (ix86_expand_builtin)
<IX86_BUILTIN_GATHERALTSIV4DI>: Use CODE_FOR_avx2_gathersiv4di.
testsuite/ChangeLog:
PR target/51235
* gcc.target/i386/pr51235.c: New test.
PR target/51236
* gcc.target/i386/pr51236.c: New test.
From-SVN: r181537
Jonathan Wakely [Sun, 20 Nov 2011 21:14:56 +0000 (21:14 +0000)]
binders.h: Fix examples in doxygen comments and suggest using std::bind instead.
* include/backward/binders.h: Fix examples in doxygen comments and
suggest using std::bind instead.
From-SVN: r181535
Jonathan Wakely [Sun, 20 Nov 2011 20:21:51 +0000 (20:21 +0000)]
Fix grammar in ChangeLog entry.
From-SVN: r181534
Jonathan Wakely [Sun, 20 Nov 2011 20:05:58 +0000 (20:05 +0000)]
* doc/xml/manual/status_cxx2011.xml: Fix docbook markup.
From-SVN: r181533
Jonathan Wakely [Sun, 20 Nov 2011 19:56:48 +0000 (19:56 +0000)]
appendix_contributing.xml: Do not use "here" as link text.
* doc/xml/manual/appendix_contributing.xml: Do not use "here" as link
text.
* doc/xml/faq.xml: Likewise. Do not request standard library issues
to be reported to the libstdc++ mailing list.
* doc/xml/manual/status_cxx2011.xml: Document implementation-defined
behaviour.
* doc/xml/manual/status_cxxtr1.xml: Likewise.
* doc/xml/manual/utilities.xml: Fix grammar, probably caused by a
global search and replace of "part" by "chapter".
* doc/xml/manual/shared_ptr.xml: Remove outdated information.
* doc/xml/manual/messages.xml: Be more specific about systems where
using 'int' for catalog handle is not a problem, mentioned LWG issue.
From-SVN: r181532
Uros Bizjak [Sun, 20 Nov 2011 19:17:08 +0000 (20:17 +0100)]
i386.md (UNSPEC_MOVNTI): Remove.
* config/i386/i386.md (UNSPEC_MOVNTI): Remove.
(UNSPEC_MOVNTQ): New unspec.
* config/i386/mmx.md (sse_movntq): Rename from sse_movntdi.
Use UNSPEC_MOVNTQ instead of UNSPEC_MOVNT.
* config/i386/sse.md (sse2_movnti<mode>): Use UNSPEC_MOVNT instead of
UNSPEC_MOVNTI.
(STORENT_MODE): Add DI and V4DI modes.
From-SVN: r181531
Arnaud Charlet [Sun, 20 Nov 2011 11:44:38 +0000 (12:44 +0100)]
[multiple changes]
2011-11-20 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb, exp_util.adb: Minor reformatting
2011-11-20 Eric Botcazou <ebotcazou@adacore.com>
* sinfo.ads (Reference): Document that it is OK to set
Is_Known_Non_Null on a temporary initialized to a N_Reference
node.
2011-11-20 Matthew Heaney <heaney@adacore.com>
* a-cbdlli.adb, a-cfdlli.adb (Move): Set Last component to 0
for Source list.
From-SVN: r181530
Eric Botcazou [Sun, 20 Nov 2011 11:41:57 +0000 (11:41 +0000)]
exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Declare NEW_EXPR local variable and attach the temporary to it.
2011-11-20 Eric Botcazou <ebotcazou@adacore.com>
* exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment):
Declare NEW_EXPR local variable and attach the
temporary to it. Set Is_Known_Non_Null on the temporary.
(Make_Build_In_Place_Call_In_Object_Declaration): Likewise.
* exp_util.adb (Remove_Side_Effects): Set Is_Known_Non_Null on
the temporary created to hold the 'Reference of the expression,
if any.
* checks.adb (Install_Null_Excluding_Check): Bail out for the
Get_Current_Excep.all.all idiom generated by the expander.
From-SVN: r181529
Eric Botcazou [Sun, 20 Nov 2011 10:29:22 +0000 (10:29 +0000)]
trans.c (struct language_function): Add GNAT_RET.
* gcc-interface/trans.c (struct language_function): Add GNAT_RET.
(f_gnat_ret): New macro.
(struct nrv_data): Add GNAT_RET.
(finalize_nrv_unc_r): New helper function.
(finalize_nrv): Add GNAT_RET parameter. Copy it into DATA. If the
function returns unconstrained, use finalize_nrv_unc_r as callback.
(return_value_ok_for_nrv_p): Test the alignment of RET_OBJ only if
RET_OBJ is non-null.
(Subprogram_Body_to_gnu): Pass GNAT_RET to finalize_nrv.
(gnat_to_gnu) <N_Return_Statement>: In the return-unconstrained case,
if optimization is enabled, record candidates for the Named Return
Value optimization.
From-SVN: r181528
Eric Botcazou [Sun, 20 Nov 2011 10:16:48 +0000 (10:16 +0000)]
trans.c (Subprogram_Body_to_gnu): Add comment.
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Add comment.
(gnat_to_gnu) <N_Return_Statement>: Add 'else' to avoid doing a useless
test. Tweak default case.
<N_Goto_Statement>: Use better formatting.
* gcc-interface/utils2.c (maybe_wrap_malloc): Use INIT_EXPR instead of
MODIFY_EXPR to initialize the storage.
(build_allocator): Likewise.
From-SVN: r181527
Eric Botcazou [Sun, 20 Nov 2011 10:03:11 +0000 (10:03 +0000)]
decl.c (gnat_to_gnu_entity): Adjust call to components_to_record.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust
call to components_to_record.
(components_to_record): Add FIRST_FREE_POS parameter. For the variant
part, reuse enclosing union even if there is a representation clause
on the Unchecked_Union. If there is a variant part, compute the new
first free position, if any. Adjust call to self. Use a single field
directly only if it hasn't got a representation clause or is placed at
offset zero. Create the variant part at offset 0 if all the fields
down to this level have a rep clause. Do not chain the variant part
immediately and adjust downstream.
Do not test ALL_REP before moving the fields without rep clause to the
previous level. Call create_rep_part to create the REP part and force
a minimum size on it if necessary. Do not chain it immediately.
Create a fake REP part if there are fields without rep clause that need
to be laid out starting from FIRST_FREE_POS.
At the end, chain the REP part and then the variant part.
(create_rep_part): New function.
(get_rep_part): Minor tweak.
* gcc-interface/utils.c (tree_code_for_record_type): Minor tweak.
From-SVN: r181526
Nathan Sidwell [Sun, 20 Nov 2011 09:19:21 +0000 (09:19 +0000)]
fixup trunkated changelog entry
From-SVN: r181525
Nathan Sidwell [Sun, 20 Nov 2011 09:09:34 +0000 (09:09 +0000)]
re PR gcov-profile/51113 (rev. 181105 causes Firefox profiledbuild failure)
PR gcov-profile/51113
* coverage.c (build_var): Propagate visibility for public decls.
testsuite/
* gcc.misc-tests/gcov-13.c: Check gcovpart-13b coverage
* gcc.misc-tests/gcov-16.c: New.
* gcc.misc-tests/gcov-17.c: New.
* g++.dg/gcov/gcov-8.C: New.
* g++.dg/gcov/gcov-9.C: New.
* g++.dg/gcov/gcov-10.C: New.
From-SVN: r181524
Dodji Seketeli [Sun, 20 Nov 2011 07:10:24 +0000 (07:10 +0000)]
PR c++/51194 - ICE with invalid alias template
gcc/cp/
PR c++/51194
* pt.c (lookup_template_class_1): Go out early if the type of the
template is error_mark_node.
gcc/testsuite/
PR c++/51194
* g++.dg/cpp0x/alias-decl-15.C: New test.
From-SVN: r181523
GCC Administrator [Sun, 20 Nov 2011 00:18:50 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181521
Paolo Carlini [Sat, 19 Nov 2011 23:17:12 +0000 (23:17 +0000)]
re PR c++/51216 (ICE with statement expression)
/cp
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51216
* semantics.c (potential_constant_expression_1): Handle IF_STMT,
DO_STMT, FOR_STMT, and WHILE_STMT.
/testsuite
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51216
* g++.dg/cpp0x/pr51216.C: New.
From-SVN: r181517
Eric Botcazou [Sat, 19 Nov 2011 20:36:43 +0000 (20:36 +0000)]
re PR rtl-optimization/51187 (miscompilation of genrecog.c at -O2 for --target=avr)
PR rtl-optimization/51187
* reorg.c (relax_delay_slots): Do not consider a jump useless if there
is a barrier between the jump and its target label.
From-SVN: r181513
Patrick Marlier [Sat, 19 Nov 2011 19:29:18 +0000 (19:29 +0000)]
re PR middle-end/51211 (ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic)
PR middle-end/51211
* tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION.
From-SVN: r181512
Eric Botcazou [Sat, 19 Nov 2011 18:20:36 +0000 (18:20 +0000)]
* expmed.c (store_bit_field_1): Revert bogus formatting change.
From-SVN: r181511
Eric Botcazou [Sat, 19 Nov 2011 16:24:22 +0000 (16:24 +0000)]
Fix minor issues
From-SVN: r181509
Richard Earnshaw [Sat, 19 Nov 2011 13:47:35 +0000 (13:47 +0000)]
re PR target/50493 (ICE in neon_disambiguate_copy, at config/arm/arm.c:20388)
PR target/50493
* arm.c (neon_disambiguate_copy): Correctly handle partial overlap
of src and dest operands.
From-SVN: r181508
Iain Sandoe [Sat, 19 Nov 2011 12:21:08 +0000 (12:21 +0000)]
darwin.h (ASM_DEBUG_SPEC): New.
gcc:
* config/darwin.h (ASM_DEBUG_SPEC): New.
* config/darwin9.h (ASM_DEBUG_SPEC): New.
From-SVN: r181507
Paolo Carlini [Sat, 19 Nov 2011 11:50:44 +0000 (11:50 +0000)]
bitset (operator[](size_t) const): Declare constexpr.
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/bitset (operator[](size_t) const): Declare constexpr.
* include/profile/bitset: Likewise.
* testsuite/23_containers/bitset/operations/constexpr.cc: Split out
non portable bits to...
* testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
From-SVN: r181506
Tobias Burnus [Sat, 19 Nov 2011 09:26:33 +0000 (10:26 +0100)]
re PR fortran/51207 ([OOP] Mark __def_init_... as FL_PARAMETER)
2011-11-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51207
* class.c (gfc_find_derived_vtab): Mark __def_init as PARAMETER
and hence as TREE_READONLY; add subroutine attribute to
__copy_ procedure.
PR fortran/50640
* trans.h (GFC_DECL_PUSH_TOPLEVEL): New DECL_LANG_FLAG_7.
* trans-decl.c (gfc_get_symbol_decl): Mark __def_init and vtab
as GFC_DECL_PUSH_TOPLEVEL.
(gfc_generate_function_code): If GFC_DECL_PUSH_TOPLEVEL, push it there.
(build_function_decl): Push __copy_ procedure to the toplevel.
From-SVN: r181505
Jan Hubicka [Sat, 19 Nov 2011 01:34:55 +0000 (02:34 +0100)]
i386.c (atom_cost): Disable SSE loop until alignment issues are fixed.
* config/i386/i386.c (atom_cost): Disable SSE loop until alignment
issues are fixed.
From-SVN: r181503
GCC Administrator [Sat, 19 Nov 2011 00:18:48 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181501
Joseph Myers [Fri, 18 Nov 2011 22:26:47 +0000 (22:26 +0000)]
* gcc.dg/cpp/assert4.c: Test __linux__, not __gnu_linux__.
From-SVN: r181496
Steve Ellcey [Fri, 18 Nov 2011 22:26:44 +0000 (22:26 +0000)]
Makefile.in (c_flags): Set to -fno-exceptions to build libunwind.
2011-11-18 Steve Ellcey <sje@cup.hp.com>
* Makefile.in (c_flags): Set to -fno-exceptions to build libunwind.
From-SVN: r181495
Anatoly Sokolov [Fri, 18 Nov 2011 21:23:08 +0000 (01:23 +0400)]
cris.c (cris_function_value_regno_p): Make static.
* config/cris/cris.c (cris_function_value_regno_p): Make static.
(TARGET_FUNCTION_VALUE_REGNO_P): Define.
* config/cris/cris.h (FUNCTION_VALUE_REGNO_P): Remove.
* config/cris/cris-protos.h (cris_function_value_regno_p): Remove.
From-SVN: r181493
Fabien Chêne [Fri, 18 Nov 2011 20:32:04 +0000 (21:32 +0100)]
re PR c++/51188 (invalid static_cast from type 'XBase' to type 'int')
gcc/testsuite/ChangeLog
2011-11-18 Fabien Chene <fabien@gcc.gnu.org>
PR c++/51188
* 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++/51188
* search.c (lookup_field_1): Handle USING_DECLs for the storted
case.
From-SVN: r181492
H.J. Lu [Fri, 18 Nov 2011 19:02:45 +0000 (19:02 +0000)]
Add _mm_stream_si64.
2011-11-18 H.J. Lu <hongjiu.lu@intel.com>
PR target/33944
* doc/extend.texi: Document __builtin_ia32_movnti64.
* config/i386/emmintrin.h (_mm_stream_si64): New.
* config/i386/i386-builtin-types.def: Add VOID_FTYPE_PLONGLONG_LONGLONG.
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTI64.
(bdesc_special_args): Update __builtin_ia32_movnti. Add
__builtin_ia32_movnti64.
(ix86_expand_special_args_builtin): Handle
VOID_FTYPE_PLONGLONG_LONGLONG.
* config/i386/i386.md (UNSPEC_MOVNTI): New.
* config/i386/sse.md (sse2_movntsi): Renamed to ...
(sse2_movnti<mode>): This.
From-SVN: r181491
Fabien Chêne [Fri, 18 Nov 2011 18:44:23 +0000 (19:44 +0100)]
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
Ulrich Weigand [Fri, 18 Nov 2011 18:17:05 +0000 (18:17 +0000)]
pr44707.c: Do not assume assembler supports /* ...
* gcc.c-torture/compile/pr44707.c: Do not assume assembler
supports /* ... */ comments.
From-SVN: r181489
Georg-Johann Lay [Fri, 18 Nov 2011 16:44:00 +0000 (16:44 +0000)]
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
Rainer Orth [Fri, 18 Nov 2011 16:15:59 +0000 (16:15 +0000)]
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
Harti Brandt [Fri, 18 Nov 2011 16:09:29 +0000 (16:09 +0000)]
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
Paolo Carlini [Fri, 18 Nov 2011 15:31:38 +0000 (15:31 +0000)]
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
Martin Jambor [Fri, 18 Nov 2011 15:13:54 +0000 (16:13 +0100)]
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
Bill Schmidt [Fri, 18 Nov 2011 14:15:38 +0000 (14:15 +0000)]
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
Dodji Seketeli [Fri, 18 Nov 2011 14:07:41 +0000 (14:07 +0000)]
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
Iain Sandoe [Fri, 18 Nov 2011 13:19:25 +0000 (13:19 +0000)]
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
Paolo Carlini [Fri, 18 Nov 2011 12:37:06 +0000 (12:37 +0000)]
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
Tristan Gingold [Fri, 18 Nov 2011 10:54:21 +0000 (10:54 +0000)]
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
Iain Sandoe [Fri, 18 Nov 2011 10:52:32 +0000 (10:52 +0000)]
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
Uros Bizjak [Fri, 18 Nov 2011 09:54:02 +0000 (10:54 +0100)]
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
Jiangning Liu [Fri, 18 Nov 2011 07:44:19 +0000 (07:44 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r181467
Jan Hubicka [Fri, 18 Nov 2011 02:18:28 +0000 (03:18 +0100)]
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
Richard Henderson [Fri, 18 Nov 2011 01:38:48 +0000 (17:38 -0800)]
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
GCC Administrator [Fri, 18 Nov 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181464
Jonathan Wakely [Fri, 18 Nov 2011 00:15:55 +0000 (00:15 +0000)]
typesizes.cc: Do not run on darwin.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
on darwin.
From-SVN: r181460
Richard Henderson [Thu, 17 Nov 2011 22:12:31 +0000 (14:12 -0800)]
Merge branch 'rth/atomic/ppc'
From-SVN: r181459
Jonathan Wakely [Thu, 17 Nov 2011 22:10:09 +0000 (22:10 +0000)]
Remove accidentally committed duplicate ChangeLog entry.
From-SVN: r181458
Steve Ellcey [Thu, 17 Nov 2011 21:22:11 +0000 (21:22 +0000)]
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
Andrew Pinski [Thu, 17 Nov 2011 21:01:08 +0000 (21:01 +0000)]
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
Jason Merrill [Thu, 17 Nov 2011 21:00:30 +0000 (16:00 -0500)]
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
Uros Bizjak [Thu, 17 Nov 2011 21:00:16 +0000 (22:00 +0100)]
* lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.
From-SVN: r181454
Andrew MacLeod [Thu, 17 Nov 2011 20:51:51 +0000 (20:51 +0000)]
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
Uros Bizjak [Thu, 17 Nov 2011 19:56:39 +0000 (20:56 +0100)]
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
Richard Henderson [Thu, 17 Nov 2011 19:29:04 +0000 (11:29 -0800)]
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
Bin Cheng [Thu, 17 Nov 2011 17:11:16 +0000 (17:11 +0000)]
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
Jason Merrill [Thu, 17 Nov 2011 16:35:11 +0000 (11:35 -0500)]
class.c (add_implicitly_declared_members): Update move conditions.
N3203
* class.c (add_implicitly_declared_members): Update move
conditions.
From-SVN: r181445
Jason Merrill [Thu, 17 Nov 2011 16:34:59 +0000 (11:34 -0500)]
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
Michael Matz [Thu, 17 Nov 2011 16:03:56 +0000 (16:03 +0000)]
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
Rainer Orth [Thu, 17 Nov 2011 11:34:33 +0000 (11:34 +0000)]
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
Rainer Orth [Thu, 17 Nov 2011 11:25:10 +0000 (11:25 +0000)]
Skip simulate-thread tests on all alpha targets
* lib/gcc-simulate-thread.exp (simulate-thread): Skip on
alpha*-*-*.
From-SVN: r181441
Jonathan Wakely [Thu, 17 Nov 2011 10:14:11 +0000 (10:14 +0000)]
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
Richard Henderson [Thu, 17 Nov 2011 04:44:27 +0000 (20:44 -0800)]
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
David Edelsohn [Thu, 17 Nov 2011 02:28:07 +0000 (02:28 +0000)]
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
GCC Administrator [Thu, 17 Nov 2011 00:18:35 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181431
Uros Bizjak [Wed, 16 Nov 2011 23:09:17 +0000 (00:09 +0100)]
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
Tobias Burnus [Wed, 16 Nov 2011 21:37:43 +0000 (22:37 +0100)]
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
Joseph Myers [Wed, 16 Nov 2011 20:35:27 +0000 (20:35 +0000)]
* config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.
From-SVN: r181423
David Edelsohn [Wed, 16 Nov 2011 18:33:52 +0000 (18:33 +0000)]
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
Uros Bizjak [Wed, 16 Nov 2011 18:28:08 +0000 (19:28 +0100)]
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
Matthew Gretton-Dann [Wed, 16 Nov 2011 18:19:37 +0000 (18:19 +0000)]
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
Matthew Gretton-Dann [Wed, 16 Nov 2011 18:02:12 +0000 (18:02 +0000)]
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
Venkataramanan Kumar [Wed, 16 Nov 2011 17:31:38 +0000 (17:31 +0000)]
* doc/invoke.texi: Document AMD bdver1 and btver1.
From-SVN: r181417
Richard Earnshaw [Wed, 16 Nov 2011 17:02:44 +0000 (17:02 +0000)]
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
Andrew MacLeod [Wed, 16 Nov 2011 15:43:15 +0000 (15:43 +0000)]
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
Razya Ladelsky [Wed, 16 Nov 2011 15:01:47 +0000 (15:01 +0000)]
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