OSDN Git Service

pf3gnuchains/gcc-fork.git
13 years ago * gcc-interface/decl.c: Do not undefine IN_GCC_FRONTEND and do not
ebotcazou [Wed, 4 Aug 2010 06:49:08 +0000 (06:49 +0000)]
* gcc-interface/decl.c: Do not undefine IN_GCC_FRONTEND and do not
include expr.h.
(gnat_to_gnu_entity) <object>: Force address of -1 at the tree level
for the debug-only entity.
* gcc-interface/Make-lang.in (ada/decl.o): Adjust dependencies.

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

13 years agoDaily bump.
gccadmin [Wed, 4 Aug 2010 00:17:28 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago * simplify-rtx.c (simplify_binary_operation_1): Try to simplify away
bernds [Tue, 3 Aug 2010 23:48:52 +0000 (23:48 +0000)]
* simplify-rtx.c (simplify_binary_operation_1): Try to simplify away
NEG as operand of a MULT by merging it with the other operand.
* combine.c (make_compound_operation): Use trunc_int_for_mode when
generating a MULT with constant.  Canonicalize PLUS and MINUS involving
MULT.
* config/arm/constraints.md (M): Examine only 32 bits of a
HOST_WIDE_INT.
* config/arm/predicates.md (power_of_two_operand): Likewise.

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

13 years ago2010-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Tue, 3 Aug 2010 22:02:30 +0000 (22:02 +0000)]
2010-08-03  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/45159
* dependency.c (gfc_deb_compare_expr):  Remove any integer
conversion functions to larger types from both arguments.
Remove handling these functions futher down.

2010-08-03  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/45159
* gfortran.dg/dependency_30.f90:  New test.

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

13 years ago * config/spu/spu.c (spu_emit_branch_hint): Do not access NOTE_KIND of
uweigand [Tue, 3 Aug 2010 18:01:52 +0000 (18:01 +0000)]
* config/spu/spu.c (spu_emit_branch_hint): Do not access NOTE_KIND of
non-NOTE insns.

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

13 years ago * ipa-split.c (struct split_point): Add split_part_set_retval.
hubicka [Tue, 3 Aug 2010 14:23:04 +0000 (14:23 +0000)]
* ipa-split.c (struct split_point): Add split_part_set_retval.
(find_retval): Forward declare.
(test_nonssa_use, mark_nonssa_use): Special case return by reference.
(consider_split): Compute current->split_part_set_retval.
(visit_bb): Do not look into return value.
(split_function): Handle !split_part_set_retval

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

13 years ago2010-08-03 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 3 Aug 2010 11:50:25 +0000 (11:50 +0000)]
2010-08-03  Martin Jambor  <mjambor@suse.cz>

* tree-sra.c (completely_scalarize_record): New parameter REF, create
its own access->expr intead of using build_ref_for_offset.

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

13 years ago2010-08-03 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 3 Aug 2010 11:08:50 +0000 (11:08 +0000)]
2010-08-03  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44584
PR fortran/45161
* class.c (add_procs_to_declared_vtab1): Don't add erroneous procedures.
* resolve.c (resolve_tb_generic_targets): Check for errors.

2010-08-03  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44584
PR fortran/45161
* gfortran.dg/typebound_call_9.f03: Modified.
* gfortran.dg/typebound_generic_1.f03: Modified.

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

13 years ago * config/alpha/alpha.h (SWITCH_TAKES_ARG): Define.
jsm28 [Tue, 3 Aug 2010 09:42:46 +0000 (09:42 +0000)]
* config/alpha/alpha.h (SWITCH_TAKES_ARG): Define.
* config/alpha/osf5.h (LIB_SPEC): Don't handle -a.
* config/bfin/bfin.h (ASM_SPEC, LINK_SPEC): Don't pass -G*
options.
* config/darwin.h (WORD_SWITCH_TAKES_ARG): Handle -iframework.
* config/ia64/ia64.h (SWITCH_TAKES_ARG): Define.
* config/iq2000/iq2000.h (SWITCH_TAKES_ARG): Remove.
* config/rs6000/sysv4.h (SWITCH_TAKES_ARG): Define using
DEFAULT_SWITCH_TAKES_ARG.
* config/rx/rx.opt (-patch=): Remove option.
* config/rx/rx.c (rx_handle_option): Don't handle OPT_patch_.
* defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Handle -imultilib.
* doc/invoke.texi (RX Options): Remove -patch=.
* gcc.c (cc1_options): Pass -aux-info* instead of -a* options.
(option_map): Remove --profile-blocks, --quiet and --silent.

ada:
* gcc-interface/lang-specs.h: Don't pass -a options.

c-family:
* c.opt (-print-pch-checksum): Remove option.
* c-opts.c (c_common_handle_option): Don't handle
OPT_print_pch_checksum.

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

13 years ago * config/i386/i386.h (ix86_compare_op0, ix86_compare_op1): Remove.
uros [Tue, 3 Aug 2010 09:25:22 +0000 (09:25 +0000)]
* config/i386/i386.h (ix86_compare_op0, ix86_compare_op1): Remove.
* config/i386/i386.c (ix86_compare_op0, ix86_compare_op1): Remove.
(ix86_expand_branch): Add op0 and op1 arguments.  Do not access
ix86_compare_op0 and ix86_compare_op1, use op0 and op1 instead.
Update calls to ix86_expand_compare and ix86_expand_branch.
(ix86_expand_setcc): Add op0 and op1 arguments.  Update calls to
ix86_expand_compare.
(ix86_expand_compare): Add op0 and op1 arguments.  Do not access
ix86_compare_op0 and ix86_compare_op1, use op0 and op1 instead.
Make static.
(ix86_expand_carry_flag_compare): Do not set ix86_compare_op0
and ix86_compare_op1.  Update calls to ix86_expand_compare.
(ix86_expand_int_movcc): Ditto.
(ix86_expand_fp_movcc): Ditto.  Update calls to ix86_expand_setcc.
* config/i386/i386-protos.h (ix86_expand_branch): Update prototype.
(ix86_expand_setcc): Ditto.
(ix86_expand_compare): Remove prototype.
* config/i386/i386.md (cbranch<SDWIM:mode>4): Do not set
ix86_compare_op0 and ix86_compare_op1.  Update calls
to ix86_expand_branch to directly pass operands[1] and operands[2].
(cbranchxf4): Ditto.
(cbranch<MODEF:mode>4): Ditto.
(cbranchcc4): Ditto.
(cstore<SWIM:mode>4): Do not set ix86_compare_op0 and ix86_compare_op1.
Update calls to ix86_expand_setcc to directly pass operands[2] and
operands[3].
(cstorexf4): Ditto.
(cstore<MODEF:mode>4): Ditto.
(cstorecc4): Ditto.

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

