OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years ago * gcc-interface/decl.c (elaborate_expression_1): Add EXPR_PUBLIC_P local
ebotcazou [Wed, 26 Oct 2011 21:05:10 +0000 (21:05 +0000)]
* gcc-interface/decl.c (elaborate_expression_1): Add EXPR_PUBLIC_P local
variable.  Always create the elaboration variable, if any, as constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180541 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Try to
ebotcazou [Wed, 26 Oct 2011 20:45:09 +0000 (20:45 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Try to
make a packable type for fields of union types as well.
<is_type>: Use RECORD_OR_UNION_TYPE_P predicate.
(gnat_to_gnu_component_type): Try to make a packable type for fields
of union types as well.
(make_packable_type): Use RECORD_OR_UNION_TYPE_P predicate.
(maybe_pad_type): Try to make a packable type for fields of union types
as well.
(gnat_to_gnu_field): Likewise.
(is_variable_size): Use RECORD_OR_UNION_TYPE_P predicate.
(set_rm_size): Likewise.
(rm_size): Likewise.
* gcc-interface/misc.c (gnat_type_max_size): Likewise.
* gcc-interface/trans.c (add_decl_expr): Likewise.
* gcc-interface/utils.c (finish_record_type): Likewise.
* gcc-interface/utils2.c (build_simple_component_ref): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180540 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/decl.c (gnat_to_gnu_field): Always check components
ebotcazou [Wed, 26 Oct 2011 20:32:17 +0000 (20:32 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_field): Always check components
declared as atomic.  Move around conditionally executed code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180539 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * typeck.c (check_literal_operator_args): Avoid building types.
jason [Wed, 26 Oct 2011 19:31:26 +0000 (19:31 +0000)]
* typeck.c (check_literal_operator_args): Avoid building types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180538 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agobuild_string comments
jason [Wed, 26 Oct 2011 19:31:16 +0000 (19:31 +0000)]
build_string comments

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180537 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago Implement C++11 user-defined literals.
jason [Wed, 26 Oct 2011 19:30:59 +0000 (19:30 +0000)]
Implement C++11 user-defined literals.
libcpp/
* expr.c: (cpp_interpret_float_suffix, cpp_interpret_int_suffix,
cpp_userdef_string_remove_type, cpp_userdef_string_add_type,
cpp_userdef_char_remove_type, cpp_userdef_char_add_type,
cpp_userdef_string_p, cpp_userdef_char_p, cpp_get_userdef_suffix): New.
(cpp_classify_number): Classify unrecognized tokens as user-defined
literals.
* include/cpplib.h: Add new tokens for user-defined literals.
* init.c: Add new preprocessor flag (cxx11).
* lex.c: (lex_string, lex_raw_string): Handle user-defined literals
including concatenation and promotion with suffixes.
c-family/
* c-common.c (build_userdef_literal): New.
* c-common.def: New tree code.
* c-common.h (tree_userdef_literal): New tree struct and accessors.
* c-lex.c (interpret_float): Add suffix parm.
(c_lex_with_flags): Build literal tokens.
cp/
* cp-objcp-common.c: (cp_tree_size) Return size of USERDEF_LITERAL tree.
* cp-tree.h: (UDLIT_OP_*, UDLIT_OPER_P): Literal operator
name tools. New tree code for user-defined literals.
* cxx-pretty-print.h: (pp_cxx_userdef_literal) New.
* cxx-pretty-print.c: (pp_cxx_userdef_literal) New.
(pp_cxx_primary_expression, pp_cxx_expression): Use it.
* decl.c: (cp_tree_node_structure): Return new tree code.
(duplicate_decls): Check for raw vs. template operator conflicts.
(grokfndecl, grokdeclarator): New checks for literal operators.
* error.c: (dump_expr): Warn about user-defined literals
in C++98 mode. (dump_function_name): Pretty printing.
* mangle.c: (write_literal_operator_name): New.
(write_unqualified_id, write_unqualified_name): Use it.
* parser.c: (cp_parser_operator): Handle operator"".
(cp_parser_userdef_char_literal, cp_parser_userdef_numeric_literal,
cp_parser_userdef_string_literal): New.
(cp_parser_primary_expression): Handle new user-defined literal tokens
with new functions.
* semantics.c: (potential_constant_expression_1): Add
user-defined literals.
* typeck.c (check_raw_literal_operator,
check_literal_operator_args): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180536 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 26 Oct 2011 18:04:57 +0000 (18:04 +0000)]
2011-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

* Tweak last ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180532 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 26 Oct 2011 17:59:36 +0000 (17:59 +0000)]
2011-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

* typeck.c (cp_build_addr_expr_1): Use BASELINK_P.
* class.c (instantiate_type): Likewise.
* pt.c (convert_nontype_argument_function, uses_template_parms,
tsubst_copy, resolve_nondeduced_context, type_dependent_expression_p):
Likewise.
* semantics.c (finish_decltype_type): Likewise.
* decl2.c (mark_used): Likewise.
* name-lookup.c (arg_assoc): Likewise.

/cp
2011-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50870
* typeck.c (non_reference): Pass NULL_TREE through.

/testsuite
2011-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50870
* g++.dg/cpp0x/decltype34.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180531 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Tom de Vries <tom@codesourcery.com>
vries [Wed, 26 Oct 2011 15:04:59 +0000 (15:04 +0000)]
2011-10-26  Tom de Vries <tom@codesourcery.com>

* gcc.c-torture/unsorted/HIcmp.c: Fix unaligned pointer.
* gcc.c-torture/unsorted/HIset.c: Same.
* gcc.c-torture/unsorted/SIcmp.c: Same.
* gcc.c-torture/unsorted/SIset.c: Same.
* gcc.c-torture/unsorted/SFset.c: Same.
* gcc.c-torture/unsorted/UHIcmp.c: Same.
* gcc.c-torture/unsorted/USIcmp.c: Same.
* gcc.c-torture/unsorted/DFcmp.c: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180528 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * reload.c (reload_inner_reg_of_subreg): Change type of return value
ebotcazou [Wed, 26 Oct 2011 13:54:13 +0000 (13:54 +0000)]
* reload.c (reload_inner_reg_of_subreg): Change type of return value
and type of OUTPUT parameter to bool and adjust.  Document MODE and
OUTPUT parameters.  Use HARD_REGISTER_P.  Reorder final condition
and improve associated comment.
(push_reload): Clarify and update comments about reloading of subregs.
Adjust calls to reload_inner_reg_of_subreg.  Compute the class upfront
for the reloading of subregs in the out case as well.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180526 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/50826
aoliva [Wed, 26 Oct 2011 13:47:48 +0000 (13:47 +0000)]
PR debug/50826
* var-tracking.c (rtx_debug_expr_p): New.
(use_type): Don't use debug exprs to track non-VTA variables.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180525 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/invoke.texi (sink-frequency-threshold): Document.
law [Wed, 26 Oct 2011 13:26:50 +0000 (13:26 +0000)]
* doc/invoke.texi (sink-frequency-threshold): Document.
* tree-ssa-sink.c: Include params.h.
(select_best_block): New function.
(statement_sink_location): Use it.
* params.def (SINK_FREQUENCY_THRESHOLD): New PARAM.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180524 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc:
iains [Wed, 26 Oct 2011 12:37:59 +0000 (12:37 +0000)]
gcc:

PR target/48108
* config/darwin.c (top level): Amend comments concerning LTO output.
(lto_section_num): New variable.  (darwin_lto_section_e): New GTY.
(LTO_SECTS_SECTION, LTO_INDEX_SECTION): New.
(LTO_NAMES_SECTION): Rename.
(darwin_asm_named_section): Record LTO section counts and switches
in a vec of darwin_lto_section_e.
(darwin_file_start): Remove unused code.
(darwin_file_end): Put an LTO section termination label.  Handle
output of the wrapped LTO sections, index and names table.

libiberty:

PR target/48108
* simple-object-mach-o.c  (GNU_WRAPPER_SECTS, GNU_WRAPPER_INDEX,
GNU_WRAPPER_NAMES): New macros.
(simple_object_mach_o_segment): Handle wrapper scheme.
(simple_object_mach_o_write_section_header): Allow the segment name
to be supplied.
(simple_object_mach_o_write_segment): Handle wrapper scheme.  Ensure
that the top-level segment name in the load command is empty.
(simple_object_mach_o_write_to_file): Determine the number of
sections during segment output, use that in writing the header.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180523 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (rs6000_make_savres_rtx): Delete unneeded
amodra [Wed, 26 Oct 2011 11:59:41 +0000 (11:59 +0000)]
* config/rs6000/rs6000.c (rs6000_make_savres_rtx): Delete unneeded
declaration.
(rs6000_emit_stack_reset): Only return insn emitted when it adjusts sp.
(rs6000_make_savres_rtx): Rename to rs6000_emit_savres_rtx.  Use
simple_return in pattern, emit instruction, and set jump_label.
(rs6000_emit_prologue): Update for rs6000_emit_savres_rtx.  Use
simple_return rather than return.
(emit_cfa_restores): New function.
(rs6000_emit_epilogue): Emit cfa_restores when flag_shrink_wrap.
Add missing cfa_restores for SAVE_WORLD.  Add missing LR cfa_restore
when using out-of-line gpr restore.  Add missing LR and FP regs
cfa_restores for out-of-line fpr restore.  Consolidate code setting
up cfa_restores.  Formatting.  Use LR_REGNO define.
(rs6000_output_mi_thunk): Use simple_return rather than return.
* config/rs6000/rs6000.md (sibcall*, sibcall_value*): Likewise.
(return_internal*): Likewise.
(any_return, return_pred, return_str): New iterators.
(return, conditional return insns): Provide both return and
simple_return variants.
* config/rs6000/rs6000.h (EARLY_R12, LATE_R12): Define.
(REG_ALLOC_ORDER): Move r12 before call-saved regs when FIXED_R13.
Move r11 and r0 later to suit shrink-wrapping.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180522 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Oct 2011 11:48:09 +0000 (11:48 +0000)]
2011-10-26  Richard Guenther  <rguenther@suse.de>

