platform/upstream/linaro-gcc.git
12 years agoAs a result of the previous changes, epilogue_insns pattern can only be
gretay [Mon, 18 Jun 2012 18:06:54 +0000 (18:06 +0000)]
As a result of the previous changes, epilogue_insns pattern can only be
generated in Thumb1. After removing other cases in define_insn for
epilogue_insns, the function arm_output_epilogue becomes dead code and can
be eliminated, along with all its helper functions.

gcc/

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm-protos.h (arm_output_epilogue): Remove.
        * config/arm/arm.c (print_multi_reg): Remove.
        (vfp_output_fldmd): Likewise.
        (arm_output_epilogue): Likewise.
        * config/arm/arm.md (epilogue_insns): Update condition and code.

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

12 years agoGenerate RTL for return in Thumb2 mode. Used by expand of return insn.
gretay [Mon, 18 Jun 2012 18:02:03 +0000 (18:02 +0000)]
Generate RTL for return in Thumb2 mode. Used by expand of return insn.

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm-protos.h (thumb2_expand_return): New declaration.
        * config/arm/arm.c (thumb2_expand_return): New function.
        * config/arm/arm.md (return): Update condition and code.

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

12 years agoAdd a new parameter to the function output_return_instruction to handle
gretay [Mon, 18 Jun 2012 17:57:06 +0000 (17:57 +0000)]
Add a new parameter to the function output_return_instruction to handle
simple cases of return when no epilogue needs to be printed out.

gcc/

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm-protos.h (output_return_instruction): New parameter and
int to bool change of parameter types.
        * config/arm/arm.c (output_return_instruction): Likewise.
        * config/arm/arm.md (arm_simple_return): New pattern.
        (arm_return, cond_return, cond_return_inverted): Add new arguments.
        * config/arm/thumb2.md (thumb2_return): Update condition and code.

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

12 years agoThe main function for epilogue RTL generation, used by expand epilogue
gretay [Mon, 18 Jun 2012 17:47:40 +0000 (17:47 +0000)]
The main function for epilogue RTL generation, used by expand epilogue
patterns.

gcc/

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm-protos.h (arm_expand_epilogue): New declaration.
        * config/arm/arm.c (arm_expand_epilogue): New function.
        * config/arm/arm.md (epilogue): Update condition and code.
        (sibcall_epilogue): Likewise.

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

12 years agoHelper function for epilogue expansion. Emit RTL for APCS frame epilogue
gretay [Mon, 18 Jun 2012 17:38:21 +0000 (17:38 +0000)]
Helper function for epilogue expansion. Emit RTL for APCS frame epilogue
(when -mapcs-frame command line option is specified).
This function is used by a later patch.

gcc/

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm.c (arm_expand_epilogue_apcs_frame): New function.
        * config/arm/arm.md (arm_addsi3) Add an alternative.

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

12 years agoNew define insn pattern for epilogue with floating point registers (DFmode)
gretay [Mon, 18 Jun 2012 17:30:41 +0000 (17:30 +0000)]
New define insn pattern for epilogue with floating point registers (DFmode)
and a new function that emits RTL for this pattern. This function is a
helper for epilogue extension. It is used by a later patch.

gcc/

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm.md (vfp_pop_multiple_with_writeback) New
define_insn.
        * config/arm/predicates.md (pop_multiple_fp) New special predicate.
        * config/arm/arm.c (arm_emit_vfp_multi_reg_pop): New function.

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

12 years agoThis patch adds new define_insn patterns for epilogue with integer
gretay [Mon, 18 Jun 2012 17:24:25 +0000 (17:24 +0000)]
This patch adds new define_insn patterns for epilogue with integer
registers.

The patterns can handle pop multiple with writeback and return (loading into
PC directly).
To handle return, the patterns use a new special predicate
pop_multiple_return, that uses ldm_stm_operation_p function from a previous
patch. To output assembly, the patterns use a new function
arm_output_multireg_pop.

This patch also adds a new function arm_emit_multi_reg_pop
that emits RTL that matches the new pop patterns for integer registers.
This is a helper function for epilogue expansion. It is used by a later
patch.

2012-06-18  Ian Bolton  <ian.bolton@arm.com>
            Sameera Deshpande  <sameera.deshpande@arm.com>
            Greta Yorsh  <greta.yorsh@arm.com>

        * config/arm/arm.md (load_multiple_with_writeback) New define_insn.
        (load_multiple, pop_multiple_with_writeback_and_return) Likewise.
        (pop_multiple_with_return, ldr_with_return) Likewise.
        * config/arm/predicates.md (pop_multiple_return) New special predicate.
        * config/arm/arm-protos.h (arm_output_multireg_pop) New declaration.
        * config/arm/arm.c (arm_output_multireg_pop) New function.
        (arm_emit_multi_reg_pop): New function.

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

12 years agoThis patch updates ldm_stm_operation_p to check for loads that if SP is in
gretay [Mon, 18 Jun 2012 17:06:35 +0000 (17:06 +0000)]
This patch updates ldm_stm_operation_p to check for loads that if SP is in
the register list, then the base register is SP. It guarantees that SP is
reset correctly when an LDM instruction is interrupted. Otherwise, we might
end up with a corrupt stack.

gcc/

2012-06-18  Greta Yorsh  <greta.yorsh@arm.com>

* config/arm/arm.c (ldm_stm_operation_p): Require SP
        as base register for loads if SP is in the register list.

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

12 years ago2012-06-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Jun 2012 14:05:27 +0000 (14:05 +0000)]
2012-06-18  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53693
* tree-vect-patterns.c (vect_operation_fits_smaller_type):
Reject operands with more than one use.

* g++.dg/torture/pr53693.C: New testcase.

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

12 years agogcc:
wschmidt [Mon, 18 Jun 2012 12:22:37 +0000 (12:22 +0000)]
gcc:

2012-06-18  Bill Schmidt  <wschmidt@linux.ibm.com>

PR tree-optimization/53703
* tree-ssa-phiopt.c (hoist_adjacent_loads): Skip virtual phis;
correctly set bb_for_def[12].

gcc/testsuite:

2012-06-18  Bill Schmidt  <wschmidt@linux.ibm.com>

PR tree-optimization/53703
* gcc.dg/torture/pr53703.c: New test.

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

12 years agogcc/
steven [Mon, 18 Jun 2012 11:34:28 +0000 (11:34 +0000)]
gcc/
* config/vax/vax.h (VMS_TARGET): Remove.

cp/
* decl.c (finish_function): Remove code conditional on VMS_TARGET.

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

12 years ago2012-06-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Jun 2012 11:11:32 +0000 (11:11 +0000)]
2012-06-18  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_assert): Split out range
intersecting code.
(intersect_ranges): New function.
(vrp_intersect_ranges): Likewise.

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

12 years ago2012-06-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Mon, 18 Jun 2012 11:05:41 +0000 (11:05 +0000)]
2012-06-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_gimplify_va_arg): Revert change from
r187965.

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

12 years agoImplement support for int iterators.
belagod [Mon, 18 Jun 2012 10:43:03 +0000 (10:43 +0000)]
Implement support for int iterators.

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

12 years agogcc/
rsandifo [Mon, 18 Jun 2012 09:32:51 +0000 (09:32 +0000)]
gcc/
PR middle-end/53698
* expr.c (expand_expr_addr_expr_1): Convert to tmode before
performing an addition.

