jason [Thu, 17 Nov 2011 16:35:11 +0000 (16:35 +0000)]
N3203
* class.c (add_implicitly_declared_members): Update move
conditions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181445
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 17 Nov 2011 16:34:59 +0000 (16:34 +0000)]
PR c++/51137
* class.c (build_base_path): Don't do calculation in templates.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181444
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 17 Nov 2011 16:03:56 +0000 (16:03 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181443
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181442
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [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*-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181441
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 17 Nov 2011 10:14:11 +0000 (10:14 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181438
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 17 Nov 2011 04:44:27 +0000 (04:44 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181436
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Thu, 17 Nov 2011 02:28:07 +0000 (02:28 +0000)]
* inclhack.def (aix_once_init_[12]): New fixes.
* fixincl.x: Regenerate.
* tests/base/pthread.h: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181434
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 17 Nov 2011 00:18:35 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181431
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 16 Nov 2011 23:09:17 +0000 (23:09 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181426
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 16 Nov 2011 21:37:43 +0000 (21:37 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181425
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Wed, 16 Nov 2011 20:35:27 +0000 (20:35 +0000)]
* config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181423
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 16 Nov 2011 18:33:52 +0000 (18:33 +0000)]
* config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
Default to minimum alignment if decl is NULL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181422
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 16 Nov 2011 18:28:08 +0000 (18:28 +0000)]
* config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode
sequence for AVX.
(<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181421
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Wed, 16 Nov 2011 18:19:37 +0000 (18:19 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181420
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Wed, 16 Nov 2011 18:02:12 +0000 (18:02 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181419
138bc75d-0d04-0410-961f-
82ee72b054a4
hjagasia [Wed, 16 Nov 2011 17:31:38 +0000 (17:31 +0000)]
* doc/invoke.texi: Document AMD bdver1 and btver1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181417
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Wed, 16 Nov 2011 17:02:44 +0000 (17:02 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181416
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 16 Nov 2011 15:43:15 +0000 (15:43 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181414
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Wed, 16 Nov 2011 15:01:47 +0000 (15:01 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181411
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Wed, 16 Nov 2011 14:59:14 +0000 (14:59 +0000)]
PR tree-optimization/49960
* gcc.dg/autopar/pr49960.c: New test.
* gcc.dg/autopar/pr49960-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181410
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Wed, 16 Nov 2011 14:58:04 +0000 (14:58 +0000)]
PR tree-optimization/49960
* gcc.dg/autopar/pr49960.c: New test.
* gcc.dg/autopar/pr49960-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181409
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 16 Nov 2011 14:51:13 +0000 (14:51 +0000)]
PR bootstrap/51098
* acinclude.m4 (LIBITM_CHECK_AS_AVX): Fix target selector.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181408
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 16 Nov 2011 10:23:59 +0000 (10:23 +0000)]
2011-11-16 Paolo Carlini <paolo.carlini@oracle.com>
* Fix name in ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181407
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Wed, 16 Nov 2011 09:27:56 +0000 (09:27 +0000)]
2011-11-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR middle-end/50325
* expmed.c (store_bit_field_1): Use extract_bit_field on big
endian targets if the source cannot be exactly covered by word
mode chunks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181405
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Wed, 16 Nov 2011 08:36:46 +0000 (08:36 +0000)]
2011-11-16 Tristan Gingold <gingold@adacore.com>
* config/alpha/qrnnd.S: Use specific pseudos for VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181403
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Wed, 16 Nov 2011 00:21:56 +0000 (00:21 +0000)]
* config/i386/i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to
ELF_STRING_LIMIT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181400
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 16 Nov 2011 00:18:50 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181399
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 15 Nov 2011 23:43:08 +0000 (23:43 +0000)]
alpha: Convert to atomic optabs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181395
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 15 Nov 2011 23:28:49 +0000 (23:28 +0000)]
2011-11-15 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51142
* include/debug/unordered_map (unordered_map<>::erase(iterator),
unordered_multimap<>::erase(iterator)): Add, consistently with
LWG 2059.
* include/debug/unordered_set (unordered_set<>::erase(iterator),
unordered_multiset<>::erase(iterator)): Likewise.
* include/debug/map.h (map<>::erase(iterator)): Likewise.
* include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
* include/profile/map.h (map<>::erase(iterator)): Likewise.
* include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
* include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
* include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
* include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
* testsuite/23_containers/unordered_map/erase/51142.cc: New.
* testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
* testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181394
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Tue, 15 Nov 2011 23:04:46 +0000 (23:04 +0000)]
2011-11-16 Tom de Vries <tom@codesourcery.com>
* gcc.dg/pr43864.c: Check for absence of 'Invalid sum' in pre tree-dump.
* gcc.dg/pr43864-2.c: Same.
* gcc.dg/pr43864-3.c: Same.
* gcc.dg/pr43864-4.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181393
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Tue, 15 Nov 2011 23:04:39 +0000 (23:04 +0000)]
2011-11-16 Tom de Vries <tom@codesourcery.com>
* tree-ssa-tail-merge.c (replace_block_by): Add frequency of bb2 to bb1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181392
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Tue, 15 Nov 2011 22:10:46 +0000 (22:10 +0000)]
PR rtl-optimization/51051
PR bootstrap/51086
* function.c (thread_prologue_and_epilogue_insns): Guard
emitting return with single_succ_p test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181391
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 15 Nov 2011 19:40:04 +0000 (19:40 +0000)]
* gcc.target/i386/sse2-cvt-vec.c: New test.
* gcc.target/i386/avx-cvt-vec.c: Ditto.
* gcc.target/i386/avx-cvt-2-vec.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181390
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 15 Nov 2011 19:06:32 +0000 (19:06 +0000)]
* config/epiphany/epiphany.md (mov<mode>cc): Fix code to
get mode from CMP_OP1 if CMP_OP0 is VOIDmode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181388
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 15 Nov 2011 18:45:20 +0000 (18:45 +0000)]
* config/i386/sse.md (vec_pack_trunc_v2df): Optimize sequence for AVX.
(vec_pack_sfix_trunc_v2df): Ditto.
(vec_pack_sfix_v2df): Ditto.
(vec_pack_sfix_trunc_v4df): Generate fix_truncv4dfv4si2 and
avx_vec_concatv8si patterns.
(vec_pack_sfix_v4df): Generate avx_cvtpd2dq256 and
avx_vec_concatv8si patterns.
testsuite/ChangeLog:
* gcc.target/i386/avx-floor-sfix-2-vec.c: New test.
* gcc.target/i386/avx-ceil-sfix-2-vec.c: Ditto.
* gcc.target/i386/avx-rint-sfix-2-vec.c: Ditto.
* gcc.target/i386/avx-round-sfix-2-vec.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181387
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Tue, 15 Nov 2011 13:16:17 +0000 (13:16 +0000)]
gcc/testsuite:
* lib/gcc-simulate-thread.exp (simulate-thread): Do not run on
powerpc*-*-darwin* targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181384
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Tue, 15 Nov 2011 12:16:13 +0000 (12:16 +0000)]
Require parentheses when parsing transaction expressions.
gcc/
* c-parser.c (c_parser_transaction_expression): Require parentheses
when parsing transaction expressions.
gcc/cp/
* parser.c (cp_parser_transaction_expression): Require parentheses
when parsing transaction expressions.
gcc/testsuite/
* c-c++-common/tm/trxn-expr-3.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181383
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 15 Nov 2011 10:49:00 +0000 (10:49 +0000)]
2011-11-15 Jason Dick <dickphd@gmail.com>
PR libstdc++/51133
* include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
wrong sign in recursion relation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181381
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Tue, 15 Nov 2011 10:25:36 +0000 (10:25 +0000)]
2011-11-15 Tristan Gingold <gingold@adacore.com>
* incpath.c (get_added_cpp_dirs): New function.
* incpath.h (get_added_cpp_dirs): Declare.
* config/vms/vms-c.c (vms_c_register_includes): New function.
(vms_std_modules): New variable.
* config/vms/vms.h (TARGET_EXTRA_INCLUDES): Define.
(vms_c_register_includes): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181380
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Tue, 15 Nov 2011 10:22:55 +0000 (10:22 +0000)]
2011-11-15 Tristan Gingold <gingold@adacore.com>
* c-family/c-pragma.h (pragma_extern_prefix): Declare.
* c-family/c-pragma.c (pragma_extern_prefix): Make it public.
* config/vms/vms-c.c (saved_extern_prefix): New variable.
(vms_pragma_extern_prefix): New function.
(vms_c_register_pragma): Register vms_pragma_extern_prefix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181379
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Tue, 15 Nov 2011 09:01:46 +0000 (09:01 +0000)]
gcc/
PR target/49868
* config/avr/avr.h (ADDR_SPACE_PGM): New address spaces.
(REGISTER_TARGET_PRAGMAS): New define.
* config/avr/avr-protos.h (avr_mem_pgm_p): New.
(avr_load_libgcc_p): New.
(asm_output_external_libcall): Remove.
(avr_register_target_pragmas): New.
(avr_log_t): Add field "progmem". Order alphabetically.
* config/avr/avr-log.c (avr_log_set_avr_log): Set avr_log.progmem.
* config/avr/avr-c.c (langhooks.h): New include.
(avr_register_target_pragmas): New function. Register address
space __pgm.
(avr_cpu_cpp_builtins): Add built-in define __PGM.
* config/avr/avr.c: Include "c-family/c-common.h".
(TARGET_LEGITIMATE_ADDRESS_P): Remove define.
(TARGET_LEGITIMIZE_ADDRESS): Remove define.
(TARGET_ADDR_SPACE_SUBSET_P): Define to...
(avr_addr_space_subset_p): ...this new static function.
(TARGET_ADDR_SPACE_CONVERT): Define to...
(avr_addr_space_convert): ...this new static function.
(TARGET_ADDR_SPACE_ADDRESS_MODE): Define to...
(avr_addr_space_address_mode): ...this new static function.
(TARGET_ADDR_SPACE_POINTER_MODE): Define to...
(avr_addr_space_pointer_mode): ...this new static function.
(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Define to...
(avr_addr_space_legitimate_address_p): ...this new static function.
(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Define to...
(avr_addr_space_legitimize_address): ...this new static function.
(avr_mode_code_base_reg_class): Handle address spaces.
(avr_regno_mode_code_ok_for_base_p): Ditto.
(lpm_addr_reg_rtx, lpm_reg_rtx, all_regs_rtx): New static variables.
(avr_option_override): Initialize them.
(output_reload_in_const): Use all_regs_rtx. Fix signedness of loop
variables.
(avr_pgm_segment): New static function.
(avr_decl_pgm_p, avr_mem_pgm_p): New static functions.
(avr_out_lpm, avr_out_lpm_no_lpmx): New static functions.
(output_movqi, output_movhi, output_movsisf, avr_out_movpsi): Call
avr_out_lpm to handle loads from progmem.
(avr_load_libgcc_p): New static function.
(avr_progmem_p): Test if decl is in flash.
(avr_pgm_pointer_const_p): New static function.
(avr_nonconst_pointer_addrspace): New static function.
(avr_pgm_check_var_decl): New static function.
(avr_insert_attributes): Use it. Change error message to report
cause (progmem or address space) when code wants to write to flash.
(avr_section_type_flags): Unset section flag SECTION_BSS for
data in progmem.
* config/avr/predicates.md (nop_general_operand): New predicate.
(nox_general_operand): New predicate.
* config/avr/avr.md (LPM_REGNO): New define_constant.
(load<mode>_libgcc): New expander.
(*load.<mode>.libgcc): New insn.
(mov<mode>): Handle loads from non-generic AS.
(movmemhi): Ditto. Propagate address space information to newly
created MEM.
(movqi_insn, *movhi, *movpsi, *movsi, *movsf): Change predicate #1
to nox_general_operand.
(ashrqi3, ashrhi3, ashrsi3): Change predicate #1 to nop_general_operand.
(ashlqi3, *ashlqi3, ashlhi3, ashlsi3): Ditto.
(lshrqi3, *lshrqi3, lshrhi3, lshrsi3): Ditto.
(split-lpmx): New split.
(*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
*lshrhi3_const, *lshrsi3_const): Indent, unquote C.
libgcc/
PR target/49868
* config/avr/t-avr (LIB1ASMFUNCS): Add _load_3, _load_4.
* config/avr/lib1funcs.S (__load_3, __load_4, __xload_2): New functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181378
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Tue, 15 Nov 2011 03:46:08 +0000 (03:46 +0000)]
* ipa-cp.c (ipa_value_from_jfunc): Make global.
(ipa_cst_from_jfunc): Remove, use ipa_value_from_jfunc instead.
(get_indirect_edge_target): Rename, make global.
(devirtualization_time_bonus, estimate_local_effects,)
(ipcp_discover_new_direct_edges): Update.
* ipa-inline-analysis.c (evaluate_conditions_for_edge):
Generalize to also handle types. Rename to ...
(evaluate_properties_for_edge): Use instead of
evaluate_conditions_for_edge.
(estimate_edge_devirt_benefit): New function.
(estimate_calls_size_and_time): Use it.
(estimate_node_size_and_time, estimate_ipcp_clone_size_and_time,)
(inline_merge_summary): Update.
(do_estimate_edge_time, do_estimate_edge_growth): Update. Calculate
parameter information at the call site and pass it on to subroutines.
* tree-inline.c (estimate_num_insns): Distinguish between direct and
indirect calls.
(init_inline_once): Set size and time costs or indirect calls.
* tree-inline.h (eni_weights): Add indirect_call_cost.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181377
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 15 Nov 2011 00:18:38 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181376
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Tue, 15 Nov 2011 00:12:45 +0000 (00:12 +0000)]
2011-11-15 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/51005
* tree-ssa-tail-merge.c (delete_basic_block_same_succ): Rename to
mark_basic_block_deleted.
(update_worklist): Inline purge_bbs.
(purge_bbs, unlink_virtual_phi, update_vuses, vop_at_entry)
(delete_block_update_dominator_info): Remove.
(replace_block_by): Remove update_vops parameter. Partially evaluate
for update_vops == false.
(apply_clusters): Remove update_vops parameter. Remove update_vops
argument in replace_block_by call.
(update_debug_stmts): Remove MAY_HAVE_DEBUG_STMTS test.
(tail_merge_optimize): Remove update_vops argument to apply_clusters.
Remove call to purge_bbs. Add calls to calculate_dominance_info and
free_dominance_info. Add MAY_HAVE_DEBUG_STMTS before calling
update_debug_stmts. Mark vop var for renaming, if necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181372
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Mon, 14 Nov 2011 23:31:13 +0000 (23:31 +0000)]
PR rtl-optimization/51051
* cfgrtl.c (cfg_layout_can_merge_blocks_p): Return FALSE if the
move would cause fallthrough into the exit block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181371
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 14 Nov 2011 22:59:02 +0000 (22:59 +0000)]
rs6000: Rewrite sync patterns for atomic; expand early.
The conversion of the __sync post-reload splitters was half
complete. Since there are nearly no restrictions on what may
appear between LL and SC, expand all the patterns immediatly.
This allows significantly easier code generation for subword
atomic operations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181370
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 14 Nov 2011 22:27:13 +0000 (22:27 +0000)]
* config/i386/sse.md (round<mode>2): Use register_operand for
operand 1 predicate.
(round<mode>2_sfix): Ditto.
(round<mode>2_vec_pack_sfix): Ditto for operand 1 and operand 2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181369
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 14 Nov 2011 22:26:45 +0000 (22:26 +0000)]
runtime: Use some of 6g runtime.c for easier merging.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181368
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Mon, 14 Nov 2011 21:44:01 +0000 (21:44 +0000)]
* gcov.c (canonicalize_name): Protect use of S_ISLNK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181367
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Mon, 14 Nov 2011 21:06:15 +0000 (21:06 +0000)]
Trivial: add cleanup-tree-dump in testcase, fix typo in comment.
gcc/testsuite:
* g++.dg/tm/template-1.C: Add cleanup-tree-dump. Fix typo in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181366
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Mon, 14 Nov 2011 21:05:12 +0000 (21:05 +0000)]
gcc:
2011-11-14 Jan Hubicka <jh@suse.cz>
* config/i386/i386.c (core cost model): Correct pasto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181365
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 14 Nov 2011 20:25:14 +0000 (20:25 +0000)]
* gcc.target/i386/avx-recip-vec.c: New test.
* gcc.target/i386/avx-lrintf-vec.c: Ditto.
* gcc.target/i386/avx-lrint-vec.c: Ditto.
* gcc.target/i386/avx-ceilf-vec.c: Include sse4_1-ceilf-vec.c.
* gcc.target/i386/avx-ceil-vec.c: Include sse4_1-ceil-vec.c.
* gcc.target/i386/avx-floorf-vec.c: Include sse4_1-floorf-vec.c.
* gcc.target/i386/avx-floor-vec.c: Include sse4_1-floor-vec.c.
* gcc.target/i386/avx-rintf-vec.c: Include sse4_1-rintf-vec.c.
* gcc.target/i386/avx-rint-vec.c: Include sse4_1-rint-vec.c.
* gcc.target/i386/avx-roundf-vec.c: Include sse4_1-roundf-vec.c.
* gcc.target/i386/avx-round-vec.c: Include sse4_1-round-vec.c.
* gcc.target/i386/avx-truncf-vec.c: Include sse4_1-truncf-vec.c.
* gcc.target/i386/avx-trunc-vec.c: Include sse4_1-trunc-vec.c.
* gcc.target/i386/avx-copysignf-vec.c: Include sse-copysignf-vec.c.
* gcc.target/i386/avx-copysign-vec.c: Include sse2-copysign-vec.c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181364
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 14 Nov 2011 20:05:12 +0000 (20:05 +0000)]
PR c++/51107
* typeck.c (check_literal_operator_args): Add processing_specialization
to check for void template fn. Test for exact arity for non-template fn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181363
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 14 Nov 2011 19:36:33 +0000 (19:36 +0000)]
* config/i386/sse.md (round<mode>2_sfix): New expander.
(round<mode>2_vec_pack_sfix): Ditto.
(<sse4_1>_round<ssemodesuffix>_sfix<avxsizesuffix>): Ditto.
(<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.
* config/i386/builtin-types.def (V4SI_FTYPE_V4SF_ROUND,
V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND,
V8SI_FTYPE_V4DF_V4DF_ROUND): New builtin types.
* config/i386/i386.c (ix86_builtins): Add
IX86_BUILTIN_{FLOORPD,CEILPD,ROUNDPD_AZ}_VEC_PACK_SFIX{,256} and
IX86_BUILTIN_{FLOORPS,CEILPS,ROUNDPS_AZ}_SFIX{,256} defines.
(bdesc_args): Add __builtin_ia32_{floorpd,ceilpd}_vec_pack_sfix{,256},
__builtin_ia32_roundpd_az_vec_pack_sfix{,256},
__builtin_ia32_{floorps,ceilps}_sfix{,256}and
__builtin_ia32_roundps_az_sfix{,256} descriptions.
(ix86_expand_sse_round_vec_pack_sfix): New.
(ix86_expand_args_builtin): Handle V4SI_FTYPE_V4SF_ROUND,
V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND and
V8SI_FTYPE_V4DF_V4DF_ROUND types. Check last argument of
CODE_FOR_sse4_1_roundpd_vec_pack_sfix, CODE_FOR_sse4_1_roundps_sfix,
CODE_FOR_avx_roundpd_vec_pack_sfix256 and CODE_FOR_avx_roundps_sfix256.
(ix86_builtin_vectorized_function): Handle
BUILT_IN_{I,L,LL}FLOOR{,F}, BUILT_IN_{I,L,LL}CEIL{,F} and
BUILT_IN_{I,L,LL}ROUND{,F}
testsuite/ChangeLog:
* gcc.target/i386/sse4_1-floor-sfix-vec.c: New test.
* gcc.target/i386/sse4_1-floorf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-floor-sfix-vec.c: Ditto.
* gcc.target/i386/avx-floorf-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-ceil-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-ceilf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-ceil-sfix-vec.c: Ditto.
* gcc.target/i386/avx-ceilf-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-round-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-roundf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-round-sfix-vec.c: Ditto.
* gcc.target/i386/avx-roundf-sfix-vec.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181361
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 14 Nov 2011 18:12:24 +0000 (18:12 +0000)]
Check ia32 instead of ilp32.
2011-11-14 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/lib/libitm.exp: Check ia32 instead of ilp32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181360
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 14 Nov 2011 17:55:57 +0000 (17:55 +0000)]
PR c++/6936
PR c++/25994
PR c++/26256
PR c++/30195
* search.c (lookup_field_1): Look through USING_DECL.
(lookup_field_r): Call lookup_fnfields_slot instead of
lookup_fnfields_1.
* semantics.c (finish_member_declaration): Remove the check that
prevents USING_DECLs from being verified by
pushdecl_class_level. Call add_method for using declarations that
designates functions if the using declaration is in a template
class. Set DECL_IGNORED_P on class-scope using declarations.
* typeck.c (build_class_member_access_expr): Handle USING_DECLs.
* class.c (check_field_decls): Keep using declarations.
(add_method): Remove two diagnostics about conflicting using
declarations.
* parser.c (cp_parser_nonclass_name): Handle USING_DECLs.
* decl.c (start_enum): Call xref_tag whenever possible.
* cp-tree.h (strip_using_decl): Declare, and reident the previous
function.
* name-lookup.c (strip_using_decl): New function.
(supplement_binding_1): Call strip_using_decl on decl and
bval. Perform most of the checks with USING_DECLs stripped. Also
check that the target decl and the target bval does not refer to
the same declaration. Allow pushing an enum multiple times in a
template class. Adjustment to diagnose using redeclarations. Call
diagnose_name_conflict.
(push_class_level_binding): Call strip_using_decl on decl and
bval. Perform most of the checks with USING_DECLs stripped. Return
true if both decl and bval refer to USING_DECLs and are dependent.
(diagnose_name_conflict): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181359
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 14 Nov 2011 17:32:47 +0000 (17:32 +0000)]
PR middle-end/50598
* cgraph.h (varpool_externally_visible_p): Declare.
(varpool_add_new_variable): Declare.
* tree-emultls.c (get_emutls_init_templ_addr,
new_emutls_decl): Use varpool_add_new_variable.
* ipa.c (varpool_externally_visible_p): Export.
* varpool.c (varpool_add_new_variable): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181358
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 14 Nov 2011 17:28:11 +0000 (17:28 +0000)]
* gcc.target/i386/sw-1.c: Force rep;movsb.
* config/i386/i386.h (processor_costs): Add second dimension to
stringop_algs array.
* config/i386/i386.c (cost models): Initialize second dimension of
stringop_algs arrays.
(core_cost): New costs based on generic64 costs with updated stringop
values.
(promote_duplicated_reg): Add support for vector modes, add
declaration.
(promote_duplicated_reg_to_size): Likewise.
(processor_target): Set core costs for core variants.
(expand_set_or_movmem_via_loop_with_iter): New function.
(expand_set_or_movmem_via_loop): Enable reuse of the same iters in
different loops, produced by this function.
(emit_strset): New function.
(expand_movmem_epilogue): Add epilogue generation for bigger sizes,
use SSE-moves where possible.
(expand_setmem_epilogue): Likewise.
(expand_movmem_prologue): Likewise for prologue.
(expand_setmem_prologue): Likewise.
(expand_constant_movmem_prologue): Likewise.
(expand_constant_setmem_prologue): Likewise.
(decide_alg): Add new argument align_unknown. Fix algorithm of
strategy selection if TARGET_INLINE_ALL_STRINGOPS is set; Skip sse_loop
(decide_alignment): Update desired alignment according to chosen move
mode.
(ix86_expand_movmem): Change unrolled_loop strategy to use SSE-moves.
(ix86_expand_setmem): Likewise.
(ix86_slow_unaligned_access): Implementation of new hook
slow_unaligned_access.
* config/i386/i386.md (strset): Enable half-SSE moves.
* config/i386/sse.md (vec_dupv4si): Add expand for vec_dupv4si.
(vec_dupv2di): Add expand for vec_dupv2di.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181357
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 14 Nov 2011 16:55:56 +0000 (16:55 +0000)]
PR bootstrap/51094
PR middle-end/51116
* config/elfos.h (TARGET_ASM_INTERNAL_LABEL): Remove.
* varasm.c (default_elf_internal_label): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181355
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Mon, 14 Nov 2011 16:38:23 +0000 (16:38 +0000)]
* gcov.c (generate_results): Add missing semicolon and
correct indent.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181353
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Mon, 14 Nov 2011 11:53:33 +0000 (11:53 +0000)]
gcc/testsuite:
PR testsuite/51059
* gcc.misc-tests/gcov-14.c (dg-options): Adjust to use
dg-additional-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181350
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 14 Nov 2011 11:29:26 +0000 (11:29 +0000)]
2011-11-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
not viable anyway due to the pointer parameter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181349
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 14 Nov 2011 08:15:09 +0000 (08:15 +0000)]
2011-11-14 Tobias Burnus <burnus@net-b.de>
PR fortran/51073
* trans-decl.c (generate_coarray_sym_init): Handle zero-sized
* arrays.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181348
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Mon, 14 Nov 2011 06:41:09 +0000 (06:41 +0000)]
PR bootstrap/51112
* tree-vect-stmts.c (vectorizable_condition): Initialize
comp_vectype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181347
138bc75d-0d04-0410-961f-
82ee72b054a4
xmj [Mon, 14 Nov 2011 05:53:18 +0000 (05:53 +0000)]
Fix a cross reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181346
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 14 Nov 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181345
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sun, 13 Nov 2011 23:51:42 +0000 (23:51 +0000)]
2011-11-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
constraining on the return type.
* include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
nextafter, remainder, remquo): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181341
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Sun, 13 Nov 2011 23:00:10 +0000 (23:00 +0000)]
PR target/50694
* config/sh/sh.h (IS_LITTLE_ENDIAN_OPTION, UNSUPPORTED_SH2A):
New macros.
(DRIVER_SELF_SPECS): Use new macros to filter out
unsupported options taking the default configuration into
account.
* gcc.target/sh/pr21255-2-ml.c: Skip if -mb or -m5* is
specified. Remove redundant runtime checks.
* gcc.target/sh/
20080410-1.c: Skip if -mb is specified.
Allow for other than -m4. Fix typos in comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181340
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 13 Nov 2011 20:17:01 +0000 (20:17 +0000)]
* config.host (hppa*64*-*-hpux11*): Remove pa/t-stublib64 from
tmake_file list.
* config/pa/t-stublib: Merge rules from config/pa/t-stublib64.
* config/pa/t-stublib64: Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181339
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Sun, 13 Nov 2011 16:39:22 +0000 (16:39 +0000)]
* doc/install.texi (Specific): Fix anchor for
x86_64-*-solaris2.1[0-9]*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181338
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Sun, 13 Nov 2011 10:26:23 +0000 (10:26 +0000)]
* gcov.c (source_prefix, source_length): New globals.
(flag_relative_only): Likewise.
(print_usage, options, process_args): Update.
(generate_results): Use coverage.name, check
flag_relative_only. Adjust messages.
(find_source): Check source_prefix.
(output_lines): Use coverage.name, adjust messages.
* doc/gcov.texi (Invoking Gcov): Document new options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181335
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sun, 13 Nov 2011 05:09:36 +0000 (05:09 +0000)]
PR c++/986
* call.c (set_up_extended_ref_temp): Warn about references
bound to non-static reference members.
* init.c (perform_member_init): Pass in the member.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181334
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Sun, 13 Nov 2011 04:27:22 +0000 (04:27 +0000)]
* using.xml: Use GNU/Linux.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181333
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sun, 13 Nov 2011 00:44:39 +0000 (00:44 +0000)]
PR c++/51060
* gimplify.c (gimplify_target_expr): Add a clobber to the cleanup.
(gimplify_modify_expr): Don't try to simplify it.
* cp/cp-gimplify.c (cp_gimplify_expr): Leave clobbers alone.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181332
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 13 Nov 2011 00:18:44 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181331
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sat, 12 Nov 2011 21:40:07 +0000 (21:40 +0000)]
PR bootstrap/51094
* config/elfos.h (STRING_ASM_OP): Define.
* varasm.c (default_elf_asm_output_limited_string): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181327
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sat, 12 Nov 2011 21:39:59 +0000 (21:39 +0000)]
PR bootstrap/51094
* gcc/configure.ac: Check for stpcpy declaration.
* system.h: Declare it if not.
* config.in, configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181326
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 12 Nov 2011 17:20:58 +0000 (17:20 +0000)]
ppc-linux: Fix call to _Unwind_SetGRPtr
* config/rs6000/linux-unwind.h (frob_update_context): Properly
cast the pointer argument to _Unwind_SetGRPtr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181325
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 12 Nov 2011 17:19:39 +0000 (17:19 +0000)]
rs6000: fix*_trunc insns use nonimmediate_operand
* config/rs6000/rs6000.md (fix_trunc<SFDF>si2_stfiwx): Use
nonimmediate_operand for the destination.
(fixuns_trunc<SFDF>si2_stfiwx): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181324
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 12 Nov 2011 17:17:54 +0000 (17:17 +0000)]
* builtins.c (expand_builtin_compare_and_swap): If target is const0,
don't pass the target to expand_atomic_compare_and_swap.
(expand_builtin_atomic_compare_exchange): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181323
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 12 Nov 2011 17:17:45 +0000 (17:17 +0000)]
sh-linux: Install __sync libfuncs.
* config/sh/linux.h (TARGET_INIT_LIBFUNCS): New.
* config/sh/sh.c (sh_init_sync_libfuncs): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181322
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Sat, 12 Nov 2011 15:57:03 +0000 (15:57 +0000)]
PR libstdc++/51083
* include/ext/type_traits.h (__promote): Only define __type member
for integral and floating point types, to prevent math functions
participating in overload resolution for other types.
(__promote_2, __promote_3, __promote_4): Use __promote in default
template argument values, so deduction only succeeds for integral and
floating point types.
* testsuite/26_numerics/cmath/51083.cc: New.
* testsuite/26_numerics/complex/51083.cc: New.
* testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
* testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181321
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 12 Nov 2011 15:39:44 +0000 (15:39 +0000)]
hppa: Install __sync libfuncs for linux.
* config/pa/pa-linux.h (TARGET_SYNC_LIBCALL): New.
* config/pa/pa.h (TARGET_SYNC_LIBCALL): New default.
* config/pa/pa.c (pa_init_libfuncs): Use init_sync_libfuncs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181320
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Sat, 12 Nov 2011 15:06:18 +0000 (15:06 +0000)]
ada:
* gcc-interface/Makefile.in (stamp-gnatlib-$(RTSDIR)): Don't link
s-oscons.ads.
(OSCONS_CPP, OSCONS_EXTRACT): New.
(./bldtools/oscons/xoscons): New Target.
($(RTSDIR)/s-oscons.ads): New Target.
(gnatlib): Depend on $(RTSDIR)/s-oscons.ads.
* gcc-interface/Make-lang.in (ada/s-oscons.ads) Remove as dependency.
* Make-generated.in: Remove machinery to generate xoscons and
ada/s-oscons.ads.
libada:
Makefile.in: Change dependency on oscons to depend on the generator
tool.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181319
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sat, 12 Nov 2011 14:35:31 +0000 (14:35 +0000)]
* lib/gcc-simulate-thread.exp (simulate-thread): Do not run on
alpha*-*-linux* targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181318
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Sat, 12 Nov 2011 14:30:45 +0000 (14:30 +0000)]
gcc/testsuite:
PR testsuite/51059
* gcc.misc-tests/gcov-14.c (dg-options): Force flat namespace for
Darwin targets and allow external symbols to be undefined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181317
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Sat, 12 Nov 2011 14:12:26 +0000 (14:12 +0000)]
gcc:
PR target/45233
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address):
Only expand a symbol ref. into an access when the entity is defined
in the TU.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181315
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Sat, 12 Nov 2011 13:54:33 +0000 (13:54 +0000)]
gcc/obj:
* objc-next-runtime-abi-01.c (objc_eh_personality): Use gcc personality
for Objective-C m32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181312
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 12 Nov 2011 13:19:55 +0000 (13:19 +0000)]
PR bootstrap/50822
* cgraphunit.c (output_weakrefs): Output really only weakrefs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181311
138bc75d-0d04-0410-961f-
82ee72b054a4
abel [Sat, 12 Nov 2011 12:11:39 +0000 (12:11 +0000)]
* MAINTAINERS (Reviewers): Keep the list sorted.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181310
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Sat, 12 Nov 2011 11:35:42 +0000 (11:35 +0000)]
* gcov.c (struct name_map): New.
(names, n_names, a_names): New global vars.
(print_usage): Adjust usage.
(generate_results): Canonicalize main file name.
(release_structures): Adjust.
(name_search, name_sort): New callbacks.
(find_source): Look for and create a canonical name.
(canonicalize_name): New.
(make_gcov_file_name): Reimplement and fix mangling.
(mangle_name): New.
* doc/gcov.texi: Update documentation about path preservation.
testsuite/
* gcc.misc-tests/gcov-15.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181309
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 12 Nov 2011 08:57:49 +0000 (08:57 +0000)]
Fix recent entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181308
138bc75d-0d04-0410-961f-
82ee72b054a4
davem [Sat, 12 Nov 2011 01:05:07 +0000 (01:05 +0000)]
Fix Linux/sparc build after generic asm output optimizations.
* config/sparc/linux.h (ASM_GENERATE_INTERNAL_LABEL): Delete.
* config/sparc/linux64.h (ASM_GENERATE_INTERNAL_LABEL): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181307
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 12 Nov 2011 00:18:00 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181306
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 11 Nov 2011 21:02:48 +0000 (21:02 +0000)]
Introduce G structure and thread-local global g.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181301
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:58:10 +0000 (19:58 +0000)]
* config/i386/i386-protos.h (ix86_maybe_emit_epilogue_vzeroupper):
New prototype.
* config/i386/i386.c (ix86_maybe_emit_epilogue_vzeroupper): New
function.
(ix86_expand_epilogue): Use it.
* config/i386/i386.md (return, simple_return): Call it in the
expanders.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181300
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:57:23 +0000 (19:57 +0000)]
PR tree-optimization/51091
* tree-stdarg.c (execute_optimize_stdarg): Ignore TREE_CLOBBER_P
rhs also in the va_list_simple_ptr case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181299
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:56:13 +0000 (19:56 +0000)]
PR tree-optimization/51058
* tree-vect-slp.c (vect_remove_slp_scalar_calls): New function.
(vect_schedule_slp): Call it.
* tree-vect-stmts.c (vectorizable_call): If slp_node != NULL,
don't replace scalar calls with setting of their lhs to zero here.
* gcc.dg/vect/fast-math-vect-call-1.c: Add f4 test.
* gfortran.dg/vect/pr51058-2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181298
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:55:23 +0000 (19:55 +0000)]
PR tree-optimization/51074
* fold-const.c (vec_cst_ctor_to_array, fold_vec_perm): New functions.
(fold_binary_loc): Handle VEC_EXTRACT_EVEN_EXPR,
VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR and
VEC_INTERLEAVE_LOW_EXPR with VECTOR_CST or CONSTRUCTOR operands.
(fold_ternary_loc): Handle VEC_PERM_EXPR with VECTOR_CST or
CONSTRUCTOR operands.
* tree-ssa-propagate.c (valid_gimple_rhs_p): Handle ternary
expressions.
* tree-vect-generic.c (lower_vec_perm): Mask sel_int elements
to 0 .. 2 * elements - 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181297
138bc75d-0d04-0410-961f-
82ee72b054a4