* lto-wrapper.c (run_gcc): Properly init/free obstack.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180521 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.md (UNSPEC_VSIBADDR): New.
jakub [Wed, 26 Oct 2011 09:46:45 +0000 (09:46 +0000)]
* config/i386/i386.md (UNSPEC_VSIBADDR): New.
* config/i386/predicates.md (vsib_address_operand,
vsib_mem_operator): New predicates.
* config/i386/i386.c (ix86_print_operand_address): Handle
UNSPEC_VSIBADDR addresses.
* config/i386/sse.md (avx2_gathersi<mode>, avx2_gatherdi<mode>,
avx2_gatherdi<mode>256): Adjust expanders to use MEM with
UNSPEC_VSIBADDR address.
(*avx2_gathersi<mode>, *avx2_gatherdi<mode>, *avx2_gatherdi<mode>256):
Adjust insns to use MEM with UNSPEC_VSIBADDR address.

* gcc.target/i386/avx2-i32gatherd-1.c: Adjust scan-assembler regex
to work also with -masm=intel and additionally test the xmm vs. ymm
register type combination on mask/dest and in vsib.
* gcc.target/i386/avx2-i32gatherd256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherd256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherd-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180520 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Tom de Vries <tom@codesourcery.com>
vries [Wed, 26 Oct 2011 09:33:56 +0000 (09:33 +0000)]
2011-10-26  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/50763
* gcc.dg/pr50763-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180519 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Tom de Vries <tom@codesourcery.com>
vries [Wed, 26 Oct 2011 09:33:49 +0000 (09:33 +0000)]
2011-10-26  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/50763
* tree-ssa-tail-merge.c (replace_block_by): Update vops if phi_vuse1 or
phi_vuse2 is NULL_TREE only if bb1 dominates or is dominated by bb2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180518 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Oct 2011 09:30:29 +0000 (09:30 +0000)]
2011-10-26  Richard Guenther  <rguenther@suse.de>

PR lto/41844
* Makefile.in (lto-wrapper): Depend on and link against
opts-common.o.
(lto-wrapper.o): Depend on $(OPTS_H) and $(OPTIONS_H).
* lto-wrapper.c (get_options_from_collect_gcc_options): New function.
(run_gcc): Use it.  Filter out language specific options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180517 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-26 Andreas Tobler <andreast@fgznet.ch>
andreast [Wed, 26 Oct 2011 06:59:47 +0000 (06:59 +0000)]
2011-10-26  Andreas Tobler  <andreast@fgznet.ch>

