Paolo Carlini
879e1011e0
invoke.cc: Avoid -Wall warnings.
...
2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
* testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
* testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
* testsuite/20_util/allocator_traits/members/allocate_hint.cc:
Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
* testsuite/20_util/bind/socket.cc: Likewise.
* testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
* testsuite/util/testsuite_random.h: Likewise.
From-SVN: r175318
2011-06-22 21:46:17 +00:00
Hans-Peter Nilsson
96427cb5a9
re PR middle-end/49373 (Many testcase failures)
...
PR middle-end/49373
* g++.dg/torture/pr43879-1_1.C: Xfail for -O1 and above, except -flto.
From-SVN: r175317
2011-06-22 21:38:20 +00:00
Hans-Peter Nilsson
5167b7cfc6
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)
...
PR regression/47836
PR bootstrap/23656
PR other/47733
PR bootstrap/49247
PR c/48825
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets. Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.
(add missing PR annotation in the ChangeLog entry)
From-SVN: r175316
2011-06-22 21:30:19 +00:00
Jakub Jelinek
fb79f500af
re PR libgomp/49490 (suboptimal load balancing in loops)
...
PR libgomp/49490
* omp-low.c (expand_omp_for_static_nochunk): Only
use n ceil/ nthreads size for the first
n % nthreads threads in the team instead of
all threads except for the last few ones which
get less work or none at all.
* iter.c (gomp_iter_static_next): For chunk size 0
only use n ceil/ nthreads size for the first
n % nthreads threads in the team instead of
all threads except for the last few ones which
get less work or none at all.
* iter_ull.c (gomp_iter_ull_static_next): Likewise.
* env.c (parse_schedule): If OMP_SCHEDULE doesn't have
chunk argument, set run_sched_modifier to 0 for static
resp. 1 for other kinds. If chunk argument is 0
and not static, set value to 1.
From-SVN: r175315
2011-06-22 22:39:25 +02:00
Jakub Jelinek
4fb489e796
re PR debug/49496 (-fcompare-debug failure (length) with -O -ftree-vectorize)
...
PR debug/49496
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Ignore debug
uses.
* gcc.dg/pr49496.c: New test.
From-SVN: r175314
2011-06-22 22:37:54 +02:00
Janis Johnson
7d059f1894
scd42-3.c: Allow -march-xscale; skip if -mcpu is not xscale.
...
* gcc.target/arm/scd42-3.c: Allow -march-xscale; skip if -mcpu
is not xscale.
From-SVN: r175312
2011-06-22 20:29:53 +00:00
Janis Johnson
ba16e76614
* gcc.target/arm/thumb-bitfld1.c: Don't specify -march, require thumb1.
...
From-SVN: r175311
2011-06-22 20:28:29 +00:00
Janis Johnson
c8c933079a
ctz.c: Don't specify -march, require thumb2.
...
* gcc.target/arm/ctz.c: Don't specify -march, require thumb2.
* gcc.target/arm/pr42879.c: Likewise.
* gcc.target/arm/pr45701-3.c: Likewise.
From-SVN: r175310
2011-06-22 20:27:40 +00:00
Paolo Carlini
bd9db3b8dd
stl_construct.h: Update Copyright years.
...
2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_construct.h: Update Copyright years.
* include/bits/stl_uninitialized.h: Likewise.
From-SVN: r175309
2011-06-22 20:27:21 +00:00
Janis Johnson
280216a987
20031108-1.c: Require thumb1 or thumb2.
...
* gcc.target/arm/20031108-1.c: Require thumb1 or thumb2.
* gcc.target/arm/pr40482.c: Likewise.
* gcc.target/arm/stack-corruption.c: Likewise.
From-SVN: r175308
2011-06-22 20:26:35 +00:00
Hans-Peter Nilsson
6be8092368
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)
...
PR regression/47836
PR bootstrap/23656
PR other/47733
PR bootstrap/49247
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets. Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.
(fixing PR annotations in the ChangeLog entry)
From-SVN: r175307
2011-06-22 20:17:47 +00:00
Jonathan Wakely
e8eb60bd92
Makefile.am: Add alloc_traits.h headers.
...
2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/Makefile.am: Add alloc_traits.h headers.
* include/Makefile.in: Regenerate.
* include/std/memory: Include uses_allocator.h explicitly.
* include/bits/allocator.h (allocator_traits): Move to ...
* include/bits/alloc_traits.h: New header.
* include/ext/alloc_traits.h (__alloc_traits): Extension to provide
a common allocator interface for C++98 and C++0x.
* include/bits/stl_construct.h: Use __alloc_traits.
* include/bits/stl_uninitialized.h: Likewise.
From-SVN: r175305
2011-06-22 20:57:12 +01:00
Hans-Peter Nilsson
8499116aa3
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)
...
PR47836
PR23656
PR47733
PR49247
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets. Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.
From-SVN: r175304
2011-06-22 19:40:45 +00:00
Richard Guenther
9c7c9f10c3
re PR tree-optimization/49493 (ICE: in insert_vi_for_tree, at tree-ssa-structalias.c:2637 with -O -fipa-pta)
...
2011-06-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49493
* tree-ssa-structalias.c (get_constraint_for_ssa_var):
Refer to the alias target of variables.
(associate_varinfo_to_alias_1): Remove.
(ipa_pta_execute): Do not associate aliases with anything.
* cgraph.h (varpool_alias_aliased_node): Fix cut&paste errors.
(cgraph_function_node): Likewise.
(cgraph_function_or_thunk_node): Likewise.
(varpool_variable_node): Likewise.
* gcc.dg/ipa/ipa-pta-17.c: New testcase.
From-SVN: r175300
2011-06-22 18:02:06 +00:00
Uros Bizjak
7b902b811b
Revert:
...
2011-06-22 Uros Bizjak <ubizjak@gmail.com>
* gcc.dg/torture/tls/run-le.c: Skip for -pie on alpha*-*-linux*.
* gcc.dg/torture/tls/tls-test.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.
* gcc.dg/torture/tls/thr-init-2.c: Ditto.
Co-Authored-By: Dmitry Melnik <dm@ispras.ru>
From-SVN: r175299
2011-06-22 19:27:07 +02:00
Nathan Sidwell
7cf13d1f46
arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect typo.
...
* config/arm/arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect
typo.
* config.gcc (arm*-*-linux*): Default to gnu tls.
(arm*-*-*): Add --with-tls option.
(all_defaults): Add 'tls'.
From-SVN: r175298
2011-06-22 17:01:17 +00:00
Richard Henderson
78a8eb4edc
reg-notes.def (REG_CFA_WINDOW_SAVE): New.
...
* reg-notes.def (REG_CFA_WINDOW_SAVE): New.
* dwarf2out.c (dwarf2out_frame_debug): Handle it.
(dwarf2out_frame_debug_cfa_window_save): Rename from
dwarf2out_window_save; make static.
* tree.h (dwarf2out_window_save): Don't declare.
* config/sparc/sparc.c (sparc_dwarf_handle_frame_unspec): Remove.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
(emit_save_register_window): Rename from gen_save_register_window;
emit the insn and add REG_CFA_* notes.
(sparc_expand_prologue): Update to match.
* config/sparc/sparc.md (save_register_window_1): Simplify from
save_register_window<P:mode>.
From-SVN: r175297
2011-06-22 09:26:52 -07:00
Jason Merrill
8288cc7387
re PR c++/49260 ([C++0x] lambda-eh2.C fails execution)
...
PR c++/49260
* call.c (build_call_a): Set cp_function_chain->can_throw here.
(build_cxx_call): Not here.
From-SVN: r175296
2011-06-22 11:55:22 -04:00
H.J. Lu
3b4c46d711
Check TARGET_PARTIAL_REG_STALL in imul to lea peepholes.
...
2011-06-22 H.J. Lu <hongjiu.lu@intel.com>
PR target/49497
* config/i386/i386.md (*lea_general_2): Always allow SImode.
(*lea_general_2_zext): Likewise.
(imul to lea peepholes): Use const359_operand and check
TARGET_PARTIAL_REG_STALL.
* config/i386/predicates.md (const359_operand): New.
From-SVN: r175295
2011-06-22 08:29:43 -07:00
Michael Matz
4399cf590f
* cgraphunit.c (assemble_thunk): Use correct return type.
...
From-SVN: r175294
2011-06-22 13:59:03 +00:00
Dmitry Plotnikov
31a0c8251b
arm.c (neon_immediate_valid_for_shift): New function.
...
2011-06-22 Dmitry Plotnikov <dplotnikov@ispras.ru>
Dmitry Melnik <dm@ispras.ru>
* config/arm/arm.c (neon_immediate_valid_for_shift): New function.
(neon_output_shift_immediate): Ditto.
* config/arm/arm-protos.h (neon_immediate_valid_for_shift): New
prototype.
(neon_output_shift_immediate): Ditto.
* config/arm/neon.md (vashl<mode>3): Modified constraint.
(vashr<mode>3_imm): New insn pattern.
(vlshr<mode>3_imm): Ditto.
(vashr<mode>3): Modified constraint.
(vlshr<mode>3): Ditto.
* config/arm/predicates.md (imm_for_neon_lshift_operand): New
predicate.
(imm_for_neon_rshift_operand): Ditto.
(imm_lshift_or_reg_neon): Ditto.
(imm_rshift_or_reg_neon): Ditto.
* optabs.c (init_optabs): Init optab codes for vashl, vashr, vlshr.
testsuite:
* gcc.target/arm/neon-vshr-imm-1.c: New testcase.
* gcc.target/arm/neon-vshl-imm-1.c: New testcase.
* gcc.target/arm/neon-vlshr-imm-1.c: New testcase.
Co-Authored-By: Dmitry Melnik <dm@ispras.ru>
From-SVN: r175293
2011-06-22 15:57:52 +04:00
Uros Bizjak
1da9434b4b
enable-execute-stack-empty.c (__enable_execute_stack): Add prototype.
...
* enable-execute-stack-empty.c (__enable_execute_stack): Add prototype.
From-SVN: r175292
2011-06-22 13:20:07 +02:00
Uros Bizjak
070387a43c
run-le.c: Skip for -pie on alpha*-*-linux*.
...
* gcc.dg/torture/tls/run-le.c: Skip for -pie on alpha*-*-linux*.
* gcc.dg/torture/tls/tls-test.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.
From-SVN: r175291
2011-06-22 13:16:16 +02:00
Jakub Jelinek
36dc1a88ff
tree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for builtin calls even if likelyvalue is not CONSTANT.
...
* tree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for
builtin calls even if likelyvalue is not CONSTANT.
Handle BUILT_IN_STRDUP and BUILT_IN_STRNDUP like BUILT_IN_MALLOC.
Return get_value_for_expr of first operand
for BUILT_IN_{MEM{CPY,MOVE,SET},STR{,N}CPY}{,_CHK}.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK like
their non-checking counterparts.
(call_may_clobber_ref_p_1): Likewise.
(stmt_kills_ref_p_1): Handle BUILT_IN_MEM{{,P}CPY,MOVE,SET}_CHK
like their non-checking counterparts.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Handle BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK
like their non-checking counterparts.
(find_func_clobbers): Likewise.
* tree-ssa-dce.c (propagate_necessity): Handle BUILT_IN_MEMSET_CHK
like BUILT_IN_MEMSET and BUILT_IN_CALLOC like BUILT_IN_MALLOC.
From-SVN: r175290
2011-06-22 12:46:36 +02:00
Jakub Jelinek
41cd495729
dwarf2out.c (size_of_loc_descr, [...]): Allow DW_OP_GNU_convert and DW_OP_GNU_reinterpret to use constant instead of...
...
* dwarf2out.c (size_of_loc_descr, output_loc_operands,
mark_base_types, hash_loc_operands, compare_loc_operands): Allow
DW_OP_GNU_convert and DW_OP_GNU_reinterpret to use constant instead
of base type reference as argument.
(resolve_addr_in_expr): Likewise. Fix keep computation.
(convert_descriptor_to_signed): Renamed to...
(convert_descriptor_to_mode): ... this. For wider types convert
to unsigned instead of signed, for <= DWARF2_ADDR_SIZE convert to
untyped.
(typed_binop): New function.
(scompare_loc_descriptor, ucompare_loc_descriptor,
minmax_loc_descriptor, mem_loc_descriptor): For wider integer modes
default to unsigned type instead of signed.
From-SVN: r175289
2011-06-22 12:44:56 +02:00
Jakub Jelinek
ddb555ed51
re PR debug/47858 (IPA-SRA decreases quality of debug info)
...
PR debug/47858
* gimple.h (enum gimple_debug_subcode): Add GIMPLE_DEBUG_SOURCE_BIND.
(gimple_build_debug_source_bind_stat): New prototype.
(gimple_build_debug_source_bind): Define.
(gimple_debug_source_bind_p, gimple_debug_source_bind_get_var,
gimple_debug_source_bind_get_value,
gimple_debug_source_bind_get_value_ptr,
gimple_debug_source_bind_set_var,
gimple_debug_source_bind_set_value): New inlines.
* gimple.c (gimple_build_debug_source_bind_stat): New function.
* gimple-pretty-print.c (dump_gimple_debug): Handle
GIMPLE_DEBUG_SOURCE_BIND.
* sese.c (rename_uses): Handle gimple_debug_source_bind_p.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
* tree-parloops.c (eliminate_local_variables,
separate_decls_in_region): Likewise.
(separate_decls_in_region_debug): Renamed from
separate_decls_in_region_debug_bind. Handle
gimple_debug_source_bind_p.
* tree.h (decl_debug_args_lookup, decl_debug_args_insert): New
prototypes.
(DECL_HAS_DEBUG_ARGS_P): Define.
(struct tree_function_decl): Add has_debug_args_flag field.
* tree.c (debug_args_for_decl): New variable.
(decl_debug_args_lookup, decl_debug_args_insert): New functions.
* tree-into-ssa.c (mark_def_sites): Handle uses in debug stmts.
(rewrite_debug_stmt_uses): New function.
(rewrite_stmt): Use it to rewrite debug stmt uses.
* rtl.def (DEBUG_PARAMETER_REF): New.
* rtl.h (DEBUG_PARAMETER_REF_DECL): Define.
* cselib.c (rtx_equal_for_cselib_1, cselib_hash_rtx): Handle
DEBUG_PARAMETER_REF.
* rtl.c (rtx_equal_p_cb, rtx_equal_p, iterative_hash_rtx): Likewise.
* print-rtl.c (print_rtx): Likewise.
* tree-sra.c (sra_ipa_reset_debug_stmts): Prefer replacing of
SSA_NAMEs with DEBUG_EXPR_DECLs initialized in source bind
debug stmts in the first bb.
* tree-inline.c (remap_ssa_name): If remapping default def
of a PARM_DECL fails, map to a DEBUG_EXPR_DECL set in
a source bind debug stmt.
(remap_gimple_stmt): Handle gimple_debug_source_bind_p.
(maybe_move_debug_stmts_to_successors): Likewise.
(copy_debug_stmt): Likewise. Avoid shadowing a variable.
(tree_function_versioning): If DECL_HAS_DEBUG_ARGS_P, copy
debug args vector from old_decl to new_decl.
* ipa-prop.c (ipa_modify_call_arguments): For optimized away
or modified parameters, add debug bind stmts before call
setting DEBUG_EXPR_DECL which is remembered in debug args
vector.
* cfgexpand.c (expand_call_stmt): Call expand_debug_expr
on DECL_DEBUG_EXPRs from debug args vector.
(expand_debug_source_expr): New function.
(expand_debug_locations): Use it for source bind insns.
(expand_gimple_basic_block): Handle gimple_debug_source_bind_p.
* var-tracking.c (prepare_call_arguments): Add debug args
to call_arguments if any.
* dwarf2out.c (dwarf_stack_op_name, size_of_loc_descr,
output_loc_operands, output_loc_operands_raw,
resolve_addr_in_expr, compare_loc_operands): Handle
DW_OP_GNU_parameter_ref.
(get_ref_die_offset, parameter_ref_descriptor): New functions.
(mem_loc_descriptor): Handle DEBUG_PARAMETER_REF.
(gen_subprogram_die): Handle parameters identified by
DEBUG_PARAMETER_REF.
* dwarf2.h (enum dwarf_location_atom): Add DW_OP_GNU_parameter_ref.
From-SVN: r175288
2011-06-22 12:41:58 +02:00
Nathan Sidwell
ccdc216414
invoke.texi (ARM Options): Document -mtls-dialect option.
...
* doc/invoke.texi (ARM Options): Document -mtls-dialect option.
* doc/install.texi (Configuration): Document --with-tls.
* config.gcc (arm*-*-linux*): Default to gnu tls.
(arm*-*-*): Add --with-tls option.
(all_defaults): Add 'tls'.
* config/arm/arm.c (enum tls_reloc): Add TLS_DESCSEQ.
(arm_call_tls_get_addr): Clean up. Assert not tls descriptor.
(arm_tls_descseq_addr): New.
(legitimize_tls_address): Add tlsdesc support.
(arm_cannot_copy_insn_p): Check for tlscall.
(arm_emit_tls_decoration): Likewise.
* config/arm/arm.h (TARGET_GNU2_TLS): New.
(OPTION_DEFAULT_SPECS): Add with-tls support.
* config/arm/arm.md (R1_REGNUM): Define.
(tlscall): New.
* config/arm/arm.opt (tls_type): New enumeration type and values.
(mtls-dialect): New switch.
* config/arm/arm-opts.h (enum tls_type): New.
testsuite/
* gcc.target/arm/tlscall.c: New.
From-SVN: r175287
2011-06-22 09:57:02 +00:00
Nicola Pero
70e41a6a27
In gcc/: 2011-06-21 Nicola Pero <nicola.pero@meta-innovation.com>
...
In gcc/:
2011-06-21 Nicola Pero <nicola.pero@meta-innovation.com>
* attribs.c (register_attribute): Added assert to check that all
attribute specs are registered with a name that is not empty and
does not start with '_'.
(decl_attributes): Avoid the lookup of the "naked" attribute spec
if the function has no attributes.
* tree.c (is_attribute_with_length_p): Removed.
(is_attribute_p): Removed.
(private_is_attribute_p): New.
(private_lookup_attribute): New.
(lookup_attribute): Removed.
(lookup_ident_attribute): New.
(remove_attribute): Require the first argument to be in the form
'text', not '__text__'. Updated asserts.
(merge_attributes): Use lookup_ident_attributes instead of
lookup_attribute.
(merge_dllimport_decl_attributes): Use remove_attribute.
(attribute_list_contained): Likewise.
(attribute_list_equal): Immediately return 1 if the arguments are
identical pointers.
* tree.h (is_attribute_p): Made inline. Return a 'bool', not an
'int'. Require the first argument to be in the form 'text', not
'__text__'. Require the second argument to be an identifier.
(lookup_attribute): Made inline. Require the first argument to be
in the form 'text', not '__text__'.
(private_is_attribute_p, private_lookup_attribute): New.
Updated comments.
From-SVN: r175286
2011-06-22 09:52:55 +00:00
Uros Bizjak
637c11bd16
ChangeLog: Fix formatting.
...
* ChangeLog: Fix formatting.
* testsuite/ChangeLog: Ditto.
From-SVN: r175285
2011-06-22 08:22:40 +02:00
Jason Merrill
da7d921819
re PR c++/49172 ([C++0x][constexpr] References should be declarable with constexpr)
...
PR c++/49172
* decl.c (cp_finish_decl): Adjust init_const_expr_p for refs.
(grokdeclarator): constexpr doesn't apply const for refs.
* parser.c (cp_parser_initializer_clause): Don't call
maybe_constant_value here.
* call.c (initialize_reference): Handle constexpr.
From-SVN: r175284
2011-06-22 00:18:02 -04:00
GCC Administrator
584dd70075
Daily bump.
...
From-SVN: r175283
2011-06-22 00:18:06 +00:00
Andrew MacLeod
cb9a7db01d
gogo-tree.cc (Gogo::define_builtin_function_trees): Change BUILT_IN_ADD_AND_FETCH to BUILT_IN_SYNC_ADD_AND_FETCH.
...
* gogo-tree.cc (Gogo::define_builtin_function_trees): Change
BUILT_IN_ADD_AND_FETCH to BUILT_IN_SYNC_ADD_AND_FETCH.
From-SVN: r175278
2011-06-21 23:03:09 +00:00
Daniel Krugler
ccb4f5a707
move.h (__is_nothrow_swappable): Add.
...
2011-06-22 Daniel Krugler <daniel.kruegler@googlemail.com>
Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/move.h (__is_nothrow_swappable): Add.
(swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
* include/bits/algorithmfwd.h: Adjust.
* testsuite/25_algorithms/swap/noexcept.cc: New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r175277
2011-06-21 23:01:03 +00:00
Jason Merrill
358bb337a5
re PR c++/49482 ([C++0x] unused parameter warning on lambda in function template)
...
PR c++/49482
* semantics.c (maybe_add_lambda_conv_op): Call mark_exp_read for
static fn parameters.
From-SVN: r175273
2011-06-21 16:07:45 -04:00
Jason Merrill
ccaff498ac
call.c (add_builtin_candidates): Use cv_unqualified rather than TYPE_MAIN_VARIANT.
...
* call.c (add_builtin_candidates): Use cv_unqualified rather than
TYPE_MAIN_VARIANT.
* pt.c (tsubst_arg_types): Likewise.
* except.c (build_throw): Use cv_unqualified.
From-SVN: r175272
2011-06-21 15:05:33 -04:00
Jason Merrill
293678445f
re PR c++/49418 (G++ discards cv-quals from template parameter types)
...
PR c++/49418
* call.c (cxx_type_promotes_to): Don't strip cv-quals.
* semantics.c (lambda_return_type): Strip them here.
From-SVN: r175271
2011-06-21 15:05:25 -04:00
Andrew MacLeod
e0a8ecf2a2
cosmetic. Add sync_ to all the expand_builtin defines which do not match the actual builtin_sync_ names.
...
2011-06-21 Andrew MacLeod <amacleod@redhat.com>
* builtins.c: Add sync_ or SYNC__ to builtin names.
* sync-builtins.def: Add sync_ or SYNC__ to builtin names.
* omp-low.c: Add sync_ or SYNC__ to builtin names.
* c-family/c-common.c: Add sync_ or SYNC__ to builtin names.
* c-family/c-omp.c: Add sync_ or SYNC__ to builtin names.
* java/builtins.c: Add sync_ or SYNC__ to builtin names.
* java/expr.c: Add sync_ or SYNC__ to builtin names.
* cp/semantics.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-openmp.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-stmt.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-decl.c: Add sync_ or SYNC__ to builtin names.
From-SVN: r175270
2011-06-21 19:04:33 +00:00
Georg-Johann Lay
663827d3e5
re PR target/33049 ([avr] bit extraction non optimal, inversing logic solves problem)
...
PR target/33049
* config/avr/avr.md (extzv): New expander.
(*extzv): New insn.
(*extzv.qihi1, *extzv.qihi2): New insn-and-split.
* config/avr/constraints.md (C04): New constraint.
* doc/md.texi (Machine Constraints): Document it.
From-SVN: r175269
2011-06-21 17:30:54 +00:00
Rainer Orth
61d2c24233
re PR libgcj/49314 (md5test, shatest output FAILs on Tru64 UNIX)
...
PR libgcj/49314
* gnu/gcj/convert/natIconv.cc (iconv_init): Pad in[] with NUL byte.
From-SVN: r175266
2011-06-21 17:09:57 +00:00
Jakub Jelinek
146aef0b39
re PR middle-end/49489 (gcc.c-torture/execute/builtin-bitops-1.c fails on x86_64-linux)
...
PR middle-end/49489
* builtins.c (expand_builtin_unop): Call expand_unop with 0 as
unsignedp argument instead of 1 for clrsb_optab.
(fold_builtin_bitop): Fix masking for width > HOST_BITS_PER_WIDE_INT
and < 2 * HOST_BITS_PER_WIDE_INT. Optimize BUILT_IN_CLRSB*.
(fold_builtin_1): Call fold_builtin_binop for BUILT_IN_CLRSB*.
* optabs.c (widen_leading): Call widen_operand and expand_unop
with 0 as unsignedp argument instead of 1 for clrsb_optab.
(expand_unop): Subtract difference of mode sizes also for
clrsb_optab.
From-SVN: r175265
2011-06-21 18:25:57 +02:00
Georg-Johann Lay
c0503294bc
* config/avr/avr.md (*jcindirect_jump): Fix build warning.
...
From-SVN: r175264
2011-06-21 16:16:11 +00:00
Bernd Schmidt
0bddee8e54
gensupport.c (add_define_attr): New static function.
...
* gensupport.c (add_define_attr): New static function.
(is_predicable): Allow multi-alternative lists for the "predicable"
attribute.
(modify_attr_enabled_ce, alter_attrs_for_insn): New static functions.
(process_one_cond_exec): Call alter_attrs_for_insn.
* doc/md.texi (Defining Attributes): Mention some standard names.
(Conditional Execution): Update documentation for "predicable".
From-SVN: r175263
2011-06-21 14:38:38 +00:00
Rainer Orth
e4d48a4dd5
shared-object.mk (c_flags-$o): Save c_flags.
...
* shared-object.mk (c_flags-$o): Save c_flags.
($(base)$(objext)): Use it.
($(base)_s$(objext)): Likewise.
From-SVN: r175262
2011-06-21 14:26:13 +00:00
Bernd Schmidt
3801c801f3
Makefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.
...
libgcc/
* Makefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.
* libgcc-std.ver.in (GCC_4.7.0): New section.
gcc/
* doc/extend.texi (__builtin_clrsb, __builtin_clrsbl,
__builtin_clrsbll): Document.
* doc/rtl.texi (clrsb): New entry.
* optabs.c (widen_leading): Renamed from widen_clz. New argument
UNOPTAB. All callers changed. Use UNOPTAB instead of clz_optab.
(expand_unop): Handle clrsb_optab.
(init_optabs): Initialize it.
* optabs.h (enum optab_index): New entry OTI_clrsb.
(clrsb_optab): Define.
* genopinit.c (optabs): Add an entry for it.
* builtins.c (expand_builtin): Handle clrsb builtin functions.
* builtins.def (BUILT_IN_CLRSB, BUILT_IN_CLRSBIMAX, BUILT_IN_CLRSBL,
BUILT_IN_CLRSBLL): New.
* rtl.def (CLRSB): New code.
* dwarf2out.c (mem_loc_descriptor): Handle it.
* simplify-rtx.c (simplify_const_unary_operation): Likewise.
Use op_mode rather than mode when optimizing ffs, clz, ctz, parity
and popcount.
* libgcc2.c (__clrsbSI2, __clrsbDI2): New functions.
* libgcc2.h (__clrsbSI2, __clrsbDI2): Define and declare.
(__ctzDI2): Move declaration.
* config/bfin/bfin.md (clrsbsi2): New expander.
(signbitssi2): Use the CLRSB rtx.
(clrsbhi2): Renamed from signbitshi2. Use the CLRSB rtx.
* config/bfin/bfin.c (bdesc_1arg): Changed accordingly.
gcc/testsuite/
* gcc.c-torture/excute/builtin-bitops-1.c (MAKE_FUNS): Make
my_clrsb test functions.
(main): Test clrsb.
* gcc.dg/builtin-protos-1.c (test_s, test_u, test_sl, test_ul,
test_sll, test_ull): Add clrsb tests.
* gcc.dg/torture/builtin-attr-1.c: Add tests for clrsb, clrsbl,
clrsbll.
From-SVN: r175261
2011-06-21 14:16:39 +00:00
Janus Weil
95f5c7757f
re PR fortran/49112 ([OOP] Missing type-bound procedure, "duplicate save" warnings and internal compiler error)
...
2011-06-21 Janus Weil <janus@gcc.gnu.org>
PR fortran/49112
* class.c (gfc_find_derived_vtab): Make vtab and default initialization
symbols SAVE_IMPLICIT.
2011-06-21 Janus Weil <janus@gcc.gnu.org>
PR fortran/49112
* gfortran.dg/class_44.f03: New.
From-SVN: r175257
2011-06-21 14:12:51 +02:00
Richard Guenther
55f01229f0
ipa-inline-transform.c (inline_transform): Fix previous change.
...
2011-06-21 Richard Guenther <rguenther@suse.de>
* ipa-inline-transform.c (inline_transform): Fix previous
change.
From-SVN: r175256
2011-06-21 12:07:19 +00:00
Ira Rosen
5181cd6a44
re PR tree-optimization/49478 (ice in expand_widen_pattern_expr with -O3)
...
PR tree-optimization/49478
* tree-vect-loop.c (vectorizable_reduction): Handle DOT_PROD_EXPR
with constant operand.
From-SVN: r175255
2011-06-21 11:58:33 +00:00
Richard Guenther
e4ee3d702b
ipa-inline-transform.c (inline_transform): Fix typo.
...
2011-06-21 Richard Guenther <rguenther@suse.de>
* ipa-inline-transform.c (inline_transform): Fix typo.
From-SVN: r175253
2011-06-21 11:13:08 +00:00
Richard Guenther
7b7ec6c51e
re PR tree-optimization/49483 (unable to vectorize code equivalent to "scalbnf")
...
2011-06-21 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49483
* tree-vect-stmts.c (vectorizable_assignment): Also handle
VIEW_CONVERT_EXPR conversions.
* gcc.dg/vect/vect-120.c: New testcase.
From-SVN: r175252
2011-06-21 11:02:38 +00:00
Joseph Myers
ced4d0e333
gcc.pot: Regenerate.
...
gcc/po:
* gcc.pot: Regenerate.
libcpp/po:
* cpplib.pot: Regenerate.
From-SVN: r175251
2011-06-21 11:33:57 +01:00