13 years agoDaily bump.
gccadmin [Tue, 3 Aug 2010 00:17:02 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago2010-08-02 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 2 Aug 2010 22:04:36 +0000 (22:04 +0000)]
2010-08-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/45159
* depencency.c (gfc_dep_resolver):  Fix logic for when a loop
can be reversed.

2010-08-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/45159

* gfortran.dg/dependency_29.f90:  New test.

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

13 years ago PR target/45063
bernds [Mon, 2 Aug 2010 20:17:59 +0000 (20:17 +0000)]
PR target/45063
* caller-save.c (save_call_clobbered_regs): Remove regs from
hard_regs_saved when they are set.

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

13 years ago target/41089
uros [Mon, 2 Aug 2010 17:26:40 +0000 (17:26 +0000)]
target/41089
* config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset
as volatile.

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

13 years ago2010-08-02 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 2 Aug 2010 16:53:51 +0000 (16:53 +0000)]
2010-08-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/36854
* dependency.h:  Add prototype for gfc_are_identical_variables.
* frontend-passes.c:  Include depencency.h.
(optimimize_equality):  Use gfc_are_identical_variables.
* dependency.c (identical_array_ref): New function.
(gfc_are_identical_variables):  New function.
(gfc_deb_compare_expr):  Use gfc_are_identical_variables.
* dependency.c (gfc_check_section_vs_section).  Rename gfc_
prefix from statc function.
(check_section_vs_section): Change arguments to gfc_array_ref,
adjust function body accordingly.

2010-08-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/36854
* gfortran.dg/character_comparison_2.f90:  New test.
* gfortran.dg/character_comparison_3.f90:  New test.
* gfortran.dg/dependency_28.f90:  New test.

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

13 years agoAdd -ftree-loop-distribute-patterns enabled at -O3.
spop [Mon, 2 Aug 2010 16:20:36 +0000 (16:20 +0000)]
Add -ftree-loop-distribute-patterns enabled at -O3.

2010-08-02  Sebastian Pop  <sebastian.pop@amd.com>

* common.opt (ftree-loop-distribute-patterns): New.
* invoke.texi (-ftree-loop-distribute-patterns): Documented.
* opts.c (decode_options): Enable flag_tree_loop_distribute_patterns
at -O3.
* tree-data-ref.c (stores_zero_from_loop): New.
* tree-data-ref.h (stores_zero_from_loop): Declared.
* tree-loop-distribution.c (tree_loop_distribution): Call
stores_zero_from_loop.
(tree_loop_distribution): Check flag_tree_loop_distribute_patterns.

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

13 years ago2010-08-02 Mikael Morin <mikael@gcc.gnu.org>
mikael [Mon, 2 Aug 2010 15:30:47 +0000 (15:30 +0000)]
2010-08-02  Mikael Morin  <mikael@gcc.gnu.org>
    Janus Weil  <janus@gcc.gnu.org>

PR fortran/42051
PR fortran/44064
PR fortran/45151
* intrinsic.c (gfc_get_intrinsic_sub_symbol): Commit changed symbol.
* symbol.c (gen_cptr_param, gen_fptr_param, gen_shape_param,
gfc_copy_formal_args, gfc_copy_formal_args_intr,
gfc_copy_formal_args_ppc, generate_isocbinding_symbol): Ditto.
* parse.c (parse_derived_contains, parse_spec, parse_progunit):
Call reject_statement in case of error.
(match_deferred_characteritics): Call gfc_undo_symbols in case match
fails.

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

13 years ago * config/arm/arm.c (arm_rtx_costs_1): Remove second clause from the
bernds [Mon, 2 Aug 2010 10:21:05 +0000 (10:21 +0000)]
* config/arm/arm.c (arm_rtx_costs_1): Remove second clause from the
if statement which adds extra costs to frame-related expressions.

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

13 years ago PR target/40457
bernds [Mon, 2 Aug 2010 10:06:47 +0000 (10:06 +0000)]
PR target/40457
* config/arm/arm.h (arm_regs_in_sequence): Declare.
* config/arm/arm-protos.h (emit_ldm_seq, emit_stm_seq,
load_multiple_sequence, store_multiple_sequence): Delete
declarations.
(arm_gen_load_multiple, arm_gen_store_multiple): Adjust
declarations.
* config/arm/ldmstm.md: New file.
* config/arm/arm.c (arm_regs_in_sequence): New array.
(load_multiple_sequence): Now static.  New args SAVED_ORDER,
CHECK_REGS.  All callers changed.
If SAVED_ORDER is nonnull, copy the computed order into it.
If CHECK_REGS is false, don't sort REGS.  Handle Thumb mode.
(store_multiple_sequence): Now static.  New args NOPS_TOTAL,
SAVED_ORDER, REG_RTXS and CHECK_REGS.  All callers changed.
If SAVED_ORDER is nonnull, copy the computed order into it.
If CHECK_REGS is false, don't sort REGS.  Set up REG_RTXS just
like REGS.  Handle Thumb mode.
(arm_gen_load_multiple_1): New function, broken out of
arm_gen_load_multiple.
(arm_gen_store_multiple_1): New function, broken out of
arm_gen_store_multiple.
(arm_gen_multiple_op): New function, with code from
arm_gen_load_multiple and arm_gen_store_multiple moved here.
(arm_gen_load_multiple, arm_gen_store_multiple): Now just
wrappers around arm_gen_multiple_op.  Remove argument UP, all callers
changed.
(gen_ldm_seq, gen_stm_seq, gen_const_stm_seq): New functions.
* config/arm/predicates.md (commutative_binary_operator): New.
(load_multiple_operation, store_multiple_operation): Handle more
variants of these patterns with different starting offsets.  Handle
Thumb-1.
* config/arm/arm.md: Include "ldmstm.md".
(ldmsi_postinc4, ldmsi_postinc4_thumb1, ldmsi_postinc3, ldmsi_postinc2,
ldmsi4, ldmsi3, ldmsi2, stmsi_postinc4, stmsi_postinc4_thumb1,
stmsi_postinc3, stmsi_postinc2, stmsi4, stmsi3, stmsi2 and related
peepholes): Delete.
* config/arm/ldmstm.md: New file.
* config/arm/arm-ldmstm.ml: New file.