* config/i386/freebsd64.h (LINK_SPEC): Emit the same warning as the
32-bit target does.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180468 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 26 Oct 2011 00:55:15 +0000 (00:55 +0000)]
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix typo in last ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180467 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 26 Oct 2011 00:50:11 +0000 (00:50 +0000)]
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR translation/46617
* gcc.c (main): Fix fatal_error string for translation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180466 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.dg/format/ms_c90-printf-1.c, gcc.dg/format/ms_c90-scanf-1.c:
jsm28 [Wed, 26 Oct 2011 00:36:44 +0000 (00:36 +0000)]
* gcc.dg/format/ms_c90-printf-1.c, gcc.dg/format/ms_c90-scanf-1.c:
Update expected messages.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180465 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 26 Oct 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180464 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-eh.c (do_return_redirection): Remove return_value_p
ian [Tue, 25 Oct 2011 22:59:40 +0000 (22:59 +0000)]
* tree-eh.c (do_return_redirection): Remove return_value_p
parameter.  Change all callers.
(lower_try_finally_nofallthru): Remove local return_val.
(lower_try_finally_onedest): Likewise.
(lower_try_finally_copy): Likewise.
(lower_try_finally_switch): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180459 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove *mmx_maskmovq_rex.
hjl [Tue, 25 Oct 2011 22:54:48 +0000 (22:54 +0000)]
Remove *mmx_maskmovq_rex.

2011-10-25  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/mmx.md (*mmx_maskmovq): Replace :SI with :P and
remove "&& !TARGET_64BIT"
(*mmx_maskmovq_rex): Removed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180458 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/46603
ebotcazou [Tue, 25 Oct 2011 22:26:20 +0000 (22:26 +0000)]
PR rtl-optimization/46603
* reload.c (push_reload): In the out case, reload the subreg as well
as the reg if it has word mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180457 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily
ebotcazou [Tue, 25 Oct 2011 22:14:26 +0000 (22:14 +0000)]
* dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily
suppress debug info for the parent type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180456 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/ia64/ia64.c (ia64_profile_hook): Fix thinko.
ebotcazou [Tue, 25 Oct 2011 21:56:48 +0000 (21:56 +0000)]
* config/ia64/ia64.c (ia64_profile_hook): Fix thinko.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180455 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/std/condition_variable (condition_variable_any): Remove
redi [Tue, 25 Oct 2011 21:44:12 +0000 (21:44 +0000)]
* include/std/condition_variable (condition_variable_any): Remove
unused native_handle_type typedef.
* src/condition_variable.cc (condition_variable): Add missing noexcept
specifications.
* 30_threads/condition_variable_any/requirements/typedefs.cc: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180454 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoi386: Delete the vec_extract_even/odd patterns.
rth [Tue, 25 Oct 2011 21:30:26 +0000 (21:30 +0000)]
i386: Delete the vec_extract_even/odd patterns.

These can be generated by vec_perm_const now.  We could keep the
patterns around, as technically it may be less work, but this
exercises a code path needed by less primary platforms.

        * config/i386/sse.md (VEC_EXTRACT_EVENODD_MODE): Remove.
        (vec_extract_even<mode>, vec_extract_odd<mode>): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180453 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agors6000: Remove some vec_extract_even/odd expanders.
rth [Tue, 25 Oct 2011 21:30:16 +0000 (21:30 +0000)]
rs6000: Remove some vec_extract_even/odd expanders.

The ones that expand to VPERM can be handled by generic code.
The even v4si and v4sf expanders remain until vector.md can be
updated to not invoke them directly.

        * config/rs6000/altivec.md (vec_extract_evenv8hi,
        vec_extract_evenv16qi, vec_extract_oddv4si,
        vec_extract_oddv4sf): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180452 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agospu: Remove vec_extract_even/odd and vec_interleave expanders.
rth [Tue, 25 Oct 2011 21:30:04 +0000 (21:30 +0000)]
spu: Remove vec_extract_even/odd and vec_interleave expanders.

        * config/spu/spu.md (vec_extract_evenv4si, vec_extract_evenv4sf,
        vec_extract_evenv8hi, vec_extract_evenv16qi, vec_extract_oddv4si,
        vec_extract_oddv4sf, vec_extract_oddv8hi, vec_extract_oddv16qi,
        vec_interleave_highv4sf, vec_interleave_lowv4sf,
        vec_interleave_highv4si, vec_interleave_lowv4si,
        vec_interleave_highv8hi, vec_interleave_lowv8hi,
        vec_interleave_highv16qi, vec_interleave_lowv16qi): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180451 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoImplement interleave via permutation.
rth [Tue, 25 Oct 2011 21:29:56 +0000 (21:29 +0000)]
Implement interleave via permutation.

        * expr.c (expand_expr_real_2) [VEC_EXTRACT_EVEN_EXPR]: Use binop.
        [VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR]: Likewise.
        [VEC_INTERLEAVE_LOW_EXPR]: Likewise.
        * optabs.c (expand_binop): Implement vec_interleave_high_optab,
        vec_interleave_low_optab, vec_extract_even_optab,
        vec_extract_odd_optab with expand_vec_perm.
        (can_vec_perm_for_code_p): New.
        * optabs.h: Update.
        * tree-vect-data-refs.c (vect_strided_store_supported): Allow for
        fallback via can_vec_perm_for_code_p.
        (vect_strided_load_supported): Likewise.
        * tree-vect-generic.c (expand_vector_operations_1): Never lower
        VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR,
        VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180450 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoChange vec_perm checking and expansion level.
rth [Tue, 25 Oct 2011 21:29:48 +0000 (21:29 +0000)]
Change vec_perm checking and expansion level.

The can_vec_perm_p interface changed to use a C integer array.  This
allows easy re-use from the rtl level and the gimple level within
the vectorizer.  It allows both to determine if a given permutation
is (un-)supported without having to create tree/rtl garbage.

The expand_vec_perm interface changed to use rtl.  This allows easy
re-use from the rtl level, so that expand_vec_perm can be used in the
fallback implementation of other optabs.

        * target.def (vec_perm_const_ok): Change parameters to mode and
        array of indicies.
        * doc/tm.texi: Rebuild.
        * config/i386/i386.c (ix86_vectorize_vec_perm_const_ok): Change
        parameters to mode and array of indicies.
        * expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Expand operands here.
        * optabs.c (can_vec_perm_p): Rename from can_vec_perm_expr_p.
        Change parameters to mode and array of indicies.
        (expand_vec_perm_1): Rename from expand_vec_perm_expr_1.
        (expand_vec_perm): Rename from expand_vec_perm_expr.  Change
        parameters to mode and rtx inputs.  Try lowering to QImode
        vec_perm_const before trying fully variable permutation.
        * optabs.h: Update decls.
        * tree-vect-generic.c (lower_vec_perm): Extract array of indices from
        VECTOR_CST to pass to can_vec_perm_p.
        * tree-vect-slp.c (vect_get_mask_element): Change mask parameter type
        from int pointer to unsigned char pointer.
        (vect_transform_slp_perm_load): Update for change to can_vec_perm_p.
        * tree-vect-stmts.c (perm_mask_for_reverse): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180449 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix typos in the names of vec_extract & vec_interleave tree codes.
