- 08 Nov, 2011 37 commits
-
-
local.cc:113:6: error: only weak aliases are supported in this configuration * local.cc (_ITM_LB): Use a normal call, not a function alias. From-SVN: r181182
Richard Henderson committed -
PR fortran/50409 * expr.c (gfc_simplify_expr): Substrings can't have negative length. * gcc/testsuite/gfortran.dg/string_5.f90: Improve testcase. From-SVN: r181181
Francois-Xavier Coudert committed -
PR libfortran/47972 * runtime/error.c (gf_strerror): Silence warning. From-SVN: r181180
Francois-Xavier Coudert committed -
From-SVN: r181179
Richard Henderson committed -
* doc/tm.texi.in (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * doc/tm.texi: Regenerate. * config/cris/cris.h (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * config/bfin/bfin.h (MODE_CODE_BASE_REG_CLASS): Likewise. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * config/avr/avr.h (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Ditto. * config/avr/avr-protos.h (avr_mode_code_base_reg_class): Ditto. (avr_regno_mode_code_ok_for_base_p): Ditto. * config/avr/avr.c (avr_mode_code_base_reg_class): Ditto. (avr_regno_mode_code_ok_for_base_p): Ditto. (avr_reg_ok_for_addr_p): Pass AS down to avr_regno_mode_code_ok_for_base_p. * addresses.h (base_reg_class): Add address space argument. Pass to MODE_CODE_BASE_REG_CLASS. (ok_for_base_p_1): Add address space argument. Pass to REGNO_MODE_CODE_OK_FOR_BASE_P. (regno_ok_for_base_p): Add address space argument. Pass to ok_for_base_p_1. * regrename.c (scan_rtx_address): Add address space argument. Pass address space to regno_ok_for_base_p and base_reg_class. Update recursive calls. (scan_rtx): Pass address space to scan_rtx_address. (build_def_use): Likewise. * regcprop.c (replace_oldest_value_addr): Add address space argument. Pass to regno_ok_for_base_p and base_reg_class. Update recursive calls. (replace_oldest_value_mem): Pass address space to replace_oldest_value_addr. (copyprop_hardreg_forward_1): Likewise. * reload.c (find_reloads_address_1): Add address space argument. Pass address space to base_reg_class and regno_ok_for_base_p. Update recursive calls. (find_reloads_address): Pass address space to base_reg_class, regno_ok_for_base_p, and find_reloads_address_1. (find_reloads): Pass address space to base_reg_class. (find_reloads_subreg_address): Likewise. * ira-costs.c (record_reg_classes): Update calls to base_reg_class. (ok_for_base_p_nonstrict): Add address space argument. Pass to ok_for_base_p_1. (record_address_regs): Add address space argument. Pass to base_reg_class and ok_for_base_p_nonstrict. Update recursive calls. (record_operand_costs): Pass address space to record_address_regs. (scan_one_insn): Likewise. * caller-save.c (init_caller_save): Update call to base_reg_class. * ira-conflicts.c (ira_build_conflicts): Likewise. * reload1.c (maybe_fix_stack_asms): Likewise. Co-Authored-By: Georg-Johann Lay <avr@gjlay.de> From-SVN: r181175
Ulrich Weigand committed -
PR c++/50835 * typeck.c (build_x_conditional_expr): Preserve lvalue/xvalueness. * tree.c (lvalue_kind) [NON_DEPENDENT_EXPR]: Return clk_ordinary in C++98. From-SVN: r181174
Jason Merrill committed -
* config/c6x/t-elf (LIB2ADD): Add instead of assigning. From-SVN: r181173
Rainer Orth committed -
* gengtype.c (write_field_root): Avoid out-of-scope access of newv. * tree-stdarg.c (execute_optimize_stdarg): Accept clobbers. * tree.h (TREE_CLOBBER_P): New macro. * gimple.h (gimple_clobber_p): New inline function. * gimplify.c (gimplify_bind_expr): Add clobbers for all variables that go out of scope and live in memory. * tree-ssa-operands.c (get_expr_operands): Transfer volatility also for constructors. * cfgexpand.c (decl_to_stack_part): New static variable. (add_stack_var): Allocate it, and remember mapping. (fini_vars_expansion): Deallocate it. (stack_var_conflict_p): Add early outs. (visit_op, visit_conflict, add_scope_conflicts_1, add_scope_conflicts): New static functions. (expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy. (expand_used_vars): Add scope conflicts. (expand_gimple_stmt_1): Expand clobbers to nothing. (expand_debug_expr): Ditto. * tree-pretty-print.c (dump_generic_node): Dump clobbers nicely. * tree-ssa-live.c (remove_unused_locals): Remove clobbers that refer to otherwise unused locals. * tree-sra.c (build_accesses_from_assign): Ignore clobbers. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Clobbers of SSA names aren't necessary. (propagate_necessity): Accept and ignore constructors on the rhs, tidy. * gimple.c (walk_gimple_op): Accept constructors like mem_rhs. * tree-ssa-structalias.c (find_func_aliases): Clobbers don't store any known value. * tree-ssa-sccvn.c (vn_reference_lookup_3): Ditto, in particular they don't zero-initialize something. * tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Ignore clobber RHS, we don't want PHI nodes with those. testsuite/ * gcc.dg/tree-ssa/20031015-1.c: Adjust. * g++.dg/tree-ssa/ehcleanup-1.C: Ditto. * g++.dg/eh/builtin1.C: Rewrite to not use local variables. * g++.dg/eh/builtin2.C: Ditto. * g++.dg/eh/builtin3.C: Ditto. From-SVN: r181172
Michael Matz committed -
* include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'. (_Sp_counted_deleter): Make 'final'. Use allocator_traits. (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits. Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO for the allocator. (__shared_count, __shared_ptr): Use allocator_traits. * include/std/future (__future_base::_Result_alloc): Make 'final'. Use allocator traits. (__future_base::_Task_state): Make 'final'. (__future_base::_Deferred_state): Likewise. (__future_base::_Async_state): Likewise. * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New. * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New. * testsuite/20_util/shared_ptr/creation/private.cc: New. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New. * testsuite/30_threads/promise/cons/alloc_min.cc: New. From-SVN: r181171
Jonathan Wakely committed -
i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX if not TARGET_PREFER_AVX128 return 32-byte integer vectors. * config/i386/i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX if not TARGET_PREFER_AVX128 return 32-byte integer vectors. * gcc.target/i386/avx-cvt-2.c: Adjust for 32-byte integer vectors being prefered even for -mavx. * gcc.target/i386/avx-cvt-3.c: New test. From-SVN: r181170
Jakub Jelinek committed -
From-SVN: r181169
Richard Henderson committed -
From-SVN: r181168
Richard Henderson committed -
re PR tree-optimization/51012 (ICE: in fold_convert_loc, at fold-const.c:1897 with -fno-early-inlining and passing incompatible function ptr) 2011-11-08 Richard Guenther <rguenther@suse.de> PR tree-optimization/51012 * ipa-prop.c (update_indirect_edges_after_inlining): Fixup non-inlinable state. * cgraph.c (cgraph_make_edge_direct): Likewise. * gcc.dg/pr51012-1.c: New testcase. * gcc.dg/pr51012-2.c: Likewise. From-SVN: r181166
Richard Guenther committed -
2011-11-08 Richard Guenther <rguenther@suse.de> PR middle-end/51010 c-family/ * c-pretty-print.c (pp_c_expression): Handle SSA_NAMEs. cp/ * error.c (dump_expr): Handle SSA_NAMEs. * c-c++-common/uninit-pr51010.c: New testcase. From-SVN: r181165
Richard Guenther committed -
From-SVN: r181164
Rainer Orth committed -
* configure.tgt: Handle i386 like i[456]86. * config/generic/tls.h [!HAVE_ARCH_GTM_THREAD] (gtm_thr): Don't take address. * config/generic/tls.cc [!HAVE_ARCH_GTM_THREAD || !HAVE_ARCH_GTM_THREAD_DISP] (_gtm_thr_tls): New variable. From-SVN: r181163
Rainer Orth committed -
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the option itself, to --enable-libstdcxx-visibility. * configure.ac: Adjust call. * doc/xml/manual/configure.xml: Update. * configure: Regenerate. From-SVN: r181162
Paolo Carlini committed -
PR rtl-optimization/47698 * ifcvt.c (noce_operand_ok): Move around comment. From-SVN: r181161
Eric Botcazou committed -
re PR regression/50999 (g++.dg/lto/20081109 execute -O2 -flto -flto-partition=1to1 -fno-use-linker-plugin) 2011-11-08 Richard Guenther <rguenther@suse.de> PR lto/50999 * lto-opts.c (append_to_collect_gcc_options): Split out from... (lto_write_options): ... here. Prepend frontend specific flags. From-SVN: r181160
Richard Guenther committed -
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall warnings. * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise. From-SVN: r181159
Paolo Carlini committed -
sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128. * config/i386/sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128. From-SVN: r181158
Jakub Jelinek committed -
* tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument. Handle vectorization of SLP calls. (vect_analyze_stmt): Adjust caller, add call to it for SLP too. (vect_transform_stmt): Adjust vectorizable_call caller, remove assertion. * tree-vect-slp.c (vect_get_and_check_slp_defs): For calls start with op_idx 3. (vect_build_slp_tree): Allow CALL_EXPR. * lib/target-supports.exp (check_effective_target_vect_call_sqrtf, check_effective_target_vect_call_copysignf, check_effective_target_vect_call_lrint): New procedures. * gcc.dg/vect/vect.exp: Run fast-math-bb-slp* tests using $VECT_SLP_CFLAGS with -ffast-math. * gcc.dg/vect/fast-math-vect-call-1.c: New test. * gcc.dg/vect/fast-math-vect-call-2.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-1.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-2.c: New test. From-SVN: r181157
Jakub Jelinek committed -
PR libstdc++/51018 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on netbsd. From-SVN: r181156
Jonathan Wakely committed -
gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced vars setup before adding to them. 2011-11-08 Richard Guenther <rguenther@suse.de> * gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced vars setup before adding to them. From-SVN: r181155
Richard Guenther committed -
From-SVN: r181154
Aldy Hernandez committed -
PR libfortran/47970 * intrinsics/c99_functions.c (round): Move higher in the file. From-SVN: r181153
Francois-Xavier Coudert committed -
gcc/cp/ * decl.c (start_decl): Update comment. * error.c (dump_alias_template_specialization): Dump the context of the specialization. * parser.c (cp_parser_alias_declaration): Call pop_scope on the pushed scope yielded by start_decl. gcc/testsuite * g++.dg/cpp0x/alias-decl-11.C: New test. From-SVN: r181152
Dodji Seketeli committed -
/cp 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * parser.c (cp_parser_postfix_dot_deref_expression): Reject invalid uses of '->' and '.' as postfix-expression in namespace scope. /testsuite 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * g++.dg/parse/template26.C: New. * g++.dg/template/crash45.C: Adjust dg-error string. From-SVN: r181151
Paolo Carlini committed -
PR fortran/50334 * invoke.texi (-finit-*): Document interaction with -Wuninitialized. From-SVN: r181150
Francois-Xavier Coudert committed -
2011-11-07 Quentin Neill <quentin.neill@amd.com> * compare_tests: Add ability to compare all .sum files from two build directories. From-SVN: r181149
Quentin Neill committed -
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/51018 * include/profile/impl/profiler_node.h (__stack_hash:: operator()(__stack_t)): Just use std::size_t everywhere. From-SVN: r181147
Paolo Carlini committed -
* include/std/future (__future_base::_Ptr): Use alias-declaration. (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay instead of remove_reference so that cv-quals are removed. From-SVN: r181145
Jonathan Wakely committed -
PR c++/50848 * pt.c (tsubst_copy_and_build) [CALL_EXPR]: Don't crash if lookup finds a non-function. From-SVN: r181143
Jason Merrill committed -
2011-11-08 Ed Smith-Rowland <3dw4rd@verizon.net> * include/precompiled/stdc++.h: Add cstdalign. From-SVN: r181142
Ed Smith-Rowland committed -
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> * include/std/complex (complex<>::real(), complex<>::imag()): Remove redundant const qualifiers. From-SVN: r181141
Paolo Carlini committed -
* include/bits/ptr_traits.h (__rebind): Replace with... (rebind): Implement using alias-declaration. * include/ext/pointer.h (__rebind): Replace with... (rebind): Implement using alias-declaration. * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits): Replace with... (rebind_alloc, rebind_traits): Implement using alias-declaration. * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of __rebind_alloc. * include/std/scoped_allocator (rebind): Likewise. From-SVN: r181139
Jonathan Wakely committed -
From-SVN: r181138
GCC Administrator committed
-
- 07 Nov, 2011 3 commits
-
-
This allows a target which implements the __sync interfaces in libgcc to continue to use them transparently with the new __atomic builtins. It is assumed that these libgcc routines DO NOT use spinlocks. This is true of all extant libgcc instances. * optabs.h (OTI_sync_compare_and_swap, OTI_sync_lock_test_and_set, OTI_sync_old_add, OTI_sync_old_sub, OTI_sync_old_ior, OTI_sync_old_and, OTI_sync_old_xor, OTI_sync_old_nand, OTI_sync_new_add, OTI_sync_new_sub, OTI_sync_new_ior, OTI_sync_new_and, OTI_sync_new_xor, OTI_sync_new_nand): Move and rename from the direct_optab_index enum. (sync_compare_and_swap_optab, sync_lock_test_and_set_optab, sync_old_add_optab, sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab, sync_new_nand_optab): Read from the optab_table, not the direct_optab_table. (init_sync_libfuncs): Declare. (can_compare_and_swap_p): Update parameters. * optabs.c (init_sync_libfuncs_1, init_sync_libfuncs): New. (can_compare_and_swap_p): Add allow_libcall parameter; if true, test for the legacy compare-and-swap libcall. (expand_atomic_exchange): Use the legacy test-and-set libcall. (expand_atomic_compare_and_swap): Use the legacy CAS libcall. (struct atomic_op_functions): Update for optab type changes. (maybe_emit_op): Likewise. (expand_atomic_fetch_op): Use the legacy fetch-op libcalls. * builtins.c (fold_builtin_atomic_always_lock_free): Update call to can_compare_and_swap_p. * omp-low.c (expand_omp_atomic_fetch_op): Likewise. (expand_omp_atomic_pipeline): Likewise. * genopinit.c (optabs): Make sync_old_*_optab, sync_new_*_optab, sync_compare_and_swap_optab, sync_lock_test_and_set_optab regular optabs. From-SVN: r181134
Richard Henderson committed -
PR c++/50863 * parser.c (cp_parser_initializer_list): Parse C99 array designators tentatively. From-SVN: r181132
Jason Merrill committed -
re PR c++/50870 ([C++0x] [4.6/4.7 Regression] ICE with decltype, operator->, and default template arguments) PR c++/50870 * pt.c (tsubst_copy): Handle NAMESPACE_DECL. (tsubst_copy_and_build) [COMPONENT_REF]: Handle a still-dependent object. From-SVN: r181131
Jason Merrill committed
-