testsuite/
PR target/40457
* gcc.target/arm/pr40457-1.c: New test.
* gcc.target/arm/pr40457-2.c: New test.

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

13 years ago * config/arm/thumb2.md (thumb2_movdi, thumb2_movsf_soft_insn,
bernds [Mon, 2 Aug 2010 09:53:58 +0000 (09:53 +0000)]
* config/arm/thumb2.md (thumb2_movdi, thumb2_movsf_soft_insn,
thumb2_movdf_soft_insn): Delete patterns.
* config/arm/arm.md (arm_pool_range, thumb2_pool_range,
arm_neg_pool_range, thumb2_neg_pool_range): New attributes.
(pool_range, neg_pool_range): Use them to define defaults.
(movdi, arm_movsf_soft_insn, arm_movdf_soft_insn): Define them
and allow for TARGET_32BIT.

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

13 years ago * final.c (final_scan_insn): Call CC_STATUS_INIT unconditionally.
bernds [Mon, 2 Aug 2010 09:51:39 +0000 (09:51 +0000)]
* final.c (final_scan_insn): Call CC_STATUS_INIT unconditionally.
* config/arm/arm.c (thumb1_code): New variable.
(arm_override_options): Set it.
(thumb1_final_prescan_insn): Keep track of condition code status.
(arm_adjust_cost): For Thumb, try to keep cc-setting insns next to
jumps that depend on them.
* config/arm/arm.h (thumb1_code): Declare variable.
(struct machine_function): Guard with #ifndef GENERATOR_FILE.  Add
members thumb1_cc_insn, thumb1_cc_op0, thumb1_cc_op1 and
thumb1_cc_mode.
(CC_STATUS_INIT): New macro.
* config/arm/constraints.md (Pd): New constraint.
* config/arm/predicates.md (noov_comparison_operator): New predicate.
* config/arm/arm.md (is_thumb1): New define_attr.
(conds): Set default to "clob" when generating Thumb1 code.
(thumb1_bicsi3): Renamed from bicsi3.  All uses changed.  Condition
code are set.  Use two-operand assembly syntax.
(thumb1_subsi3_insn): Condition codes are set.  Now a properly named
pattern.
(thumb1_andsi3_insn, thumb1_iorsi3_insn, thumb1_xorsi3_insn): Condition
codes are set.  Use two-operand assembly syntax.
(zero_extendhisi splitter): Remove constraints.
(thumb1_movsi_insn, thumb1_movhi_insn, thumb1_movqi_insn, thumb1_movhf,
thumb1_movsf_insn): Set conds attribute as appropriate.
(cbranchsi4_insn): Use condition code status from struct
machine_function to determine whether the comparison can be eliminated.
Discourage the alternative using high registers.
(movsi_cbranchsi4, andsi3_cbranch, orrsi3_cbranch_scratch,
orrsi3_cbranch, xorsi3_cbranch_scratch, xorsi3_cbranch,
bicsi3_cbranch_scratch, bicsi3_cbranch, subsi3_cbranch_scratch,
subsi3_cbranch): Delete.
(movsi_cbranchsi4 peepholes): Rewrite to generate a sequence of
one subtract and one cbranch insn.

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

13 years ago * postreload.c (reload_cse_simplify_operands): Take attribute enabled
bernds [Mon, 2 Aug 2010 09:42:37 +0000 (09:42 +0000)]
* postreload.c (reload_cse_simplify_operands): Take attribute enabled
into account.

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

13 years ago2010-08-02 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
ramana [Mon, 2 Aug 2010 08:52:15 +0000 (08:52 +0000)]
2010-08-02  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.c (COSTS_N_INSNS): Remove definition.

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

13 years agoDon't update the position flag for non-seekable files, check for stell() error.
jb [Mon, 2 Aug 2010 06:22:23 +0000 (06:22 +0000)]
Don't update the position flag for non-seekable files, check for stell() error.

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

13 years agoDaily bump.
gccadmin [Mon, 2 Aug 2010 00:17:15 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago * update_web_docs_libstdcxx_svn: Do not compress generated .html
gerald [Sun, 1 Aug 2010 21:10:55 +0000 (21:10 +0000)]
* update_web_docs_libstdcxx_svn: Do not compress generated .html
files any more.

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

13 years ago2010-08-01 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 1 Aug 2010 19:21:49 +0000 (19:21 +0000)]
2010-08-01  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44912
* class.c (gfc_build_class_symbol): Make '$vptr' component private.
(gfc_find_derived_vtab): Make vtabs and vtypes public.
* module.c (read_module): When reading module files, always import
vtab and vtype symbols.

2010-08-01  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44912
* gfortran.dg/typebound_call_17.f03: New.

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

13 years agoUse access(2) instead of stat(2) to test file existence.
jb [Sun, 1 Aug 2010 11:22:18 +0000 (11:22 +0000)]
Use access(2) instead of stat(2) to test file existence.

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

13 years ago PR target/45142
uros [Sun, 1 Aug 2010 10:41:57 +0000 (10:41 +0000)]
PR target/45142
* config/i386/sse.md (vec_set<mode>_0): Do not set mode attribute for
alternative 2.
(vec_set<moode>_0 splitter): Use SSEMODE4S mode iterator to also
split V4SI operands.

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

13 years ago * config/mmix/mmix.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
aesok [Sun, 1 Aug 2010 08:29:20 +0000 (08:29 +0000)]
* config/mmix/mmix.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
* config/mmix/mmix-protos.h (mmix_asm_output_source_filename): Remove.
* config/mmix/mmix.c (mmix_asm_output_source_filename): Make static.
(TARGET_ASM_OUTPUT_SOURCE_FILENAME): Define.

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

13 years agoDaily bump.
gccadmin [Sun, 1 Aug 2010 00:17:09 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago* io/inquire.c: Include io.h before string.h.
dje [Sat, 31 Jul 2010 21:37:25 +0000 (21:37 +0000)]
* io/inquire.c: Include io.h before string.h.

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

13 years ago2010-07-31 Kai Tietz <kai.tietz@onevision.com>
ktietz [Sat, 31 Jul 2010 20:00:22 +0000 (20:00 +0000)]
2010-07-31  Kai Tietz  <kai.tietz@onevision.com>

        * cppdefault.c (cpp_include_defaults): Move GCC_INCLUDE_DIR before
        LOCAL_INCLUDE_DIR.

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

13 years agoMove PR c++/45112 ChangeLog entry to correct location.
uweigand [Sat, 31 Jul 2010 17:42:48 +0000 (17:42 +0000)]
Move PR c++/45112 ChangeLog entry to correct location.

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

13 years agogcc/
rsandifo [Sat, 31 Jul 2010 15:51:17 +0000 (15:51 +0000)]
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Fix type
used in the call to optab_for_tree_code.  Fix the second
is_widening_mult_p call.  Check that both unwidened operands
have the same sign.

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

13 years agoJohn Tytgat <John.Tytgat@aaug.net>
rearnsha [Sat, 31 Jul 2010 14:27:53 +0000 (14:27 +0000)]
John Tytgat  <John.Tytgat@aaug.net>
* config/arm/arm.c (arm_function_arg): Remove superfluous test.

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

13 years ago * config/spu/spu.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
aesok [Sat, 31 Jul 2010 12:07:14 +0000 (12:07 +0000)]
* config/spu/spu.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.

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

13 years ago2010-07-31 Mikael Morin <mikael@gcc.gnu.org>
mikael [Sat, 31 Jul 2010 10:27:36 +0000 (10:27 +0000)]
2010-07-31  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/42051
PR fortran/44064
* symbol.c (changed_syms): Made non-static.
* parse.c (changed_syms): Declare new external.
(next_statement): Assert changed_syms is NULL at the beginning.

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

13 years ago * config/i386/i386.md (mov<SWIM:mode>cc and corresponding splitter):
uros [Sat, 31 Jul 2010 09:33:19 +0000 (09:33 +0000)]
* config/i386/i386.md (mov<SWIM:mode>cc and corresponding splitter):
Use ordered_comparison_operator predicate for operator1.
(add<mode>cc): ditto.

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

13 years ago* config/rx/predicates.md (rx_constshift_operand): New.
dj [Sat, 31 Jul 2010 02:32:08 +0000 (02:32 +0000)]
* config/rx/predicates.md (rx_constshift_operand): New.
* config/rx/rx.md (zs_cond): New.
(cbranchsi4): Remove mode.
(*cbranchsi4_<code>): Likewise.
(*tstbranchsi4_<code>): New.
(*tstbranchsi4r_<code>): New.
(*tstbranchsi4m_eq): New.
(*tstbranchsi4m_ne): New.
(cbranchsf4): Remove mode.
(*cbranchsf4_<code>): Likewise.

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

13 years agoDaily bump.
gccadmin [Sat, 31 Jul 2010 00:17:24 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago * rtlanal.c (simplify_subreg_regno): Don't treat
bernds [Fri, 30 Jul 2010 23:50:00 +0000 (23:50 +0000)]
* rtlanal.c (simplify_subreg_regno): Don't treat
HARD_FRAME_POINTER_REGNUM specially.

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

13 years ago2010-07-30 Janus Weil <janus@gcc.gnu.org>
janus [Fri, 30 Jul 2010 17:50:28 +0000 (17:50 +0000)]
2010-07-30  Janus Weil  <janus@gcc.gnu.org>
    Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/44929
* match.c (match_type_spec): Try to parse derived types before
intrinsic types.

2010-07-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44929
* gfortran.dg/allocate_derived_3.f90: New.

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

13 years ago * common.opt (-G): Don't define option here.
jsm28 [Fri, 30 Jul 2010 17:04:37 +0000 (17:04 +0000)]
* common.opt (-G): Don't define option here.
* config/g.opt: New.
* config.gcc: Use g.opt for alpha, frv, ia64, lm32, m32r, mips,
rs6000/powerpc and score targets.
* opts.c (common_handle_option): Don't handle -G here.
* config/alpha/alpha.c (alpha_handle_option): Handle -G.
* config/frv/frv.c (frv_handle_option): Handle -G.
* config/ia64/ia64.c (ia64_handle_option): Handle -G.
* config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION):
New.
* config/m32r/m32r.c (m32r_handle_option): Handle -G.
* config/mips/mips.c (mips_handle_option): Handle -G.
* config/rs6000/rs6000.c (rs6000_handle_option) Handle -G.
* config/score/score.c (score_handle_option): Handle -G.

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

13 years agofix test
davidxl [Fri, 30 Jul 2010 16:44:24 +0000 (16:44 +0000)]
fix test

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

13 years ago2010-07-30 Mikael Morin <mikael@gcc.gnu.org>
mikael [Fri, 30 Jul 2010 16:41:55 +0000 (16:41 +0000)]
2010-07-30  Mikael Morin  <mikael@gcc.gnu.org>

* gfortran.h (gfc_release_symbol): New prototype.
* symbol.c (gfc_release_symbol): New. Code taken from free_sym_tree.
(gfc_undo_symbols, free_sym_tree, gfc_free_finalizer):
Use gfc_release_symbol.
* parse.c (gfc_fixup_sibling_symbols): Ditto.
* resolve.c (resolve_symbol): Ditto.

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

13 years ago * config/mmix/mmix.c: Include basic-block.h.
aesok [Fri, 30 Jul 2010 16:33:10 +0000 (16:33 +0000)]
* config/mmix/mmix.c: Include basic-block.h.

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

13 years agogcc/
uweigand [Fri, 30 Jul 2010 15:49:34 +0000 (15:49 +0000)]
gcc/
PR c++/45112
* cp/decl.c (duplicate_decls): Merge DECL_USER_ALIGN and DECL_PACKED.

gcc/testsuite/
PR c++/45112
* testsuite/g++.dg/pr45112.C: New test.

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

13 years ago PR debug/45055
jakub [Fri, 30 Jul 2010 14:36:56 +0000 (14:36 +0000)]
PR debug/45055
PR rtl-optimization/45137
* rtl.h (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn): New
prototypes.
* emit-rtl.c (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn):
New functions.
* combine.c (next_nonnote_nondebug_insn): Removed.
* ifcvt.c (noce_process_if_block): Use prev_nonnote_nondebug_insn.
* haifa-sched.c (queue_to_ready): Use next_nonnote_nondebug_insn.
* sched-deps.c (sched_analyze_insn): Likewise.
(fixup_sched_groups, deps_start_bb): Use prev_nonnote_nondebug_insn.
* rtlanal.c (canonicalize_condition): Likewise.
* postreload.c (reload_combine_recognize_pattern): Likewise.
(reload_cse_move2add): Use next_nonnote_nondebug_insn.

* gcc.dg/pr45055.c: New test.

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

13 years ago * config/i386/i386.md (int_cond): Remove code iterator.
uros [Fri, 30 Jul 2010 13:06:04 +0000 (13:06 +0000)]
* config/i386/i386.md (int_cond): Remove code iterator.
(fp_cond): Ditto.
(cbranch<mode>4): Use ordered_comparison_operator predicate
for operator0.
(cstore<mode>4): Ditto for operator1.
(mov<SWIM:mode>cc): Ditto.

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

13 years ago2010-07-30 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 30 Jul 2010 11:01:22 +0000 (11:01 +0000)]
2010-07-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/45141
* expr.c (expand_expr_real_1): Check for not handled base address.

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

13 years ago2010-07-30 Andrew Haley <aph@redhat.com>
aph [Fri, 30 Jul 2010 10:49:36 +0000 (10:49 +0000)]
2010-07-30  Andrew Haley  <aph@redhat.com>

        * javax/print/attribute/standard/JobStateReasons.java (add): Fix
        infinite recursion with call to super.

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

13 years ago2010-07-30 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 30 Jul 2010 09:36:18 +0000 (09:36 +0000)]
2010-07-30  Richard Guenther  <rguenther@suse.de>