rth [Tue, 25 Oct 2011 21:29:40 +0000 (21:29 +0000)]
Fix typos in the names of vec_extract & vec_interleave tree codes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180448 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/50862
redi [Tue, 25 Oct 2011 20:56:43 +0000 (20:56 +0000)]
PR libstdc++/50862
* include/std/condition_variable (condition_variable_any::wait): Fix
deadlock and ensure _Lock::lock() is called on exit.
(condition_variable_any::native_handle): Remove, as per LWG 1500.
* testsuite/30_threads/condition_variable_any/50862.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180446 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/48851
mrs [Tue, 25 Oct 2011 20:07:19 +0000 (20:07 +0000)]
    PR target/48851
* inclhack.def (void_null): New bypass.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180445 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * reload.c (regno_clobbered_p): Fix typo.
mrs [Tue, 25 Oct 2011 19:50:14 +0000 (19:50 +0000)]
* reload.c (regno_clobbered_p): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180444 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/50866
jason [Tue, 25 Oct 2011 18:24:28 +0000 (18:24 +0000)]
PR c++/50866
PR c++/41449
* semantics.c (maybe_cleanup_point_expr_void): No longer static.
* typeck2.c (split_nonconstant_init_1): Use it.
* cp-tree.h: Declare it.
* decl.c (wrap_cleanups_r): Stop at CLEANUP_POINT_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180442 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/49996
jason [Tue, 25 Oct 2011 18:24:19 +0000 (18:24 +0000)]
PR c++/49996
* tree.c (stabilize_init): Stabilize scalar elements of a
CONSTRUCTOR, too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180441 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSolaris/Irix compatibility patches.
ian [Tue, 25 Oct 2011 18:06:32 +0000 (18:06 +0000)]
Solaris/Irix compatibility patches.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180440 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix Solaris build.
ian [Tue, 25 Oct 2011 17:45:55 +0000 (17:45 +0000)]
Fix Solaris build.

From Rainer Orth.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180439 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoImplement predeclared delete function.
ian [Tue, 25 Oct 2011 17:21:07 +0000 (17:21 +0000)]
Implement predeclared delete function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180438 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDon't permit close of receive-only channel.
ian [Tue, 25 Oct 2011 16:35:24 +0000 (16:35 +0000)]
Don't permit close of receive-only channel.
Better panic on attempt to close nil channel.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180437 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/c6x/pr-support.c (pop_compact_frame, pop_frame): Correct
bernds [Tue, 25 Oct 2011 15:45:08 +0000 (15:45 +0000)]
* config/c6x/pr-support.c (pop_compact_frame, pop_frame): Correct
logic for doubleword pops.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180435 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/c6x/pr-support.c (__gnu_unwind_24bit): Correct logic for the
bernds [Tue, 25 Oct 2011 15:44:03 +0000 (15:44 +0000)]
* config/c6x/pr-support.c (__gnu_unwind_24bit): Correct logic for the
case where B3 isn't the return register.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180434 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ja.po: Update.
jsm28 [Tue, 25 Oct 2011 15:37:28 +0000 (15:37 +0000)]
* ja.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180432 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Tue, 25 Oct 2011 13:48:10 +0000 (13:48 +0000)]
/cp
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50858
* typeck.c (composite_pointer_type_r): Check return value of
composite_pointer_type_r for error_mark_node.

/testsuite
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50858
* g++.dg/overload/operator5.C: New.

/cp
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50861
* pt.c (tsubst_copy_and_build): Check return value of
tsubst_copy_and_build for error_mark_node.

