gcc.git
12 years agore PR tree-optimization/52558 (write introduction incorrect wrt the C++11 memory...
Aldy Hernandez [Thu, 31 May 2012 19:46:43 +0000 (19:46 +0000)]
re PR tree-optimization/52558 (write introduction incorrect wrt the C++11 memory model)

        PR tree-optimization/52558
        * cfg.c (alloc_aux_for_edge): Fix comment.
        (alloc_aux_for_edge): Remove static.
        * basic-block.h (alloc_aux_for_edge): Protoize.
        * tree-ssa-loop-im.c (execute_sm_if_changed): New.
        (execute_sm_if_changed_flag): New.
        (execute_sm_if_changed_flag_set): New.
        (execute_sm): Do not generate data races unless requested.
        (tree_ssa_lim_initialize): Call alloc_aux_for_edges.
        (tree_ssa_lim_finalize): Call free_aux_for_edges.
        * gimple.h (block_in_transaction): New.
        (gimple_in_transaction): Use block_in_transaction.

From-SVN: r188081

12 years agore PR target/51007 (Quadmath I/O doesn't work on MinGW)
Benjamin Kosnik [Thu, 31 May 2012 18:51:27 +0000 (18:51 +0000)]
re PR target/51007 (Quadmath I/O doesn't work on MinGW)

2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>

        PR libstdc++/51007
        * configure.ac: Allow gnu, gnu* variants for --enable-symvers argument.
        * configure: Regenerated.

From-SVN: r188076

12 years agoAdd new skeleton ChangeLog file generator to contrib/
Diego Novillo [Thu, 31 May 2012 18:01:15 +0000 (14:01 -0400)]
Add new skeleton ChangeLog file generator to contrib/

This script analyzes a .diff file and generates a skeleton ChangeLog
entry for it.  It tries fairly hard to find function names, so it's
important to use the -p switch with diff.

I wrote the initial code a while ago.  Cary added a bunch of smarts to
make it understand C++ and guess the function names better than the
original version.

2012-05-31   Diego Novillo  <dnovillo@google.com>
     Cary Coutant  <ccoutant@google.com>

* mklog: New.

Co-Authored-By: Cary Coutant <ccoutant@google.com>
From-SVN: r188072

12 years agore PR target/51345 ([avr] Devices with 8-bit SP need their own multilib(s))
Georg-Johann Lay [Thu, 31 May 2012 17:32:42 +0000 (17:32 +0000)]
re PR target/51345 ([avr] Devices with 8-bit SP need their own multilib(s))

PR target/51345
* config/avr/avr.opt (-msp8): Document it.
* doc/invoke.texi (AVR Options): Ditto.  And document related
built-in macros.

From-SVN: r188070

12 years agoFix compilation of build/*.o when using C++.
Diego Novillo [Thu, 31 May 2012 17:25:41 +0000 (13:25 -0400)]
Fix compilation of build/*.o when using C++.

Found this while testing the C++ conversion for vec.[ch] on the
cxx-conversion branch.  We do not build the build/*.o files with g++,
so I was getting lots of syntax errors while compiling build/vec.o.

2012-05-31   Diego Novillo  <dnovillo@google.com>

       * configure.ac (CXX_FOR_BUILD): Define and substitute.
       (BUILD_CXXFLAGS): Define and substitute.
       * Makefile.in (BUILD_CXXFLAGS): Define.
       (CXX_FOR_BUILD): Define.
       (COMPILER_FOR_BUILD): Set to CXX_FOR_BUILD if building with C++.
       (LINKER_FOR_BUILD): Likewise.
       (BUILD_COMPILERFLAGS): Set to BUILD_CXXFLAGS if building with C++.
       (BUILD_LINKERFLAGS): Likewise.
       * configure: Regenerate.

From-SVN: r188069

12 years agoMakefile.in: Fix many dependencies.
Steven Bosscher [Thu, 31 May 2012 16:43:31 +0000 (16:43 +0000)]
Makefile.in: Fix many dependencies.

* Makefile.in: Fix many dependencies.
* tree-profile.c: Don't include regs.h.
* tree-vectorizer.c: Don't include cfglayout.h.
* tree-vect-stmts.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-loop.c: Likewise.
* reg-stack.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* toplev.c: Likewise.
* varasm.c: Don't include cfglayout.h, basic-block.h,
and tree-iterator.h.
* tree-cfgcleanup.c: Don't include cfglayout.h.
* passes.c: Don't include cfglayout.h, dwarf2asm.h,
dwarf2out.h, dbxout.h, sdbout.h, and xcoffout.h.
* cgraphclones.c: Don't include plugin.h.

From-SVN: r188068

12 years agogen-avr-mmcu-texi.c: Sort MCUs.
Georg-Johann Lay [Thu, 31 May 2012 15:07:32 +0000 (15:07 +0000)]
gen-avr-mmcu-texi.c: Sort MCUs.

* config/avr/gen-avr-mmcu-texi.c: Sort MCUs.
* doc/avr-mmcu.texi: Regenerate.

From-SVN: r188067

12 years agot-avr: Correct avr-mmcu.texi dependencies.
Georg-Johann Lay [Thu, 31 May 2012 15:01:03 +0000 (15:01 +0000)]
t-avr: Correct avr-mmcu.texi dependencies.

* config/avr/t-avr: Correct avr-mmcu.texi dependencies.
(s-avr-mmcu-texi): Don't sed on gen-avr-mmcu-texi output.
* doc/avr-mmcu.texi (svn:eol-style): Set to native.

From-SVN: r188065

12 years agotree-loop-distribution.c (struct partition_s): New struct, typedef and vector type.
Richard Guenther [Thu, 31 May 2012 14:39:52 +0000 (14:39 +0000)]
tree-loop-distribution.c (struct partition_s): New struct, typedef and vector type.

2012-05-31  Richard Guenther  <rguenther@suse.de>

* tree-loop-distribution.c (struct partition_s): New struct,
typedef and vector type.
(partition_alloc, partition_free): New functions.
(generate_loops_for_partition, generate_builtin,
generate_code_for_partition, rdg_flag_uses, rdg_flag_vertex,
rdg_flag_vertex_and_dependent, rdg_flag_loop_exits,
build_rdg_partition_for_component, can_generate_builtin,
similar_memory_accesses, fuse_partitions_with_similar_memory_accesses,
rdg_build_partitions, dump_rdg_partitions, debug_rdg_partitions,
number_of_rw_in_partition, partition_contains_all_rw,
ldist_gen): Use partition_t instead of bitmap.

From-SVN: r188064

12 years agore PR fortran/53521 (Memory leak with zero-sized array constructor)
Tobias Burnus [Thu, 31 May 2012 14:28:41 +0000 (16:28 +0200)]
re PR fortran/53521 (Memory leak with zero-sized array constructor)

2012-05-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53521
        * trans.c (gfc_deallocate_scalar_with_status): Properly
        handle the case size == 0.

From-SVN: r188062

12 years agotree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): Use FOR_EACH_SSA...
Richard Guenther [Thu, 31 May 2012 13:57:15 +0000 (13:57 +0000)]
tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): Use FOR_EACH_SSA_DEF_OPERAND.

2012-05-31  Richard Guenther  <rguenther@suse.de>

* tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop):
Use FOR_EACH_SSA_DEF_OPERAND.
(generate_builtin): Adjust.
(stmt_generated_in_another_partition): Remove.
(add_scalar_computations_to_partition): Likewise.
(rdg_build_partitions): Do not call
add_scalar_computations_to_partition.

* gcc.dg/tree-ssa/ldist-pr45948-2.c: New testcase copy of
ldist-pr45948.c with disabled SCCP.

From-SVN: r188061

12 years agotree-dfa.c (get_ref_base_and_extent): Compute the offset using double ints throughout.
Eric Botcazou [Thu, 31 May 2012 13:40:03 +0000 (13:40 +0000)]
tree-dfa.c (get_ref_base_and_extent): Compute the offset using double ints throughout.

* tree-dfa.c (get_ref_base_and_extent): Compute the offset using
double ints throughout.
* tree-sra.c (build_user_friendly_ref_for_offset) <RECORD_TYPE>:
Check that the position of the field is representable as an integer.

From-SVN: r188060

12 years agore PR middle-end/48493 (ice in expand_expr_addr_expr_1 with complex types and mem_ref)
Richard Guenther [Thu, 31 May 2012 11:06:35 +0000 (11:06 +0000)]
re PR middle-end/48493 (ice in expand_expr_addr_expr_1 with complex types and mem_ref)

2012-05-31  Richard Guenther  <rguenther@suse.de>

PR middle-end/48493
* gcc.dg/torture/pr48493.c: New testcase.

From-SVN: r188058

12 years agotree-data-ref.c (dr_analyze_innermost): Properly convert the MEM_REF offset to sizetype.
Richard Guenther [Thu, 31 May 2012 11:05:51 +0000 (11:05 +0000)]
tree-data-ref.c (dr_analyze_innermost): Properly convert the MEM_REF offset to sizetype.

2012-05-31  Richard Guenther  <rguenther@suse.de>

* tree-data-ref.c (dr_analyze_innermost): Properly convert
the MEM_REF offset to sizetype.

From-SVN: r188057

12 years agotarget-supports.exp (check_effective_target_vect_char_mult): Add arm32 to targets.
Greta Yorsh [Thu, 31 May 2012 09:57:17 +0000 (10:57 +0100)]
target-supports.exp (check_effective_target_vect_char_mult): Add arm32 to targets.

gcc/testsuite

2012-05-31  Greta Yorsh  <Greta.Yorsh@arm.com>

* lib/target-supports.exp (check_effective_target_vect_char_mult): Add
arm32 to targets.
* gcc.dg/vect/slp-perm-8.c (main): Prevent vectorization
of the initialization loop.
        (dg-final): Adjust the expected number of vectorized loops depending
on vect_char_mult target selector.

From-SVN: r188054

12 years agoinvoke.texi (AVR Options): Fix typos.
Georg-Johann Lay [Thu, 31 May 2012 09:35:58 +0000 (09:35 +0000)]
invoke.texi (AVR Options): Fix typos.

* doc/invoke.texi (AVR Options): Fix typos.

From-SVN: r188053

12 years agoasm-v8.S, [...]: New tests.
Hans-Peter Nilsson [Thu, 31 May 2012 09:30:24 +0000 (09:30 +0000)]
asm-v8.S, [...]: New tests.

* gcc.target/cris/asm-v8.S, gcc.target/cris/asm-v10.S,
gcc.target/cris/asm-other.S, gcc.target/cris/inasm-v8.c,
gcc.target/cris/inasm-v10.c, gcc.target/cris/inasm-other.c:
New tests.

From-SVN: r188052

12 years agocris.h (CC1_SPEC): Pass through all -march= and -mcpu= options.
Hans-Peter Nilsson [Thu, 31 May 2012 09:28:28 +0000 (09:28 +0000)]
cris.h (CC1_SPEC): Pass through all -march= and -mcpu= options.

* config/cris/cris.h (CC1_SPEC): Pass through all -march=
and -mcpu= options.
(ASM_SPEC): Ditto, not just -march=v32, but translate non-v10,
non-v32 into --march=v0_v0_v10.

From-SVN: r188051

12 years agorevert: unix.c (tempfile_open): Pass mode to "open" for O_CREAT.
Tobias Burnus [Thu, 31 May 2012 06:10:18 +0000 (08:10 +0200)]
revert: unix.c (tempfile_open): Pass mode to "open" for O_CREAT.

2012-05-31  Tobias Burnus  <burnus@net-b.de>

        Revert:
        2012-05-16  Tobias Burnus  <burnus@net-b.de>

        * io/unix.c (tempfile_open): Pass mode to "open" for O_CREAT.

From-SVN: r188048

12 years agoira-int.h (target_ira_int): Rename x_move_cost to x_ira_register_move_cost...
Richard Sandiford [Thu, 31 May 2012 05:30:31 +0000 (05:30 +0000)]
ira-int.h (target_ira_int): Rename x_move_cost to x_ira_register_move_cost...

gcc/
* ira-int.h (target_ira_int): Rename x_move_cost to
x_ira_register_move_cost, x_may_move_in_cost to
x_ira_may_move_in_cost and x_may_move_out_cost to
x_ira_may_move_out_cost.  Delete the old fields with
those names and also x_ira_max_register_move_cost,
x_ira_max_may_move_in_cost and x_ira_max_may_move_out_cost.
(move_cost, may_move_in_cost, may_move_out_cost)
(ira_max_register_move_cost, ira_max_may_move_in_cost)
(ira_max_may_move_out_cost): Delete.
* ira.c (init_move_cost): Rename to...
(ira_init_register_move_cost): ...this, deleting the old
function with that name.  Apply above variable renamings.
Retain asserts for null fields.
(ira_init_once): Don't initialize register move costs here.
(free_register_move_costs): Apply above variable renamings.
Remove code for deleted fields.

From-SVN: r188047

12 years agoira.c (init_move_cost): Adjust choice of subclasses to match the current ira_init_reg...
Richard Sandiford [Thu, 31 May 2012 05:30:19 +0000 (05:30 +0000)]
ira.c (init_move_cost): Adjust choice of subclasses to match the current ira_init_register_move_cost choice.

gcc/
* ira.c (init_move_cost): Adjust choice of subclasses to match
the current ira_init_register_move_cost choice.  Use
ira_class_subset_p instead of reg_class_subset_p.
(ira_init_register_move_cost): Assert that move_cost,
may_move_in_cost and may_move_out_cost already hold the desired
values for their ira_* equivalents.  For the latter two,
ignore classes that can't store a register of the given mode.

From-SVN: r188046

12 years agoira.c (setup_allocno_and_important_classes): Use ira_class_hard_regs_num to check...
Richard Sandiford [Thu, 31 May 2012 05:30:07 +0000 (05:30 +0000)]
ira.c (setup_allocno_and_important_classes): Use ira_class_hard_regs_num to check whether a class has any allocatable registers.

gcc/
* ira.c (setup_allocno_and_important_classes): Use
ira_class_hard_regs_num to check whether a class has any
allocatable registers.
(ira_init_register_move_cost): Likewise.

From-SVN: r188045

12 years agoira.c (init_move_cost): Adjust local variable names to match file conventions.
Richard Sandiford [Thu, 31 May 2012 05:29:57 +0000 (05:29 +0000)]
ira.c (init_move_cost): Adjust local variable names to match file conventions.

gcc/
* ira.c (init_move_cost): Adjust local variable names to match
file conventions.  Use ira_assert instead of gcc_assert.

From-SVN: r188044

12 years agoregs.h (move_table, [...]): Move these definitions and associated target_globals...
Richard Sandiford [Thu, 31 May 2012 05:29:47 +0000 (05:29 +0000)]
regs.h (move_table, [...]): Move these definitions and associated target_globals fields to...

gcc/
* regs.h (move_table, move_cost, may_move_in_cost, may_move_out_cost):
Move these definitions and associated target_globals fields to...
* ira-int.h: ...here.
* rtl.h (init_move_cost): Delete.
* reginfo.c (last_mode_for_init_move_cost, init_move_cost): Move to...
* ira.c: ...here, making the latter static.

From-SVN: r188043

12 years agoira-costs.c (copy_cost): Use ira_init_register_move_cost_if_necessary and ira_registe...
Richard Sandiford [Thu, 31 May 2012 05:29:36 +0000 (05:29 +0000)]
ira-costs.c (copy_cost): Use ira_init_register_move_cost_if_necessary and ira_register_move_cost instead...

gcc/
* ira-costs.c (copy_cost): Use ira_init_register_move_cost_if_necessary
and ira_register_move_cost instead of init_move_cost and move_cost.

From-SVN: r188042

12 years agoira.h (target_ira): Delete x_ira_available_class_regs.
Richard Sandiford [Thu, 31 May 2012 05:27:03 +0000 (05:27 +0000)]
ira.h (target_ira): Delete x_ira_available_class_regs.

gcc/
* ira.h (target_ira): Delete x_ira_available_class_regs.
(ira_available_class_regs): Delete.
* ira.c (setup_available_class_regs): Delete.
(setup_alloc_classes): Don't call it.
(setup_pressure_classes): Use ira_class_hard_regs_num instead of
ira_available_class_regs.
* haifa-sched.c (print_curr_reg_pressure, setup_insn_reg_pressure_info)
(model_spill_cost): Likewise.
* ira-build.c (low_pressure_loop_node_p): Likewise.
* ira-color.c (color_pass): Likewise.
* ira-emit.c (change_loop): Likewise.
* ira-lives.c (inc_register_pressure, dec_register_pressure)
(single_reg_class, ira_implicitly_set_insn_hard_regs)
(process_bb_node_lives): Likewise.
* loop-invariant.c (gain_for_invariant): Likewise.

From-SVN: r188041

12 years agoDaily bump.
GCC Administrator [Thu, 31 May 2012 00:17:38 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r188039

12 years agocompiler: Don't crash for invalid constant types for && or ||.
Ian Lance Taylor [Wed, 30 May 2012 23:04:47 +0000 (23:04 +0000)]
compiler: Don't crash for invalid constant types for && or ||.

From-SVN: r188033

12 years agore PR target/52999 (ICE, segmentation fault in c_tree_printer)
John David Anglin [Wed, 30 May 2012 22:54:20 +0000 (22:54 +0000)]
re PR target/52999 (ICE, segmentation fault in c_tree_printer)

2012-05-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

PR target/52999
* config/pa/pa.c (TARGET_SECTION_TYPE_FLAGS): Define.
(pa_section_type_flags): New.
(pa_legitimate_constant_p): Revert previous change.

From-SVN: r188031

12 years agore PR c++/53356 (ICE in verify_gimple_stmt, at tree-cfg.c:4258)
Jason Merrill [Wed, 30 May 2012 22:07:23 +0000 (18:07 -0400)]
re PR c++/53356 (ICE in verify_gimple_stmt, at tree-cfg.c:4258)

PR c++/53356
* tree.c (stabilize_init): Handle stabilizing a TARGET_EXPR
representing a bitwise copy of a glvalue.

From-SVN: r188029

12 years ago* tree.c (stabilize_expr): Tweak logic.
Jason Merrill [Wed, 30 May 2012 22:07:14 +0000 (18:07 -0400)]
* tree.c (stabilize_expr): Tweak logic.

From-SVN: r188028

12 years ago* ira.c (allocate_initial_values): Make static.
Steven Bosscher [Wed, 30 May 2012 17:43:35 +0000 (17:43 +0000)]
* ira.c (allocate_initial_values): Make static.

From-SVN: r188025

12 years agore PR c/53502 (Bootstrap broken with --disable-build-poststage1-with-cxx)
Tobias Burnus [Wed, 30 May 2012 16:44:42 +0000 (18:44 +0200)]
re PR c/53502 (Bootstrap broken with --disable-build-poststage1-with-cxx)

2012-05-30  Tobias Burnus  <burnus@net-b.de>

        PR c/53502
        * decl.c (match_attr_spec): Remove "typedef".

From-SVN: r188024

12 years agoi386.c (legitimize_tls_address): Generate tls_initial_exec_64_sun only when !TARGET_X32.
Uros Bizjak [Wed, 30 May 2012 14:52:38 +0000 (16:52 +0200)]
i386.c (legitimize_tls_address): Generate tls_initial_exec_64_sun only when !TARGET_X32.

* config/i386/i386.c (legitimize_tls_address) <TLS_MODEL_INITIAL_EXEC>:
Generate tls_initial_exec_64_sun only when !TARGET_X32.

From-SVN: r188022

12 years agore PR c++/53356 (ICE in verify_gimple_stmt, at tree-cfg.c:4258)
Jason Merrill [Wed, 30 May 2012 14:50:44 +0000 (10:50 -0400)]
re PR c++/53356 (ICE in verify_gimple_stmt, at tree-cfg.c:4258)

PR c++/53356
* tree.c (stabilize_init): Side effects make the init unstable.

From-SVN: r188019

12 years agore PR tree-optimization/53501 (scev introduces signed overflow)
Richard Guenther [Wed, 30 May 2012 12:29:26 +0000 (12:29 +0000)]
re PR tree-optimization/53501 (scev introduces signed overflow)

2012-05-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/53501
* fold-const.c (fold_binary_loc): Make sure to call
fold_plusminus_mult_expr with the original sign of operands.

* gcc.dg/torture/pr53501.c: New testcase.
* c-c++-common/restrict-2.c: Adjust.

From-SVN: r188009

12 years agopowerpc.exp: Load torture-options.exp, call torture-finish.
Alan Modra [Wed, 30 May 2012 11:41:23 +0000 (21:11 +0930)]
powerpc.exp: Load torture-options.exp, call torture-finish.

* gcc.target/powerpc/powerpc.exp: Load torture-options.exp, call
torture-finish.

From-SVN: r188008

12 years agoMakefile.in: Fix many dependencies.
Steven Bosscher [Wed, 30 May 2012 10:55:53 +0000 (10:55 +0000)]
Makefile.in: Fix many dependencies.

* Makefile.in: Fix many dependencies.
(DWARF2_H): Depend on dwarf2.def.
(RTL_ERROR_H): Depend on rtl-error.h.
(TREE_PRETTY_PRINT_H, GIMPLE_PRETTY_PRINT_H): New.  Replace
all gimple-pretty-print.h and tree-pretty-print.h references.

From-SVN: r188007

12 years agosimplify-rtx.c (simplify_binary_operation_1): Optimize shuffle of concatenations.
Marc Glisse [Wed, 30 May 2012 10:48:06 +0000 (12:48 +0200)]
simplify-rtx.c (simplify_binary_operation_1): Optimize shuffle of concatenations.

2012-05-30  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* simplify-rtx.c (simplify_binary_operation_1): Optimize shuffle of
concatenations.

gcc/testsuite/
* gcc.target/i386/shuf-concat.c: New test.

From-SVN: r188006

12 years agore PR bootstrap/53522 (Bootstrap is broken for x86_64-apple-darwin10 at r187977)
Richard Guenther [Wed, 30 May 2012 09:14:27 +0000 (09:14 +0000)]
re PR bootstrap/53522 (Bootstrap is broken for x86_64-apple-darwin10 at r187977)

2012-05-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/53522
* tree-emutls.c (gen_emutls_addr): Do not add globals to
referenced-vars.

From-SVN: r188005

12 years agoexplow.c (probe_stack_range): Restore simple control flow and stop again when...
Eric Botcazou [Wed, 30 May 2012 08:52:36 +0000 (08:52 +0000)]
explow.c (probe_stack_range): Restore simple control flow and stop again when...

* explow.c (probe_stack_range): Restore simple control flow and stop
again when the probe cannot be generated if HAVE_check_stack.

From-SVN: r188003

12 years agore PR rtl-optimization/53519 (ice in do_SUBST, at combine.c:707)
Jakub Jelinek [Wed, 30 May 2012 06:53:46 +0000 (08:53 +0200)]
re PR rtl-optimization/53519 (ice in do_SUBST, at combine.c:707)

PR rtl-optimization/53519
* combine.c (simplify_shift_const_1) <case NOT>: Use constm1_rtx
instead of GEN_INT (GET_MODE_MASK (mode)) as second operand of XOR.

* gcc.c-torture/compile/pr53519.c: New test.

From-SVN: r188001

12 years agodecl.c: Fix comment typos.
Tobias Burnus [Wed, 30 May 2012 06:26:09 +0000 (08:26 +0200)]
decl.c: Fix comment typos.

2012-05-30  Tobias Burnus  <burnus@net-b.de>

        * decl.c: Fix comment typos.
        * expr.c: Ditto.
        * frontend-passes.c: Ditto.
        * match.c: Ditto.
        * resolve.c: Ditto.
        * trans-array.c: Ditto.
        * trans-common.c: Ditto.
        * trans-intrinsic.c: Ditto.
        * trans-types.c: Ditto.

2012-05-30  Tobias Burnus  <burnus@net-b.de>

        * io/io.h: Fix comment typos.
        * io/list_read.c: Ditto.

From-SVN: r188000

12 years agoarm.c (arm_evpc_neon_vrev): Adjust off by one error.
Ramana Radhakrishnan [Wed, 30 May 2012 01:40:32 +0000 (01:40 +0000)]
arm.c (arm_evpc_neon_vrev): Adjust off by one error.

2012-05-30  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

* config/arm/arm.c (arm_evpc_neon_vrev): Adjust off by one error.

2012-05-30  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

* gcc.target/arm/neon-vrev.c: New.

From-SVN: r187999

12 years agoDaily bump.
GCC Administrator [Wed, 30 May 2012 00:17:54 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r187998

12 years agore PR debug/53453 (darwin linker expects both AT_name and AT_comp_dir debug notes)
Jack Howarth [Tue, 29 May 2012 23:44:09 +0000 (23:44 +0000)]
re PR debug/53453 (darwin linker expects both AT_name and AT_comp_dir debug notes)

2012-05-29  Jack Howarth  <howarth@bromo.med.uc.edu>

PR debug/53453
* doc/tm.texi: Update.
* doc/tm.texi.in (SDB and DWARF) <TARGET_FORCE_AT_COMP_DIR>: Add @hook.
* target.def (force_at_comp_dir): New hook.
* config/darwin.h (TARGET_FORCE_AT_COMP_DIR): Define.
* dwarf2out.c (dwarf2out_finish): Check targetm.force_at_comp_dir.

From-SVN: r187994

12 years agoOops, wrong changelog, this is the right one:
Jack Howarth [Tue, 29 May 2012 23:24:33 +0000 (23:24 +0000)]
Oops, wrong changelog, this is the right one:

2012-05-29  Jack Howarth  <howarth@bromo.med.uc.edu>

    * config/darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when
    Darwin >= 10.
    (DARWIN_DYLIB1_SPEC): Do not use -ldylib1.10.5.o when Darwin >= 10.
    (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10.

From-SVN: r187993

12 years agodarwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when Darwin >= 10.
Jack Howarth [Tue, 29 May 2012 23:20:33 +0000 (23:20 +0000)]
darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when Darwin >= 10.

2012-05-29  Iain Sandoe  <iains@gcc.gnu.org>

    * config/darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when
    Darwin >= 10.
    (DARWIN_DYLIB1_SPEC): Do not use -ldylib1.10.5.o when Darwin >= 10.
    (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10.

From-SVN: r187992

12 years agore PR target/51340 (SH Target: Make -mfused-madd enabled by default)
Oleg Endo [Tue, 29 May 2012 20:55:58 +0000 (20:55 +0000)]
re PR target/51340 (SH Target: Make -mfused-madd enabled by default)

PR target/51340
* config/sh/sh.c (sh_option_override): Set TARGET_FMAC if
flag_unsafe_math_optimizations is set.
* doc/invoke.texi (SH Options): Add -mno-fused-madd description.
Update description of -mfused-madd.

PR target/51340
* gcc.target/sh/pr51340-1.c: New.
* gcc.target/sh/pr51340-2.c: New.
* gcc.target/sh/pr51340-3.c: New.

From-SVN: r187988

12 years agore PR target/52941 (SH Target: Add support for movco.l / movli.l atomics on SH4A)
Oleg Endo [Tue, 29 May 2012 20:26:41 +0000 (20:26 +0000)]
re PR target/52941 (SH Target: Add support for movco.l / movli.l atomics on SH4A)

PR target/52941
* config/sh/predicates.md (atomic_arith_operand,
atomic_logical_operand): New predicates.
* config/sh/sh.c (sh_option_override): Check atomic options.
* config/sh/sh.h (TARGET_ANY_ATOMIC, UNSUPPORTED_ATOMIC_OPTIONS,
UNSUPPORTED_HARD_ATOMIC_CPU): New macros.
(DRIVER_SELF_SPECS): Use UNSUPPORTED_ATOMIC_OPTIONS and
UNSUPPORTED_HARD_ATOMIC_CPU.
* config/sh/sync.md: Update description comments.
(I12): New mode iterator.
(fetchop_predicate, fetchop_constraint): New code attributes.
(atomic_compare_and_swapsi_hard, atomic_compare_and_swap<mode>_hard,
atomic_exchangesi_hard, atomic_exchange<mode>_hard,
atomic_fetch_<fetchop_name>si_hard,
atomic_fetch_<fetchop_name><mode>_hard,
atomic_fetch_nandsi_hard, atomic_fetch_nand<mode>_hard,
atomic_<fetchop_name>_fetchsi_hard,
atomic_<fetchop_name>_fetch<mode>_hard,
atomic_nand_fetchsi_hard, atomic_nand_fetch<mode>_hard,
atomic_test_and_set_hard): New insns.
(atomic_compare_and_swap<mode>_soft, atomic_exchange<mode>_soft,
atomic_fetch_<fetchop_name><mode>_soft, atomic_fetch_nand<mode>_soft,
atomic_<fetchop_name>_fetch<mode>_soft, atomic_nand_fetch<mode>_soft,
atomic_test_and_set_soft): Use same formatting for the first line of
the asm block as in new insns above.
(atomic_compare_and_swap<mode>, atomic_exchange<mode>,
atomic_fetch_<fetchop_name><mode>, atomic_<fetchop_name>_fetch<mode>,
atomic_test_and_set): Integrate new *_hard insns into expanders.
* config/sh/sh.opt (mhard-atomic): New option.
* doc/invoke.texi (SH Options): Document it.

From-SVN: r187987

12 years agoMAINTAINERS (Write After Approval): Add myself.
Edmar Wienskoski [Tue, 29 May 2012 20:18:29 +0000 (20:18 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2012-05-29  Edmar Wienskoski  <edmar@freescale.com>

*  MAINTAINERS (Write After Approval): Add myself.

From-SVN: r187986

12 years ago2012-05-29 François Dumont <fdumont@gcc.gnu.org>
François Dumont [Tue, 29 May 2012 19:29:29 +0000 (19:29 +0000)]
2012-05-29  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
(__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
with iterator returning rvalue.
* testsuite/25_algorithms/stable_sort/3.cc: New.

From-SVN: r187985

12 years agoconfigure.ac: Use GCC_AC_FUNC_MMAP_BLACKLIST instead of gcc_AC_FUNC_MMAP_BLACKLIST.
Thomas Schwinge [Tue, 29 May 2012 19:28:57 +0000 (21:28 +0200)]
configure.ac: Use GCC_AC_FUNC_MMAP_BLACKLIST instead of gcc_AC_FUNC_MMAP_BLACKLIST.

fixincludes/
* configure.ac: Use GCC_AC_FUNC_MMAP_BLACKLIST instead of
gcc_AC_FUNC_MMAP_BLACKLIST.
* Makefile.in (ACLOCAL_AMFLAGS): Don't include ../gcc.
* aclocal.m4: Regenerate.
* configure: Regenerate.

From-SVN: r187984

12 years ago* lto-plugin.c: Fix typo.
Joseph Myers [Tue, 29 May 2012 19:21:25 +0000 (20:21 +0100)]
* lto-plugin.c: Fix typo.

From-SVN: r187982

12 years ago* mf-impl.h: Fix typo.
Joseph Myers [Tue, 29 May 2012 19:21:05 +0000 (20:21 +0100)]
* mf-impl.h: Fix typo.

From-SVN: r187981

12 years ago* c-common.c: Fix typo.
Joseph Myers [Tue, 29 May 2012 19:20:43 +0000 (20:20 +0100)]
* c-common.c: Fix typo.

From-SVN: r187980

12 years agoc-decl.c (c_push_function_context): Always create a new language function.
Meador Inge [Tue, 29 May 2012 19:07:04 +0000 (19:07 +0000)]
c-decl.c (c_push_function_context): Always create a new language function.

2012-05-29  Meador Inge  <meadori@codesourcery.com>

* c-decl.c (c_push_function_context): Always create a new language
function.
(c_pop_function_context): Clear the language function created in
c_push_function_context.

From-SVN: r187979

12 years agoev6.md: (define_bypass "ev6_fmul,ev6_fadd"): New.
Matt Turner [Tue, 29 May 2012 18:52:25 +0000 (18:52 +0000)]
ev6.md: (define_bypass "ev6_fmul,ev6_fadd"): New.

        * config/alpha/ev6.md: (define_bypass "ev6_fmul,ev6_fadd"): New.
        (define_bypass "ev6_fcmov"): New.

From-SVN: r187978

12 years agomt-sde: Fix typos.
Joseph Myers [Tue, 29 May 2012 15:54:57 +0000 (16:54 +0100)]
mt-sde: Fix typos.

* mt-sde: Fix typos.
* stdint.m4: Fix typos.
* tcl.m4: Fix typos.

From-SVN: r187971

12 years agointegrate.c: Remove.
Steven Bosscher [Tue, 29 May 2012 15:36:18 +0000 (15:36 +0000)]
integrate.c: Remove.

* integrate.c: Remove.
* integrate.h: Remove.
* Makefile.in: Remove make rules for integrate.c and INTEGRATE_H.
* config/arm/t-arm: Remove INTEGRATE_H dependency for target files.
* config/rs6000/t-rs6000: Likewise
* config/spu/t-spu-elf: Likewise.
* function.h (get_hard_reg_initial_val, has_hard_reg_initial_val,
get_hard_reg_initial_reg, emit_initial_value_sets): Move prototypes
from integrate.h to here.
(initial_value_entry): New prototype.
* reload.h (allocate_initial_values): Remove prototype.
* tree.h (set_decl_abstract_flags, set_decl_origin_self): Likewise.
* cse.c (fixed_base_plus_p): Don't handle virtual registers for
integrate.c.
* dwarf2out.c (set_decl_origin_self, set_block_origin_self,
set_decl_abstract_flags, set_block_abstract_flags): Move from
integrate.c to here, the only user.
* expmed.c (extract_fixed_bit_field): Remove outdated comment
about integrate.c.
* function.c: Don't include integrate.h.
(struct initial_value_pair, struct initial_value_struct,
get_hard_reg_initial_val, has_hard_reg_initial_val,
get_hard_reg_initial_reg, emit_initial_value_sets): Move from
integrate.c to here.
(initial_value_entry): New function.
* genemit.c (main): Don't print integrate.h include line.
* ira.c: Don't include integrate.h.
(allocate_initial_values): Move from integrate.c to here.
(ira): Update allocate_initial_values call.
* tree-inline.c: Don't include integrate.h.
(function_attribute_inlinable_p): Moved from integrate.c to here.
* cfgexpand.c: Don't include integrate.h.
* except.c: Likewise.
* langhooks.c: Likewise.
* passes.c: Likewise.
* toplev.c: Likewise.
* config/frv/frv.c: Likewise.
* config/pa/pa.c: Likewise.
* config/spu/spu.c: Likewise.
* config/epiphany/epiphany.c: Likewise.
* config/mep/mep.c: Likewise.
* config/score/score.c: Likewise.
* config/picochip/picochip.c: Likewise.
* config/sh/sh.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/microblaze/microblaze.c: Likewise.
* config/mips/mips.c: Likewise.
* config/v850/v850.c: Likewise.
* config/mmix/mmix.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/arm/arm.c: Likewise.
* config/s390/s390.c: Likewise.
* config/m32r/m32r.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/c6x/c6x.c: Include function.h instead of integrate.h.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.

From-SVN: r187969

12 years agot-avr (s-avr-mmcu-texi): Call gen-avr-mmcu-texi$(build_exeext) via ./ and don't assum...
Georg-Johann Lay [Tue, 29 May 2012 15:21:34 +0000 (15:21 +0000)]
t-avr (s-avr-mmcu-texi): Call gen-avr-mmcu-texi$(build_exeext) via ./ and don't assume . is in PATH.

* config/avr/t-avr (s-avr-mmcu-texi): Call
gen-avr-mmcu-texi$(build_exeext) via ./ and don't assume . is in PATH.

From-SVN: r187968

12 years agoieee754-df.S: Fix typos.
Joseph Myers [Tue, 29 May 2012 14:54:22 +0000 (15:54 +0100)]
ieee754-df.S: Fix typos.

* config/arm/ieee754-df.S: Fix typos.
* config/arm/ieee754-sf.S: Fix typos.
* config/c6x/libunwind.S: Fix typos.
* config/epiphany/udivsi3-float.c: Fix typos.
* config/microblaze/muldi3_hard.S: Fix typos.
* config/picochip/adddi3.S: Fix typos.
* config/picochip/ashlsi3.S: Fix typos.
* config/picochip/ashrsi3.S: Fix typos.
* config/picochip/clzsi2.S: Fix typos.
* config/picochip/cmpsi2.S: Fix typos.
* config/picochip/divmod15.S: Fix typos.
* config/picochip/divmodhi4.S: Fix typos.
* config/picochip/divmodsi4.S: Fix typos.
* config/picochip/longjmp.S: Fix typos.
* config/picochip/lshrsi3.S: Fix typos.
* config/picochip/parityhi2.S: Fix typos.
* config/picochip/popcounthi2.S: Fix typos.
* config/picochip/setjmp.S: Fix typos.
* config/picochip/subdi3.S: Fix typos.
* config/picochip/ucmpsi2.S: Fix typos.
* config/picochip/udivmodhi4.S: Fix typos.
* config/picochip/udivmodsi4.S: Fix typos.
* config/spu/divv2df3.c: Fix typos.
* config/spu/mfc_multi_tag_release.c: Fix typos.
* config/spu/mfc_tag_release.c: Fix typos.
* configure.ac: Fix typos.
* configure: Regenerate.

From-SVN: r187967

12 years agodirectives.c: Fix typos.
Joseph Myers [Tue, 29 May 2012 14:53:50 +0000 (15:53 +0100)]
directives.c: Fix typos.

* directives.c: Fix typos.
* include/line-map.h: Fix typos.
* line-map.c: Fix typos.
* macro.c: Fix typos.

From-SVN: r187966

12 years agortl.h (assign_stack_temp, [...]): Remove 'keep' argument.
Michael Matz [Tue, 29 May 2012 14:44:47 +0000 (14:44 +0000)]
rtl.h (assign_stack_temp, [...]): Remove 'keep' argument.

* rtl.h (assign_stack_temp, assign_stack_temp_for_type,
assign_temp): Remove 'keep' argument.
(mark_temp_addr_taken): Remove prototype.
* tree.h (expand_decl): Remove prototype.
* function.c (struct temp_slot): Remove addr_taken and keep
member.
(assign_stack_temp_for_type) Don't initialize above, remove
keep argument.
(assign_stack_temp, assign_temp): Remove keep argument.
(mark_temp_addr_taken): Remove.
(preserve_temp_slots): Remove handling of addr_taken and keep
members.
(free_temp_slots): Ditto.
* expr.c (expand_expr_real_1 <COMPOUND_LITERAL_EXPR>): Remove
dead code.
* stmt.c (expand_asm_operands): Remove dead code.
(expand_decl): Remove.
* c-decl.c (finish_struct): Don't call expand_decl.
* builtins.c (expand_builtin_cexpi): Adjust calls to assign_temp
and assign_stack_temp.
* calls.c (save_fixed_argument_area, initialize_argument_information,
expand_call, emit_library_call_value_1, store_one_arg): Ditto.
* expmed.c (extract_bit_field_1): Ditto.
* expr.c (emit_group_load_1, emit_group_store,
copy_blkmode_from_reg, emit_push_insn, expand_assignment,
store_field, expand_constructor, expand_cond_expr_using_cmove,
expand_expr_real_2, expand_expr_real_1): Ditto.
* stmt.c (expand_asm_operands, expand_return): Ditto.

* function.c (pop_temp_slots): Call free_temp_slots.
* calls.c (store_one_arg): Don't call preserve_temp_slots or
free_temp_slots.
* expr.c (expand_assignment): Don't call free_temp_slots.

* config/arm/arm.c (neon_expand_vector_init): Ditto.
* config/i386/i386.c (ix86_expand_vector_set): Ditto.
(ix86_expand_vector_extract): Ditto.
* config/ia64/ia64.c (spill_xfmode_rfmode_operand,
ia64_expand_movxf_movrf): Ditto.
* config/mips/mips.c (mips_expand_vi_general): Ditto.
* config/mmix/mmix.md (floatdisf2, floatunsdisf2, truncdfsf2,
extendsfdf2): Ditto.
* config/rs6000/rs6000.c (rs6000_expand_vector_init,
rs6000_expand_vector_set, rs6000_expand_vector_extract,
rs6000_allocate_stack_temp): Ditto.
* config/rs6000/rs6000.md (fix_trunctfsi2_fprs): Ditto.
* config/sparc/sparc.c (emit_soft_tfmode_libcall,
sparc_emit_float_lib_cmp, sparc_emit_float_lib_cmp,
sparc_expand_vector_init): Ditto.

From-SVN: r187965

12 years agoexpr.c (expand_expr_real_1 <normal_inner_ref>): Don't allocate a kept temp.
Michael Matz [Tue, 29 May 2012 14:41:53 +0000 (14:41 +0000)]
expr.c (expand_expr_real_1 <normal_inner_ref>): Don't allocate a kept temp.

* expr.c (expand_expr_real_1 <normal_inner_ref>): Don't allocate
a kept temp.
(expand_expr_real_1 <COMPOUND_LITERAL_EXPR>): Make unreachable.
* gimple-fold.c (canonicalize_constructor_val): Canonicalize
COMPOUND_LITERAL_EXPR.
* function.c (expand_function_start): Don't call expand_decl,
instead assert that we have RTL assigned.
* tree-ssa-live.c (remove_unused_locals): Clear
nonlocal_goto_save_area if its backing variable is removed.
* stmt.c (expand_asm_operands): Remove handling of non-lvalues
as mem inputs.
(expand_decl): Assert that this does nothing.
* calls.c (expand_call): Don't call mark_temp_addr_taken.

* c-tree.h (c_expand_decl): Remove prototype.

c-family/
* c-common.h (c_expand_decl): Remove prototype.

ada/
* gcc-interface/utils.c (create_var_decl_1): Don't call expand_decl.

From-SVN: r187962

12 years agore PR tree-optimization/53516 (Vectorization and memset recognition miscompile bitfie...
Richard Guenther [Tue, 29 May 2012 14:40:16 +0000 (14:40 +0000)]
re PR tree-optimization/53516 (Vectorization and memset recognition miscompile bitfield stores)

2012-05-29  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53516
* tree-data-ref.c (stmt_with_adjacent_zero_store_dr_p): Reject
bitfield accesses.
* tree-vect-data-refs.c (vect_analyze_data_refs): Likewise.

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

From-SVN: r187961

12 years agoLANGUAGES: Fix typos.
Joseph Myers [Tue, 29 May 2012 14:14:06 +0000 (15:14 +0100)]
LANGUAGES: Fix typos.

* LANGUAGES: Fix typos.
* Makefile.in: Fix typos.
* alias.c: Fix typos.
* auto-inc-dec.c: Fix typos.
* bb-reorder.c: Fix typos.
* cfgcleanup.c: Fix typos.
* cgraph.c: Fix typos.
* cgraph.h: Fix typos.
* cgraphunit.c: Fix typos.
* collect2-aix.h: Fix typos.
* collect2.c: Fix typos.
* compare-elim.c: Fix typos.
* config/alpha/vms.h: Fix typos.
* config/arm/README-interworking: Fix typos.
* config/arm/arm.c: Fix typos.
* config/arm/iterators.md: Fix typos.
* config/arm/vxworks.h: Fix typos.
* config/avr/avr.c: Fix typos.
* config/avr/avr.h: Fix typos.
* config/avr/avr.md: Fix typos.
* config/avr/builtins.def: Fix typos.
* config/c6x/c6x.c: Fix typos.
* config/cr16/cr16.c: Fix typos.
* config/cr16/cr16.md: Fix typos.
* config/cris/cris.md: Fix typos.
* config/darwin.c: Fix typos.
* config/darwin.opt: Fix typos.
* config/i386/i386-c.c: Fix typos.
* config/i386/i386.c: Fix typos.
* config/ia64/ia64.c: Fix typos.
* config/m68k/cf.md: Fix typos.
* config/mep/mep.c: Fix typos.
* config/microblaze/microblaze.c: Fix typos.
* config/microblaze/microblaze.h: Fix typos.
* config/mn10300/mn10300.c: Fix typos.
* config/mn10300/mn10300.md: Fix typos.
* config/pa/pa.c: Fix typos.
* config/picochip/picochip.h: Fix typos.
* config/rs6000/a2.md: Fix typos.
* config/rs6000/rs6000.c: Fix typos.
* config/rs6000/vector.md: Fix typos.
* config/rx/rx.md: Fix typos.
* config/rx/rx.opt: Fix typos.
* config/s390/2097.md: Fix typos.
* config/s390/s390.c: Fix typos.
* config/s390/s390.h: Fix typos.
* config/sh/sh.c: Fix typos.
* config/sh/sh.md: Fix typos.
* config/sparc/sync.md: Fix typos.
* config/spu/spu.c: Fix typos.
* config/spu/spu.md: Fix typos.
* config/vms/vms.c: Fix typos.
* config/vxworks-dummy.h: Fix typos.
* config/vxworks.h: Fix typos.
* cselib.c: Fix typos.
* df-scan.c: Fix typos.
* df.h: Fix typos.
* doc/extend.texi: Fix typos.
* doc/install.texi: Fix typos.
* doc/invoke.texi: Fix typos.
* doc/md.texi: Fix typos.
* doc/plugins.texi: Fix typos.
* doc/rtl.texi: Fix typos.
* dse.c: Fix typos.
* dwarf2asm.c: Fix typos.
* dwarf2out.c: Fix typos.
* except.h: Fix typos.
* expr.c: Fix typos.
* fold-const.c: Fix typos.
* gcc.c: Fix typos.
* gcse.c: Fix typos.
* genautomata.c: Fix typos.
* gengtype-state.c: Fix typos.
* gengtype.c: Fix typos.
* genhooks.c: Fix typos.
* gimple-fold.c: Fix typos.
* gimple-pretty-print.c: Fix typos.
* gimple.c: Fix typos.
* gimple.h: Fix typos.
* gimplify.c: Fix typos.
* graphite-interchange.c: Fix typos.
* graphite-sese-to-poly.c: Fix typos.
* ifcvt.c: Fix typos.
* input.c: Fix typos.
* ipa-cp.c: Fix typos.
* ipa-inline-analysis.c: Fix typos.
* ipa-inline-transform.c: Fix typos.
* ipa-inline.c: Fix typos.
* ipa-pure-const.c: Fix typos.
* ipa-ref.h: Fix typos.
* ipa-reference.c: Fix typos.
* ipa-utils.c: Fix typos.
* ipa.c: Fix typos.
* ira-emit.c: Fix typos.
* ira-lives.c: Fix typos.
* lto-streamer.c: Fix typos.
* lto-streamer.h: Fix typos.
* lto-wrapper.c: Fix typos.
* mcf.c: Fix typos.
* mode-switching.c: Fix typos.
* modulo-sched.c: Fix typos.
* plugin.c: Fix typos.
* postreload.c: Fix typos.
* sched-deps.c: Fix typos.
* sel-sched-ir.c: Fix typos.
* sel-sched-ir.h: Fix typos.
* sel-sched.c: Fix typos.
* sese.c: Fix typos.
* stor-layout.c: Fix typos.
* target-hooks-macros.h: Fix typos.
* target.def: Fix typos.
* trans-mem.c: Fix typos.
* tree-eh.c: Fix typos.
* tree-predcom.c: Fix typos.
* tree-sra.c: Fix typos.
* tree-ssa-address.c: Fix typos.
* tree-ssa-loop-ivopts.c: Fix typos.
* tree-ssa-loop-niter.c: Fix typos.
* tree-ssa-math-opts.c: Fix typos.
* tree-ssa-pre.c: Fix typos.
* tree-ssa-propagate.c: Fix typos.
* tree-ssa-reassoc.c: Fix typos.
* tree-ssa-sccvn.c: Fix typos.
* tree-ssa-ter.c: Fix typos.
* tree-ssa-uninit.c: Fix typos.
* tree-ssanames.c: Fix typos.
* tree-vect-generic.c: Fix typos.
* tree-vect-slp.c: Fix typos.
* tree.c: Fix typos.
* tree.h: Fix typos.
* varasm.c: Fix typos.
* varpool.c: Fix typos.

From-SVN: r187959

12 years ago* doc/include/texinfo.tex: Update to version 2012-05-16.16.
Joseph Myers [Tue, 29 May 2012 13:39:54 +0000 (14:39 +0100)]
* doc/include/texinfo.tex: Update to version 2012-05-16.16.

From-SVN: r187956

12 years agotree-dfa.c (find_vars_r): Do not call add_referenced_vars for globals.
Richard Guenther [Tue, 29 May 2012 12:48:34 +0000 (12:48 +0000)]
tree-dfa.c (find_vars_r): Do not call add_referenced_vars for globals.

2012-05-29  Richard Guenther  <rguenther@suse.de>

* tree-dfa.c (find_vars_r): Do not call add_referenced_vars
for globals.
(add_referenced_var_1): Re-organize.  Assert we are not
called for globals.
(remove_referenced_var): Likewise.
* varpool.c (add_new_static_var): Use create_tmp_var_raw.
* tree-mudflap.c (execute_mudflap_function_ops): Do not
call add_referenced_var on globals.
* matrix-reorg.c (transform_access_sites): Likewise.

From-SVN: r187955

12 years agoalias.c (reg_known_value): Make this a VEC.
Steven Bosscher [Tue, 29 May 2012 11:37:21 +0000 (11:37 +0000)]
alias.c (reg_known_value): Make this a VEC.

* alias.c (reg_known_value): Make this a VEC.
(reg_known_equiv_p): Make this an sbitmap.
(reg_known_value_size): Remove.
(get_reg_known_value, set_reg_known_value, get_reg_known_equiv_p,
set_reg_known_equiv_p): Update for reg_known_value and
reg_known_value_size data structure change.
(init_alias_analysis, end_alias_analysis): Likewise.

From-SVN: r187953

12 years agore PR middle-end/53510 (OOM while compile some code)
Jakub Jelinek [Tue, 29 May 2012 11:34:38 +0000 (13:34 +0200)]
re PR middle-end/53510 (OOM while compile some code)

PR middle-end/53510
* input.c (read_line): Use XRESIZEVEC instead of XNEWVEC
to avoid leaking memory.  No need to handle memory allocation
failure.  Double string_len on each reallocation instead of
adding 2.
* gcov.c (read_line): Likewise.

From-SVN: r187952

12 years agoc.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
Manuel López-Ibáñez [Tue, 29 May 2012 10:09:51 +0000 (10:09 +0000)]
c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).

2012-05-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
* c-opts.c (c_common_handle_option): Remove code handling
warn_missing_braces.

From-SVN: r187948

12 years agoPR bootstrap/53459 - unused local typedef when building on altivec
Dodji Seketeli [Tue, 29 May 2012 09:42:39 +0000 (09:42 +0000)]
PR bootstrap/53459 - unused local typedef when building on altivec

PR bootstrap/53459
* lex.c (search_line_fast): Avoid unused local typedefs to simulate
a static assertion.

From-SVN: r187947

12 years agoRevert "PR bootstrap/53459 - unused local typedef when building on altivec"
Dodji Seketeli [Tue, 29 May 2012 09:42:28 +0000 (11:42 +0200)]
Revert "PR bootstrap/53459 - unused local typedef when building on altivec"

This reverts commit r187853

From-SVN: r187946

12 years agoPR preprocessor/53229 - Fix diagnostics location when pasting tokens
Dodji Seketeli [Tue, 29 May 2012 09:36:29 +0000 (09:36 +0000)]
PR preprocessor/53229 - Fix diagnostics location when pasting tokens

As stated in the audit trail of this problem report, consider this
test case:

    $ cat test.c
 1 struct x {
 2   int i;
 3 };
 4 struct x x;
 5
 6 #define TEST(X) x.##X
 7
 8 void foo (void)
 9 {
10   TEST(i) = 0;
11 }
    $

    $ cc1 -quiet test.c
    test.c: In function 'foo':
    test.c:10:1: error: pasting "." and "i" does not give a valid preprocessing token
       TEST(i) = 0;
     ^
    $

So, when pasting tokens, the error diagnostic uses the global and
imprecise input_location variable, leading to an imprecise output.

To properly fix this, I think libcpp should keep the token of the
pasting operator '##', instead of representing it with flag on the LHS
operand's token.  That way, it could use its location.  Doing that
would be quite intrusive though.  So this patch just uses the location
of the LHS of the pasting operator, for now.  It's IMHO better than
the current situation.

The patch makes paste_tokens take a location parameter that is used in
the diagnostics.  This change can still be useful later when we can
use the location of the pasting operator, because paste_tokens will
just be passed the new, more precise location.

Incidentally, it appeared that when getting tokens from within
preprocessor directives (like what is done in gcc.dg/cpp/paste12.c),
with -ftrack-macro-expansion disabled, the location of the expansion
point of macros was being lost because
cpp_reader::set_invocation_location wasn't being properly set.  It's
because when cpp_get_token_1 calls enter_macro_context, there is a
little period of time between the beginning of that later function and
when the macro is really pushed (and thus when the macro is really
expanded) where we wrongly consider that we are not expanding the
macro because macro_of_context is still NULL.  In that period of time,
in the occurrences of indirect recursive calls to cpp_get_token_1,
this later function wrongly sets cpp_reader::invocation_location
because cpp_reader::set_invocation_location is not being properly set.

To avoid that confusion the patch does away with
cpp_reader::set_invocation_location and introduces a new flag
cpp_reader::about_to_expand_macro_p that is set in the small time
interval exposed earlier.  A new in_macro_expansion_p is introduced as
well, so that cpp_get_token_1 can now accurately detect when we are in
the process of expanding a macro, and thus correctly collect the
location of the expansion point.

People seem to like screenshots.

Thus, after the patch, we now have:

    $ cc1 -quiet test.c
    test.c: In function 'foo':
    test.c:6:18: error: pasting "." and "i" does not give a valid preprocessing token
     #define TEST(X) x.##X
      ^
    test.c:10:3: note: in expansion of macro 'TEST'
       TEST(i) = 0;
       ^
    $

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

libcpp/

PR preprocessor/53229
* internal.h (cpp_reader::set_invocation_location): Remove.
(cpp_reader::about_to_expand_macro_p): New member flag.
* directives.c (do_pragma):  Remove Kludge as
pfile->set_invocation_location is no more.
* macro.c (cpp_get_token_1): Do away with the use of
cpp_reader::set_invocation_location.  Just collect the macro
expansion point when we are about to expand the top-most macro.
Do not override cpp_reader::about_to_expand_macro_p.
This fixes gcc.dg/cpp/paste12.c by making get_token_no_padding
properly handle locations of expansion points.
(cpp_get_token_with_location): Adjust, as
cpp_reader::set_invocation_location is no more.
(paste_tokens): Take a virtual location parameter for
the LHS of the pasting operator.  Use it in diagnostics.  Update
comments.
(paste_all_tokens): Tighten the assert.  Propagate the location of
the expansion point when no virtual locations are available.
Pass the virtual location to paste_tokens.
(in_macro_expansion_p): New static function.
(enter_macro_context): Set the cpp_reader::about_to_expand_macro_p
flag until we really start expanding the macro.

gcc/testsuite/

PR preprocessor/53229
* gcc.dg/cpp/paste6.c: Force to run without
-ftrack-macro-expansion.
* gcc.dg/cpp/paste8.c: Likewise.
* gcc.dg/cpp/paste8-2.c: New test, like paste8.c but run with
-ftrack-macro-expansion.
* gcc.dg/cpp/paste12.c: Force to run without
-ftrack-macro-expansion.
* gcc.dg/cpp/paste12-2.c: New test, like paste12.c but run with
-ftrack-macro-expansion.
* gcc.dg/cpp/paste13.c: Likewise.
* gcc.dg/cpp/paste14.c: Likewise.
* gcc.dg/cpp/paste14-2.c: New test, like paste14.c but run with
-ftrack-macro-expansion.
* gcc.dg/cpp/paste18.c: New test.

From-SVN: r187945

12 years agotrap-1.c, [...]: New tests.
Hans-Peter Nilsson [Tue, 29 May 2012 01:54:09 +0000 (01:54 +0000)]
trap-1.c, [...]: New tests.

* gcc.target/cris/torture/trap-1.c,
gcc.target/cris/torture/trap-2.c,
gcc.target/cris/torture/trap-3.c,
gcc.target/cris/torture/trap-v0.c,
gcc.target/cris/torture/trap-v3.c: New tests.

From-SVN: r187943

12 years agocris.h (TARGET_HAS_BREAK, [...]): New macros.
Hans-Peter Nilsson [Tue, 29 May 2012 01:52:16 +0000 (01:52 +0000)]
cris.h (TARGET_HAS_BREAK, [...]): New macros.

* config/cris/cris.h (TARGET_HAS_BREAK, TARGET_TRAP_USING_BREAK8):
New macros.
* config/cris/cris.md ("trap"): Define, enabled for
TARGET_TRAP_USING_BREAK8.
* config/cris/cris.opt (mtrap-using-break8): New option.

From-SVN: r187942

12 years agoDaily bump.
GCC Administrator [Tue, 29 May 2012 00:17:51 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r187941

12 years agore PR c++/25137 (Warning "missing braces around initializer" causing problems with...
Paolo Carlini [Mon, 28 May 2012 17:42:29 +0000 (17:42 +0000)]
re PR c++/25137 (Warning "missing braces around initializer" causing problems with tr1::array)

/c-family
2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25137
* c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
-Wmissing_braces.

2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25137
* doc/invoke.texi: Document -Wmissing-braces not enabled by -Wall
for C++.

/testsuite
2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25137
* g++.dg/warn/Wbraces3.C: New.
* g++.dg/warn/Wbraces4.C: Likewise.

From-SVN: r187937

12 years agoFix grammo in last CL entry.
Hans-Peter Nilsson [Mon, 28 May 2012 16:05:36 +0000 (16:05 +0000)]
Fix grammo in last CL entry.

From-SVN: r187936

12 years ago* doc/md.texi (Standard Names): Fix typos in documentation for atomic patterns.
Hans-Peter Nilsson [Mon, 28 May 2012 16:04:14 +0000 (16:04 +0000)]
* doc/md.texi (Standard Names): Fix typos in documentation for atomic patterns.

From-SVN: r187935

12 years agomd.texi (stack_protect_test): Remove negation of branch to label.
Hans-Peter Nilsson [Mon, 28 May 2012 15:43:42 +0000 (15:43 +0000)]
md.texi (stack_protect_test): Remove negation of branch to label.

* doc/md.texi (stack_protect_test): Remove negation of
        branch to label.

From-SVN: r187934

12 years agore PR c++/53505 (bitfield with bool type generated broken object file)
Jakub Jelinek [Mon, 28 May 2012 14:28:00 +0000 (16:28 +0200)]
re PR c++/53505 (bitfield with bool type generated broken object file)

PR tree-optimization/53505
* c-c++-common/torture/pr53505.c: New test.

From-SVN: r187931

12 years agore PR c++/53503 ([C++0x] unexpected AST of kind ltgt_expr)
Paolo Carlini [Mon, 28 May 2012 12:09:01 +0000 (12:09 +0000)]
re PR c++/53503 ([C++0x] unexpected AST of kind ltgt_expr)

gcc/cp
2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53503
* semantics.c (potential_constant_expression_1): Handle LTGT_EXPR.

libstdc++-v3
2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53503
* testsuite/26_numerics/headers/cmath/53503.cc: New.

From-SVN: r187928

12 years agoDaily bump.
GCC Administrator [Mon, 28 May 2012 00:17:55 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r187927

12 years agotree.c (build_constructor): Propagate TREE_SIDE_EFFECTS.
Nathan Sidwell [Sun, 27 May 2012 16:25:58 +0000 (16:25 +0000)]
tree.c (build_constructor): Propagate TREE_SIDE_EFFECTS.

* tree.c (build_constructor): Propagate TREE_SIDE_EFFECTS.
testsuite/
* gcc.dg/stmt-expr-4.c: New.

From-SVN: r187923

12 years agoMinor timing cleanups.
Janne Blomqvist [Sun, 27 May 2012 07:09:15 +0000 (10:09 +0300)]
Minor timing cleanups.

2012-05-27  Janne Blomqvist  <jb@gcc.gnu.org>

* intrinsics/time_1.h (gf_cputime): Don't reevaluate HZ expression
for times fallback, clarify operation ordering for times and clock
fallbacks.
(gf_gettime): Fix comment typo.

From-SVN: r187922

12 years agoDaily bump.
GCC Administrator [Sun, 27 May 2012 00:17:50 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r187921

12 years agore PR c++/53491 (ICE in build_target_expr_with_type, at cp/tree.c:587)
Paolo Carlini [Sat, 26 May 2012 21:20:38 +0000 (21:20 +0000)]
re PR c++/53491 (ICE in build_target_expr_with_type, at cp/tree.c:587)

/cp
2012-05-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53491
* tree.c (stabilize_expr): Handle exp of void type.

/testsuite
2012-05-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53491
* g++.dg/parse/crash60.C: New.

From-SVN: r187917

12 years agore PR c++/53220 (g++ mis-compiles compound literals)
Jason Merrill [Sat, 26 May 2012 21:13:23 +0000 (17:13 -0400)]
re PR c++/53220 (g++ mis-compiles compound literals)

PR c++/53220
gcc/
* c-typeck.c (array_to_pointer_conversion): Give -Wc++-compat warning
about array compound literals.
gcc/cp/
* call.c (convert_like_real) [ck_list]: Take array address directly.
* typeck.c (decay_conversion): Reject decay of an array compound
literal.

From-SVN: r187916

12 years agore PR ada/50294 (ICE in output_constructor_regular_field)
Eric Botcazou [Sat, 26 May 2012 13:25:55 +0000 (13:25 +0000)]
re PR ada/50294 (ICE in output_constructor_regular_field)

PR ada/50294
* gnat.dg/array21.adb: New test.

From-SVN: r187914

12 years agocfgcleanup.c (try_optimize_cfg): Do not delete forwarder blocks if CLEANUP_NO_INSN_DEL.
Eric Botcazou [Sat, 26 May 2012 12:05:24 +0000 (12:05 +0000)]
cfgcleanup.c (try_optimize_cfg): Do not delete forwarder blocks if CLEANUP_NO_INSN_DEL.

* cfgcleanup.c (try_optimize_cfg): Do not delete forwarder blocks
if CLEANUP_NO_INSN_DEL.
* cfgrtl.c (unique_locus_on_edge_between_p): New function extracted
from cfg_layout_merge_blocks.
(emit_nop_for_unique_locus_between): New function.
(rtl_merge_blocks): Invoke emit_nop_for_unique_locus_between.
(cfg_layout_merge_blocks): Likewise.

From-SVN: r187913

12 years ago* gnat.dg/renaming5.adb: Adjust dg-final directive.
Eric Botcazou [Sat, 26 May 2012 11:46:53 +0000 (11:46 +0000)]
* gnat.dg/renaming5.adb: Adjust dg-final directive.

From-SVN: r187912

12 years agodf-scan.c (df_def_record_1): Assert a parallel must contain an EXPR_LIST at this...
Dimitrios Apostolou [Sat, 26 May 2012 11:44:50 +0000 (11:44 +0000)]
df-scan.c (df_def_record_1): Assert a parallel must contain an EXPR_LIST at this point.

2012-05-26  Dimitrios Apostolou  <jimis@gmx.net>
    Paolo Bonzini  <bonzini@gnu.org>

* df-scan.c (df_def_record_1): Assert a parallel must contain an
EXPR_LIST at this point.  Receive the LOC and move its extraction...
(df_defs_record): ... here. Change if-else to a switch statement.
(df_find_hard_reg_defs, df_find_hard_reg_defs_1): New.
(df_get_call_refs): Changed defs_generated from bitmap to HARD_REG_SET
and compute it from df_find_hard_reg_defs(). Record DF_REF_BASE
DEFs in REGNO order. Use HARD_REG_SET instead of bitmap for
regs_invalidated_by_call.
(df_insn_refs_collect): Record DF_REF_REGULAR DEFs after
df_get_call_refs().

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r187911

12 years agodecl.c (variant_desc): Rename 'record' to 'new_type'.
Eric Botcazou [Sat, 26 May 2012 10:42:17 +0000 (10:42 +0000)]
decl.c (variant_desc): Rename 'record' to 'new_type'.

* gcc-interface/decl.c (variant_desc): Rename 'record' to 'new_type'.
(build_variant_list): Adjust to above renaming.
(gnat_to_gnu_entity) <E_Record_Subtype>: Likewise.  Give a unique name
to the type of the variant containers.
(create_variant_part_from): Likewise.  Give a unique name to the type
of the variant part.

From-SVN: r187908

12 years agoDaily bump.
GCC Administrator [Sat, 26 May 2012 00:18:49 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r187906

12 years agore PR c++/32054 (Storage classes on anonymous unions in classes)
Paolo Carlini [Fri, 25 May 2012 23:40:10 +0000 (23:40 +0000)]
re PR c++/32054 (Storage classes on anonymous unions in classes)

/cp
2012-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/32054
* parser.c (cp_parser_member_declaration): A storage class is not
allowed in a declaration of an anonymous aggregate in a class scope.

/testsuite
2012-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/32054
* g++.dg/other/anon-union3.C: New.

From-SVN: r187902

12 years agoruntime: More efficient implementation of trampolines.
Ian Lance Taylor [Fri, 25 May 2012 21:51:39 +0000 (21:51 +0000)]
runtime: More efficient implementation of trampolines.

From-SVN: r187899

12 years agocompiler: Don't create a closure if not needed.
Ian Lance Taylor [Fri, 25 May 2012 21:14:40 +0000 (21:14 +0000)]
compiler: Don't create a closure if not needed.

From-SVN: r187897

12 years agomorestack.S (__morestack_non_split): Check whether caller is varargs and needs %bp...
Ian Lance Taylor [Fri, 25 May 2012 20:48:19 +0000 (20:48 +0000)]
morestack.S (__morestack_non_split): Check whether caller is varargs and needs %bp to hold the stack frame on return.

libgcc/:
* config/i386/morestack.S (__morestack_non_split): Check whether
caller is varargs and needs %bp to hold the stack frame on return.
gcc/testsuite/:
* gcc.dg/split-6.c: New test.

From-SVN: r187894