* ipa-prop.c (ipa_modify_formal_parameters): Use
build_distinct_type_copy.

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

13 years agoAdd moxie-rtems configuration.
green [Fri, 30 Jul 2010 07:14:59 +0000 (07:14 +0000)]
Add moxie-rtems configuration.

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

13 years agoTolerate half-hour timezones.
amodra [Fri, 30 Jul 2010 06:56:17 +0000 (06:56 +0000)]
Tolerate half-hour timezones.

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

13 years agoDaily bump.
gccadmin [Fri, 30 Jul 2010 00:17:44 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago * dce.c (run_word_dce): Take flag_dce into account. Clear and restore
bernds [Thu, 29 Jul 2010 23:48:24 +0000 (23:48 +0000)]
* dce.c (run_word_dce): Take flag_dce into account.  Clear and restore
df flags as in run_fast_df_dce.

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

13 years ago2010-07-29 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 29 Jul 2010 21:07:34 +0000 (21:07 +0000)]
2010-07-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45087
        PR fortran/45125
        * trans-decl.c (gfc_get_extern_function_decl): Correctly handle
        external procedure declarations in modules.
        (gfc_get_symbol_decl): Modify assert.

2010-07-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45087
        PR fortran/45125
        * gfortran.dg/whole_file_25.f90: New.
        * gfortran.dg/whole_file_26.f90: New.
        * gfortran.dg/whole_file_27.f90: New.

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