/testsuite
2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50861
* g++.dg/template/crash108.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180430 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* MAINTAINERS (Write After Approval): Add myself.
kyukhin [Tue, 25 Oct 2011 09:39:49 +0000 (09:39 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180429 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix lookup of macro maps
dodji [Tue, 25 Oct 2011 08:59:07 +0000 (08:59 +0000)]
Fix lookup of macro maps

* line-map.c (linemap_macro_map_lookup): Fix logic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180427 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSupport expansion of reserved locations wrapped in virtual locations
dodji [Tue, 25 Oct 2011 08:58:54 +0000 (08:58 +0000)]
Support expansion of reserved locations wrapped in virtual locations

libcpp/

* include/line-map.h (linemap_expand_location): Take a line table
parameter.  Update comment.
(linemap_resolve_location): Update comment.
(linemap_expand_location_full): Remove.
* line-map.c (linemap_resolve_location):  Handle reserved
locations; return a NULL map in those cases.
(linemap_expand_location): If location is reserved, return a
zeroed expanded location.  Update comment.  Take a line table to
assert that the function takes non-virtual locations only.
(linemap_expand_location_full): remove.
(linemap_dump_location): Handle the fact that
linemap_resolve_location can return NULL line maps when the
location resolves to a reserved location.

gcc/
* input.c (expand_location): Rewrite using
linemap_resolve_location and linemap_expand_location.  Add a
comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180426 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDelete remaining references to sparc little-endian support.
davem [Tue, 25 Oct 2011 08:57:25 +0000 (08:57 +0000)]
Delete remaining references to sparc little-endian support.

* config/sparc/little-endian.opt: Delete.
* config.gcc: Remove references to config/sparc/little-endian.opt
* doc/invoke.texi: Remove documentation of -mlittl-endian on sparc.
* config/sparc/linux64.h: Delete references to -mlittle-endian.
* config/sparc/netbsd-elf.h: Likewise.
* config/sparc/openbsd64.h: Likewise.
* config/sparc/sparc.h: Likewise.
* config/sparc/sp64-elf.h: Likewise and delete overrides for
BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN.
* config/sparc/sparc.c (dump_target_flag_bits): Remove reference
to MASK_LITTLE_ENDIAN.
* config/sparc/sparc.opt (Mask(LITTLE_ENDIAN)): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180425 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/50596
jakub [Tue, 25 Oct 2011 08:02:08 +0000 (08:02 +0000)]
PR tree-optimization/50596
* tree-vect-stmts.c (vect_mark_relevant): Only use
FOR_EACH_IMM_USE_FAST if lhs is SSA_NAME.
(vectorizable_store): If is_pattern_stmt_p look through
VIEW_CONVERT_EXPR on lhs.
* tree-vect-patterns.c (check_bool_pattern, adjust_bool_pattern):
Use unsigned type instead of signed.
(vect_recog_bool_pattern): Optimize also stores into bool memory in
addition to casts from bool to integral types.
(vect_mark_pattern_stmts): If pattern_stmt already has vinfo
created, don't create it again.

* gcc.dg/vect/vect-cond-10.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180424 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.c (ix86_frame_pointer_required): Require
ktietz [Tue, 25 Oct 2011 07:32:31 +0000 (07:32 +0000)]
    * config/i386/i386.c (ix86_frame_pointer_required): Require
        frame-pointer, if setjmp is used for 32-bit ms-abi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180423 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoImplement new order of assignment rules.
ian [Tue, 25 Oct 2011 05:37:48 +0000 (05:37 +0000)]
Implement new order of assignment rules.

In "i, x[i] = 1, 2" the assigment to x[i] must use the value
of i from before the assignment statement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180421 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-25 Andreas Tobler <andreast@fgznet.ch>
andreast [Tue, 25 Oct 2011 05:13:12 +0000 (05:13 +0000)]
2011-10-25  Andreas Tobler  <andreast@fgznet.ch>

* config/rs6000/t-freebsd: Add wildcard.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180420 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-25 Joey Ye <joey.ye@arm.com>
jye2 [Tue, 25 Oct 2011 03:33:31 +0000 (03:33 +0000)]
2011-10-25  Joey Ye  <joey.ye@arm.com>

* gcc.target/arm/pr42575.c: Remove architecture option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180419 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd some sparc VIS3 move test cases.
davem [Tue, 25 Oct 2011 03:22:15 +0000 (03:22 +0000)]
Add some sparc VIS3 move test cases.

gcc/testsuite/

* gcc.target/sparc/vis3move-1.c: New test.
* gcc.target/sparc/vis3move-2.c: New test.
* gcc.target/sparc/vis3move-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180418 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 25 Oct 2011 00:19:13 +0000 (00:19 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180417 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/49894
redi [Mon, 24 Oct 2011 23:26:25 +0000 (23:26 +0000)]
PR libstdc++/49894
* include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
base classes to manage construction/destruction of native mutexes,
using NSDMI when INIT macros are defined.
(mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
new base classes.
* include/std/condition_variable (condition_variable): Use NSDMI when
INIT macro is defined. Use noexcept.
* src/condition_variable.cc (condition_variable): Explicitly-default
constructor/destructor when using NSDMI. Use noexcept.
(condition_variable_any): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180411 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSegregate sparc FP/VEC constant constraints.
davem [Mon, 24 Oct 2011 23:04:40 +0000 (23:04 +0000)]
Segregate sparc FP/VEC constant constraints.

* config/sparc/sparc.md: Only use F, G, and C constraints in FP
insns.  Only use D, Y, and Z constraints in vector insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180410 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove extra newline added in October 11 change
meissner [Mon, 24 Oct 2011 22:28:53 +0000 (22:28 +0000)]
Remove extra newline added in October 11 change

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180408 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoConsolidate some sparc insn patterns using "enabled".
davem [Mon, 24 Oct 2011 21:53:38 +0000 (21:53 +0000)]
Consolidate some sparc insn patterns using "enabled".

* config/sparc/sparc.md (cpu_feature, enabled): New attributes.
(*movsi_insn_novis3, *movsi_insn_vis3): Consolidate into one pattern
called *movsi_insn.
(*movdi_insn_sp32_v9_novis3, *movdi_insn_sp32_v9_vis3): Consolidate
into *movdi_insn_sp32.
(*movdi_insn_sp64_novis3, *movdi_insn_sp64_vis3): Consolidate into
one pattern called *movdi_insn_sp64.
(*movsf_insn_novis3, *movsf_insn_vis3, *movsf_insn_no_fpu):
Consolidate into one pattern called *movsf_insn.
(*movdf_insn_sp32_no_fpu, *movdf_insn_sp32_v9_novis3,
*movdf_insn_sp32_v9_vis3, *movdf_insn_sp32_v9_no_fpu): Consolidate
into *movdf_insn_sp32.
(*movdf_insn_sp64_novis3, *movdf_insn_sp64_vis3,
*movdf_insn_sp64_no_fpu): Consolidate into one pattern called
*movdf_insn_sp64.
(*zero_extendsidi2_insn_sp64_novis3,
*zero_extendsidi2_insn_sp64_vis3): Consolidate into one pattern
called *zero_extendsidi2_insn_sp64.
(*sign_extendsidi2_insn_novis3, *sign_extendsidi2_insn_vis3):
Consolidate into one pattern named *sign_extendsidi2_insn.
(*mov<VM32:mode>_insn_novis3, *mov<VM32:mode>_insn_vis3):
Consolidate into one pattern named *mov<VM32:mode>_insn.
(*mov<VM64:mode>_insn_sp64_novis3,
*mov<VM64:mode>_insn_sp64_novis3): Consolidate into one pattern
named *mov<VM64:mode>_insn_sp64.
(*mov<VM64:mode>_insn_sp32_novis3,
*mov<VM64:mode>_insn_sp32_vis3): Consolidate into one pattern
named *mov<VM64:mode>_insn_sp32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180407 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * MAINTAINERS (Write After Approval): Add myself.
tejohnson [Mon, 24 Oct 2011 21:26:47 +0000 (21:26 +0000)]
    * MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180405 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Mon, 24 Oct 2011 20:14:35 +0000 (20:14 +0000)]
2011-10-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* tree-ssa-strlen.c (get_string_length): Change assertion to STPCPY.
(zero_length_string): Change assertion to accept strinfo without
length but with stmt instead.
Set the endptr pointer also if starting a new chain.
(adjust_related_strinfos): Ignore strinfos marked for delayed
length computation.
(handle_builtin_strcpy): Mark earlier strinfo elements also for
delayed length computation.

2011-10-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.dg/strlenopt-22.c: New testcase.
* gcc.dg/strlenopt-4.c: Change scan value for s390(x).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180402 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoError if naked return when result variables are shadowed.
ian [Mon, 24 Oct 2011 19:44:18 +0000 (19:44 +0000)]
Error if naked return when result variables are shadowed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180401 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite/30_threads/async/49668.cc: Add missing dg-require.
redi [Mon, 24 Oct 2011 19:11:31 +0000 (19:11 +0000)]
* testsuite/30_threads/async/49668.cc: Add missing dg-require.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180400 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/i386/sse-5.c (dg-options): Add -mno-sse.
uros [Mon, 24 Oct 2011 18:04:37 +0000 (18:04 +0000)]
* gcc.target/i386/sse-5.c (dg-options): Add -mno-sse.
Remove -march=i386.
(dg-skip-if): Remove.
* gcc.target/i386/funcspec-1.c: Ditto.
* gcc.target/i386/funcspec-3.c (dg-options): Add -mno-sse3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180397 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/50820
gjl [Mon, 24 Oct 2011 14:49:47 +0000 (14:49 +0000)]
PR target/50820
Port from 4.6 branch r180379
* doc/invoke.texi (AVR Options): New subsubsection to explain EIND
handling and indirect jump/calls on devices > 128k.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180388 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/49824
gjl [Mon, 24 Oct 2011 14:45:51 +0000 (14:45 +0000)]
PR target/49824
* doc/extend.texi (Declaring Attributes of Functions):
Document OS_main and OS_task attributes.
(Specifying Attributes of Variables): Move up
subsection "AVR Variable Attributes" as of alphabetical order.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180385 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 24 Oct 2011 14:24:36 +0000 (14:24 +0000)]
2011-10-24  Richard Guenther  <rguenther@suse.de>

* tree-vect-stmts.c (vect_get_vec_def_for_operand): Convert constants
to vector element type.
(vectorizable_assignment): Bail out for non-mode-precision operations.
(vectorizable_shift): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_type_demotion): Likewise.
(vectorizable_type_promotion): Likewise.
(vectorizable_store): Handle non-mode-precision stores.
(vectorizable_load): Handle non-mode-precision loads.
(get_vectype_for_scalar_type_and_size): Return a vector type
for non-mode-precision integers.
* tree-vect-loop.c (vectorizable_reduction): Bail out for
non-mode-precision reductions.

* gcc.dg/vect/vect-bool-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180384 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago gcc/
jules [Mon, 24 Oct 2011 13:47:09 +0000 (13:47 +0000)]
gcc/
* config/m68k/m68k.c (notice_update_cc): Tighten condition for
setting CC_REVERSED for FP comparisons.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180383 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 24 Oct 2011 12:31:01 +0000 (12:31 +0000)]
2011-10-24  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50838
* tree-data-ref.c (dr_analyze_indices): Properly canonicalize
a MEM_REF base if we change it.