gcc/testsuite/
PR middle-end/53698
* gcc.target/i386/pr53698.c: New test.

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

12 years agoDaily bump.
gccadmin [Mon, 18 Jun 2012 00:18:37 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago * gcc.target/i386/pr33329.c: .
uros [Sun, 17 Jun 2012 22:14:03 +0000 (22:14 +0000)]
* gcc.target/i386/pr33329.c: .

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

12 years ago * gcc.target/i386/pr33329.c: Fix tabcount increase.
uros [Sun, 17 Jun 2012 22:09:40 +0000 (22:09 +0000)]
* gcc.target/i386/pr33329.c: Fix tabcount increase.

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

12 years ago * gcc.target/i386/pr33329.c (f): Increase tabs array to 1024.
uros [Sun, 17 Jun 2012 22:01:25 +0000 (22:01 +0000)]
* gcc.target/i386/pr33329.c (f): Increase tabs array to 1024.

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

12 years ago * output.h (split_double): Move prototype to rtl.h.
steven [Sun, 17 Jun 2012 21:12:24 +0000 (21:12 +0000)]
* output.h (split_double): Move prototype to rtl.h.
(constructor_static_from_elts_p): Move prototype to tree.c.
* rtl.h (split_double): Moved here from output.h.
* tree.h (constructor_static_from_elts_p): Moved here from output.h.
* final.c (split_double): Move from here ...
* rtlanal.c (split_double): ... to here.
* expr.c: Do not include output.h.

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

12 years agoforgot ChangeLog
steven [Sun, 17 Jun 2012 21:09:08 +0000 (21:09 +0000)]
forgot ChangeLog

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

12 years ago2012-06-17 Steven Bosscher <steven@gcc.gnu.org>
steven [Sun, 17 Jun 2012 21:08:39 +0000 (21:08 +0000)]
2012-06-17  Steven Bosscher  <steven@gcc.gnu.org>

* cfglayout.h: Remove.
* cfglayout.c: Remove.
* function.h (struct function): Remove x_last_location field.
* function.c: Do not include cfglayout.h.
(expand_function_start): Do not call no-op force_next_line_note.
(expand_function_end): Likewise.
* cfgrtl.c: Do not include cfglayout.h.  Include gt-cfgrtl.h.
(unlink_insn_chain): Moved here from cfglayout.c.
(skip_insns_after_block, label_for_bb, record_effective_endpoints,
into_cfg_layout_mode, outof_cfg_layout_mode,
pass_into_cfg_layout_mode, pass_outof_cfg_layout_mode,
relink_block_chain, fixup_reorder_chain, verify_insn_chain,
fixup_fallthru_exit_predecessor, force_one_exit_fallthru,
cfg_layout_can_duplicate_bb_p, duplicate_insn_chain,
cfg_layout_duplicate_bb, cfg_layout_initialize, break_superblocks,
cfg_layout_finalize): Likewise.
(rtl_can_remove_branch_p): Likewise.
* rtl.h (insn_scope): Move prototype from cfglayout.h here.
(duplicate_insn_chain): Likewise.
(force_next_line_note): Remove prototype.
* emit-rtl.c: Do not include tree-flow.h, egad.  Include vecprim.h.
(last_location): Remove #define to emit.x_last_location.
(force_next_line_note): Remove no-op function.
(init_emit): Don't set x_last_location.
(block_locators_locs, block_locators_blocks, locations_locators_locs,
locations_locators_vals, prologue_locator, epilogue_locator,
curr_location, last_location, curr_block, last_block, curr_rtl_loc):
Move POD to here from cfglayout.c.
(insn_locators_alloc, insn_locators_finalize, insn_locators_free,
set_curr_insn_source_location, get_curr_insn_source_location,
set_curr_insn_block, get_curr_insn_block, curr_insn_locator,
locator_scope, insn_scope, locator_location, locator_line, insn_line,
locator_file, insn_file, locator_eq): Move to here from cfglayout.c.
* cfghooks.h: Remove double-include protection.
(can_copy_bbs_p, copy_bbs): Move prototypes from cfglayout.h to here.
* cfghooks.c (can_copy_bbs_p, copy_bbs): Move to here from cfglayout.c.
* final.c: Do not include cfglayout.h.
(choose_inner_scope, change_scope): Move to here from cfglayout.c.
(reemit_insn_block_notes): Likewise.  Make static.
* tree-flow.h (tree_could_trap_p, operation_could_trap_helper_p,
operation_could_trap_p, tree_could_throw_p): Move from here...
* tree.h: ... to here.
* gengtype.c (open_base_files): Remove cfglayout.h from the list.
* profile.c: Do not include cfghooks.h.
* cfgloopmanip.c: Do not include cfglayout.h and cfghooks.h.
* modulo-sched.c: Likewise.
* loop-unswitch.c: Do not include cfglayout.h.
* sched-ebb.c: Likewise.
* tracer.c: Likewise.
* ddg.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* loop-init.c: Likewise.
* dwarf2out.c: Likewise.
* hw-doloop.c: Likewise.
* loop-unroll.c: Likewise.
* cfgcleanup.c: Likewise.
* bb-reorder.c: Likewise.
* sched-rgn.c: Likewise.
* tree-cfg.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/spu/spu.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/sh/sh.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/score/score.c: Likewise.
* config/mips/mips.c: Likewise.
* config/bfin/bfin.c: Likewise.
* Makefile.in (CFGAYOUT_H): Remove, and fixup users.
* config/rs6000/t-rs6000 (rs6000.o): Do not depend on cfglayout.h.
* config/spu/t-spu-elf (spu.o: $): Likewise.
* config/sparc/t-sparc (sparc.o): Do not depend on CFGLAYOUT_H.

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

12 years ago * cfgloop.h: Do not include rtl.h.
steven [Sun, 17 Jun 2012 21:04:41 +0000 (21:04 +0000)]
* cfgloop.h: Do not include rtl.h.
(enum iv_extend_code): New.
(struct rtx_iv): Use iv_extend_code instead of rtx_code.
* Makefile.in (CFGLOOP_H): Do not depend on RTL_H.
* loop-iv.c (iv_extend_to_rtx_code): New function to translate
an IV_EXTEND_CODE to an RTX_CODE.
(dump_iv_info): Update for rtx_iv field type change.
(iv_constant): Likewise.
(iv_subreg): Likewise.
(iv_extend): Likewise.
(iv_neg): Likewise.
(iv_add): Likewise.
(iv_mult): Likewise.
(iv_shift): Likewise.
(get_biv_step_1): Likewise.
(get_biv_step): Likewise.
(iv_analyze_biv): Likewise.
(get_iv_value): Likewise.
(shorten_into_mode): Likewise.
(canonicalize_iv_subregs): Likewise.
* sese.c (sese_build_liveouts): Use MAY_HAVE_DEBUG_STMTS instead
of MAY_HAVE_DEBUG_INSNS.
* tree-ssa-loop-ivopts.c: Include recog.h after expr.h.
* tree-ssa-loop-prefetch.c: Likewise.

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

12 years ago * expmed.c (ceil_log2): Move from here...
steven [Sun, 17 Jun 2012 21:01:25 +0000 (21:01 +0000)]
* expmed.c (ceil_log2): Move from here...
* hwint.c: ... to here for older GCCs...
* hwint.h: ... and here for newer GCCs.
* rtl.h (ceil_log2): Remove prototype.

* tree-phinodes.c: Do not include rtl.h.
* Makefile.in (tree-phinodes.o): Do not depend on RTL_H.

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

12 years ago * config/cris/cris.h (TARGET_ELF): Remove.
steven [Sun, 17 Jun 2012 20:55:12 +0000 (20:55 +0000)]
* config/cris/cris.h (TARGET_ELF): Remove.
(FORCE_EH_FRAME_INFO_IN_DATA_SECTION): Remove.
(CRIS_ASM_OUTPUT_ALIGNED_DECL_COMMON): Simpify using TARGET_ELF==1.
(LOCAL_LABEL_PREFIX): Likewise.
* config/cris/cris.c (cris_target_asm_named_section): Remove.
(cris_option_override): Simpify using TARGET_ELF==1.
(cris_file_start): Likewise.
* config/cris/cris-protos.h (cris_target_asm_named_section): Remove.

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

12 years ago2012-06-17 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 17 Jun 2012 19:30:29 +0000 (19:30 +0000)]
2012-06-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53691
        PR fortran/53685
        * check.c (gfc_calculate_transfer_sizes): Return if
        SIZE= is not constant or source-size cannot be determined.