13 years ago2010-07-29 Janus Weil <janus@gcc.gnu.org>
janus [Thu, 29 Jul 2010 20:58:57 +0000 (20:58 +0000)]
2010-07-29  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44962
* resolve.c (resolve_fl_derived): Call gfc_resolve_array_spec.

2010-07-29  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44962
* gfortran.dg/typebound_proc_17.f03: New.

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

13 years ago Revert:
jakub [Thu, 29 Jul 2010 19:48:03 +0000 (19:48 +0000)]
Revert:
* rtl.def (NOTE): Swap operands 4 and 5.
        * rtl.h (NOTE_DATA, NOTE_DELETED_LABEL_NAME, NOTE_BLOCK,
NOTE_EH_HANDLER, NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION, NOTE_KIND):
Adjust accordingly.
        * gengtype.c (adjust_field_rtx_def): Swap operands 4 and 5 of NOTEs.

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

13 years ago PR debug/45110
jakub [Thu, 29 Jul 2010 19:47:02 +0000 (19:47 +0000)]
PR debug/45110
* dwarf2out.c (dwarf_attr_name): Handle DW_AT_object_pointer.
(gen_formal_types_die): Add DW_AT_object_pointer in methods.
(gen_subprogram_die): Likewise.  Remove it when removing declaration's
formal parameters.
(gen_decl_die): Change return type to dw_die_ref, return what
gen_formal_parameter_die returned.

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

13 years ago2010-07-29 Janus Weil <janus@gcc.gnu.org>
janus [Thu, 29 Jul 2010 18:14:16 +0000 (18:14 +0000)]
2010-07-29  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45004
* trans-stmt.h (gfc_trans_class_init_assign): New prototype.
(gfc_trans_class_assign): Modified prototype.
* trans.h (gfc_conv_intrinsic_move_alloc): New prototype.
* trans-expr.c (gfc_trans_class_init_assign): Split off from ...
(gfc_trans_class_assign): ... here. Modified actual arguments.
* trans-intrinsic.c (gfc_conv_intrinsic_move_alloc): New function to
handle the MOVE_ALLOC intrinsic with scalar and class arguments.
* trans.c (trans_code): Call 'gfc_conv_intrinsic_move_alloc'.

2010-07-29  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45004
* gfortran.dg/move_alloc_2.f90: New.

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

13 years ago fix PR45121
davidxl [Thu, 29 Jul 2010 17:20:05 +0000 (17:20 +0000)]
 fix PR45121

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

13 years ago2010-07-29 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 29 Jul 2010 15:30:40 +0000 (15:30 +0000)]
2010-07-29  Martin Jambor  <mjambor@suse.cz>

* dbgcnt.def (eipa_sra): New counter.
* tree-sra.c (ipa_early_sra_gate): Also check eipa_sra debug counter.

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

13 years agoRevert change in revision 162652.
hjl [Thu, 29 Jul 2010 14:30:18 +0000 (14:30 +0000)]
Revert change in revision 162652.

2010-07-29  Xinliang David Li  <davidxl@google.com>

PR bootstrap/45119
* tree-ssa-loop-ivopts.c (get_address_cost): Revert change
in revision 162652.

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

13 years ago2010-07-29 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 29 Jul 2010 13:50:00 +0000 (13:50 +0000)]
2010-07-29  Richard Guenther  <rguenther@suse.de>

* timevar.def (TV_TREE_STORE_COPY_PROP): Remove.
(TV_TREE_STORE_CCP): Likewise.
(TV_TREE_REDPHI): Likewise.

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

