platform/upstream/linaro-gcc.git
13 years ago * config/i386/i386-protos.h (ix86_maybe_emit_epilogue_vzeroupper):
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

13 years ago PR tree-optimization/51091
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

13 years ago PR tree-optimization/51058
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

13 years ago PR tree-optimization/51074
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

13 years agoImplement omp atomic load and store.
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

13 years ago PR c++/50976
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

13 years agoFix SPU libgcc build
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

13 years agoPR 51090 Fix r181288 to conform to GNU style
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

13 years ago * cprop.c: Adjust outdated comments throughout.
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

13 years agoPR 51090 Check that getenv result != NULL before proceeding.
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

13 years ago * config/alpha/elf.h (ELF_ASCII_ESCAPES): Rename from ESCAPES.
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

13 years ago * varasm.c (default_elf_asm_output_limited_string): #ifdef
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

13 years ago PR target/50762
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

13 years ago2011-11-11 Andrey Belevantsev <abel@ispras.ru>
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

13 years agoRevert sparc vec_init improvements as they cause 64-bit regressions.
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

13 years ago * opts-common.c (generate_canonical_option): Free opt_text
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

13 years ago * tree-vect-slp.c (vect_free_slp_tree): Also free SLP_TREE_CHILDREN
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

13 years ago PR c++/50372
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

13 years ago * final.c, output.h (fprint_whex, fprint_w, fprint_ul, sprint_ul):
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

13 years agoDaily bump.
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

13 years ago2011-11-10 Andrew MacLeod <amacleod@redhat.com>
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

13 years ago PR c++/50973
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

13 years ago PR middle-end/51038
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

13 years ago PR c++/51079, DR 495
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

13 years ago PR debug/50983
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

13 years ago * fe.h (Serious_Errors_Detected): New macro.
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

13 years ago * configure.ac (GCC_AS_CFI_PSEUDO_OP): Use it instead of inline check.
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

13 years ago * gcov.c (struct function_info): Make src an index, not a pointer.
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

13 years ago PR middle-end/51077
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

13 years agolibitm port to Tru64 UNIX
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

13 years agolibitm: Don't add -mavx if the assembler doesn't support avx.
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

13 years agoLet the compiler decide whether to inline.
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

13 years ago PR rtl-optimization/51040
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

13 years ago * vec.h (VEC_BASE): If base is at offset 0 in the structure,
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

13 years ago PR rtl-optimization/51023
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

13 years ago2011-11-10 Richard Guenther <rguenther@suse.de>
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

13 years ago2011-11-10 Richard Guenther <rguenther@suse.de>
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

13 years ago2011-11-10 Richard Guenther <rguenther@suse.de>
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

13 years ago2011-11-10 Richard Guenther <rguenther@suse.de>
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

13 years ago * gnat.dg/loop_optimization9.ad[sb]: New test.
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

13 years ago PR tree-optimization/51058
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

13 years ago PR tree-optimization/51000
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

13 years ago/cp
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

13 years agolibitm: Work around assembler missing AVX insns.
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

13 years agoDaily bump.
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

13 years agolibitm: Remove unused code.
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

13 years ago PR c++/50972
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

13 years ago PR c++/51046
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

13 years ago PR target/50911
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

13 years ago * gcc.dg/tm/memopt-1.c: Fix up regexp.
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

13 years ago * function.h (requires_stack_frame_p): New prototype.
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

13 years ago * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
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

13 years agolibgcc/:
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

13 years agolibitm: Avoid non-portable x86 branch prediction mnemonic.
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

13 years ago2011-11-09 Tobias Burnus <burnus@net-b.de>
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

13 years agoPR c++/51043 - ICE in LTO
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

13 years ago2011-11-09 Roland McGrath <mcgrathr@google.com>
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

13 years agolibitm: de-ELF-ize x86/sjlj.S.
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

13 years agoSimplify time() usage.
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

13 years agoConfigure cleanup.
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

13 years ago * gcc.dg/tm/memopt-1.c: Adjust regexp.
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

13 years ago PR c++/51029
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

13 years agolibitm: Configure for gas cfi pseudo ops.
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

13 years ago PR libfortran/47972
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

13 years ago Run most tests in both C++98 and C++11 modes.
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

13 years ago * [various.C]: Adjust for C++11 mode.
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

13 years ago * pt.c (invalid_nontype_parm_type_p): Avoid printing "<type error>".
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

13 years ago * pt.c (convert_nontype_argument): Only integral arguments
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

13 years ago * parser.c (cp_parser_alias_declaration): Don't do semantic
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

13 years agoPR 46686 Fix incorrect comment.
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

13 years ago2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
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

13 years ago/cp
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

13 years ago/cp
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

13 years ago/cp
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

13 years ago2011-11-09 Tobias Burnus <burnus@net-b.de>
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

13 years ago * config/sparc/sparc.c (output_v8plus_shift): Take INSN parameter first
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

13 years agoMatthew Gretton-Dann <matthew.gretton-dann@arm.com>
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

13 years agoPR 46686 Implement backtrace with _Unwind_Backtrace from libgcc.
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

13 years ago2011-11-09 Janus Weil <janus@gcc.gnu.org>
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

13 years agoPR 50016 Slow I/O on MingW due to _commit
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

13 years ago2011-11-09 Richard Guenther <rguenther@suse.de>
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

13 years ago2011-11-09 Richard Guenther <rguenther@suse.de>
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

13 years ago2011-11-09 Richard Guenther <rguenther@suse.de>
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

13 years agoUse t-mingw-pthread on MingW
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

13 years ago * config/rs6000/vector.md (vcondv4sfv4si, vcondv4siv4sf,
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

13 years ago PR fortran/50540
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

13 years ago2011-11-09 Janus Weil <janus@gcc.gnu.org>
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

13 years ago PR fortran/38718
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

13 years ago2011-11-09 Richard Guenther <rguenther@suse.de>
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

13 years ago * include/profile/unordered_map: Add missing copy constructors.
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

13 years agoPR c++/51027 - accepts alias-declaration without ';'
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

13 years agoFix entry
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

13 years agoPR debug/51032 - ICE in dbxout_type, at dbxout.c:2372
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

13 years ago PR fortran/21881
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

13 years ago PR tree-optimization/51015
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

13 years agoImplement vect_cmdline_needed properly on sparc.
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

13 years ago * include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
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

13 years ago * function.c (bb_active_p): Delete.
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

13 years agoDaily bump.
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

13 years ago PR fortran/50404
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