2012-06-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53691
        PR fortran/53685
        * gfortran.dg/transfer_check_3.f90: New.

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

12 years ago * config/i386/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Use
uros [Sun, 17 Jun 2012 13:54:53 +0000 (13:54 +0000)]
* config/i386/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Use
__builtin_expect when checking for exceptions.
* config/ia64/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Ditto.

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

12 years ago * config/i386/sse.md (vcvtph2ps): Fix vec_select selector.
uros [Sun, 17 Jun 2012 13:48:31 +0000 (13:48 +0000)]
* config/i386/sse.md (vcvtph2ps): Fix vec_select selector.

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

12 years ago * gcc.dg/tree-ssa/vrp68.c: Fix scan-tree-dump-times argument order.
uros [Sun, 17 Jun 2012 08:39:13 +0000 (08:39 +0000)]
* gcc.dg/tree-ssa/vrp68.c: Fix scan-tree-dump-times argument order.

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

12 years agoDaily bump.
gccadmin [Sun, 17 Jun 2012 00:17:24 +0000 (00:17 +0000)]
Daily bump.

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

12 years ago2012-06-16 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 16 Jun 2012 18:13:38 +0000 (18:13 +0000)]
2012-06-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53642
        PR fortran/45170
        * frontend-passes.c (optimize_assignment): Don't remove RHS's
        trim when assigning to a deferred-length string.
        * trans-expr.c (gfc_trans_assignment_1): Ensure that the RHS string
        length is evaluated before the deferred-length LHS is reallocated.

2012-06-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53642
        PR fortran/45170
        * gfortran.dg/deferred_type_param_8.f90: New.

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

12 years ago PR middle-end/53590
ebotcazou [Sat, 16 Jun 2012 11:05:43 +0000 (11:05 +0000)]
PR middle-end/53590
* tree-inline.c (initialize_cfun): Copy can_delete_dead_exceptions.

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

12 years agoDaily bump.
gccadmin [Sat, 16 Jun 2012 00:17:32 +0000 (00:17 +0000)]
Daily bump.

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

12 years ago * lib/gcov.exp (verify-lines, verify-branches, verify-calls): Use
janis [Fri, 15 Jun 2012 19:45:54 +0000 (19:45 +0000)]
* lib/gcov.exp (verify-lines, verify-branches, verify-calls): Use
testname that includes flags, passed in as new argument, in
pass/fail messages.
(run_gcov): Get testname from dg-test, use it in pass/fail messages
and pass it to verify-* procedures.

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

12 years ago * g++.dg/torture/stackalign/stackalign.exp: Combine stack
janis [Fri, 15 Jun 2012 18:04:22 +0000 (18:04 +0000)]
* g++.dg/torture/stackalign/stackalign.exp: Combine stack
alignment torture options with usual torture options.

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

12 years ago * g++.dg/cpp0x/auto27.C: Add comments to checks for multiple
janis [Fri, 15 Jun 2012 18:03:34 +0000 (18:03 +0000)]
* g++.dg/cpp0x/auto27.C: Add comments to checks for multiple
messages reported for one line of source code.
* g++.dg/cpp0x/constexpr-decl.C: Likewise.
* g++.dg/cpp0x/decltype2.C: Likewise.
* g++.dg/cpp0x/decltype3.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-syntax1.C: Likewise.
* g++.dg/cpp0x/regress/error-recovery1.C: Likewise.
* g++.dg/cpp0x/static_assert3.C: Likewise.
* g++.dg/cpp0x/udlit-cpp98-neg.C: Likewise.
* g++.dg/cpp0x/udlit-shadow-neg.C: Likewise.
* g++.dg/cpp0x/union1.C: Likewise.
* g++.dg/cpp0x/variadic-ex10.C: Likewise.
* g++.dg/cpp0x/variadic-ex14.C: Likewise.
* g++.dg/cpp0x/variadic2.C: Likewise.
* g++.dg/cpp0x/variadic20.C: Likewise.
* g++.dg/cpp0x/variadic74.C: Likewise.
* g++.dg/diagnostic/bitfld2.C: Likewise.
* g++.dg/ext/attrib44.C: Likewise.
* g++.dg/ext/no-asm-1.C: Likewise.
* g++.dg/other/error34.C: Likewise.
* g++.dg/parse/crash46.C: Likewise.
* g++.dg/parse/error10.C: Likewise.
* g++.dg/parse/error2.C: Likewise.
* g++.dg/parse/error3.C: Likewise.
* g++.dg/parse/error36.C: Likewise.
* g++.dg/parse/error8.C: Likewise.
* g++.dg/parse/error9.C: Likewise.
* g++.dg/parse/parser-pr28152-2.C: Likewise.
* g++.dg/parse/parser-pr28152.C: Likewise.
* g++.dg/parse/template25.C: Likewise.
* g++.dg/parse/typename11.C: Likewise.
* g++.dg/tc1/dr147.C: Likewise.
* g++.dg/template/deduce3.C: Likewise.
* g++.dg/template/koenig9.C: Likewise.
* g++.dg/template/pr23510.C: Likewise.
* g++.dg/warn/pr12242.C: Likewise.
* g++.dg/warn/pr30551-2.C: Likewise.
* g++.dg/warn/pr30551.C: Likewise.
* g++.old-deja/g++.other/typename1.C: Likewise.
* g++.old-deja/g++.pt/niklas01a.C: Likewise.

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

12 years ago2012-06-15 Easwaran Raman <eraman@google.com>
eraman [Fri, 15 Jun 2012 17:35:11 +0000 (17:35 +0000)]
2012-06-15   Easwaran Raman  <eraman@google.com>

* passes.c (init_optimization_passes): Remove pass_call_cdce
from its current position and insert after pass_dce.

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

12 years ago * config/tilegx/sync.md (atomic_fetch_<fetchop_name><mode>): Fix typo.
walt [Fri, 15 Jun 2012 17:19:16 +0000 (17:19 +0000)]
   * config/tilegx/sync.md (atomic_fetch_<fetchop_name><mode>): Fix typo.

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

