jakub [Fri, 11 Nov 2011 19:58:10 +0000 (19:58 +0000)]
* config/i386/i386-protos.h (ix86_maybe_emit_epilogue_vzeroupper):
New prototype.
* config/i386/i386.c (ix86_maybe_emit_epilogue_vzeroupper): New
function.
(ix86_expand_epilogue): Use it.
* config/i386/i386.md (return, simple_return): Call it in the
expanders.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181300
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:57:23 +0000 (19:57 +0000)]
PR tree-optimization/51091
* tree-stdarg.c (execute_optimize_stdarg): Ignore TREE_CLOBBER_P
rhs also in the va_list_simple_ptr case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181299
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:56:13 +0000 (19:56 +0000)]
PR tree-optimization/51058
* tree-vect-slp.c (vect_remove_slp_scalar_calls): New function.
(vect_schedule_slp): Call it.
* tree-vect-stmts.c (vectorizable_call): If slp_node != NULL,
don't replace scalar calls with setting of their lhs to zero here.
* gcc.dg/vect/fast-math-vect-call-1.c: Add f4 test.
* gfortran.dg/vect/pr51058-2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181298
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 19:55:23 +0000 (19:55 +0000)]
PR tree-optimization/51074
* fold-const.c (vec_cst_ctor_to_array, fold_vec_perm): New functions.
(fold_binary_loc): Handle VEC_EXTRACT_EVEN_EXPR,
VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR and
VEC_INTERLEAVE_LOW_EXPR with VECTOR_CST or CONSTRUCTOR operands.
(fold_ternary_loc): Handle VEC_PERM_EXPR with VECTOR_CST or
CONSTRUCTOR operands.
* tree-ssa-propagate.c (valid_gimple_rhs_p): Handle ternary
expressions.
* tree-vect-generic.c (lower_vec_perm): Mask sel_int elements
to 0 .. 2 * elements - 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181297
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 11 Nov 2011 17:52:11 +0000 (17:52 +0000)]
Implement omp atomic load and store.
* gimple-pretty-print.c (dump_gimple_omp_atomic_load): Dump needed.
(dump_gimple_omp_atomic_store): Likewise.
* optabs.c (can_atomic_exchange_p): New.
* optabs.h (can_atomic_exchange_p): Declare.
* omp-low.c (expand_omp_atomic_load): Implement.
(expand_omp_atomic_store): Likewise.
(expand_omp_atomic): Update for new arguments to load/store.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181296
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 11 Nov 2011 16:51:41 +0000 (16:51 +0000)]
PR c++/50976
* typeck.c (check_literal_operator_args): Reorganize test for string
operators so size_t search depends on finding string first.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181292
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 11 Nov 2011 16:49:22 +0000 (16:49 +0000)]
Fix SPU libgcc build
* config/spu/t-elf (LIB2ADD): Use LIB2FUNCS_EXCLUDE instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181291
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Fri, 11 Nov 2011 16:38:11 +0000 (16:38 +0000)]
PR 51090 Fix r181288 to conform to GNU style
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181290
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 11 Nov 2011 16:34:16 +0000 (16:34 +0000)]
* cprop.c: Adjust outdated comments throughout.
(hash_scan_set): Rename PAT parameter into SET.
(cprop_pavloc): Rename into...
(cprop_avloc): ...this.
(cprop_absaltered): Rename into...
(cprop_kill): ...this.
(alloc_cprop_mem): Adjust for above renaming.
(free_cprop_mem): Likewise.
(compute_cprop_data): Likewise.
(compute_local_properties): Rename TRANSP parameter into KILL and
adjust throughout. Rework comments.
(try_replace_reg): Fix long line.
(cprop_jump): Likewise.
(constprop_register): Fix prototype and take INSN last.
(cprop_insn): Adjust calls to above function. Fix long lines.
(bypass_block): Likewise.
(one_cprop_pass): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181289
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Fri, 11 Nov 2011 16:31:47 +0000 (16:31 +0000)]
PR 51090 Check that getenv result != NULL before proceeding.
2011-11-11 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/51090
* runtime/main.c (find_addr2line): NULL check before proceeding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181288
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 11 Nov 2011 16:24:55 +0000 (16:24 +0000)]
* config/alpha/elf.h (ELF_ASCII_ESCAPES): Rename from ESCAPES.
(ELF_STRING_LIMIT): Rename from STRING_LIMIT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181287
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 11 Nov 2011 15:27:02 +0000 (15:27 +0000)]
* varasm.c (default_elf_asm_output_limited_string): #ifdef
ELF_ASCII_ESCAPES.
(default_elf_asm_output_ascii): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181286
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 11 Nov 2011 14:56:00 +0000 (14:56 +0000)]
PR target/50762
* config/i386/constraints.md (j): New address constraint.
* config/i386/predicates.md (lea_address_operand): Redefine as
special predicate.
* config/i386/i386.md (*lea_3_zext): Use "j" constraint for operand 1.
(*lea_4_zext): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181285
138bc75d-0d04-0410-961f-
82ee72b054a4
abel [Fri, 11 Nov 2011 09:19:21 +0000 (09:19 +0000)]
2011-11-11 Andrey Belevantsev <abel@ispras.ru>
* MAINTAINERS (Selective Scheduling): Add myself as a reviewer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181284
138bc75d-0d04-0410-961f-
82ee72b054a4
davem [Fri, 11 Nov 2011 08:23:34 +0000 (08:23 +0000)]
Revert sparc vec_init improvements as they cause 64-bit regressions.
gcc/
Revert
2011-11-05 David S. Miller <davem@davemloft.net>
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181283
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 08:15:56 +0000 (08:15 +0000)]
* opts-common.c (generate_canonical_option): Free opt_text
it it has been allocated here and not stored anywhere.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181282
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 11 Nov 2011 08:10:07 +0000 (08:10 +0000)]
* tree-vect-slp.c (vect_free_slp_tree): Also free SLP_TREE_CHILDREN
vector.
(vect_create_new_slp_node): Don't allocate node before checking stmt
type.
(vect_free_oprnd_info): Remove FREE_DEF_STMTS argument, always
free def_stmts vectors and additionally free oprnd_info.
(vect_build_slp_tree): Adjust callers. Call it even if
stop_recursion. If vect_create_new_slp_node or
vect_build_slp_tree fails, properly handle freeing memory.
If it succeeded, clear def_stmts in oprnd_info.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181281
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 11 Nov 2011 04:29:04 +0000 (04:29 +0000)]
PR c++/50372
* pt.c (convert_nontype_argument_function): Allow decls with
internal linkage in C++11.
(convert_nontype_argument): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181280
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 11 Nov 2011 04:00:39 +0000 (04:00 +0000)]
* final.c, output.h (fprint_whex, fprint_w, fprint_ul, sprint_ul):
New functions serving as fast replacements for fprintf() integer
to string conversions. They were used in the following changes.
* final.c (sprint_ul_rev): Internal helper for the above.
(output_addr_const): case CONST_INT: don't use fprintf().
* elfos.h (ASM_GENERATE_INTERNAL_LABEL): Don't use sprintf("%u"),
use sprint_ul() and stpcpy() which are much faster.
(TARGET_ASM_INTERNAL_LABEL): Define as default_elf_internal_label.
(ELF_ASCII_ESCAPES, ELF_STRING_LIMIT): Are the old ESCAPES and
STRING_LIMIT macros.
(ASM_OUTPUT_LIMITED_STRING, ASM_OUTPUT_ASCII): Macros now just
call respective functions that provide the same
functionality. Those are default_elf_asm_output_limited_string()
and default_elf_asm_output_ascii() in varasm.c.
* varasm.c: Fixed some whitespace inconsistencies.
(default_elf_asm_output_limited_string)
(default_elf_asm_output_ascii): The above macros from elfos.h are
implemented here as these functions, avoiding superfluous calls to
fprintf().
(default_elf_internal_label): Hook for
targetm.asm_out.internal_label and ASM_OUTPUT_DEBUG_LABEL.
* i386.c: Don't call fprintf("%u") but fprint_ul() instead.
* defaults.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_INTERNAL_LABEL):
Expanded the macros on multiple lines for readability.
(ASM_OUTPUT_LABELREF): Have two calls to fputs() instead of one to
asm_fprintf().
* dwarf2asm.c (dw2_assemble_integer, dw2_asm_output_data)
(dw2_asm_data_uleb128, dw2_asm_delta_uleb128)
(dw2_asm_delta_sleb128): Convert fprintf() calls to the new
faster functions.
* dwarf2out.c (dwarf2out_source_line): Convert fprintf() calls to
the new faster functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181279
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 11 Nov 2011 00:18:44 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181278
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Thu, 10 Nov 2011 22:46:25 +0000 (22:46 +0000)]
2011-11-10 Andrew MacLeod <amacleod@redhat.com>
* doc/extend.texi: Document __atomic_test_and_set and __atomic_clear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181273
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 10 Nov 2011 21:14:42 +0000 (21:14 +0000)]
PR c++/50973
* decl2.c (mark_used): Defer synthesis of virtual functions.
* method.c (use_thunk): Make sure the target function has
DECL_INTERFACE_KNOWN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181272
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Thu, 10 Nov 2011 20:38:33 +0000 (20:38 +0000)]
PR middle-end/51038
libstdc++-v3
* include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
(atomic_signal_fence): Call built-in.
(test_and_set, clear): Call new atomic built-ins.
gcc
* builtins.c (expand_builtin_atomic_clear): New. Expand atomic_clear.
(expand_builtin_atomic_test_and_set): New. Expand atomic test_and_set.
(expand_builtin): Add cases for test_and_set and clear.
* sync-builtins.def (BUILT_IN_ATOMIC_TEST_AND_SET): New.
(BUILT_IN_ATOMIC_CLEAR): New.
testsuite
* gcc.dg/atomic-invalid.c: Add test for invalid __atomic_clear models.
* gcc.dg/atomic-flag.c: New. Test __atomic_test_and_set and
__atomic_clear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181271
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 10 Nov 2011 20:28:16 +0000 (20:28 +0000)]
PR c++/51079, DR 495
* call.c (joust): Check the second conversion sequence
before checking templates.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181270
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 10 Nov 2011 20:28:04 +0000 (20:28 +0000)]
PR debug/50983
* dwarf2out.c (set_cur_line_info_table): Restore the last is_stmt
value in the current line table.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181269
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Nov 2011 19:45:17 +0000 (19:45 +0000)]
* fe.h (Serious_Errors_Detected): New macro.
* gcc-interface/gigi.h (build_atomic_load): Declare.
(build_atomic_store): Likewise.
* gcc-interface/trans.c (atomic_sync_required_p): New predicate.
(call_to_gnu): Add ATOMIC_SYNC parameter. Use local variable.
Build an atomic load for an In or In Out parameter if needed.
Build an atomic store for the assignment of an Out parameter if needed.
Build an atomic store to the target if ATOMIC_SYNC is true.
(present_in_lhs_or_actual_p): New predicate.
(gnat_to_gnu) <N_Identifier>: Build an atomic load if needed.
<N_Explicit_Dereference>: Likewise.
<N_Indexed_Component>: Likewise.
<N_Selected_Component>: Likewise.
<N_Assignment_Statement>: Adjust call to call_to_gnu.
Build an atomic store to the LHS if needed.
<N_Function_Call>: Adjust call to call_to_gnu.
* gcc-interface/utils2.c: Include toplev.h.
(resolve_atomic_size): New static function.
(build_atomic_load): New function.
(build_atomic_store): Likewise.
* gcc-interface/Make-lang.in (ada/utils2.o): Add toplev.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181267
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 10 Nov 2011 19:34:57 +0000 (19:34 +0000)]
* configure.ac (GCC_AS_CFI_PSEUDO_OP): Use it instead of inline check.
* configure, aclocal.m4: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181266
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 10 Nov 2011 19:17:13 +0000 (19:17 +0000)]
* gcov.c (struct function_info): Make src an index, not a pointer.
(struct source_info): Remove index and next source fields.
(fn_end): New static var.
(sources_index): Remove.
(sources): Now a pointer to an array, not a list.
(n_sources, a_sources): New.
(process_file): Adjust for changes to read_graph_file. Insert
functions into source lists and check line numbers here.
(generate_results): Only allocate lines for sources with
contents. Adjust for source array.
(release_structures): Likewise.
(find_source): Return source index, adjust for source array.
(read_graph_file): Return function list. Don't insert into source
lists here.
(read_count_file): Take list of functions.
(solve_flow_graph): Reverse the arc lists here.
(add_line_counts): Adjust for source array.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181265
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Nov 2011 19:02:30 +0000 (19:02 +0000)]
PR middle-end/51077
* tree-object-size.c (addr_object_size): Check TREE_CODE of
MEM_REF's operand rather than code of the MEM_REF itself.
* gcc.c-torture/compile/pr51077.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181263
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Thu, 10 Nov 2011 17:15:33 +0000 (17:15 +0000)]
libitm port to Tru64 UNIX
* config/alpha/sjlj.S (_ITM_beginTransaction) [!__ELF__]: Don't use
.hidden.
(.note.GNU-stack): Only use if __linux__.
* alloc_cpp.cc [!__osf__] (_ZnaXRKSt9nothrow_t): Dummy function.
* testsuite/libitm.c/notx.c: Use dg-options "-pthread".
* testsuite/libitm.c/reentrant.c: Likewise.
* testsuite/libitm.c/simple-2.c: Likewise.
* testsuite/libitm.c/txrelease.c: Likewise.
* testsuite/libitm.c++/static_ctor.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181262
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 10 Nov 2011 17:09:04 +0000 (17:09 +0000)]
libitm: Don't add -mavx if the assembler doesn't support avx.
* config/x86/x86_avx.cc: Remove #undef __AVX__ hack. Tidy comments.
* Makefile.am (x86_avx.lo): Only add -mavx if ARCH_X86_AVX.
* configure.ac (ARCH_X86_AVX): New conditional.
* Makefile.in, configure: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181261
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Thu, 10 Nov 2011 17:08:24 +0000 (17:08 +0000)]
Let the compiler decide whether to inline.
2011-11-10 Janne Blomqvist <jb@gcc.gnu.org>
* intrinsics/cpu_time.c (__cpu_time_1): Don't force inlining.
* intrinsics/random.c (rnumber_4): Remove inline attribute.
(rnumber_8, rnumber_10, rnumber_16): Likewise.
* intrinsics/system_clock.c (gf_gettime_mono): Likewise.
* intrinsics/time_1.h (ATTRIBUTE_ALWAYS_INLINE): Remove macro.
(gf_cputime): Add inline attribute for MingW version.
* io/format.c (format_hash): Remove inline attribute.
* io/io.h (memset4): Inline function from transfer.c and write.c
moved here.
* io/transfer.c (min_off): Remove inline attribute.
(memset4): Move to io.h.
* io/write.c (memset4): Likewise.
(memcpy4): Remove inline attribute.
* io/write_float.def (calculate_exp): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181260
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Thu, 10 Nov 2011 16:39:32 +0000 (16:39 +0000)]
PR rtl-optimization/51040
* optabs.c (expand_atomic_fetch_op): Patchup code for NAND should be AND
followed by NOT.
* builtins.c (expand_builtin_atomic_fetch_op): Patchup code for NAND
should be AND followed by NOT.
* testsuite/gcc.dg/atomic-noinline[-aux].c: Test no-inline NAND and
patchup code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181259
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Nov 2011 15:40:34 +0000 (15:40 +0000)]
* vec.h (VEC_BASE): If base is at offset 0 in the structure,
use &(P)->base even if P is NULL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181258
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Nov 2011 15:36:48 +0000 (15:36 +0000)]
PR rtl-optimization/51023
* combine.c (simplify_comparison) <case SIGN_EXTEND>: Don't use
val_signbit_known_clear_p for signed comparison narrowing
optimization. Don't check for non-VOIDmode, use
HWI_COMPUTABLE_MODE_P macro.
<case ZERO_EXTEND>: Don't check for non-VOIDmode.
Optimize even when const_op is equal to GET_MODE_MASK (mode),
don't optimize if const_op is negative.
* gcc.c-torture/execute/pr51023.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181257
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Nov 2011 15:28:57 +0000 (15:28 +0000)]
2011-11-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51042
* tree-ssa-pre.c (phi_translate_1): Avoid recursing on
self-referential expressions. Refactor code to avoid duplication.
* gcc.dg/torture/pr51042.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181256
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Nov 2011 13:46:27 +0000 (13:46 +0000)]
2011-11-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51070
* tree-loop-distribution.c (generate_builtin): Do not replace
the loop with a builtin if the partition contains statements which
results are used outside of the loop.
(pass_loop_distribution): Verify and collect.
* gcc.dg/torture/pr51070.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181255
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Nov 2011 12:24:52 +0000 (12:24 +0000)]
2011-11-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51030
* tree-ssa-phiopt.c (jump_function_from_stmt): New function.
(value_replacement): Use it to handle trivial non-empty
intermediate blocks.
* gcc.dg/tree-ssa/phi-opt-6.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181254
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Nov 2011 12:22:46 +0000 (12:22 +0000)]
2011-11-10 Richard Guenther <rguenther@suse.de>
PR middle-end/51071
* gimple.c (gimple_has_side_effects): Remove checking code
that doesn't belong here.
* gcc.dg/torture/pr51071.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181253
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Nov 2011 10:48:11 +0000 (10:48 +0000)]
* gnat.dg/loop_optimization9.ad[sb]: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181252
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Thu, 10 Nov 2011 10:14:24 +0000 (10:14 +0000)]
PR tree-optimization/51058
* tree-vect-slp.c (vect_get_constant_vectors): Handle CALL_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181251
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Nov 2011 08:29:52 +0000 (08:29 +0000)]
PR tree-optimization/51000
* tree-vect-patterns.c (vect_recog_bool_pattern): If adding
a pattern stmt for a bool store, adjust DR_STMT too.
Don't handle bool conversions to single bit precision lhs.
* tree-vect-stmts.c (vect_remove_stores): If next is a pattern
stmt, remove its related stmt and free its stmt_vinfo.
(free_stmt_vec_info): Free also pattern stmt's vinfo and
pattern def stmt's vinfo.
* tree-vect-loop.c (destroy_loop_vec_info): Don't try to
free pattern stmt's vinfo here.
(vect_transform_loop): When calling vect_remove_stores,
do gsi_next first and don't call gsi_remove. If not strided
store, free stmt vinfo for gsi_stmt (si) rather than stmt.
* gcc.dg/vect/pr51000.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181250
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 10 Nov 2011 02:27:16 +0000 (02:27 +0000)]
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50837
* pt.c (tsubst_copy_and_build) [IDENTIFIER_NODE]: In C++11 mode
pass allow_non_integral_constant_expression_p = true to
finish_id_expression.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50837
* g++.dg/cpp0x/static_assert5.C: New.
* g++.dg/template/nontype13.C: Tweak.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181248
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 10 Nov 2011 00:29:38 +0000 (00:29 +0000)]
libitm: Work around assembler missing AVX insns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181246
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 10 Nov 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181245
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 22:54:55 +0000 (22:54 +0000)]
libitm: Remove unused code.
In particular, unused code that's presenting portability problems.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181241
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 22:25:25 +0000 (22:25 +0000)]
PR c++/50972
* pt.c (maybe_instantiate_noexcept): Check the return value of
push_tinst_level.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181240
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 22:25:12 +0000 (22:25 +0000)]
PR c++/51046
* parser.c (cp_parser_range_for): check_for_bare_parameter_packs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181239
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 9 Nov 2011 21:37:27 +0000 (21:37 +0000)]
PR target/50911
* config/i386/i386.c (expand_vec_perm_interleave2): If d->vmode is
V4SImode, !TARGET_SSE2 and punpck[lh]* is needed, change dremap.vmode
to V4SFmode.
* gcc.dg/torture/vshuf-16.inc: Add interleave low and high
permutations.
* gcc.dg/torture/vshuf-32.inc: Likewise.
* gcc.dg/torture/vshuf-4.inc: Likewise.
* gcc.dg/torture/vshuf-8.inc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181238
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 9 Nov 2011 21:36:13 +0000 (21:36 +0000)]
* gcc.dg/tm/memopt-1.c: Fix up regexp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181237
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 9 Nov 2011 21:28:57 +0000 (21:28 +0000)]
* function.h (requires_stack_frame_p): New prototype.
* function.c (requires_stack_frame_p): No longer static.
* config/i386/i386.c (ix86_finalize_stack_realign_flags): If
stack_realign_fp was just a conservative guess for a function
which doesn't use sp/fp/argp at all, clear frame_pointer_needed
and stack realignment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181236
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 9 Nov 2011 21:14:03 +0000 (21:14 +0000)]
* include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
the new object with the same allocator.
* testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181235
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 9 Nov 2011 20:06:31 +0000 (20:06 +0000)]
libgcc/:
* generic-morestack.c: Include <string.h>.
(uintptr_type): Define.
(struct initial_sp): Add dont_block_signals field. Reduce size of
extra array by 1.
(allocate_segment): Set prev field to NULL. Don't set
__morestack_current_segment or __morestack_segments.
(__generic_morestack): Update current->prev and *pp after calling
allocate_segment.
(__morestack_block_signals): Don't do anything if
dont_block_signals is set.
(__morestack_unblock_signals): Likewise.
(__generic_findstack): Check for initial_sp == NULL. Add casts to
uintptr_type.
(__splitstack_block_signals): New function.
(enum __splitstack_content_offsets): Define.
(__splitstack_getcontext, __splitstack_setcontext): New functions.
(__splitstack_makecontext): New function.
(__splitstack_block_signals_context): New function.
(__splitstack_find_context): New function.
* config/i386/morestack.S (__morestack_get_guard): New function.
(__morestack_set_guard, __morestack_make_guard): New functions.
* libgcc-std.ver.in: Add new functions to GCC_4.7.0.
gcc/testsuite/:
* lib/target-supports.exp (check_effective_target_ucontext_h): New
procedure.
* gcc.dg/split-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181234
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 19:51:49 +0000 (19:51 +0000)]
libitm: Avoid non-portable x86 branch prediction mnemonic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181233
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 9 Nov 2011 19:36:54 +0000 (19:36 +0000)]
2011-11-09 Tobias Burnus <burnus@net-b.de>
* symbol.c (clear_sym_mark, traverse_ns): Remove functions.
(count_st_nodes, do_traverse_symtree, fill_st_vector): New functions.
(gfc_traverse_symtree, gfc_traverse_ns): Call do_traverse_symtree.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181232
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Wed, 9 Nov 2011 19:25:01 +0000 (19:25 +0000)]
PR c++/51043 - ICE in LTO
* cp-tree.h (TYPE_ALIAS_P, TYPE_TEMPLATE_INFO): Don't crash on
NULL TYPE_NAME.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181231
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Wed, 9 Nov 2011 18:57:26 +0000 (18:57 +0000)]
2011-11-09 Roland McGrath <mcgrathr@google.com>
* configure.ac: Add tool checks for READELF and READELF_FOR_TARGET.
* configure: Rebuild.
* Makefile.def (flags_to_pass): Add READELF_FOR_TARGET.
* Makefile.tpl (READELF, READELF_FOR_TARGET): New variables.
(HOST_EXPORTS): Add READELF, READELF_FOR_TARGET.
(BASE_FLAGS_TO_PASS): Add READELF_FOR_TARGET.
(BASE_TARGET_EXPORTS, EXTRA_HOST_FLAGS, EXTRA_TARGET_FLAGS):
Add READELF.
* Makefile.in: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181230
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 18:38:21 +0000 (18:38 +0000)]
libitm: de-ELF-ize x86/sjlj.S.
* config/x86/sjlj.S: Protect elf directives with __ELF__.
Protect .note.GNU-stack with __linux__.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181229
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 9 Nov 2011 18:30:38 +0000 (18:30 +0000)]
Simplify time() usage.
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
* intrinsics/time_1.h (gf_gettime): Simplify time() usage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181228
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 9 Nov 2011 18:25:58 +0000 (18:25 +0000)]
Configure cleanup.
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
* configure.ac (AC_STDC_HEADERS): Remove.
(AC_HEADER_TIME): Remove.
(AC_HAVE_HEADERS, AC_CHECK_HEADERS): Move into a single invocation
of AC_CHECK_HEADERS_ONCE, don't check for presence of C89 headers.
(AC_CHECK_MEMBERS): Use single invocation.
(AC_CHECK_FUNCS): Move into single invocation of
AC_CHEC_FUNCS_ONCE, don't check for presence of C89 functions.
* config.h.in: Regenerate.
* configure: Regenerate.
* intrinsics/clock.c: Include time.h.
(mclock): Assume clock() is present.
(mclock8): Likewise.
* intrinsics/ctime.c (strctime): Assume strftime is present.
(fdate): Assume time() is present.
(fdate_sub): Likewise.
(ctime): Likewise.
* intrinsics/date_and_time.c: Don't provide abs macro.
(HAVE_NO_DATE_TIME): Remove code related to macro which is never
set.
* intrinsics/execute_command_line.c: Assume stdlib.h is present.
* intrinsics/exit.c: Likewise.
* intrinsics/extends_type_of.c: Likewise.
* intrinsics/gerror.c: Assume strerror() is present.
* intrinsics/kill.c: Assume signal.h is present.
* intrinsics/malloc.c: Assume stdlib.h is present.
* intrinsics/move_alloc.c: Likewise.
* intrinsics/perror.c: Assume perror() is present.
* intrinsics/signal.c: Assume signal.h is present.
* intrinsics/stat.c: Assume stdlib.h is present.
* intrinsics/system.c: Likewise.
* intrinsics/time.c: Include time.h, assume time() is present.
* intrinsics/time_1.h: Conditionally include sys/time.h,
unconditionally time.h.
(gf_cputime): Do division in double, fallback using clock().
(gf_gettime): Assume time() is present.
* intrinsics/umask.c: Assume stdlib.h is present.
* runtime/backtrace.c: Likewise.
* runtime/compile_options.c: Assume signal.h is present, assume
C89 signals are present.
* runtime/error.c: Assume signal.h and stdlib.h are present.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181227
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 18:14:32 +0000 (18:14 +0000)]
* gcc.dg/tm/memopt-1.c: Adjust regexp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181226
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 18:13:09 +0000 (18:13 +0000)]
PR c++/51029
* class.c (build_base_path): Don't ICE in fold_non_dependent_expr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181225
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 18:09:53 +0000 (18:09 +0000)]
libitm: Configure for gas cfi pseudo ops.
* asmcfi.m4: New file.
* configure.ac (GCC_AS_CFI_PSEUDO_OP): Test it.
* configure, aclocal.m4, config.h.in: Rebuild.
* config/generic/asmcfi.h: New file.
* config/x86/sjlj.S: Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181224
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 9 Nov 2011 18:09:42 +0000 (18:09 +0000)]
PR libfortran/47972
* runtime/error.c (gf_strerror): Silence warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181223
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 17:53:53 +0000 (17:53 +0000)]
Run most tests in both C++98 and C++11 modes.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_c++11): New.
(check_effective_target_c++98): New.
* lib/g++-dg.exp (g++-dg-runtest): New.
* [various.exp]: Use g++-dg-runtest.
* [various.C]: Fix for C++11 mode.
gcc/cp/
* Make-lang.in (check_g++_parallelize): Add dg-torture.exp.
(check-c++0x): Obsolete.
/
* Makefile.def (language=c++): Remove check-c++0x.
* Makefile.in (check-gcc-c++): Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181222
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 17:53:37 +0000 (17:53 +0000)]
* [various.C]: Adjust for C++11 mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181221
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 17:53:24 +0000 (17:53 +0000)]
* pt.c (invalid_nontype_parm_type_p): Avoid printing "<type error>".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181220
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 17:53:12 +0000 (17:53 +0000)]
* pt.c (convert_nontype_argument): Only integral arguments
get early folding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181219
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 9 Nov 2011 17:52:57 +0000 (17:52 +0000)]
* parser.c (cp_parser_alias_declaration): Don't do semantic
processing if parsing failed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181218
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 9 Nov 2011 17:52:11 +0000 (17:52 +0000)]
PR 46686 Fix incorrect comment.
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/46686
* runtime/backtrace.c (show_backtrace): Fix incorrect comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181217
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 9 Nov 2011 17:26:37 +0000 (17:26 +0000)]
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR preprocessor/51061
* incpath.c (merge_include_chains): Make sure to not pass null
pointers to free_path.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181216
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 9 Nov 2011 17:22:22 +0000 (17:22 +0000)]
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* init.c (build_new_1, build_vec_delete_1, build_delete):
Use nullptr_node.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New.
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Option Summary, C++ Language Options]):
Add -Wzero-as-null-pointer-constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181215
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 9 Nov 2011 17:21:19 +0000 (17:21 +0000)]
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* init.c (build_new_1, build_vec_delete_1, build_delete):
Use nullptr_node.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New.
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Option Summary, C++ Language Options]):
Add -Wzero-as-null-pointer-constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181214
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 9 Nov 2011 17:19:12 +0000 (17:19 +0000)]
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51047
* search.c (lookup_member): Change to take also a tsubst_flags_t
parameter.
(lookup_field, lookup_fnfields): Adjust calls.
* typeck.c (lookup_destructor, finish_class_member_access_expr,
build_ptrmemfunc_access_expr): Likewise.
* class.c (handle_using_decl, maybe_note_name_used_in_class):
Likewise.
* pt.c (resolve_typename_type): Likewise.
* semantics.c (lambda_function): Likewise.
* parser.c (cp_parser_perform_range_for_lookup,
cp_parser_lookup_name): Likewise.
* friend.c (make_friend_class): Likewise.
* name-lookup.c (pushdecl_maybe_friend_1, get_class_binding,
do_class_using_decl, lookup_qualified_name): Likewise.
* cp-tree.h (lookup_member): Adjust declaration.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51047
* g++.dg/cpp0x/sfinae29.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181213
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 9 Nov 2011 17:17:57 +0000 (17:17 +0000)]
2011-11-09 Tobias Burnus <burnus@net-b.de>
* configure.ac: Make more cross-compile friendly.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181212
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 9 Nov 2011 16:41:22 +0000 (16:41 +0000)]
* config/sparc/sparc.c (output_v8plus_shift): Take INSN parameter first
and adjust head comment.
(output_v8plus_mult): Change NAME into OPCODE and adjust throughout.
(vector_init_bshuffle): Add head comment.
(vector_init_move_words): Likewise.
(vector_init_prepare_elts): Likewise. Take LOCS parameter first.
(sparc_expand_vector_init): Likewise. Adjust call to above function.
(sparc_expand_vector_init_vis2): Likewise.
(sparc_expand_vector_init_vis1): Likewise.
(sparc_expand_conditional_move): Likewise.
(sparc_expand_vcond): Likewise.
* config/sparc/sparc-protos.h (output_v8plus_shift): Adjust.
* config/sparc/sparc.md (ashldi3_v8plus): Adjust call to
output_v8plus_shift.
(ashrdi3_v8plus): Likewise.
(lshrdi3_v8plus): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181211
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Wed, 9 Nov 2011 16:23:15 +0000 (16:23 +0000)]
Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* config/arm/arm-cores.def: Add -mcpu=cortex-a7.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Likewise.
* config/arm/bpabi.h (BE8_LINK_SPEC): Add Cortex A-7.
* doc/invoke.texi: Document -mcpu=cortex-a7.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181210
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 9 Nov 2011 16:04:42 +0000 (16:04 +0000)]
PR 46686 Implement backtrace with _Unwind_Backtrace from libgcc.
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/46686
* configure.ac: Don't check execinfo.h, backtrace,
backtrace_symbols_fd. Check execve instead of execvp. Call
GCC_CHECK_UNWIND_GETIPINFO.
* runtime/backtrace.c: Don't include unused headers, include
limits.h and unwind.h.
(CAN_FORK): Check execve instead of execvp.
(GLIBC_BACKTRACE): Remove.
(bt_header): Conform to gdb backtrace format.
(struct bt_state): New struct.
(trace_function): New function.
(show_backtrace): Use _Unwind_Backtrace from libgcc instead of
glibc backtrace functions.
* Makefile.in: Regenerated.
* aclocal.m4: Regenerated.
* config.h.in: Regenerated.
* configure: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181209
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Wed, 9 Nov 2011 15:56:53 +0000 (15:56 +0000)]
2011-11-09 Janus Weil <janus@gcc.gnu.org>
PR fortran/50960
* gfortran.dg/typebound_call_22.f03: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181208
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 9 Nov 2011 15:46:15 +0000 (15:46 +0000)]
PR 50016 Slow I/O on MingW due to _commit
frontend ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* gfortran.texi (Data consistency and durability): New section.
testsuite ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* gfortran.dg/inquire_size.f90: Don't flush the unit.
libgfortran ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* io/inquire.c (inquire_via_unit): Flush the unit and use ssize.
* io/unix.c (buf_flush): Don't call _commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181207
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 9 Nov 2011 15:05:20 +0000 (15:05 +0000)]
2011-11-09 Richard Guenther <rguenther@suse.de>
Revert
2011-11-09 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_call): Verify that
gimple_call_cannot_inline_p is returning a conservative
correct result according to gimple_check_call_matching_types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181206
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 9 Nov 2011 13:43:02 +0000 (13:43 +0000)]
2011-11-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51039
* tree-cfg.c (verify_gimple_call): Verify that
gimple_call_cannot_inline_p is returning a conservative
correct result according to gimple_check_call_matching_types.
* ipa-inline-analysis.c (estimate_function_body_sizes): Remove
code dealing with un-inlinablility.
* gimple-streamer-in.c (input_gimple_stmt): Update the
non-inlinable flag.
* gcc.dg/pr51039.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181205
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 9 Nov 2011 13:25:17 +0000 (13:25 +0000)]
2011-11-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51039
* gimple-low.c (gimple_check_call_args): Remove.
(gimple_check_call_matching_types): Always return true.
* tree-inline.c (setup_one_parameter): Always perform a
valid gimple type change.
(declare_return_variable): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181204
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Wed, 9 Nov 2011 13:11:47 +0000 (13:11 +0000)]
Use t-mingw-pthread on MingW
* config.host (i[34567]86-*-cygwin*): Move i386/t-mingw-pthread ...
(i[34567]86-*-mingw*): ... here.
(x86_64-*-mingw*): ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181203
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 9 Nov 2011 12:22:17 +0000 (12:22 +0000)]
* config/rs6000/vector.md (vcondv4sfv4si, vcondv4siv4sf,
vconduv4sfv4si): New patterns.
* config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Handle
different dest_mode from comparison mode.
* lib/target-supports.exp (check_effective_target_vect_cond_mixed):
Enable also for powerpc*-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181202
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 9 Nov 2011 09:51:49 +0000 (09:51 +0000)]
PR fortran/50540
* resolve.c (resolve_forall_iterators): Transform internal errors
to normal errors.
* gfortran.dg/forall_16.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181200
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Wed, 9 Nov 2011 09:45:36 +0000 (09:45 +0000)]
2011-11-09 Janus Weil <janus@gcc.gnu.org>
PR fortran/50960
* class.c (gfc_find_derived_vtab): Make the vtab symbols FL_PARAMETER.
* expr.c (gfc_simplify_expr): Prevent vtabs from being replaced with
their value.
* resolve.c (resolve_values): Use-associated symbols do not need to
be resolved again.
(resolve_fl_parameter): Make sure the symbol has a value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181199
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 9 Nov 2011 09:41:17 +0000 (09:41 +0000)]
PR fortran/38718
* intrinsic.c (add_functions): Add gfc_simplify_dreal.
* intrinsic.h (gfc_simplify_dreal): New proto.
* simplify.c (gfc_simplify_dreal): New function.
* gfortran.dg/initialization_29.f90: Expand test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181198
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 9 Nov 2011 08:32:26 +0000 (08:32 +0000)]
2011-11-09 Richard Guenther <rguenther@suse.de>
* gimple-fold.c (canonicalize_constructor_val): Mark
address-taken variables addressable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181197
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 9 Nov 2011 08:23:30 +0000 (08:23 +0000)]
* include/profile/unordered_map: Add missing copy constructors.
* include/profile/unordered_set: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181196
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Wed, 9 Nov 2011 08:00:58 +0000 (08:00 +0000)]
PR c++/51027 - accepts alias-declaration without ';'
gcc/cp/
* parser.c (cp_parser_alias_declaration): Require ';' at the end
of the declaration.
libstdc++-v3/
* include/ext/pointer.h (rebind): Append missing ';'.
gcc/testsuite
* g++.dg/cpp0x/alias-decl-12.C: New test.
* g++.dg/ext/alias-decl-attr4.C: Append missing ';'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181195
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 9 Nov 2011 07:58:34 +0000 (07:58 +0000)]
Fix entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181194
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Wed, 9 Nov 2011 07:51:12 +0000 (07:51 +0000)]
PR debug/51032 - ICE in dbxout_type, at dbxout.c:2372
gcc/cp/
* decl2.c (check_member_template): Accept alias templates and ...
* parser.c (cp_parser_alias_declaration): ... use it here.
gcc/testsuite/
* g++.dg/cpp0x/alias-decl-debug-0.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181193
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 9 Nov 2011 06:57:10 +0000 (06:57 +0000)]
PR fortran/21881
* trans-types.c (gfc_get_dtype): Issue a fatal error instead of
an internal error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181192
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Wed, 9 Nov 2011 06:41:59 +0000 (06:41 +0000)]
PR tree-optimization/51015
* tree-vect-loop.c (vect_determine_vectorization_factor): Expect
vectype to be set for pattern def stmts.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181191
138bc75d-0d04-0410-961f-
82ee72b054a4
davem [Wed, 9 Nov 2011 05:23:02 +0000 (05:23 +0000)]
Implement vect_cmdline_needed properly on sparc.
* lib/target-supports.exp (check_effective_target_sparc_vis): New.
(check_effective_target_vect_cmdline_needed): Use it when sparc*-*-*
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181190
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 9 Nov 2011 01:26:04 +0000 (01:26 +0000)]
* include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
* include/debug/vector: Add allocator-extended constructors, ensure
move assignment and swap have same allocator propagation semantics
and exceptions specification as base class.
* include/profile/vector: Likewise.
(vector::push_back(_Tp&&)): Forward argument as rvalue.
* testsuite/23_containers/vector/debug/alloc_prop.cc: New.
* doc/xml/manual/status_cxx2011.xml: Clarify status of container
requirements with respect to allocators.
(status.iso.200x): Add anchor for old ID to preserve existing links.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181189
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Wed, 9 Nov 2011 01:20:14 +0000 (01:20 +0000)]
* function.c (bb_active_p): Delete.
(dup_block_and_redirect, active_insn_between): New functions.
(convert_jumps_to_returns, emit_return_for_exit): New functions,
split out from..
(thread_prologue_and_epilogue_insns): ..here. Delete
shadowing variables. Don't do prologue register clobber tests
when shrink wrapping already failed. Delete all last_bb_active
code. Instead compute tail block candidates for duplicating
exit path. Remove these from antic set. Duplicate tails when
reached from both blocks needing a prologue/epilogue and
blocks not needing such.
* ifcvt.c (dead_or_predicable): Test both flag_shrink_wrap and
HAVE_simple_return.
* bb-reorder.c (get_uncond_jump_length): Make global.
* bb-reorder.h (get_uncond_jump_length): Declare.
* cfgrtl.c (rtl_create_basic_block): Comment typo fix.
(rtl_split_edge): Likewise. Warning fix.
(rtl_duplicate_bb): New function.
(rtl_cfg_hooks): Enable can_duplicate_block_p and duplicate_block.
* Makefile.in (function.o): Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181188
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 9 Nov 2011 00:18:19 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181187
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Tue, 8 Nov 2011 23:54:43 +0000 (23:54 +0000)]
PR fortran/50404
* io.c (gfc_resolve_close): CLOSE requires a UNIT.
* gfortran.dg/io_constraints_3.f90: Improve testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181183
138bc75d-0d04-0410-961f-
82ee72b054a4