* gcc.dg/torture/pr50838.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180381 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix date.
charlet [Mon, 24 Oct 2011 12:28:46 +0000 (12:28 +0000)]
Fix date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180380 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/50833
bernds [Mon, 24 Oct 2011 11:46:04 +0000 (11:46 +0000)]
PR rtl-optimization/50833
* function.c (thread_prologue_and_epilogue_insns): Expect the
return insn optimization only if optimize.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180377 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR bootstrap/50836
bernds [Mon, 24 Oct 2011 11:03:12 +0000 (11:03 +0000)]
PR bootstrap/50836
* rtlanal.c: Swap includes of "hard-reg-set.h" and "rtl.h".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180376 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Robert Dewar <dewar@adacore.com>
charlet [Mon, 24 Oct 2011 10:31:29 +0000 (10:31 +0000)]
2011-10-24  Robert Dewar  <dewar@adacore.com>

* sem.adb (Initialize): Fix bug that blew up if called a second
time.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* tb-alvxw.c, tracebak.c, expect.c, initflt.c, tb-alvms.c,
tb-ivms.c, tb-gcc.c: Update headers to GPL 3.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (Analyze_Pragma, case Debug): Give proper pragma
name in error msg.

2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>

* gnat_rm.texi Add an entry for restriction No_Finalization.

2011-10-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Insert_Freeze_Node_For_Instance):  If the
current instance is within the one that contains the generic,
the freeze node for the current one must appear in the current
declarative part. Ditto if the current instance is within another
package instance. In both of these cases the freeze node of the
previous instance is not relevant.

2011-10-24  Gary Dismukes  <dismukes@adacore.com>

* switch-m.adb (Normalize_Compiler_Switches): Add recognition
of AAMP-specific switches -univ and -aamp_target.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* a-tienau.adb (Put): Deal properly with limited line length.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* sem_warn.adb, sem_ch12.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180375 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-16 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 24 Oct 2011 10:01:42 +0000 (10:01 +0000)]
2011-10-16  Tristan Gingold  <gingold@adacore.com>

        * gcc-interface/Makefile.in: Use GNU ld switches to generate map files
        on AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180374 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 24 Oct 2011 09:51:42 +0000 (09:51 +0000)]
2011-10-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Earlier): make available globally. If both
nodes have the same sloc, the freeze node that does not come
from source is the later one.
(True_Parent): Make available globally.
(Previous_Instance): Subsidiary of
Insert_Freeze_Node_For_Instance, to check whether the generic
parent of the current instance is declared within a previous
instance in the same unit or declarative  part, in which case the
freeze nodes of both instances must appear in order to prevent
elaboration problems in gigi.
* sem_ch12.adb (Insert_Freeze_Node_For_Instance): A stub is a
freeze point, and the freeze node of a preceding instantiation
must be inserted before it.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* checks.ads, checks.adb: Add handling of Synchronization_Check
* debug.adb: Add doc for -gnatd.d and -gnatd.e (disable/enable
atomic sync).
* exp_ch2.adb (Expand_Entity_Reference): Set Atomic_Sync_Required
flag Minor code reorganization.
* opt.ads (Warn_On_Atomic_Synchronization): New switch.
* par-prag.adb: Add dummy entries for pragma
Disable/Enable_Atomic_Synchronization.
* sem_prag.adb (Process_Suppress_Unsuppress): Handle
case of Atomic_Synchronization specially (not suppressed
by All_Checks, cannot be set from Source).
(Pragma Disable/Enable_Atomic_Synchronization): Add processing.
* sinfo.ads, sinfo.adb: Add Atomic_Sync_Required flag
* snames.ads-tmpl: Add entry for Atomic_Synchronization Add
entry for pragma Disable/Enable_Atomic_Synchronization
* switch-c.adb: The -gnatp switch does not disable
Atomic_Synchronization Add -gnatep switch to disable
Atomic_Synchronization.
* types.ads: Add entry for Synchronization_Check
* usage.adb: Add line for -gnated switch
* warnsw.adb: Settings for Warn_On_Atomic_Synchronization

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180373 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Geert Bosch <bosch@adacore.com>
charlet [Mon, 24 Oct 2011 09:41:42 +0000 (09:41 +0000)]
2011-10-24  Geert Bosch  <bosch@adacore.com>

* s-gearop.adb (Back_Substitute): Avoid overflow if matrix
bounds start at Integer'First.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* sem_ch12.adb, s-gearop.adb: Minor reformatting

2011-10-24  Robert Dewar  <dewar@adacore.com>