12 years ago * arm.c (note_invalid_constants): Don't return a result.
rearnsha [Fri, 15 Jun 2012 16:51:25 +0000 (16:51 +0000)]
* arm.c (note_invalid_constants): Don't return a result.
(arm_memory_load_p): Delete function.
(arm_const_double_rtx): Delete iterator variable i;
(fp_immediate_constant): Likewise.
(fp_const_from_val): Likewise.

* arm.c (arm_init_iwmmxt_builtins): Delete void_ftype_void.

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

12 years ago2012-06-15 Marc Glisse <marc.glisse@inria.fr>
ramana [Fri, 15 Jun 2012 16:43:36 +0000 (16:43 +0000)]
2012-06-15  Marc Glisse  <marc.glisse@inria.fr>

PR c++/51033
* c-typeck.c (c_build_vec_perm_expr): Move to c-family/c-common.c.
        * c-tree.h (c_build_vec_perm_expr): Move to c-family/c-common.h.

cp/

2012-06-15  Marc Glisse  <marc.glisse@inria.fr>

PR c++/51033
* semantics.c (literal_type_p): Handle VECTOR_TYPE.
        (potential_constant_expression_1): Handle VEC_PERM_EXPR.
        * parser.c (cp_parser_postfix_expression): Handle RID_BUILTIN_SHUFFLE.

c-family
2012-06-15  Marc Glisse  <marc.glisse@inria.fr>

PR c++/51033
* c-common.h (c_build_vec_perm_expr): Move decl here.
* c-common.c (c_build_vec_perm_expr): Move definition
here.

2012-06-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

PR c++/51033
* c-c++-common/torture/vshuf-16.inc: Move from gcc.c-torture/execute/.
* c-c++-common/torture/vshuf-2.inc: Likewise.
* c-c++-common/torture/vshuf-4.inc: Likewise.
* c-c++-common/torture/vshuf-8.inc: Likewise.
* c-c++-common/torture/vshuf-main.inc: Likewise.
* c-c++-common/torture/vshuf-v16hi.c: Likewise.
* c-c++-common/torture/vshuf-v16qi.c: Likewise.
* c-c++-common/torture/vshuf-v2df.c: Likewise.
* c-c++-common/torture/vshuf-v2di.c: Likewise.
* c-c++-common/torture/vshuf-v2sf.c: Likewise.
* c-c++-common/torture/vshuf-v2si.c: Likewise.
* c-c++-common/torture/vshuf-v4df.c: Likewise.
* c-c++-common/torture/vshuf-v4di.c: Likewise.
* c-c++-common/torture/vshuf-v4hi.c: Likewise.
* c-c++-common/torture/vshuf-v4sf.c: Likewise.
* c-c++-common/torture/vshuf-v4si.c: Likewise.
* c-c++-common/torture/vshuf-v8hi.c: Likewise.
* c-c++-common/torture/vshuf-v8qi.c: Likewise.
* c-c++-common/torture/vshuf-v8si.c: Likewise.

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

12 years ago * config/avr/avr.c (avr_default_expand_builtin): New function.
gjl [Fri, 15 Jun 2012 15:56:02 +0000 (15:56 +0000)]
* config/avr/avr.c (avr_default_expand_builtin): New function.
(avr_expand_builtin): Use it.
(avr_expand_unop_builtin): Remove.
(avr_expand_binop_builtin): Remove.
(avr_expand_triop_builtin): Remove.

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

12 years ago PR middle-end/38474
matz [Fri, 15 Jun 2012 14:56:26 +0000 (14:56 +0000)]
PR middle-end/38474
* cfgexpand.c (add_alias_set_conflicts): Remove.
(expand_used_vars): Don't call it.
(aggregate_contains_union_type): Remove.
* function.c (n_temp_slots_in_use): New static data.
(make_slot_available, assign_stack_temp_for_type): Update it.
(init_temp_slots): Zero it.
(remove_unused_temp_slot_addresses): Use it for quicker removal.
(remove_unused_temp_slot_addresses_1): Use htab_clear_slot.

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

12 years ago * gimplify.c (gimplify_compound_literal_expr): Take gimple_test_f
matz [Fri, 15 Jun 2012 14:46:36 +0000 (14:46 +0000)]
* gimplify.c (gimplify_compound_literal_expr): Take gimple_test_f
argument, don't emit assign statement if value is directly usable.
(gimplify_expr): Adjust.

testsuite/
* gcc.dg/tree-ssa/vector-4.c: New test.

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

12 years ago * gimplify.c (gimplify_modify_expr): Fold generated statements.
matz [Fri, 15 Jun 2012 14:40:38 +0000 (14:40 +0000)]
* gimplify.c (gimplify_modify_expr): Fold generated statements.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Check flag_ltrans.

testsuite/
* gcc.dg/debug/dwarf2/inline3.c: Adjust.
* gcc.dg/tree-ssa/foldstring-1.c: Adjust.

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

12 years ago2012-06-15 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 15 Jun 2012 13:38:17 +0000 (13:38 +0000)]
2012-06-15  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (set_and_canonicalize_value_range): Use canonical
predicates to set VR_UNDEFINED and VR_VARYING.  Drop a case
we assert for in set_value_range to VR_VARYING.

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

12 years ago * arm.md (addsf3, adddf3): Use s_register_operand.
rearnsha [Fri, 15 Jun 2012 13:32:09 +0000 (13:32 +0000)]
* arm.md (addsf3, adddf3): Use s_register_operand.
(subsf3, subdf3): Likewise.
(mulsf3, muldf3): Likewise.
(difsf3, divdf3): Likewise.
(movsfcc, movdfcc): Likewise.
* predicates.md (f_register_operand): Delete.
(arm_float_rhs_operand): Delete.
(arm_float_add_operand): Delete.
(arm_float_compare_operand): Use s_register_operand when
there's no VFP.
(cirrus_register_operand): Delete.
(cirrus_fp_register): Delete.
(cirrus_shift_const): Delete.
(cmpdi_operand): Remove Maverick support.
* constraints.md (f, v, H): Delete constraints.
(G): Update documentation.
* arm.c (fp_consts_inited): Convert to bool.
(strings_fp): Delete.
(values_fp): Delete.
(value_fp0): New variable.
(init_fp_table): Simplify logic.
(arm_const_double_rtx): Likewise.
(fp_immediate_constant): Likewise.
(fp_const_from_val): Likewise.
(neg_const_double_rtx_ok_for_fpa): Delete.
* doc/md.texi (ARM constraints): Update documentation.

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

12 years ago gcc/
uweigand [Fri, 15 Jun 2012 13:30:36 +0000 (13:30 +0000)]
gcc/
PR tree-optimization/53636
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Verify
stride when doing basic-block vectorization.

gcc/testsuite/
PR tree-optimization/53636
* gcc.target/arm/pr53636.c: New test.

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

12 years ago2012-06-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
ramana [Fri, 15 Jun 2012 13:06:51 +0000 (13:06 +0000)]
2012-06-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

* tree-vect-generic.c (lower_vec_perm): Propagate vector constants
into VEC_PERM_EXPR.

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

12 years ago * tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily
jakub [Fri, 15 Jun 2012 11:08:28 +0000 (11:08 +0000)]
* tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily
allocate and free bbs array for the SLP case.

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