13 years ago2010-07-28 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 29 Jul 2010 13:45:47 +0000 (13:45 +0000)]
2010-07-28  Richard Guenther  <rguenther@suse.de>

* double-int.h (double_int_and_not): New function.
* combine.c (try_combine): Use it.
* tree-vrp.c (simplify_bit_ops_using_ranges): Likewise.

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

13 years ago PR rtl-optimization/42575
bernds [Thu, 29 Jul 2010 12:39:57 +0000 (12:39 +0000)]
PR rtl-optimization/42575
* dce.c (word_dce_process_block): Renamed from byte_dce_process_block.
Argument AU removed.  All callers changed.  Ignore artificial refs.
Use return value of df_word_lr_simulate_defs to decide whether an insn
is necessary.
(fast_dce): Rename arg to WORD_LEVEL.
(run_word_dce): Renamed from rest_of_handle_fast_byte_dce.  No longer
static.
(pass_fast_rtl_byte_dce): Delete.
* dce.h (run_word_dce): Declare.
* df-core.c (df_print_word_regset): Renamed from df_print_byteregset.
All callers changed.  Simplify code to only deal with two-word regs.
* df.h (DF_WORD_LR): Renamed from DF_BYTE_LR.
(DF_WORD_LR_BB_INFO): Renamed from DF_BYTE_LR_BB_INFO.
(DF_WORD_LR_IN): Renamed from DF_BYTE_LR_IN.
(DF_WORD_LR_OUT): Renamed from DF_BYTE_LR_OUT.
(struct df_word_lr_bb_info): Renamed from df_byte_lr_bb_info.
(df_word_lr_mark_ref): Declare.
(df_word_lr_add_problem, df_word_lr_mark_ref, df_word_lr_simulate_defs,
df_word_lr_simulate_uses): Declare or rename from byte variants.
(df_byte_lr_simulate_artificial_refs_at_top,
df_byte_lr_simulate_artificial_refs_at_end, df_byte_lr_get_regno_start,
df_byte_lr_get_regno_len, df_compute_accessed_bytes): Delete
declarations.
(df_word_lr_get_bb_info): Rename from df_byte_lr_get_bb_info.
(enum df_mm): Delete.
* df-byte-scan.c: Delete file.
* df-problems.c (df_word_lr_problem_data): Renamed from
df_byte_lr_problem_data, all members deleted except for
WORD_LR_BITMAPS, which is renamed from BYTE_LR_BITMAPS.  Uses changed.
(df_word_lr_expand_bitmap, df_byte_lr_simulate_artificial_refs_at_top,
df_byte_lr_simulate_artificial_refs_at_end, df_byte_lr_get_regno_start,
df_byte_lr_get_regno_len, df_byte_lr_check_regs,
df_byte_lr_confluence_0): Delete functions.
(df_word_lr_free_bb_info): Renamed from df_byte_lr_free_bb_info; all
callers changed.
(df_word_lr_alloc): Renamed from df_byte_lr_alloc; all callers changed.
Don't initialize members that were deleted, don't try to discover data
about registers.  Ignore hard regs.
(df_word_lr_reset): Renamed from df_byte_lr_reset; all callers changed.
(df_word_lr_mark_ref): New function.
(df_word_lr_bb_local_compute): Renamed from
df_byte_bb_lr_local_compute; all callers changed.  Use
df_word_lr_mark_ref.  Assert that artificial refs don't include
pseudos.  Ignore hard registers.
(df_word_lr_local_compute): Renamed from df_byte_lr_local_compute.
Assert that exit block uses don't contain pseudos.
(df_word_lr_init): Renamed from df_byte_lr_init; all callers changed.
(df_word_lr_confluence_n): Renamed from df_byte_lr_confluence_n; all
callers changed.  Ignore hard regs.
(df_word_lr_transfer_function): Renamed from
df_byte_lr_transfer_function; all callers changed.
(df_word_lr_free): Renamed from df_byte_lr_free; all callers changed.
(df_word_lr_top_dump): Renamed from df_byte_lr_top_dump; all callers
changed.
(df_word_lr_bottom_dump): Renamed from df_byte_lr_bottom_dump; all
callers changed.
(problem_WORD_LR): Renamed from problem_BYTE_LR; uses changed;
confluence operator 0 set to NULL.
(df_word_lr_add_problem): Renamed from df_byte_lr_add_problem; all
callers changed.
(df_word_lr_simulate_defs): Renamed from df_byte_lr_simulate_defs.
Return bool, true if bitmap changed or insn otherwise necessary.
All callers changed.  Simplify using df_word_lr_mark_ref.
(df_word_lr_simulate_uses): Renamed from df_byte_lr_simulate_uses;
all callers changed.  Simplify using df_word_lr_mark_ref.
* lower-subreg.c: Include "dce.h"
(decompose_multiword_subregs): Call run_word_dce if df available.
* Makefile.in (lower-subreg.o): Adjust dependencies.
(df-byte-scan.o): Delete.
* timevar.def (TV_DF_WORD_LR): Renamed from TV_DF_BYTE_LR.

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

13 years ago2010-07-29 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 29 Jul 2010 12:31:29 +0000 (12:31 +0000)]
2010-07-29  Richard Guenther  <rguenther@suse.de>

* tree.c (build_vector): Assert that the vector constant
has enough elements.
(build_vector_from_ctor): Pad with trailing zeros.

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

13 years ago2010-07-29 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 29 Jul 2010 12:30:09 +0000 (12:30 +0000)]
2010-07-29  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/45120
* tree-ssa-structalias.c (get_constraint_for_component_ref):
Handle offset in DEREFs properly.
(get_constraint_for_1): Handle MEM_REF offset properly.

* gcc.dg/ipa/ipa-pta-15.c: New testcase.

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

13 years ago2010-07-29 Mikael Morin <mikael@gcc.gnu.org>
mikael [Thu, 29 Jul 2010 11:22:40 +0000 (11:22 +0000)]
2010-07-29  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/42051
PR fortran/44064
* class.c (gfc_find_derived_vtab): Accept or discard newly created
symbols before returning.

2010-07-29  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/42051
PR fortran/44064
* gfortran.dg/pr42051.f03: New testcase.

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

13 years ago2010-07-29 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 29 Jul 2010 10:59:54 +0000 (10:59 +0000)]
2010-07-29  Richard Guenther  <rguenther@suse.de>

PR middle-end/45034
* convert.c (convert_to_integer): Always use an unsigned
type for narrowed negate and bitwise not.