* warnsw.adb: Add some missing warnings to Set_GNAT_Mode_Warnings
* warnsw.ads: Add comments to Set_GNAT_Mode_Warnings

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180372 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.c: Break long lines.
gjl [Mon, 24 Oct 2011 09:39:09 +0000 (09:39 +0000)]
* config/avr/avr.c: Break long lines.
Define target hooks on the fly if applicable.
(TARGET_ASM_FUNCTION_RODATA_SECTION): Remove first definition
overridden later.
(targetm): Move definition to end of file.
(avr_can_eliminate): Make static on the fly.
(avr_frame_pointer_required_p): Ditto.
(avr_hard_regno_scratch_ok): Ditto.
(avr_builtin_setjmp_frame_value): Make static on the fly.
Indent according to coding rules.
(avr_case_values_threshold): Ditto.
(avr_attribute_table): Move down.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180371 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Emmanuel Briot <briot@adacore.com>
charlet [Mon, 24 Oct 2011 09:28:21 +0000 (09:28 +0000)]
2011-10-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb (Process_Expression_Variable_Decl): No special
handling for Project_Path unless it is an attribute.

2011-10-24  Javier Miranda  <miranda@adacore.com>

* sem_ch12.adb (Check_Hidden_Primitives): New subprogram.
(Install_Hidden_Primitives): New subprogram.
(Restore_Hidden_Primitives): New subprogram.
(Analyze_Formal_Package_Declaration,
Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation):
Invoke Check_Hidden_Primitives after every call to
Analyze_Associations, and invoke Restore_Hidden_Primitives to
restore their visibility after processing the instantiation.
(Instantiate_Package_Body): Install visible primitives before
analyzing the instantiation and uninstall them to restore their
visibility when the instantiation has been analyzed.
* sem_util.ads, sem_util.adb (Add_Suffix): New subprogram
(Remove_Suffix): New subprogram
* sem_ch3.adb (Derive_Subprogram): When handling
a derived subprogram for the instantiation of a formal derived
tagged type, inherit the dispatching attributes from the actual
subprogram (not from the parent type).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180370 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Vasiliy Fofanov <fofanov@adacore.com>
charlet [Mon, 24 Oct 2011 09:24:35 +0000 (09:24 +0000)]
2011-10-24  Vasiliy Fofanov  <fofanov@adacore.com>

* gnat_ugn.texi: Document explicit use of XDECGNAT library.

2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch3.adb (Build_Assignment): Add local constant N_Loc and
update its uses.
(Build_Discriminant_Assignments): Add local variable D_Loc and update
its uses.
(Build_Init_Statements): Add local variables Comp_Loc, Decl_Loc and
Var_Loc and update their uses.
(Build_Record_Init_Proc): Code reformatting.
(Increment_Counter): Add formal parameter Loc.
(Make_Counter): Add formal parameter Loc.

2011-10-24  Eric Botcazou  <ebotcazou@adacore.com>

* sem_disp.adb (Covers_Some_Interface): Fix typo.

2011-10-24  Matthew Heaney  <heaney@adacore.com>

* a-cuprqu.adb, a-cbprqu.adb (Dequeue_Only_High_Priority):
Predicate had wrong sense.

2011-10-24  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications/Aspect_Test_Case):
Translate arguments in positional notation into pragma argument
association arguments for the generated pragma.

2011-10-24  Arnaud Charlet  <charlet@adacore.com>

* exp_ch5.adb: Fix minor typo.

2011-10-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Is_Visible_Component): Refine predicate for
the case of a component reference in an instance body, when the
enclosing type is private.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180369 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-24 Sergey Rybin <rybin@adacore.com frybin>
charlet [Mon, 24 Oct 2011 09:19:15 +0000 (09:19 +0000)]
2011-10-24  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: For gnatelim, move the note about using the GNAT
driver for getting the project support into gnatelim section.

2011-10-24  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Minor correction to documentation on address
clause.

2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>

* s-finmas.adb (Attach): Synchronize and call the unprotected version.
(Attach_Unprotected): New routine.
(Delete_Finalize_Address): Removed.
(Delete_Finalize_Address_Unprotected): New routine.
(Detach): Synchronize and call the unprotected version.
(Detach_Unprotected): Remove locking.
(Finalize): Add various comment on synchronization. Lock the critical
region and call the unprotected versions of routines.
(Finalize_Address): Removed.
(Finalize_Address_Unprotected): New routine.
(Set_Finalize_Address): Synchronize and call
the unprotected version.
(Set_Finalize_Address_Unprotected): New routine.
(Set_Heterogeneous_Finalize_Address): Removed.
(Set_Heterogeneous_Finalize_Address_Unprotected): New routine.
(Set_Is_Heterogeneous): Add comment on synchronization and
locking.
* s-finmas.ads: Flag Finalization_Started is no longer atomic
because synchronization uses task locking / unlocking.
(Attach): Add comment on usage.
(Attach_Unprotected): New routine.
(Delete_Finalize_Address): Renamed to
Delete_Finalize_Address_Unprotected.
(Detach): Add comment on usage.
(Detach_Unprotected): New routine.
(Finalize_Address): Renamed to Finalize_Address_Unprotected.
(Set_Finalize_Address): Add comment on usage.
(Set_Finalize_Address_Unprotected): New routine.
(Set_Heterogeneous_Finalize_Address): Renamed to
Set_Heterogeneous_Finalize_Address_Unprotected.
* s-stposu.adb (Allocate_Any_Controlled): Add local variable
Allocation_Locked. Add various comments on synchronization. Lock
the critical region and call the unprotected version of
routines.
(Deallocate_Any_Controlled): Add various comments on
synchronization. Lock the critical region and call the unprotected
version of routines.

2011-10-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Set_Fixed_Range): The bounds of a fixed point type
are universal and must carry the corresponding type.
* sem_eval.adb (Check_Non_Static_Context): If the type of the
expression is universal real, as may be the case for a fixed point
expression with constant operands in the context of a conversion,
there is nothing to check.
* s-finmas.adb: Minor reformatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180368 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/50730
irar [Mon, 24 Oct 2011 09:16:53 +0000 (09:16 +0000)]
    PR tree-optimization/50730
        * tree-vect-data-refs.c (vect_analyze_data_refs): Stop basic
        block analysis if encountered unsupported data-ref.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180367 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoImplement append([]byte, string...).
ian [Mon, 24 Oct 2011 05:00:34 +0000 (05:00 +0000)]
Implement append([]byte, string...).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180364 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSome minor fixes to the rewritten syscall library.
ian [Mon, 24 Oct 2011 04:57:08 +0000 (04:57 +0000)]
Some minor fixes to the rewritten syscall library.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180363 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix sol2 sparc -mv8 regression.
davem [Mon, 24 Oct 2011 04:15:46 +0000 (04:15 +0000)]
Fix sol2 sparc -mv8 regression.