12 years ago PR tree-optimization/51581
jakub [Fri, 15 Jun 2012 11:07:47 +0000 (11:07 +0000)]
PR tree-optimization/51581
* expr.h (choose_multiplier): New prototype.
* expmed.c (choose_multiplier): No longer static.
Change multiplier_ptr from rtx * to UHWI *.
(expand_divmod): Adjust callers.
* tree-vect-patterns.c (vect_recog_sdivmod_pow2_pattern):
Renamed to...
(vect_recog_divmod_pattern): ... this.  Pass bb_vinfo as last
argument to new_stmt_vec_info.  Attempt to optimize also divisions
by non-pow2 constants if integer vector division isn't supported.
* tree-vect-stmts.c (vect_analyze_stmt): If node != NULL,
don't look at pattern stmts and sequences.

* gcc.c-torture/execute/pr51581-1.c: New test.
* gcc.c-torture/execute/pr51581-2.c: New test.
* gcc.dg/vect/pr51581-1.c: New test.
* gcc.dg/vect/pr51581-2.c: New test.
* gcc.dg/vect/pr51581-3.c: New test.
* gcc.target/i386/avx-pr51581-1.c: New test.
* gcc.target/i386/avx-pr51581-2.c: New test.
* gcc.target/i386/avx2-pr51581-1.c: New test.
* gcc.target/i386/avx2-pr51581-2.c: New test.
* gcc.dg/vect/slp-26.c (main1): Divide by 0x8031 instead of 3.

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

12 years ago2012-06-15 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 15 Jun 2012 11:06:16 +0000 (11:06 +0000)]
2012-06-15  Richard Guenther  <rguenther@suse.de>

* gcc.c-torture/execute/20120615-1.c: New testcase.

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

12 years ago PR ada/53592
ebotcazou [Fri, 15 Jun 2012 10:41:13 +0000 (10:41 +0000)]
PR ada/53592
* gcc-interface/gigi.h (maybe_vector_array): Make static inline.
* gcc-interface/utils.c (maybe_vector_array): Delete.
* gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Mark the
array object as addressable if it has vector type and is on the LHS.

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

12 years ago PR middle-end/53590
ebotcazou [Fri, 15 Jun 2012 09:22:00 +0000 (09:22 +0000)]
PR middle-end/53590
* common.opt (-fdelete-dead-exceptions): New switch.
* doc/invoke.texi (Code Gen Options): Document it.
* cse.c (count_reg_usage) <CALL_INSN>: Use !insn_nothrow_p in lieu of
insn_could_throw_p predicate.  Do not skip an insn that could throw
if dead exceptions can be deleted.
(insn_live_p): Likewise, do not return true in that case.
* dce.c (can_alter_cfg): New flag.
(deletable_insn_p): Do not return false for an insn that can throw if
the CFG can be altered and dead exceptions can be deleted.
(init_dce): Set can_alter_cfg to false for fast DCE, true otherwise.
* dse.c (scan_insn): Use !insn_nothrow_p in lieu of insn_could_throw_
predicate. Do not preserve an insn that could throw if dead exceptions
can be deleted.
* function.h (struct function): Add can_delete_dead_exceptions flag.
* function.c (allocate_struct_function): Set it.
* lto-streamer-in.c (input_struct_function_base): Stream it.
* lto-streamer-out.c (input_struct_function_base): Likewise.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark a
statement that could throw as necessary if dead exceptions can be
deleted.
ada/
* gcc-interface/misc.c (gnat_init_options_struct): Set
opts->x_flag_delete_dead_exceptions to 1.

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

12 years ago* sysdep/m68k/locks.h (compare_and_swap): Use
schwab [Fri, 15 Jun 2012 08:08:04 +0000 (08:08 +0000)]
* sysdep/m68k/locks.h (compare_and_swap): Use
__sync_bool_compare_and_swap.
(release_set): Use write_barrier instead of inlining it.

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

12 years ago2012-06-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 15 Jun 2012 07:29:26 +0000 (07:29 +0000)]
2012-06-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* sysdep/s390/locks.h (compare_and_swap, release_set)
(read_barrier, write_barrier): Use the GCC atomic builtins.

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

12 years ago (*zero_extendsidi2_rex64): Remove isa attribute.
uros [Fri, 15 Jun 2012 06:53:28 +0000 (06:53 +0000)]
(*zero_extendsidi2_rex64): Remove isa attribute.

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

12 years ago PR libstdc++/53578
redi [Fri, 15 Jun 2012 00:27:29 +0000 (00:27 +0000)]
PR libstdc++/53578
* include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
narrowing conversion.
* include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.

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

12 years agoDaily bump.
gccadmin [Fri, 15 Jun 2012 00:18:49 +0000 (00:18 +0000)]
Daily bump.

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

12 years agoUpdate sysdep/sh/locks.h with atomic builtins
kkojima [Thu, 14 Jun 2012 22:58:05 +0000 (22:58 +0000)]
Update sysdep/sh/locks.h with atomic builtins
* sysdep/sh/locks.h (__cas_lock): Remove.
(__cas_start_atomic, __cas_end_atomic): Likewise.
(compare_and_swap): Call __sync_bool_compare_and_swap.

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

12 years ago * config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.
mkuvyrkov [Thu, 14 Jun 2012 22:46:03 +0000 (22:46 +0000)]
* config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.

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

12 years ago PR libstdc++/53270
redi [Thu, 14 Jun 2012 22:20:52 +0000 (22:20 +0000)]
PR libstdc++/53270
* include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
NSDMI in C++11 mode.
* include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
destructor when initialized by function.

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

12 years ago PR libstdc++/53648
redi [Thu, 14 Jun 2012 22:07:33 +0000 (22:07 +0000)]
PR libstdc++/53648
* include/std/tuple (__empty_not_final): Do not use EBO for tuples.
* testsuite/20_util/tuple/53648.cc: New.
* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
number.

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

12 years ago * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
redi [Thu, 14 Jun 2012 20:32:11 +0000 (20:32 +0000)]
* doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.

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

12 years agoFix my previous commit to:
uros [Thu, 14 Jun 2012 19:38:12 +0000 (19:38 +0000)]
Fix my previous commit to:

* config/i386/i386.md (*zero_extendsidi2): Remove x,x alternative.
(*zero_extendsidi2_rex64): Ditto.

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

12 years ago PR target/53568
olegendo [Thu, 14 Jun 2012 19:33:10 +0000 (19:33 +0000)]
PR target/53568
* config/sh/sh.md: Add peephole for swapbsi2.
(*swapbisi2_and_shl8, *swapbhisi2): New insns and splits.

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

12 years ago * config/i386/i386.md (*zero_extendsidi2): Mark movd alternatives
uros [Thu, 14 Jun 2012 18:51:36 +0000 (18:51 +0000)]
* config/i386/i386.md (*zero_extendsidi2): Mark movd alternatives
SSE2 only.  Remove x,x alternative.
(*zero_extendsidi2_rex64): Ditto.

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

12 years ago PR target/53639
jakub [Thu, 14 Jun 2012 18:26:53 +0000 (18:26 +0000)]
PR target/53639
* config/i386/i386.md (*anddi_1 into *andsi_1_zext splitter): New.

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