* gcc.c-torture/execute/pr45034.c: New testcase.

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

13 years ago * lang.opt (cpp): Remove Joined and Separate markers.
jsm28 [Thu, 29 Jul 2010 09:45:08 +0000 (09:45 +0000)]
* lang.opt (cpp): Remove Joined and Separate markers.
(cpp=): New internal option.
* lang-specs.h (F951_CPP_OPTIONS): Generate -cpp= option.
* cpp.c (gfc_cpp_handle_option): Handle OPT_cpp_ instead of
OPT_cpp.

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

13 years ago2010-07-29 Daniel Kraft <d@domob.eu>
domob [Thu, 29 Jul 2010 09:06:53 +0000 (09:06 +0000)]
2010-07-29  Daniel Kraft  <d@domob.eu>

PR fortran/45117
* array.c (resolve_array_bound): Fix error message to properly handle
non-variable expressions.

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

13 years ago * tree-vect-loop.c (vect_create_epilog_for_reduction): Switch
irar [Thu, 29 Jul 2010 06:02:34 +0000 (06:02 +0000)]
* tree-vect-loop.c (vect_create_epilog_for_reduction): Switch
to outer loop when creating reduction epilogue for double reduction,
and switch back to the inner loop when updating the phi nodes.
Update uses of outer loop exit phi nodes in double reduction (instead
of uses of reduction).

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

13 years ago2010-07-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 29 Jul 2010 01:32:23 +0000 (01:32 +0000)]
2010-07-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/44931
* io/inquire.c (inquire_via_unit): Use ttyname to return actual device
file name for stdin, stdout, and stderr.  If ttyname does not succeed
fall back to default names for these units. Include string.h to allow
using strlen function.
* unix.c: Remove typedef of unix_stream structure, move to unix.h.
* unix.h: Add typedef of unix_stream structure so that it is
accessible to inquire.c.

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

13 years agoDaily bump.
gccadmin [Thu, 29 Jul 2010 00:17:14 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago2010-07-28 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 28 Jul 2010 20:02:56 +0000 (20:02 +0000)]
2010-07-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/45096
* g++.dg/cpp0x/auto3.C: Tweak dg-error string.

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

13 years agoAdd power6 copysign/parity support
meissner [Wed, 28 Jul 2010 19:58:38 +0000 (19:58 +0000)]
Add power6 copysign/parity support

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

13 years agoIVOPT performance tuning patch. The main problem is a variant of maximal weight
davidxl [Wed, 28 Jul 2010 19:13:11 +0000 (19:13 +0000)]
IVOPT performance tuning patch. The main problem is a variant of maximal weight
bipartite matching/assignment problem -- i.e., there is an additional global
cost function. The complexity of the algorighm to find the optimial solution
> O(n^2). The existing algorithm in gcc tries to find the solution in 3 stages:
1) Find the initial solution set (dynamic programing style)
2) Extend the solution set
3) Prune the soultion set.

The problem is that in step 1, the initial set tends to be too large so that
the final solution is very likely local optimal.

This patch addresses the problem and sees very large SPEC improvements.

Another area of problem is that ivopts often creates loop invariant expressions, and
such expressions increase register pressure which is not counted. This is addressed
in this patch.

The third main problem is the profile data is not considered in cost computation

The forth problem is that loop invariant comptuation's cost is not properly adjusted.

There are more tuning opportuties, namely:

1) Do not check ivs dependency during ivs set pruning (this improves deallII 8% on core2)
2) Unconditionally consider all important candidates in partial set expansion (in addition
to the extended solutino based on selected candidates)
3) revisit the two stage initial set computation.

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

13 years ago2010-07-28 Kai Tietz <kai.tietz@onevision.com>
ktietz [Wed, 28 Jul 2010 18:00:09 +0000 (18:00 +0000)]
2010-07-28  Kai Tietz  <kai.tietz@onevision.com>

        * config/i386/i386.h (MCOUNT_NAME_BEFORE_PROLOGUE): New.
        * config/i386/i386.c (ix86_profile_before_prologue): New.
        (override_options): Add special handling for -mfentry.
        (ix86_function_regparm): Likewise.
        (ix86_function_sseregparm): Likewise.
        (ix86_frame_pointer_required): Likewise.
        (ix86_expand_prologue): Check for ms_hook_prologue.
        (x86_function_profiler): Adjust mcount output.
        (TARGET_PROFILE_BEFORE_PROLOGUE): Define hook.
        * config/i386/i386.opt (mfentry): New.
        * doc/invoke.texi (mfentry): Add documentation.
        * doc/tm.texi: Regenerated..
        * doc/tm.texi.in (TARGET_PROFILE_BEFORE_PROLOGUE): New.
        * final.c (final_start_function): Replace macro
        PROFILE_BEFORE_PROLOGUE by target hook.
        * function.c (thread_prologue_and_epilogue_insns): Likewise.
        * target.def (profile_before_prologue): New hook.
        * targhooks.c (default_profile_before_prologue): New.
        * targhooks.h (default_profile_before_prologue): New.

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

13 years ago2010-07-28 Mikael Morin <mikael@gcc.gnu.org>
mikael [Wed, 28 Jul 2010 17:33:37 +0000 (17:33 +0000)]
2010-07-28  Mikael Morin  <mikael@gcc.gnu.org>

* decl.c (free_value): Also free repeat field.
* data.c (gfc_assign_data_value): Always free offset before returning.

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

13 years ago2010-07-28 Daniel Kraft <d@domob.eu>
domob [Wed, 28 Jul 2010 17:06:40 +0000 (17:06 +0000)]
2010-07-28  Daniel Kraft  <d@domob.eu>

* gfortran.h (gfc_build_intrinsic_call): New method.
* expr.c (gfc_build_intrinsic_call): New method.
* simplify.c (range_check): Ignore non-constant value.
(simplify_bound_dim): Handle non-variable expressions and
fix memory leak with non-free'ed expression.
(simplify_bound): Handle non-variable expressions.
(gfc_simplify_shape): Ditto.
(gfc_simplify_size): Ditto, but only in certain cases possible.

2010-07-28  Daniel Kraft  <d@domob.eu>

* gfortran.dg/bound_8.f90: New test.

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

13 years ago PR debug/45105
jakub [Wed, 28 Jul 2010 17:01:05 +0000 (17:01 +0000)]
PR debug/45105
* gcse.c (hoist_code): Use FOR_BB_INSNS macro.