* config/sparc/sparc.c (sparc_option_override): Remove -mv8plus
cpu adjustment.
* config/sparc/linux64.h (CC1_SPEC): When defaulting to 64-bit,
append -mcpu=v9 when -mv8plus is given.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180362 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRename is_open_array_type to is_slice_type.
ian [Mon, 24 Oct 2011 04:06:44 +0000 (04:06 +0000)]
Rename is_open_array_type to is_slice_type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180361 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd support for sparc VIS3 fp<-->int moves.
davem [Mon, 24 Oct 2011 03:51:47 +0000 (03:51 +0000)]
Add support for sparc VIS3 fp<-->int moves.

* config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED): We can move
between float and non-float regs when VIS3.
* config/sparc/sparc.c (eligible_for_restore_insn): We can't
use a restore when the source is a float register.
(sparc_split_regreg_legitimate): When VIS3 allow moves between
float and integer regs.
(sparc_register_move_cost): Adjust to account for VIS3 moves.
(sparc_preferred_reload_class): On 32-bit with VIS3 when moving an
integer reg to a class containing EXTRA_FP_REGS, constrain to
FP_REGS.
(sparc_secondary_reload): On 32-bit with VIS3 when moving between
float and integer regs we sometimes need a FP_REGS class
intermediate move to satisfy the reload.  When this happens
specify an extra cost of 2.
(*movsi_insn): Rename to have "_novis3" suffix and add !VIS3
guard.
(*movdi_insn_sp32_v9): Likewise.
(*movdi_insn_sp64): Likewise.
(*movsf_insn): Likewise.
(*movdf_insn_sp32_v9): Likewise.
(*movdf_insn_sp64): Likewise.
(*zero_extendsidi2_insn_sp64): Likewise.
(*sign_extendsidi2_insn): Likewise.
(*movsi_insn_vis3): New insn.
(*movdi_insn_sp32_v9_vis3): New insn.
(*movdi_insn_sp64_vis3): New insn.
(*movsf_insn_vis3): New insn.
(*movdf_insn_sp32_v9_vis3): New insn.
(*movdf_insn_sp64_vis3): New insn.
(*zero_extendsidi2_insn_sp64_vis3): New insn.
(*sign_extendsidi2_insn_vis3): New insn.
(TFmode reg/reg split): Make sure both REG operands are float.
(*mov<VM32:mode>_insn): Add "_novis3" suffix and !VIS3 guard. Remove
easy constant to integer reg alternatives.
(*mov<VM64:mode>_insn_sp64): Likewise.
(*mov<VM64:mode>_insn_sp32_novis3): Likewise.
(*mov<VM32:mode>_insn_vis3): New insn.
(*mov<VM64:mode>_insn_sp64_vis3): New insn.
(*mov<VM64:mode>_insn_sp32_vis3): New insn.
(VM64 reg<-->reg split): New spliiter for 32-bit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180360 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/50834
redi [Mon, 24 Oct 2011 00:19:56 +0000 (00:19 +0000)]
PR libstdc++/50834
* doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180359 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 24 Oct 2011 00:17:20 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180358 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFactor out common tests in 8-byte reg/reg move splitters on 32-bit sparc.
davem [Sun, 23 Oct 2011 22:34:07 +0000 (22:34 +0000)]
Factor out common tests in 8-byte reg/reg move splitters on 32-bit sparc.

* config/sparc/sparc.c (sparc_split_regreg_legitimate): New
function.
* config/sparc/sparc-protos.h (sparc_split_regreg_legitimate):
Declare it.
* config/sparc/sparc.md (DImode reg/reg split): Use it.
(DFmode reg/reg split): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180354 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-10-23 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sun, 23 Oct 2011 22:30:00 +0000 (22:30 +0000)]
2011-10-23  Steven G. Kargl  <kargl@gcc.gnu.org>

    * simplify.c (simplify_transformation_to_array): Fix memory leak.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180353 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd missing fzero/fone cases to DImode move on 32-bit v9 sparc.
davem [Sun, 23 Oct 2011 22:21:51 +0000 (22:21 +0000)]
Add missing fzero/fone cases to DImode move on 32-bit v9 sparc.

* config/sparc/sparc.md (*movdi_insn_sp32_v9): Add alternatives for
generating fzero and fone instructions.
(DImode const_int --> reg splitter): Only trigger for integer regs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180352 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix sparc so that reload doesn't try to load non-trivial vector consts directly.
davem [Sun, 23 Oct 2011 21:51:16 +0000 (21:51 +0000)]
Fix sparc so that reload doesn't try to load non-trivial vector consts directly.

* config/sparc/predicates.md (input_operand): Disallow vector
constants other than 0 and -1.
* config/sparc/sparc.c (sparc_preferred_reload_class): Return
NO_REGS for vector constants other than 0 and -1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180351 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoUse a macro instead of a constant to test for sparc integer regnos.
davem [Sun, 23 Oct 2011 21:50:56 +0000 (21:50 +0000)]
Use a macro instead of a constant to test for sparc integer regnos.

* config/sparc/sparc.h (SPARC_FIRST_INT_REG, SPARC_LAST_INT_REG,
SPARC_INT_REG_P): Define.
(HARD_REGNO_NREGS): Use SPARC_INT_REG_P.
(REGNO_OK_FOR_INDEX_P): Likewise.
* config/sparc/sparc.c (gen_df_reg): Likewise.
(eligible_for_return_delay): Likewise.
(eligible_for_sibcall_delay): Likewise.
(sparc_legitimate_address_p): Likewise.
(emit_save_or_restore_regs): Likewise.
(registers_ok_for_ldd_peep): Likewise.
* config/spac/sparc.md (DI mode splitters): Likewise.
(SF mode const splitters): Likewise.
(DF mode splitters): Likewise.
(32-bit DI mode logical op splitters): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180350 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/c-family
paolo [Sun, 23 Oct 2011 21:15:08 +0000 (21:15 +0000)]
/c-family
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
Wnarrowing for C++0x and C++98.
* c.opt ([Wnarrowing]): Update.

/cp
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
* decl.c (check_initializer): Likewise.
* semantics.c (finish_compound_literal): Likewise.

/testsuite
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* g++.dg/cpp0x/warn_cxx0x2.C: New.
* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.

2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180349 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/c-family
paolo [Sun, 23 Oct 2011 20:59:43 +0000 (20:59 +0000)]
/c-family
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
Wnarrowing for C++0x and C++98.
* c.opt ([Wnarrowing]): Update.

/cp
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
* decl.c (check_initializer): Likewise.
* semantics.c (finish_compound_literal): Likewise.

/testsuite
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* g++.dg/cpp0x/warn_cxx0x2.C: New.
* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.

2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50841
Revert:
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180348 138bc75d-0d04-0410-961f-82ee72b054a4