12 years ago * arm.c (arm_cirrus_insn_p): Delete.
rearnsha [Thu, 14 Jun 2012 16:00:55 +0000 (16:00 +0000)]
* arm.c (arm_cirrus_insn_p): Delete.
(cirrus_reorg): Delete.
(arm_reorg): Don't call cirrus_reorg.
(arm_final_prescan_insn_p): Don't check for cirrus insns.
* arm.md (define_attr "type"): Remove mav_farith and mav_dmult.
(adddi3, subdi3): Remove Maverick support.
(arm_adddi3): Likewise.
(adddi_sesidi_di, adddi_zesidi_di): Likewise.
(addsf3, adddf3): Likewise.
(subsf3, subdf3): Likewise.
(mulsf3, muldf3): Likewise.
(ashldi3, ashrdi3, lshrdi3): Likewise.
(floatsisf2, floatsidf2): Likewise.
(fix_truncsfsi2, fix_truncdfsi2): Likewise.
(arm_movdi, thumb1_movdi_insn): Likewise.
(arm_cmpdi_insn): Likewise.
(cirrus_cmpsf, cirrus_cmpdf, cirrus_cmpdi): Likewise.
(cirrus.md): Don't include.
* cirrus.md: Delete file.
* t-arm (MD_INCLUDES): Remove cirrus.md.

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

12 years ago * dwarf2out.c (function_possibly_abstracted_p): New static function.
ebotcazou [Thu, 14 Jun 2012 14:09:05 +0000 (14:09 +0000)]
* dwarf2out.c (function_possibly_abstracted_p): New static function.
(gen_subprogram_die): Use it function_possibly_abstracted_p in lieu of
cgraph_function_possibly_inlined_p.
(gen_inlined_subroutine_die): Return if the origin is to be ignored.
(process_scope_var): Do not emit concrete instances of abstracted
nested functions from here.
(gen_decl_die): Emit the abstract instance if the function is possibly
abstracted and not only possibly inlined.
(dwarf2out_finish): Find the first non-abstract parent instance and
attach concrete instances on the limbo list to it.

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

12 years ago * arm.md (divsf3, divdf3): Remove FPA support.
rearnsha [Thu, 14 Jun 2012 13:02:52 +0000 (13:02 +0000)]
* arm.md (divsf3, divdf3): Remove FPA support.
(negsf2, negdf2): Likewise.
(sqrtsf2, sqrtdf2): Likewise.
(movdfcc): Likewise.
(modsf3, moddf3, movxf): Delete.
(push_fp_multi): Delete.
(fpa.md): Don't include it.
* fpa.md: Delete file.
* t-arm (MD_INCLUDES): Remove fpa.md.

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

12 years ago2012-06-14 Jose Ruiz <ruiz@adacore.com>
charlet [Thu, 14 Jun 2012 12:48:22 +0000 (12:48 +0000)]
2012-06-14  Jose Ruiz  <ruiz@adacore.com>

* gcc-interface/Make-lang.in (ada.install-common, ada.uninstall):
Use the prefix specified with the --program-prefix configure option
to determine the install name of the Ada tools.
(ada.all.cross): Use a for loop to iterate over the set of Ada tools
instead of duplicate the same processing.
Update dependencies.

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

12 years ago2012-06-14 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Thu, 14 Jun 2012 12:21:36 +0000 (12:21 +0000)]
2012-06-14  Bill Schmidt  <wschmidt@linux.ibm.com>

* tree-vectorizer.h (vect_get_stmt_cost): Move from tree-vect-stmts.c.
(cost_for_stmt): Remove decl.
(vect_get_single_scalar_iteration_cost): Correct typo in name.
* tree-vect-loop.c (vect_get_cost): Remove.
(vect_get_single_scalar_iteration_cost): Correct typo in name; use
vect_get_stmt_cost rather than vect_get_cost.
(vect_get_known_peeling_cost): Use vect_get_stmt_cost rather than
vect_get_cost.
(vect_estimate_min_profitable_iters): Correct typo in call to
vect_get_single_scalar_iteration_cost; use vect_get_stmt_cost rather
than vect_get_cost.
(vect_model_reduction_cost): Use vect_get_stmt_cost rather than
vect_get_cost.
(vect_model_induction_cost): Likewise.
* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Correct
typo in call to vect_get_single_scalar_iteration_cost.
* tree-vect-stmts.c (vect_get_stmt_cost): Move to tree-vectorizer.h.
(cost_for_stmt): Remove unnecessary function.
* Makefile.in (TREE_VECTORIZER_H): Update dependencies.

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

12 years ago2012-06-14 Vincent Pucci <pucci@adacore.com>
charlet [Thu, 14 Jun 2012 10:56:22 +0000 (10:56 +0000)]
2012-06-14  Vincent Pucci  <pucci@adacore.com>

* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_Symbol
call replaced by Expand_Put_Call_With_Symbol call.
* sem_dim.adb: New fields Unit_Names, Unit_Symbols
and Dim_Symbols for record type System_Type.
(From_Dimension_To_String_Of_Symbols): Removed.
(From_Dim_To_Str_Of_Dim_Symbols): Renames previous
routine From_Dimension_To_String_Of_Symbols.
(From_Dim_To_Str_Of_Unit_Symbols): New routine.
(Analyze_Aspect_Dimension): argument Symbol in aspect
Dimension aggregate is optional. Named association implemented.
(Has_Compile_Time_Known_Expressions): Removed.
(Analyze_Aspect_Dimension_System): New
component Dim_Symbol in each Dimension aggregate in
aspect Dimension_System. Named associations implemented.
(Add_Dimension_Vector_To_Buffer): Removed.
(Add_Whole_To_Buffer): Removed.
(Expand_Put_Call_With_Dimension_Symbol.): Removed.
(Expand_Put_Call_With_Symbol): Renames previous routine
Expand_Put_Call_With_Dimension_Symbol.
(Has_Dimension_Symbols): Removed.
(Has_Symbols): Renames previous routine
Has_Dimension_Symbols. (Store_String_Oexpon): New routine.
* sem_dim.ads (Expand_Put_Call_With_Dimension_Symbol.): Removed.
(Expand_Put_Call_With_Symbol): Renames previous routine
Expand_Put_Call_With_Dimension_Symbol.
* s-diflio.adb, s-diinio.adb (Put): Symbol renames Symbols.
(Put_Dim_Of): New routines.
* s-diflio.ads, s-diinio.ads: documentation updated.
(Put): Symbol renames Symbols.
(Put_Dim_Of): New routines.
* s-dim.ads: documentation updated.
* s-dimmks.ads: dimensioned type and subtypes updated.
* snames.ads-tmpl: Name_Dim_Symbol, Name_Put_Dim_Of, Name_Symbol,
and Name_Unit_Symbol added. Name_Symbols removed.

2012-06-14  Vincent Pucci  <pucci@adacore.com>

* freeze.adb (In_Exp_Body): Expression function case added.
(Freeze_Expression): Insert the Freeze_Nodes
list before the correct current scope in case of a quantified
expression.

2012-06-14  Pascal Obry  <obry@adacore.com>

* projects.texi: Document the Install package for gprinstall.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_elim.adb (Check_For_Eliminated_Subprogram): Do not check within
a default expression.
* sem_res.adb (Resolve_Call): simplify code.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb (Check, Issue_Msg): within an instance, non-other
values in a variant part or a case expression do not have to
belong to the actual subtype.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Validate_Derived_Type_Instance): If parent is
an interface type, check whether it is itself a previous formal
already instantiated in the current list of actuals.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): The
expression for a stream attribute is a name that may be overloaded
with other declarations. To determine whether it matches the
aspect at the freeze point, it is necessary to verify that one
of its interpretations matches.

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