* gcc.dg/pr45105.c: New test.

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

13 years ago PR debug/45103
jakub [Wed, 28 Jul 2010 17:00:06 +0000 (17:00 +0000)]
PR debug/45103
* dwarf2out.c (dwarf2out_var_location): Always consider
NOTE_DURING_CALL_P notes, even when not followed by real instructions.

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

13 years ago PR rtl-optimization/45107
mkuvyrkov [Wed, 28 Jul 2010 16:50:14 +0000 (16:50 +0000)]
PR rtl-optimization/45107
* gcse.c (hash_scan_set): Use max_distance for gcse-las.

PR rtl-optimization/45107
* gcc.dg/pr45107.c: New test.

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

13 years ago2010-07-28 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 28 Jul 2010 16:03:09 +0000 (16:03 +0000)]
2010-07-28  Richard Guenther  <rguenther@suse.de>

* tree-ssa-ccp.c: Remove comment regarding STORE-CCP.
(set_lattice_value): Do not query an old default value.
(get_value_for_expr): New function.  Properly canonicalize
float values.
(ccp_visit_phi_node): Use it.

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

13 years ago * config/arm/arm.c (arm_pcs_default): Remove static.
cltang [Wed, 28 Jul 2010 15:40:58 +0000 (15:40 +0000)]
* config/arm/arm.c (arm_pcs_default): Remove static.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_PCS or
__ARM_PCS_VFP to indicate soft/hard-float calling convention.
(arm_pcs_default): Declare.

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

13 years ago * MAINTAINERS (Write After Approval): Add myself.
dyuste [Wed, 28 Jul 2010 15:23:55 +0000 (15:23 +0000)]
    * MAINTAINERS (Write After Approval): Add myself.

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

13 years agopart 3 of darwin64 PPC ABI changes
iains [Wed, 28 Jul 2010 14:47:11 +0000 (14:47 +0000)]
part 3 of darwin64 PPC ABI changes

* config/rs6000/rs6000.c (rs6000_override_options):
Use TARGET_MACHO inline, move darwin_one_byte_bool from here...
... to darwin_rs6000_override_options.
(rs6000_return_in_memory): Update preceding comment for darwin
64 bit ABI.  Use TARGET_MACHO inline.
(rs6000_darwin64_struct_check_p): New.
(function_arg_advance): Use rs6000_darwin64_struct_check_p.
(function_arg): Likewise.
(rs6000_arg_partial_bytes): Likewise.
(rs6000_function_value): Likewise.

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

13 years ago * lto-opts.c (lto_file_read_options): Add loop over all inputs.
ak [Wed, 28 Jul 2010 14:30:45 +0000 (14:30 +0000)]
    * lto-opts.c (lto_file_read_options): Add loop over all inputs.

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

13 years ago * Make-lang.in (lto.o): Add dependency to splay-tree.h
ak [Wed, 28 Jul 2010 14:06:45 +0000 (14:06 +0000)]
    * Make-lang.in (lto.o): Add dependency to splay-tree.h

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

13 years agoAdd Changelog too
ak [Wed, 28 Jul 2010 14:05:59 +0000 (14:05 +0000)]
Add Changelog too

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

13 years ago * lto-plugin.c (translate): Remove debug fprintf.
ak [Wed, 28 Jul 2010 14:05:39 +0000 (14:05 +0000)]
    * lto-plugin.c (translate): Remove debug fprintf.

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

13 years ago2010-07-28 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 28 Jul 2010 10:32:54 +0000 (10:32 +0000)]
2010-07-28  Richard Guenther  <rguenther@suse.de>

PR middle-end/44903
* builtins.c (fold_builtin_memory_op): On STRICT_ALIGNMENT
targets try harder to not generate unaligned accesses.

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

13 years ago PR rtl-optimization/45101
mkuvyrkov [Wed, 28 Jul 2010 10:32:10 +0000 (10:32 +0000)]
PR rtl-optimization/45101
* gcc.dg/pr45101.c: New test.

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

13 years ago PR rtl-optimization/45101
mkuvyrkov [Wed, 28 Jul 2010 10:09:53 +0000 (10:09 +0000)]
PR rtl-optimization/45101
* gcse.c (hash_scan_set): Fix argument ordering of insert_expr_in_table
for gcse-las.

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

13 years ago PR tree-optimization/44885
ebotcazou [Wed, 28 Jul 2010 10:03:00 +0000 (10:03 +0000)]
PR tree-optimization/44885
* tree-sra.c (find_param_candidates): Skip pointer types to arrays
with non-aliased component.

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

13 years ago * config/darwin-driver.c (SWITCH_TAKES_ARG,
jsm28 [Wed, 28 Jul 2010 09:36:21 +0000 (09:36 +0000)]
* config/darwin-driver.c (SWITCH_TAKES_ARG,
WORD_SWITCH_TAKES_ARG): Remove.
* cppspec.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
* defaults.h (DEFAULT_SWITCH_TAKES_ARG,
DEFAULT_WORD_SWITCH_TAKES_ARG): Move from gcc.h.
(SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move default
definitions from gcc.c.
* gcc.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move to
defaults.h.
* gcc.h (DEFAULT_SWITCH_TAKES_ARG, DEFAULT_WORD_SWITCH_TAKES_ARG):
Move to defaults.h.
* opts-common.c: Include tm.h.
(decode_cmdline_option): Use SWITCH_TAKES_ARG and
WORD_SWITCH_TAKES_ARG to count arguments to unknown options.
Handle more than one argument.  Set canonical_option_num_elements.
(decode_cmdline_options_to_array): Set
canonical_option_num_elements and trailing elements of
canonical_option.
* opts.h (struct cl_decoded_option): Allow four elements in
canonical_option.  Add field canonical_option_num_elements.
* Makefile.in (opts-common.o): Update dependencies.

ada:
* gcc-interface/misc.c (gnat_init_options): Ignore erroneous
options.  Check canonical_option_num_elements on options copied.

fortran:
* gfortranspec.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG):
Remove.

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

13 years ago2010-07-28 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 28 Jul 2010 08:44:29 +0000 (08:44 +0000)]
2010-07-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45077
        * trans-types.c (gfc_get_derived_type): Fix DT declaration
        from modules for whole-file mode.

2010-07-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45077
        * gfortran.dg/whole_file_24.f90: New.

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