Richard Guenther [Thu, 27 Oct 2011 12:10:57 +0000 (12:10 +0000)]
re PR middle-end/50731 (FAIL: gcc.dg/torture/vector-shift2.c)
2010-10-27 Richard Guenther <rguenther@suse.de>
PR middle-end/50731
* tree-vect-generic.c (do_binop): Handle scalar operands.
From-SVN: r180564
Richard B. Kreckel [Thu, 27 Oct 2011 11:00:25 +0000 (11:00 +0000)]
re PR libstdc++/50880 (__complex_acosh() picks wrong complex branch)
2011-10-27 Richard B. Kreckel <kreckel@ginac.de>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/50880
* include/std/complex (__complex_acosh): Fix for __z.real() < 0.
* include/tr1/complex (__complex_acosh): Likewise.
* testsuite/26_numerics/complex/50880.cc: New.
* testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r180563
Nick Clifton [Thu, 27 Oct 2011 09:45:55 +0000 (09:45 +0000)]
config.sub: Import these changes from the config project:
* config.sub: Import these changes from the config project:
2011-10-08 Joern Rennecke <joern.rennecke@embecosm.com>
Ben Elliston <bje@gnu.org>
* config.sub (epiphany): New.
2011-09-09 Linas Vepstas <linasvepstas@gmail.com>
Ben Elliston <bje@gnu.org>
* config.sub (hexagon, hexagon-*): New.
2011-08-23 Roland McGrath <mcgrathr@google.com>
* config.sub: Rename 32eb to be32, 32el to le32, 64el to le64, and
64eb to be64.
2011-08-16 Roland McGrath <mcgrathr@google.com>
* config.sub (32eb, 32el, 64eb, 64el): New (pseudo-)CPUs.
(nacl): Grok as alias for 32el-unknown-nacl.
From-SVN: r180562
Uros Bizjak [Thu, 27 Oct 2011 06:17:00 +0000 (08:17 +0200)]
re PR target/37191 (ICE in inline_secondary_memory_needed, at config/i386/i386.c:21849)
PR target/37191
* config/i386/sse.md (*vec_extract_v4sf_mem): Avoid combining registers
from different units in a single alternative.
From-SVN: r180560
Ian Lance Taylor [Thu, 27 Oct 2011 04:56:46 +0000 (04:56 +0000)]
syscalls: Rewrite awk script to work with nawk.
From-SVN: r180559
David S. Miller [Thu, 27 Oct 2011 04:04:06 +0000 (04:04 +0000)]
Fix thinko in previous sparc setcc changes.
* config/sparc/sparc.c (emit_scc_insn): Force attempt of v9 sequences
if we're comparing DImode and comparison is other than EQ or NE.
From-SVN: r180558
GCC Administrator [Thu, 27 Oct 2011 00:18:31 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r180556
Ian Lance Taylor [Wed, 26 Oct 2011 23:57:58 +0000 (23:57 +0000)]
Update Go library to last weekly.
From-SVN: r180552
David S. Miller [Wed, 26 Oct 2011 23:57:20 +0000 (23:57 +0000)]
Add sparc fmaf test.
gcc/testsuite/
* gcc.target/sparc/fmaf-1.c: New test.
From-SVN: r180551
David S. Miller [Wed, 26 Oct 2011 23:55:23 +0000 (23:55 +0000)]
Improve sparc setcc generation and add testcases.
gcc/
* config/sparc/sparc.c (emit_scc_insn): Do not try v9 sequences until
LEU/LTU/GEU/GTU is attempted.
* config/sparc/sparc.md (*neg_snesi_sign_extend): New 64-bit insn
and split.
(*neg_seqsi_sign_extend): Likewise.
(*sltu_extend_sp64, *neg_sltu_extend_sp64, *sgeu_extend_sp64,
*neg_sgeu_extend_sp64): New insns.
gcc/testsuite/
* gcc.target/sparc/setcc-1.c: New test.
* gcc.target/sparc/setcc-2.c: New test.
From-SVN: r180550
Jonathan Wakely [Wed, 26 Oct 2011 23:35:26 +0000 (23:35 +0000)]
re PR libstdc++/50862 (deadlock in std::condition_variable_any)
PR libstdc++/50862
* include/std/condition_variable (condition_variable_any::wait): Avoid
terminating if relocking user mutex throws during stack-unwinding.
* testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
From-SVN: r180549
Joseph Myers [Wed, 26 Oct 2011 22:15:57 +0000 (23:15 +0100)]
thr-cse-1.c: For i?86-*-mingw*, check for multiple calls.
* gcc.dg/tls/thr-cse-1.c: For i?86-*-mingw*, check for multiple
calls.
From-SVN: r180546
Joseph Myers [Wed, 26 Oct 2011 22:14:43 +0000 (23:14 +0100)]
run-id-1.c: Pass -Wl,--stack,
12582912 option for Windows targets.
* gcc.dg/graphite/run-id-1.c: Pass -Wl,--stack,
12582912 option for
Windows targets.
From-SVN: r180545
Joseph Myers [Wed, 26 Oct 2011 21:52:08 +0000 (22:52 +0100)]
pr37843-4.c: Allow for leading underscores on symbol names.
* gcc.target/i386/pr37843-4.c: Allow for leading underscores on
symbol names.
From-SVN: r180544
Joseph Myers [Wed, 26 Oct 2011 21:51:35 +0000 (22:51 +0100)]
* gcc.target/i386/pad-4.c: Skip for Windows targets.
From-SVN: r180543
David S. Miller [Wed, 26 Oct 2011 21:14:56 +0000 (21:14 +0000)]
Canonicalize sparc movcc patterns such that operand 0 always appears in operand 4.
* config/sparc/sparc-protos.h (sparc_expand_conditional_move): Declare.
* config/sparc/sparc.md (mov<I:mode>cc, mov<F:mode>cc): Call it.
(*mov<I:mode>_cc_v9): Normalize to expect operand 0 always in operand 4.
(*mov<I:mode>_cc_reg_sp64): Likewise.
(*movsf_cc_v9): Likewise.
(*movsf_cc_reg_sp64): Likewise.
(*movdf_cc_v9): Likewise.
(*movdf_cc_reg_sp64): Likewise.
(*movtf_cc_hq_v9): Likewise.
(*movtf_cc_reg_hq_sp64): Likewise.
(*movtf_cc_v9): Likewise.
(*movtf_cc_reg_sp64): Likewise.
* config/sparc/sparc.c (sparc_expand_conditional_move): New function.
(sparc_print_operand): Delete 'c' and 'd' handling, no longer used.
From-SVN: r180542
Eric Botcazou [Wed, 26 Oct 2011 21:05:10 +0000 (21:05 +0000)]
decl.c (elaborate_expression_1): Add EXPR_PUBLIC_P local variable.
* gcc-interface/decl.c (elaborate_expression_1): Add EXPR_PUBLIC_P local
variable. Always create the elaboration variable, if any, as constant.
From-SVN: r180541
Eric Botcazou [Wed, 26 Oct 2011 20:45:09 +0000 (20:45 +0000)]
decl.c (gnat_to_gnu_entity): Try to make a packable type for fields of union types as well.
* 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.
From-SVN: r180540
Eric Botcazou [Wed, 26 Oct 2011 20:32:17 +0000 (20:32 +0000)]
decl.c (gnat_to_gnu_field): Always check components declared as atomic.
* gcc-interface/decl.c (gnat_to_gnu_field): Always check components
declared as atomic. Move around conditionally executed code.
From-SVN: r180539
Jason Merrill [Wed, 26 Oct 2011 19:31:26 +0000 (15:31 -0400)]
* typeck.c (check_literal_operator_args): Avoid building types.
From-SVN: r180538
Jason Merrill [Wed, 26 Oct 2011 19:31:16 +0000 (15:31 -0400)]
build_string comments
From-SVN: r180537
Ed Smith-Rowland [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.
From-SVN: r180536
Paolo Carlini [Wed, 26 Oct 2011 18:04:57 +0000 (18:04 +0000)]
2011-10-26 Paolo Carlini <paolo.carlini@oracle.com>
* Tweak last ChangeLog entry.
From-SVN: r180532
Paolo Carlini [Wed, 26 Oct 2011 17:59:36 +0000 (17:59 +0000)]
re PR c++/50870 ([C++0x] [4.6/4.7 Regression] ICE with decltype, operator->, and default template arguments)
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.
From-SVN: r180531
Tom de Vries [Wed, 26 Oct 2011 15:04:59 +0000 (15:04 +0000)]
HIcmp.c: Fix unaligned pointer.
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.
From-SVN: r180528
Eric Botcazou [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.
* 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.
From-SVN: r180526
Alexandre Oliva [Wed, 26 Oct 2011 13:47:48 +0000 (13:47 +0000)]
re PR debug/50826 (bootstrap on 64 bit pa broken by r180194, ICE in mem_loc_descriptor)
PR debug/50826
* var-tracking.c (rtx_debug_expr_p): New.
(use_type): Don't use debug exprs to track non-VTA variables.
From-SVN: r180525
Jeff Law [Wed, 26 Oct 2011 13:26:50 +0000 (07:26 -0600)]
invoke.texi (sink-frequency-threshold): Document.
* 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.
From-SVN: r180524
Iain Sandoe [Wed, 26 Oct 2011 12:37:59 +0000 (12:37 +0000)]
re PR target/48108 (lto should be containerized in a single mach-o section on darwin)
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.
From-SVN: r180523
Alan Modra [Wed, 26 Oct 2011 11:59:41 +0000 (22:29 +1030)]
rs6000.c (rs6000_make_savres_rtx): Delete unneeded declaration.
* 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.
From-SVN: r180522
Richard Guenther [Wed, 26 Oct 2011 11:48:09 +0000 (11:48 +0000)]
lto-wrapper.c (run_gcc): Properly init/free obstack.
2011-10-26 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (run_gcc): Properly init/free obstack.
From-SVN: r180521
Jakub Jelinek [Wed, 26 Oct 2011 09:46:45 +0000 (11:46 +0200)]
i386.md (UNSPEC_VSIBADDR): New.
* 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.
From-SVN: r180520
Tom de Vries [Wed, 26 Oct 2011 09:33:56 +0000 (09:33 +0000)]
re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge)
2011-10-26 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/50763
* gcc.dg/pr50763-2.c: New test.
From-SVN: r180519
Tom de Vries [Wed, 26 Oct 2011 09:33:49 +0000 (09:33 +0000)]
re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge)
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.
From-SVN: r180518
Richard Guenther [Wed, 26 Oct 2011 09:30:29 +0000 (09:30 +0000)]
re PR driver/41844 (lto1: warning: unknown register name: line-length-none)
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.
From-SVN: r180517
Andreas Tobler [Wed, 26 Oct 2011 06:59:47 +0000 (08:59 +0200)]
freebsd64.h (LINK_SPEC): Emit the same warning as the 32-bit target does.
2011-10-26 Andreas Tobler <andreast@fgznet.ch>
* config/i386/freebsd64.h (LINK_SPEC): Emit the same warning as the
32-bit target does.
From-SVN: r180468
Paolo Carlini [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.
From-SVN: r180467
Paolo Carlini [Wed, 26 Oct 2011 00:50:11 +0000 (00:50 +0000)]
re PR driver/46617 (String concatenation fools extraction for translation.)
2011-10-25 Paolo Carlini <paolo.carlini@oracle.com>
PR translation/46617
* gcc.c (main): Fix fatal_error string for translation.
From-SVN: r180466
Joseph Myers [Wed, 26 Oct 2011 00:36:44 +0000 (01:36 +0100)]
ms_c90-printf-1.c, [...]: Update expected messages.
* gcc.dg/format/ms_c90-printf-1.c, gcc.dg/format/ms_c90-scanf-1.c:
Update expected messages.
From-SVN: r180465
GCC Administrator [Wed, 26 Oct 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r180464
Ian Lance Taylor [Tue, 25 Oct 2011 22:59:40 +0000 (22:59 +0000)]
tree-eh.c (do_return_redirection): Remove return_value_p parameter.
* 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.
From-SVN: r180459
H.J. Lu [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.
From-SVN: r180458
Eric Botcazou [Tue, 25 Oct 2011 22:26:20 +0000 (22:26 +0000)]
re PR rtl-optimization/46603 (gcc.dg/vect/slp-multitypes-2.c execution failure)
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.
From-SVN: r180457
Eric Botcazou [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.
* dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily
suppress debug info for the parent type.
From-SVN: r180456
Eric Botcazou [Tue, 25 Oct 2011 21:56:48 +0000 (21:56 +0000)]
* config/ia64/ia64.c (ia64_profile_hook): Fix thinko.
From-SVN: r180455
Jonathan Wakely [Tue, 25 Oct 2011 21:44:12 +0000 (21:44 +0000)]
condition_variable (condition_variable_any): Remove unused native_handle_type typedef.
* 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.
From-SVN: r180454
Richard Henderson [Tue, 25 Oct 2011 21:30:26 +0000 (14:30 -0700)]
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.
From-SVN: r180453
Richard Henderson [Tue, 25 Oct 2011 21:30:16 +0000 (14:30 -0700)]
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.
From-SVN: r180452
Richard Henderson [Tue, 25 Oct 2011 21:30:04 +0000 (14:30 -0700)]
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.
From-SVN: r180451
Richard Henderson [Tue, 25 Oct 2011 21:29:56 +0000 (14:29 -0700)]
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.
From-SVN: r180450
Richard Henderson [Tue, 25 Oct 2011 21:29:48 +0000 (14:29 -0700)]
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.
From-SVN: r180449
Richard Henderson [Tue, 25 Oct 2011 21:29:40 +0000 (14:29 -0700)]
Fix typos in the names of vec_extract & vec_interleave tree codes.
From-SVN: r180448
Jonathan Wakely [Tue, 25 Oct 2011 20:56:43 +0000 (20:56 +0000)]
re PR libstdc++/50862 (deadlock in std::condition_variable_any)
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.
From-SVN: r180446
Mike Stump [Tue, 25 Oct 2011 20:07:19 +0000 (20:07 +0000)]
re PR lto/48851 (lto-plugin.c:224:7: error: missing sentinel in function call [-Werror=format])
PR target/48851
* inclhack.def (void_null): New bypass.
* fixincl.x: Regenerate.
From-SVN: r180445
Mike Stump [Tue, 25 Oct 2011 19:50:14 +0000 (19:50 +0000)]
* reload.c (regno_clobbered_p): Fix typo.
From-SVN: r180444
Jason Merrill [Tue, 25 Oct 2011 18:24:28 +0000 (14:24 -0400)]
re PR c++/50866 (ICE in verify_gimple_stmt, at tree-cfg.c:4175)
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.
From-SVN: r180442
Jason Merrill [Tue, 25 Oct 2011 18:24:19 +0000 (14:24 -0400)]
re PR c++/49996 (Internal error in verify_gimple_stmt: initializing struct in new-initializer)
PR c++/49996
* tree.c (stabilize_init): Stabilize scalar elements of a
CONSTRUCTOR, too.
From-SVN: r180441
Ian Lance Taylor [Tue, 25 Oct 2011 18:06:32 +0000 (18:06 +0000)]
Solaris/Irix compatibility patches.
From-SVN: r180440
Ian Lance Taylor [Tue, 25 Oct 2011 17:45:55 +0000 (17:45 +0000)]
Fix Solaris build.
From Rainer Orth.
From-SVN: r180439
Ian Lance Taylor [Tue, 25 Oct 2011 17:21:07 +0000 (17:21 +0000)]
Implement predeclared delete function.
From-SVN: r180438
Ian Lance Taylor [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.
From-SVN: r180437
Bernd Schmidt [Tue, 25 Oct 2011 15:45:08 +0000 (15:45 +0000)]
pr-support.c (pop_compact_frame, pop_frame): Correct logic for doubleword pops.
* config/c6x/pr-support.c (pop_compact_frame, pop_frame): Correct
logic for doubleword pops.
From-SVN: r180435
Bernd Schmidt [Tue, 25 Oct 2011 15:44:03 +0000 (15:44 +0000)]
pr-support.c (__gnu_unwind_24bit): Correct logic for the case where B3 isn't the return register.
* config/c6x/pr-support.c (__gnu_unwind_24bit): Correct logic for the
case where B3 isn't the return register.
From-SVN: r180434
Joseph Myers [Tue, 25 Oct 2011 15:37:28 +0000 (16:37 +0100)]
* ja.po: Update.
From-SVN: r180432
Paolo Carlini [Tue, 25 Oct 2011 13:48:10 +0000 (13:48 +0000)]
re PR c++/50858 (segfault at ../../gcc/libiberty/hashtab.c:981)
/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.
From-SVN: r180430
Kirill Yukhin [Tue, 25 Oct 2011 09:39:49 +0000 (09:39 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r180429
Dodji Seketeli [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.
From-SVN: r180427
Dodji Seketeli [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.
From-SVN: r180426
David S. Miller [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.
From-SVN: r180425
Jakub Jelinek [Tue, 25 Oct 2011 08:02:08 +0000 (10:02 +0200)]
re PR tree-optimization/50596 (Problems in vectorization of condition expression)
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.
From-SVN: r180424
Kai Tietz [Tue, 25 Oct 2011 07:32:31 +0000 (09:32 +0200)]
i386.c (ix86_frame_pointer_required): Require frame-pointer, if setjmp is used for 32-bit ms-abi.
* config/i386/i386.c (ix86_frame_pointer_required): Require
frame-pointer, if setjmp is used for 32-bit ms-abi.
From-SVN: r180423
Ian Lance Taylor [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.
From-SVN: r180421
Andreas Tobler [Tue, 25 Oct 2011 05:13:12 +0000 (07:13 +0200)]
t-freebsd: Add wildcard.
2011-10-25 Andreas Tobler <andreast@fgznet.ch>
* config/rs6000/t-freebsd: Add wildcard.
From-SVN: r180420
Joey Ye [Tue, 25 Oct 2011 03:33:31 +0000 (03:33 +0000)]
pr42575.c: Remove architecture option.
2011-10-25 Joey Ye <joey.ye@arm.com>
* gcc.target/arm/pr42575.c: Remove architecture option.
From-SVN: r180419
David S. Miller [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.
From-SVN: r180418
GCC Administrator [Tue, 25 Oct 2011 00:19:13 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r180417
Jonathan Wakely [Mon, 24 Oct 2011 23:26:25 +0000 (23:26 +0000)]
re PR libstdc++/49894 ([C++0x] Uniform initialization in constructor)
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.
From-SVN: r180411
David S. Miller [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.
From-SVN: r180410
Michael Meissner [Mon, 24 Oct 2011 22:28:53 +0000 (22:28 +0000)]
Remove extra newline added in October 11 change
From-SVN: r180408
David S. Miller [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.
From-SVN: r180407
Teresa Johnson [Mon, 24 Oct 2011 21:26:47 +0000 (21:26 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r180405
Andreas Krebbel [Mon, 24 Oct 2011 20:14:35 +0000 (20:14 +0000)]
tree-ssa-strlen.c (get_string_length): Change assertion to STPCPY.
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).
From-SVN: r180402
Ian Lance Taylor [Mon, 24 Oct 2011 19:44:18 +0000 (19:44 +0000)]
Error if naked return when result variables are shadowed.
From-SVN: r180401
Jonathan Wakely [Mon, 24 Oct 2011 19:11:31 +0000 (19:11 +0000)]
49668.cc: Add missing dg-require.
* testsuite/30_threads/async/49668.cc: Add missing dg-require.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.
From-SVN: r180400
Uros Bizjak [Mon, 24 Oct 2011 18:04:37 +0000 (20:04 +0200)]
sse-5.c (dg-options): Add -mno-sse.
* 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.
From-SVN: r180397
Georg-Johann Lay [Mon, 24 Oct 2011 14:49:47 +0000 (14:49 +0000)]
re PR target/50820 ([avr] Use EIND consistently)
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.
From-SVN: r180388
Anatoly Sokolov [Mon, 24 Oct 2011 14:45:51 +0000 (18:45 +0400)]
re PR target/49824 ([avr] Missing documentation for OS_task and OS_main attributes)
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.
Co-Authored-By: Georg-Johann Lay <avr@gjlay.de>
From-SVN: r180385
Richard Guenther [Mon, 24 Oct 2011 14:24:36 +0000 (14:24 +0000)]
tree-vect-stmts.c (vect_get_vec_def_for_operand): Convert constants to vector element type.
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.
From-SVN: r180384
Julian Brown [Mon, 24 Oct 2011 13:47:09 +0000 (13:47 +0000)]
m68k.c (notice_update_cc): Tighten condition for setting CC_REVERSED for FP comparisons.
gcc/
* config/m68k/m68k.c (notice_update_cc): Tighten condition for
setting CC_REVERSED for FP comparisons.
From-SVN: r180383
Richard Guenther [Mon, 24 Oct 2011 12:31:01 +0000 (12:31 +0000)]
re PR tree-optimization/50838 (ice in refs_may_alias_p_1 with -O3)
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.
From-SVN: r180381
Arnaud Charlet [Mon, 24 Oct 2011 12:28:46 +0000 (14:28 +0200)]
Fix date.
From-SVN: r180380
Bernd Schmidt [Mon, 24 Oct 2011 11:46:04 +0000 (11:46 +0000)]
re PR rtl-optimization/50833 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2243 with -fshrink-wrap)
PR rtl-optimization/50833
* function.c (thread_prologue_and_epilogue_insns): Expect the
return insn optimization only if optimize.
From-SVN: r180377
Bernd Schmidt [Mon, 24 Oct 2011 11:03:12 +0000 (11:03 +0000)]
re PR bootstrap/50836 (bootstrap fails due to error: no previous prototype for 'find_all_hard_reg_sets')
PR bootstrap/50836
* rtlanal.c: Swap includes of "hard-reg-set.h" and "rtl.h".
From-SVN: r180376
Arnaud Charlet [Mon, 24 Oct 2011 10:31:29 +0000 (12:31 +0200)]
[multiple changes]
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.
From-SVN: r180375
Tristan Gingold [Mon, 24 Oct 2011 10:01:42 +0000 (10:01 +0000)]
Makefile.in: Use GNU ld switches to generate map files on AIX.
2011-10-16 Tristan Gingold <gingold@adacore.com>
* gcc-interface/Makefile.in: Use GNU ld switches to generate map files
on AIX.
From-SVN: r180374
Arnaud Charlet [Mon, 24 Oct 2011 09:51:42 +0000 (11:51 +0200)]
[multiple changes]
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
From-SVN: r180373
Arnaud Charlet [Mon, 24 Oct 2011 09:41:42 +0000 (11:41 +0200)]
[multiple changes]
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
From-SVN: r180372
Georg-Johann Lay [Mon, 24 Oct 2011 09:39:09 +0000 (09:39 +0000)]
avr.c: Break long lines.
* 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.
From-SVN: r180371
Arnaud Charlet [Mon, 24 Oct 2011 09:28:21 +0000 (11:28 +0200)]
[multiple changes]
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).
From-SVN: r180370
Arnaud Charlet [Mon, 24 Oct 2011 09:24:35 +0000 (11:24 +0200)]
[multiple changes]
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.
From-SVN: r180369