12 years ago2012-06-14 Robert Dewar <dewar@adacore.com>
charlet [Thu, 14 Jun 2012 10:49:59 +0000 (10:49 +0000)]
2012-06-14  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, exp_util.adb, sem_aux.ads, exp_ch9.adb,
sem_ch10.adb, freeze.adb, sem_util.adb, exp_ch4.adb,
s-taprop-dummy.adb: Minor reformatting.

2012-06-14  Vincent Pucci  <pucci@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Lock_Free
attribute case added.
* par-prag.adb (Prag): Lock_Free pragma case added.
* sem_attr.adb (Analyze_Attribute_Reference): Lock_Free attribute
case added.
* sem_ch13.adb (Analyze_Aspect_Specifications): Record_Rep_Item
call added for Aspect_Lock_Free.
* sem_ch9.adb (Allows_Lock_Free_Implementation): New Lock_Free
error messages for subprogram bodies.
(Lock_Free_Disabled): New routine.
(Analyze_Protected_Body): Call to Lock_Free_Disabled added.
* sem_prag.adb (Analyze_Pragma): Lock_Free pragma case added.
* snames.adb-tmpl (Get_Pragma_Id): Name_Lock_Free case added.
(Is_Pragma_Name): Name_Lock_Free case added.
* snames.ads-tmpl: Attribute_Lock_Free and Pragma_Lock_Free added.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* a-coorma.adb, a-cborma.adb, a-cbhama.adb, a-ciorma.adb: Add missing
aliased keyword.

2012-06-14  Bob Duff  <duff@adacore.com>

* lib.ads, lib.adb, sem.adb (Write_Unit_Info): Move this
procedure from Sem body to Lib spec, so it can be used for
debugging elsewhere.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Check_Conformance): Add Ada 2012 check on mode
conformance: "aliased" must apply to both or neither formal
parameters.

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

12 years ago2012-06-14 Gary Dismukes <dismukes@adacore.com>
charlet [Thu, 14 Jun 2012 10:46:14 +0000 (10:46 +0000)]
2012-06-14  Gary Dismukes  <dismukes@adacore.com>

* exp_ch9.adb: Minor reformatting.

2012-06-14  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Freeze_Record_Type): Warn about useless bit order
specification [when there's no component clause] regardless
of whether the specified bit order is reversed or not.

2012-06-14  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c (__gnat_personality_seh0): New function.

2012-06-14  Tristan Gingold  <gingold@adacore.com>

* gnatname.adb (Gnatname): Make sure that dynamic table
argument_data is initialized.

2012-06-14  Robert Dewar  <dewar@adacore.com>

* sem_aux.adb: Minor code reorganization.

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

12 years ago2012-06-14 Vincent Pucci <pucci@adacore.com>
charlet [Thu, 14 Jun 2012 10:43:53 +0000 (10:43 +0000)]
2012-06-14  Vincent Pucci  <pucci@adacore.com>

* einfo.adb einfo.ads (Get_Rep_Item): Removed.
(Get_Rep_Item_For_Entity): Removed.
(Get_Rep_Pragma): Removed.
(Get_Rep_Pragma_For_Entity): Removed.
(Has_Rep_Item): Removed.
(Has_Rep_Pragma): Removed.
(Has_Rep_Pragma_For_Entity): Removed.
* exp_ch9.adb (Expand_N_Task_Type_Declaration):
Has_Rep_Pragma_For_Entity replaced by Has_Rep_Pragma
and Get_Rep_Pragma_For_Entity replaced by Get_Rep_Pragma.
(Make_Task_Create_Call): Has_Rep_Pragma_For_Entity replaced
by Has_Rep_Pragma and Get_Rep_Pragma_For_Entity replaced by
Get_Rep_Pragma.
* exp_intr.adb: Dependency to Sem_Aux added for call to Get_Rep_Pragma.
* sem_aux.adb (Get_Rep_Item): New routine.
(Get_Rep_Pragma): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma): New routine.
(Nearest_Ancestor): Minor reformatting.
* sem_aux.ads (Get_Rep_Item): New routine.
(Get_Rep_Pragma): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma): New routine.
* sem_ch13.adb (Duplicate_Clause): Restore original error messages.
* sem_eval.adb (Subtypes_Statically_Match): Get_Rep_Item_For_Entity
replaced by Get_Rep_Item.
* sem_prag.adb (Analyze_Pragma): Restore original error messages.
(Check_Duplicate_Pragma): Restore original error messages.

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

12 years ago2012-06-14 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 14 Jun 2012 10:39:51 +0000 (10:39 +0000)]
2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_Object_Reference): in Ada 2012, qualified
expressions are valid names.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_Compilation_Unit): If the unit is an
instantiation do not emit warnings for obsolescent units. The
warnings belong on the corresponding generic.

2012-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb: Update the usage of Node15.
(Return_Flag_Or_Transient_Decl): Removed.
(Set_Return_Flag_Or_Transient_Decl): Removed.
(Set_Status_Flag_Or_Transient_Decl): New routine.
(Status_Flag_Or_Transient_Decl): New routine.
(Write_Field15_Name): Update the output for variables and constants.
* einfo.ads: Remove attribute
Return_Flag_Or_Transient_Decl along with occurrences in nodes.
(Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
(Set_Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
(Set_Status_Flag_Or_Transient_Decl): New routine along with pragma
Inline.
(Status_Flag_Or_Transient_Decl): New routine along with pragma Inline.
* exp_ch4.adb (Create_Alternative): New routine.
(Expand_N_Conditional_Expression): Handle the case
where at least one of the conditional expression
alternatives prodices a controlled temporary by means of a function
call.
(Is_Controlled_Function_Call): New routine.
(Process_Transient_Object): Update the call to
Set_Return_Flag_Or_Transient_Decl.
* exp_ch6.adb (Enclosing_Context): New routine.
(Expand_N_Extended_Return_Statement): Update all calls to
Set_Return_Flag_Or_Transient_Decl.
(Expand_Ctrl_Function_Call): Prohibit the finalization of a controlled
function result when the context is a conditional expression.
* exp_ch7.adb (Process_Declarations): Update all calls to
Return_Flag_Or_Transient_Decl. Add processing for intermediate
results of conditional expressions where one of the alternatives
uses a controlled function call.
(Process_Object_Declaration): Update all calls to
Return_Flag_Or_Transient_Decl and rearrange the logic to process
"hook" objects first.
(Process_Transient_Objects): Update the call to
Set_Return_Flag_Or_Transient_Decl.
* exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean,
Boolean)): Update all calls to Return_Flag_Or_Transient_Decl. Add
detection for intermediate results of conditional expressions
where one of the alternatives uses a controlled function call.

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

12 years ago2012-06-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jun 2012 09:38:47 +0000 (09:38 +0000)]
2012-06-14  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/vrp.h: New testcase.
* gcc.dg/tree-ssa/vrp68.c: Likewise.

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

12 years ago * arm.opt (mfp=2, mfp=3, mfpe, mfpe=2, mfpe=3): Delete options.
rearnsha [Thu, 14 Jun 2012 09:24:51 +0000 (09:24 +0000)]
* arm.opt (mfp=2, mfp=3, mfpe, mfpe=2, mfpe=3): Delete options.
        * arm-fpus.def (fpa, fpe2, fpe3, maverick): Delete FPU types.
* arm-tables.opt: Regenerated.
        * doc/invoke.texi: Remove references to deleted options.

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

12 years agoAdded offset bits of MOVA/Sz assembly instruction for memory access
jayants [Thu, 14 Jun 2012 09:08:49 +0000 (09:08 +0000)]
Added offset bits of MOVA/Sz assembly instruction for memory access

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

12 years agoAdded offset bits of MOVA/Sz assembly instruction for memory access
jayants [Thu, 14 Jun 2012 08:47:28 +0000 (08:47 +0000)]
Added offset bits of MOVA/Sz assembly instruction for memory access

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

12 years agoPR target/53621
chrbr [Thu, 14 Jun 2012 08:38:22 +0000 (08:38 +0000)]
PR target/53621
* config/sh/sh.c (sh_option_override): Don't force
flag_omit_frame_pointer and maccumulate_outgoing_args.
* config/sh/sh.opt (maccumulate-outgoing-args): Init as Var.

* gcc.dg/stack-usage-1.c: Force -fomit-frame-pointer on SH.

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

12 years ago2012-06-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jun 2012 07:52:32 +0000 (07:52 +0000)]
2012-06-14  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (VR_INITIALIZER): New define.
(ranges_from_anti_range): New function.
(extract_range_from_binary_expr_1): Decompose operations on
VR_ANTI_RANGEs to operations on VR_RANGE.
(extract_range_from_unary_expr_1): Likewise.
(extract_range_from_binary_expr_1, extract_range_from_binary_expr,
extract_range_from_unary_expr_1, extract_range_from_unary_expr,
extract_range_from_cond_expr, adjust_range_with_scev,
vrp_visit_assignment_or_call, vrp_visit_phi_node,
simplify_bit_ops_using_ranges): Use VR_INITIALIZER.

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

12 years agogcc/testsuite/
rsandifo [Thu, 14 Jun 2012 07:05:25 +0000 (07:05 +0000)]
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Handle -msynci.

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

12 years agocompiler, reflect: Quote package path with tabs.
ian [Thu, 14 Jun 2012 05:04:04 +0000 (05:04 +0000)]
compiler, reflect: Quote package path with tabs.

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

12 years agolibgo: Make the subdirectory in the CHECK target.
ian [Thu, 14 Jun 2012 04:47:45 +0000 (04:47 +0000)]
libgo: Make the subdirectory in the CHECK target.

From Andreas Schwab.

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

12 years agocompiler: Avoid unnecessary interface conversions.
ian [Thu, 14 Jun 2012 00:47:38 +0000 (00:47 +0000)]
compiler: Avoid unnecessary interface conversions.

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

12 years agoDaily bump.
gccadmin [Thu, 14 Jun 2012 00:18:01 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago PR testsuite/20771
janis [Wed, 13 Jun 2012 22:55:56 +0000 (22:55 +0000)]
PR testsuite/20771
* lib/dg-pch.exp (dg-flags-pch): Add flags to make compile lines in
test summary unique.

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

12 years ago * lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
janis [Wed, 13 Jun 2012 22:55:15 +0000 (22:55 +0000)]
* lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
scan-not-hiddent, scan-file, scan-file-not, scan-stack-usage,
scan-stack-usage-not): Don't strip torture options from test name.

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

12 years ago * lib/scandump.exp (scan-dump-times): Use printable version of
janis [Wed, 13 Jun 2012 22:54:24 +0000 (22:54 +0000)]
* lib/scandump.exp (scan-dump-times): Use printable version of
regexp in test summary line.

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

12 years ago * gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
janis [Wed, 13 Jun 2012 22:53:42 +0000 (22:53 +0000)]
* gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
messages reported for one line of source code.
* gcc.dg/format/few-1.c: Likewise.
* gcc.dg/ia64-sync-2.c: Likewise.
* gcc.dg/sync-2.c: Likewise.
* gcc.dg/noncompile/pr44517.c: Likewise.

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

12 years agoAdd and use HOST_WIDEST_INT_C, HOST_WIDE_INT_C.
rth [Wed, 13 Jun 2012 21:52:47 +0000 (21:52 +0000)]
Add and use HOST_WIDEST_INT_C, HOST_WIDE_INT_C.

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

12 years ago * gcc.pot: Regenerate.
jsm28 [Wed, 13 Jun 2012 21:49:11 +0000 (21:49 +0000)]
* gcc.pot: Regenerate.

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

12 years ago * cpplib.pot: Regenerate.
jsm28 [Wed, 13 Jun 2012 21:48:00 +0000 (21:48 +0000)]
* cpplib.pot: Regenerate.

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

12 years agogcc/ChangeLog:
aoliva [Wed, 13 Jun 2012 21:43:51 +0000 (21:43 +0000)]
gcc/ChangeLog:
PR debug/49888
* var-tracking.c: Include alias.h.
(overlapping_mems): New struct.
(drop_overlapping_mem_locs): New.
(clobber_overlapping_mems): New.
(var_mem_delete_and_set, var_mem_delete): Call it.
(val_bind): Likewise, but only if modified.
(compute_bb_dataflow, emit_notes_in_bb): Call it on MEMs.
* Makefile.in (var-tracking.o): Depend in $(ALIAS_H).
gcc/testsuite/ChangeLog:
PR debug/49888
* gcc.dg/guality/pr49888.c: New.

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

12 years agoPR debug/47624
aoliva [Wed, 13 Jun 2012 21:43:19 +0000 (21:43 +0000)]
PR debug/47624
* var-tracking.c (loc_exp_dep_pool): New.
(vt_emit_notes): Create and release the pool.
(compute_bb_dataflow): Use value-based locations in MO_VAL_SET.
(emit_notes_in_bb): Likewise.
(loc_exp_dep_insert): Deal with NOT_ONEPART vars.
(notify_dependents_of_changed_value): Likewise.
(notify_dependents_of_resolved_value): Check that NOT_ONEPART
variables don't have a VAR_LOC_DEP_LST.
(emit_note_insn_var_location): Expand NOT_ONEPART locs that are
VALUEs or MEMs of VALUEs.

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

12 years ago * sr.po: New.
jsm28 [Wed, 13 Jun 2012 21:39:19 +0000 (21:39 +0000)]
* sr.po: New.

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

12 years agoPR debug/52983
aoliva [Wed, 13 Jun 2012 20:41:55 +0000 (20:41 +0000)]
PR debug/52983
PR debug/48866
* dce.c (word_dce_process_block): Insert debug temps only if the
insn is not marked.
(dce_process_block): Likewise, and if debug.used is not empty,
and only after iterating over all DEFs that might mark the insn.

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

12 years agogcc/ChangeLog:
aoliva [Wed, 13 Jun 2012 20:41:41 +0000 (20:41 +0000)]
gcc/ChangeLog:
* common.opt (ftree-coalesce-inlined-vars): New.
(ftree-coalesce-vars): New.
* doc/invoke.texi: Document them.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
Implement them.
gcc/testsuite/ChangeLog:
* g++.dg/tree-ssa/ivopts-2.C: Adjust for coalescing.
* gcc.dg/tree-ssa/forwprop-11.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.

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