OSDN Git Service

pf3gnuchains/gcc-fork.git
9 years agoremove useless if-before-free tests
meyering [Wed, 20 Apr 2011 18:19:03 +0000 (18:19 +0000)]
remove useless if-before-free tests

Change "if (E) free (E);" to "free (E);" everywhere except in the
libgo/, intl/, zlib/ and classpath/ directories.
Also transform equivalent variants like
"if (E != NULL) free (E);" and allow an extra cast on the
argument to free.  Otherwise, the tested and freed "E"
expressions must be identical, modulo white space.

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

9 years agodiscourage unnecessary use of if before free
meyering [Wed, 20 Apr 2011 18:18:43 +0000 (18:18 +0000)]
discourage unnecessary use of if before free

* README.Portability: Explain why "if (P) free (P)" is best avoided.

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

9 years ago PR tree-optimization/48611
jakub [Wed, 20 Apr 2011 18:18:16 +0000 (18:18 +0000)]
PR tree-optimization/48611
* tree-eh.c (note_eh_region_may_contain_throw): Don't propagate
beyond ERT_MUST_NOT_THROW region.

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

9 years ago2011-04-19 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 20 Apr 2011 18:07:52 +0000 (18:07 +0000)]
2011-04-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48588
        PR fortran/48692

        * module.c (fix_mio_expr): Commit created symbol.

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

9 years agoFixed recent testcases for backslash hell typo.
ktietz [Wed, 20 Apr 2011 17:42:51 +0000 (17:42 +0000)]
Fixed recent testcases for backslash hell typo.

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

9 years ago2011-04-20 Catherine Moore <clm@codesourcery.com>
clm [Wed, 20 Apr 2011 16:54:32 +0000 (16:54 +0000)]
2011-04-20  Catherine Moore  <clm@codesourcery.com>

* config/mips/mips.opt (mfix-24k): New.
* config/mips/mips.h (ASM_SPEC): Handle -mfix-24k.
* config/mips/mips.md (length): Increase by 4 for stores if
fixing 24K errata.
* config/mips/mips.c (mips_reorg_process_insns): Do not allow
all noreorder if fixing 24K errata.
* doc/invoke.texi: Document mfix-24k.

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

9 years ago2011-04-20 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 20 Apr 2011 16:48:28 +0000 (16:48 +0000)]
2011-04-20  Chung-Lin Tang  <cltang@codesourcery.com>

* config/arm/arm.c (arm_legitimize_reload_address): For NEON
quad-word modes, reduce to 9-bit index range when above 1016
limit.

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

9 years ago2011-04-20 Daniel Jacobowitz <dan@codesourcery.com>
ams [Wed, 20 Apr 2011 16:39:37 +0000 (16:39 +0000)]
2011-04-20  Daniel Jacobowitz  <dan@codesourcery.com>

gcc/testsuite/
* gcc.dg/vect/vect-shift-3.c, gcc.dg/vect/vect-shift-4.c: New.
* lib/target-supports.exp (check_effective_target_vect_shift_char): New
function.

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

9 years ago2011-04-20 Andrew Stubbs <ams@codesourcery.com>
ams [Wed, 20 Apr 2011 16:33:48 +0000 (16:33 +0000)]
2011-04-20  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm.c (arm_gen_constant): Move movw support ....
(const_ok_for_op): ... to here.

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

9 years agoChangeLog gcc/
ktietz [Wed, 20 Apr 2011 16:16:28 +0000 (16:16 +0000)]
ChangeLog gcc/

2011-04-20  Kai Tietz  <ktietz@redhat.com>

* fold-const.c (fold_binary_loc): Add handling for
(X & ~Y) | (~X & Y) and (X && !Y) | (!X && Y) optimization
to (X ^ Y).

ChangeLog gcc/testsuite

2011-04-20  Kai Tietz  <ktietz@redhat.com>

* gcc.dg/binio-xor1.c: New test.
* gcc.dg/binio-xor2.c: New test.
* gcc.dg/binio-xor3.c: New test.
* gcc.dg/binio-xor4.c: New test.
* gcc.dg/binio-xor5.c: New test.

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

9 years ago2011-04-20 Andrew Stubbs <ams@codesourcery.com>
ams [Wed, 20 Apr 2011 16:14:02 +0000 (16:14 +0000)]
2011-04-20  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm.c (arm_gen_constant): Remove redundant can_invert.

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

9 years ago2011-04-20 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 20 Apr 2011 15:50:26 +0000 (15:50 +0000)]
2011-04-20  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/47892
* tree-if-conv.c (if_convertible_stmt_p): Const builtins
are if-convertible.

* gcc.dg/vect/fast-math-ifcvt-1.c: New testcase.

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

9 years agoFix long line and tidy up
ebotcazou [Wed, 20 Apr 2011 15:30:47 +0000 (15:30 +0000)]
Fix long line and tidy up

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

9 years agoRemove empty directory.
ian [Wed, 20 Apr 2011 15:25:37 +0000 (15:25 +0000)]
Remove empty directory.

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

9 years ago2011-04-20 Eric Botcazou <ebotcazou@adacore.com>
gingold [Wed, 20 Apr 2011 15:00:15 +0000 (15:00 +0000)]
2011-04-20  Eric Botcazou  <ebotcazou@adacore.com>

        * config/alpha/vms.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not redefine.

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

9 years ago2011-04-20 Tristan Gingold <gingold@adacore.com>
gingold [Wed, 20 Apr 2011 14:30:58 +0000 (14:30 +0000)]
2011-04-20  Tristan Gingold  <gingold@adacore.com>

* config/alpha/vms.h (LINK_SPEC): Do not use vms-dwarf2.o for gnu-ld.

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

9 years ago PR target/18145
gjl [Wed, 20 Apr 2011 13:38:05 +0000 (13:38 +0000)]
PR target/18145

* config/avr/avr.h (TARGET_ASM_INIT_SECTIONS): Delete.
(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Define.
(TARGET_ASM_NAMED_SECTION): Change to avr_asm_named_section.

* config/avr/avr-protos.h (avr_asm_output_aligned_common):
New prototype.

* config/avr/avr.c (TARGET_ASM_INIT_SECTIONS): Define.
(avr_asm_named_section, avr_asm_output_aligned_common,
avr_output_data_section_asm_op, avr_output_bss_section_asm_op):
New functions to update...
(avr_need_clear_bss_p, avr_need_copy_data_p): ...these new variables.
(avr_asm_init_sections): Overwrite section callbacks for
data_section, bss_section.
(avr_file_start): Move output of __do_copy_data, __do_clear_bss
from here to...
(avr_file_end): ...here.

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

9 years ago2011-04-20 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 20 Apr 2011 13:11:06 +0000 (13:11 +0000)]
2011-04-20  Richard Guenther  <rguenther@suse.de>

PR middle-end/48695
* tree-ssa-alias.c (aliasing_component_refs_p): Compute base
objects and types here.  Adjust for their offset before
comparing.

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

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

9 years agoRevert accidental commit.
rsandifo [Wed, 20 Apr 2011 09:28:48 +0000 (09:28 +0000)]
Revert accidental commit.

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

9 years agoRevert last patch.
rsandifo [Wed, 20 Apr 2011 09:25:42 +0000 (09:25 +0000)]
Revert last patch.

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

9 years ago * bootstrap-lto.mk: Remove obsolete requirement.
ebotcazou [Wed, 20 Apr 2011 09:24:48 +0000 (09:24 +0000)]
* bootstrap-lto.mk: Remove obsolete requirement.

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

9 years agogcc/
rsandifo [Wed, 20 Apr 2011 09:10:36 +0000 (09:10 +0000)]
gcc/
* doc/md.texi (vec_load_lanes, vec_store_lanes): Document.
* optabs.h (COI_vec_load_lanes, COI_vec_store_lanes): New
convert_optab_index values.
(vec_load_lanes_optab, vec_store_lanes_optab): New convert optabs.
* genopinit.c (optabs): Initialize the new optabs.
* internal-fn.def (LOAD_LANES, STORE_LANES): New internal functions.
* internal-fn.c (get_multi_vector_move, expand_LOAD_LANES)
(expand_STORE_LANES): New functions.
* tree.h (build_array_type_nelts): Declare.
* tree.c (build_array_type_nelts): New function.
* tree-vectorizer.h (vect_model_store_cost): Add a bool argument.
(vect_model_load_cost): Likewise.
(vect_store_lanes_supported, vect_load_lanes_supported)
(vect_record_strided_load_vectors): Declare.
* tree-vect-data-refs.c (vect_lanes_optab_supported_p)
(vect_store_lanes_supported, vect_load_lanes_supported): New functions.
(vect_transform_strided_load): Split out statement recording into...
(vect_record_strided_load_vectors): ...this new function.
* tree-vect-stmts.c (create_vector_array, read_vector_array)
(write_vector_array, create_array_ref): New functions.
(vect_model_store_cost): Add store_lanes_p argument.
(vect_model_load_cost): Add load_lanes_p argument.
(vectorizable_store): Try to use store-lanes functions for
interleaved stores.
(vectorizable_load): Likewise load-lanes and loads.
* tree-vect-slp.c (vect_get_and_check_slp_defs)
(vect_build_slp_tree):

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

9 years agogcc/
rsandifo [Wed, 20 Apr 2011 08:23:03 +0000 (08:23 +0000)]
gcc/
* tree-vect-stmts.c (vectorizable_store): Only chain one related
statement per copy.

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

9 years agogcc/
rsandifo [Wed, 20 Apr 2011 08:21:25 +0000 (08:21 +0000)]
gcc/
* Makefile.in (INTERNAL_FN_DEF, INTERNAL_FN_H): Define.
(GIMPLE_H): Include $(INTERNAL_FN_H).
(OBJS-common): Add internal-fn.o.
(internal-fn.o): New rule.
* internal-fn.def: New file.
* internal-fn.h: Likewise.
* internal-fn.c: Likewise.
* gimple.h: Include internal-fn.h.
(GF_CALL_INTERNAL): New gf_mask.
(gimple_statement_call): Put fntype into a union with a new
internal_fn field.
(gimple_build_call_internal): Declare.
(gimple_build_call_internal_vec): Likewise.
(gimple_call_same_target_p): Likewise.
(gimple_call_internal_p): New function.
(gimple_call_internal_fn): Likewise.
(gimple_call_fntype): Return null for internal calls.
(gimple_call_set_fntype): Assert that the function is not internal.
(gimple_call_set_fn): Likewise.
(gimple_call_set_fndecl): Likewise.
(gimple_call_set_internal_fn): New function.
(gimple_call_addr_fndecl): Handle null functions.
(gimple_call_return_type): Likewise null types.
* gimple.c (gimple_build_call_internal_1): New function.
(gimple_build_call_internal): Likewise.
(gimple_build_call_internal_vec): Likewise.
(gimple_call_same_target_p): Likewise.
(gimple_call_flags): Handle calls to internal functions.
(gimple_call_fnspec): New function.
(gimple_call_arg_flags, gimple_call_return_flags): Use it.
(gimple_has_side_effects): Handle null functions.
(gimple_rhs_has_side_effects): Likewise.
(gimple_call_copy_skip_args): Handle calls to internal functions.
* cfgexpand.c (expand_call_stmt): Likewise.
* expr.c (expand_expr_real_1): Assert that the call isn't internal.
* gimple-fold.c (gimple_fold_call): Handle null functions.
(gimple_fold_stmt_to_constant_1): Don't fold
calls to internal functions.
* gimple-low.c (gimple_check_call_args): Handle calls to internal
functions.
* gimple-pretty-print.c (dump_gimple_call): Likewise.
* ipa-prop.c (ipa_analyze_call_uses): Handle null functions.
* tree-cfg.c (verify_gimple_call): Handle calls to internal functions.
(do_warn_unused_result): Likewise.
* tree-eh.c (same_handler_p): Use gimple_call_same_target_p.
* tree-ssa-ccp.c (ccp_fold_stmt): Handle calls to internal functions.
* tree-ssa-dom.c (hashable_expr): Use the gimple statement to record
the target of a call.
(initialize_hash_element): Update accordingly.
(hashable_expr_equal_p): Use gimple_call_same_target_p.
(iterative_hash_hashable_expr): Handle calls to internal functions.
(print_expr_hash_elt): Likewise.
* tree-ssa-pre.c (can_value_number_call): Likewise.
(eliminate): Handle null functions.
* tree-ssa-sccvn.c (visit_use): Handle calls to internal functions.
* tree-ssa-structalias.c (get_fi_for_callee): Likewise.
(find_func_aliases): Likewise.
* value-prof.c (gimple_ic_transform): Likewise.
(gimple_indirect_call_to_profile): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Likewise.
* lto-streamer-out.c (output_gimple_stmt): Likewise.

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

9 years ago * gcc.dg/pr42629.c: Add dg-require-effective-target int32plus
gjl [Wed, 20 Apr 2011 06:33:01 +0000 (06:33 +0000)]
* gcc.dg/pr42629.c: Add dg-require-effective-target int32plus
* gcc.c-torture/execute/cmpsi-2.c: Ditto
* gcc.c-torture/execute/pr45262.c: Ditto
* gcc.dg/torture/pr43165.c: Ditto.
* gcc.dg/torture/pr47228.c: Ditto.
* gcc.dg/tree-ssa/pr45144.c: Ditto.
* gcc.dg/ipa/pr45644.c: Ditto.
* gcc.c-torture/compile/pr43191.c: Ditto. Remove dg-skip-if for
PDP11.

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

9 years ago PR c++/46304
jason [Wed, 20 Apr 2011 06:30:41 +0000 (06:30 +0000)]
PR c++/46304
* typeck.c (cp_build_binary_op): Fold COMPLEX_EXPR.

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

9 years ago2011-04-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 20 Apr 2011 04:18:25 +0000 (04:18 +0000)]
2011-04-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/48602
* io/write_float.def (output_float_FMT_G): Fix reversal in conditional.
Use asm volatile to mark temp variable, avoiding optimization errors.

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

9 years ago * ipa-inline-transform.c (save_inline_function_body): Add comments.
hubicka [Wed, 20 Apr 2011 01:04:51 +0000 (01:04 +0000)]
* ipa-inline-transform.c (save_inline_function_body): Add comments.
* ipa-inline.c (inline_small_functions): Compute summaries first, populate
heap later.

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

9 years agoDaily bump.
gccadmin [Wed, 20 Apr 2011 00:18:18 +0000 (00:18 +0000)]
Daily bump.

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

9 years ago PR c++/45267
jason [Wed, 20 Apr 2011 00:06:19 +0000 (00:06 +0000)]
PR c++/45267
* decl.c (duplicate_decls): Keep always_inline attribute
in sync with DECL_DISREGARD_INLINE_LIMITS.

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

9 years agostatement.cc no longer includes gcc headers.
ian [Tue, 19 Apr 2011 23:26:19 +0000 (23:26 +0000)]
statement.cc no longer includes gcc headers.

* go-system.h: Include "intl.h".
* Make-lang.in (GO_SYSTEM_H): Add intl.h.
(go/statements.o): Remove dependencies on intl.h $(TREE_H)
$(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).

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

9 years agoChange general statement method to always use backend interface.
ian [Tue, 19 Apr 2011 22:30:46 +0000 (22:30 +0000)]
Change general statement method to always use backend interface.

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

9 years ago * cgraph.h (save_inline_function_body): Remove.
hubicka [Tue, 19 Apr 2011 22:28:54 +0000 (22:28 +0000)]
* cgraph.h (save_inline_function_body): Remove.
* ipa-inline-transform.c: New file, broke out of...
* ipa-inline.c: ... this one; Update toplevel comment.
(ncalls_inlined, nfunctions_inlined): Move to ipa-inline-transform.c;
make global.
(update_noncloned_frequencies): Move to ipa-inline-transform.c
(cgraph_mark_inline_edge): Rename to inline_call; move to
ipa-inline-transform.c.
(cgraph_clone_inlined_nodes): Rename to clone_inlined_nodes;
move to ipa-inline-transform.c
(recursive_inlining, inline_small_functions, flatten_function,
ipa_inline, inline_always_inline_functions,
early_inline_small_functions): Update.
(inline_transform): Move to ipa-inline-transform.c.
* ipa-inline.h (inline_call, inline_transform, clone_inlined_nodes):
Declare.
* Makefile.in (ipa-inline-transform.o): New file.
* cgraphunit.c (save_inline_function_body): Move to
ipa-inline-transform.c

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

9 years ago PR testsuite/48676
kkojima [Tue, 19 Apr 2011 21:58:41 +0000 (21:58 +0000)]
PR testsuite/48676
* gcc.dg/torture/pr37868.c: Skip on sh*-*-*.

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

9 years agoUse backend interface for temporary variables.
ian [Tue, 19 Apr 2011 21:52:41 +0000 (21:52 +0000)]
Use backend interface for temporary variables.

* go-gcc.cc (Gcc_backend::temporary_variable): New function.

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

9 years ago* config/m32c/m32c.c (m32c_emit_epilogue): Don't try to push
dj [Tue, 19 Apr 2011 20:37:11 +0000 (20:37 +0000)]
* config/m32c/m32c.c (m32c_emit_epilogue): Don't try to push
registers if we already know there aren't any.
(m32c_emit_epilogue): Don't emit a barrier here.
(m32c_emit_eh_epilogue): Likewise.
* config/m32c/blkmov.md (movstr): Don't fail on wrong-type
operands at expand time.
* config/m32c/m32c.h (WCHAR_TYPE_SIZE): Change to 4 to match "long
int" wchar type.
(REG_CLASS_CONTENTS, reg_class, REG_CLASS_NAMES): Remove
duplicates.  Provide aliases instead.
* config/m32c/prologue.md (eh_return): Emit a barrier here.
(eh_epilogue): Add a "(return)" here as a hint to other parts of
the compiler.

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

9 years ago * config/sparc/sparc.h (GENERAL_OR_I64, REGISTER_MOVE_COST): Remove.
aesok [Tue, 19 Apr 2011 18:23:23 +0000 (18:23 +0000)]
* config/sparc/sparc.h (GENERAL_OR_I64, REGISTER_MOVE_COST): Remove.
* config/sparc/sparc.c (TARGET_REGISTER_MOVE_COST): Define.
(general_or_i64_p, sparc_register_move_cost): New function.

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

9 years agoUse backend interface for blocks.
ian [Tue, 19 Apr 2011 18:20:05 +0000 (18:20 +0000)]
Use backend interface for blocks.

* go-gcc.cc (class Bblock): Define.
(Gcc_backend::if_statement): Change then_block and else_block to
Bblock*.
(Gcc_backend::block): New function.
(Gcc_backend::block_add_statements): New function.
(Gcc_backend::block_statement): New function.
(tree_to_block, block_to_tree): New functions.

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

9 years agoUse XCNEWVAR instead of xcalloc
jb [Tue, 19 Apr 2011 18:18:08 +0000 (18:18 +0000)]
Use XCNEWVAR instead of xcalloc

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

9 years agoUse XDELETEVEC instead of free
jb [Tue, 19 Apr 2011 17:57:05 +0000 (17:57 +0000)]
Use XDELETEVEC instead of free

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

9 years agoReplace gfc_getmem with XCNEW, XCNEWVEC or xcalloc
jb [Tue, 19 Apr 2011 17:42:51 +0000 (17:42 +0000)]
Replace gfc_getmem with XCNEW, XCNEWVEC or xcalloc

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

9 years ago gcc:
ro [Tue, 19 Apr 2011 17:22:28 +0000 (17:22 +0000)]
gcc:
* doc/install.texi (Configuration, --enable-threads): Remove mach.
Add lynx, mipssde.
Sort table.

boehm-gc:
* configure.ac (THREADS): Remove decosf1, irix, mach, os2.
* configure: Regenerate

libjava:
* configure.ac (THREADS): Remove decosf1, irix, mach, os2.
* configure: Regenerate

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

9 years agorevert 172213 and add assertion
davidxl [Tue, 19 Apr 2011 16:48:40 +0000 (16:48 +0000)]
revert 172213 and add assertion

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

9 years ago PR target/48678
jakub [Tue, 19 Apr 2011 16:47:06 +0000 (16:47 +0000)]
PR target/48678
* config/i386/i386.md (movstrict<mode>): FAIL if operands[0]
is a SUBREG with non-MODE_INT mode inside of it.

* gcc.target/i386/pr48678.c: New test.

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

9 years ago2011-04-19 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 19 Apr 2011 16:35:33 +0000 (16:35 +0000)]
2011-04-19  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipcp_process_devirtualization_opportunities): Devirtualize
also according to actual contants.
* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): New function.
(gimple_fold_call): Use it.
* gimple.h (gimple_extract_devirt_binfo_from_cst): Declare.

* testsuite/g++.dg/opt/devirt1.C: Bump to -O2, remove XFAIL.
* testsuite/g++.dg/opt/devirt2.C: New test.
* testsuite/g++.dg/ipa/devirt-g-1.C: Likewise.

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

9 years ago2011-04-19 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 19 Apr 2011 16:26:13 +0000 (16:26 +0000)]
2011-04-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48588
        * parse.c (resolve_all_program_units): Skip modules.
        (translate_all_program_units): Handle modules.
        (gfc_parse_file): Defer code generation for modules.

2011-04-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48588
        * gfortran.dg/whole_file_33.f90: New.

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

9 years ago2011-04-19 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 19 Apr 2011 16:19:13 +0000 (16:19 +0000)]
2011-04-19  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (stmt_may_be_vtbl_ptr_store): Return false for scalar
non-pointer assignments.

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

9 years ago2011-04-19 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 19 Apr 2011 16:15:08 +0000 (16:15 +0000)]
2011-04-19  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipcp_process_devirtualization_opportunities): Take into
account anc_offset and otr_type from the indirect edge info.
* ipa-prop.c (get_ancestor_addr_info): New function.
(compute_complex_ancestor_jump_func): Assignment analysis moved to
get_ancestor_addr_info, call it.
(ipa_note_param_call): Do not initialize information about polymorphic
calls, return the indirect call graph edge.  Remove the last
parameter, adjust all callers.
(ipa_analyze_virtual_call_uses): Process also calls to ancestors of
parameters.  Initialize polymorphic information in the indirect edge.

* testsuite/g++.dg/ipa/devirt-7.C: New test.

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

9 years ago2011-04-19 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 19 Apr 2011 16:08:50 +0000 (16:08 +0000)]
2011-04-19  Martin Jambor  <mjambor@suse.cz>

gcc/fotrean/
* trans-decl.c (gfc_generate_function_code): Call cgraph_create_node
instead of cgraph_get_create_node.

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

9 years agoAdd missing entry.
danglin [Tue, 19 Apr 2011 15:13:07 +0000 (15:13 +0000)]
Add missing entry.

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

9 years ago PR lto/48148
ebotcazou [Tue, 19 Apr 2011 14:46:37 +0000 (14:46 +0000)]
PR lto/48148
* gimple.c (gimple_types_compatible_p_1) <ENUMERAL_TYPE>: Do not merge
the types if they have different enumeration identifiers.

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

9 years ago * cgraph.h (cgraph_optimize_for_size_p): Declare.
hubicka [Tue, 19 Apr 2011 14:23:38 +0000 (14:23 +0000)]
* cgraph.h (cgraph_optimize_for_size_p): Declare.
* ipa-cp.c (ipcp_insert_stage): Use cgraph_optimize_for_size_p.
* predict.c (cgraph_optimize_for_size_p): Break out from ...
(optimize_function_for_size_p) ... here.

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

9 years ago2011-04-19 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Tue, 19 Apr 2011 13:26:08 +0000 (13:26 +0000)]
2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/48521
* include/std/type_traits (result_of): Handle pointer to member.
* include/std/functional (__invoke): Likewise.
(_Function_to_function_pointer): Remove.
(_Reference_wrapper_base): Provide nested types independent of
unary_function and binary_function.
(reference_wrapper::operator()): DR 2017.
(ref(const A&&), cref(const A&&): Define as deleted.
* include/std/future (async): Simplify SFINAE and use result_of to
support pointer to member.
* testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
member.
* testsuite/20_util/reference_wrapper/24803.cc: Likewise.
* testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
instead of derivation from unary_function and binary_function.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
* testsuite/20_util/reference_wrapper/invoke-2.cc: New.
* testsuite/20_util/reference_wrapper/ref_neg.c: New.
* testsuite/20_util/reference_wrapper/typedefs-3.c: New.

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

9 years ago2011-04-19 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 19 Apr 2011 13:04:57 +0000 (13:04 +0000)]
2011-04-19  Richard Guenther  <rguenther@suse.de>

PR lto/48207
* tree.c (free_lang_data): Do not reset the decl-assembler-name
langhook.

* g++.dg/lto/pr48207_0.C: New testcase.

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

9 years ago * tree-inline.c (expand_call_inline): Do not issue a -Winline warning
ebotcazou [Tue, 19 Apr 2011 11:22:35 +0000 (11:22 +0000)]
* tree-inline.c (expand_call_inline): Do not issue a -Winline warning
if DECL_NO_INLINE_WARNING_P is set on the function.

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

9 years ago2011-04-19 Bernd Schmidt <bernds@codesourcery.com>
rguenth [Tue, 19 Apr 2011 10:54:47 +0000 (10:54 +0000)]
2011-04-19  Bernd Schmidt  <bernds@codesourcery.com>

PR fortran/47976
* reload1.c (inc_for_reload): Return void. All callers changed.
(emit_input_reload_insns): Don't try to delete previous output
reloads to a register, or record spill_reg_store for autoincs.

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

9 years ago2011-04-19 Basile Starynkevitch <basile@starynkevitch.net>
bstarynk [Tue, 19 Apr 2011 09:45:18 +0000 (09:45 +0000)]
2011-04-19  Basile Starynkevitch  <basile@starynkevitch.net>

* gengtype.h: Updated copyright year.
(struct input_file_st): Add inpisplugin field.
(type_fileloc): New function.
* gengtype.c
(write_typed_struct_alloc_def): Add gcc_assert.
(write_typed_alloc_defns): Ditto. Don't output for plugin files.
(write_typed_alloc_defns): Don't output for plugin files.
(input_file_by_name): Clear inpisplugin field.
(main): Set inpisplugin field for plugin files.

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

9 years agoIn gcc/:
nicola [Tue, 19 Apr 2011 09:14:48 +0000 (09:14 +0000)]
In gcc/:
2011-04-19  Nicola Pero  <nicola.pero@meta-innovation.com>

* gengtype-state.c (string_eq): New.
(read_state): Use string_eq instead of strcmp when creating the
state_ident_tab.

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

9 years ago * config/arm/arm-protos.h (thumb1_legitimate_address_p): New prototype.
carrot [Tue, 19 Apr 2011 08:46:54 +0000 (08:46 +0000)]
* config/arm/arm-protos.h (thumb1_legitimate_address_p): New prototype.
* config/arm/arm.c (thumb1_legitimate_address_p): Remove the static
linkage.
* config/arm/constraints.md (Uu): New constraint.
* config/arm/arm.md (*arm_movqi_insn): Compute attr "length".

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

9 years ago2011-04-19 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 19 Apr 2011 08:10:49 +0000 (08:10 +0000)]
2011-04-19  Tristan Gingold  <gingold@adacore.com>

* config.gcc (-*-*-*vms): Added.
(alpha64-dec-*vms*,alpha*-dec-*vms*, ia64-hp-*vms*): Common
definitions moved.
* config/vms/vms-ld.c: New file.
* config/vms/vms-ar.c: New file.
* config/vms/t-vmsnative: New file.

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

9 years agoTweak a few entries
ebotcazou [Tue, 19 Apr 2011 06:35:49 +0000 (06:35 +0000)]
Tweak a few entries

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

9 years agoUse backend interface for variables.
ian [Tue, 19 Apr 2011 04:23:00 +0000 (04:23 +0000)]
Use backend interface for variables.

* go-gcc.cc: Include "go-c.h".
(class Bvariable): Define.
(Gcc_backend::init_statement): New function.
(Gcc_backend::global_variable): New function.
(Gcc_backend::global_variable_set_init): New function.
(Gcc_backend::local_variable): New function.
(Gcc_backend::parameter_variable): New function.
(tree_to_type, var_to_tree): New functions.
* Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
* (go/gogo-tree.o): Depend on go/gofrontend/backend.h.

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

9 years ago PR testsuite/48675
hp [Tue, 19 Apr 2011 03:59:16 +0000 (03:59 +0000)]
PR testsuite/48675
* testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
this part if SAMPLES < 100000.

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

9 years agoDaily bump.
gccadmin [Tue, 19 Apr 2011 00:18:22 +0000 (00:18 +0000)]
Daily bump.

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

9 years ago2011-04-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 19 Apr 2011 00:10:53 +0000 (00:10 +0000)]
2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/type_traits (is_nothrow_default_constructible,
is_nothrow_copy_constructible, is_nothrow_move_constructible,
is_copy_constructible, is_move_constructible): Add.
(has_nothrow_default_constructor, has_nothrow_copy_constructor):
Remove.
(is_nothrow_constructible): Adjust.

* testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.

* testsuite/20_util/has_nothrow_default_constructor: Remove.
* testsuite/20_util/has_nothrow_copy_constructor: Likewise.

* testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_move_constructible/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_nothrow_move_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_constructible/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_nothrow_default_constructible/value.cc:
Likewise.
* testsuite/20_util/is_nothrow_default_constructible/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_nothrow_default_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_move_constructible/value.cc: Likewise.
* testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_move_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_copy_constructible/requirements/
explicit_instantiation.cc: Likewise.

* testsuite/20_util/is_default_constructible/value.cc: Add tests.
* testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.

* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

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

9 years agouse ASM_COMMENT_START instead of #
davidxl [Mon, 18 Apr 2011 23:58:49 +0000 (23:58 +0000)]
use ASM_COMMENT_START instead of #

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

9 years ago PR c++/48569
jason [Mon, 18 Apr 2011 23:54:47 +0000 (23:54 +0000)]
PR c++/48569
* typeck2.c (build_functional_cast): Handle VOID_TYPE.

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

9 years ago PR c++/48537
jason [Mon, 18 Apr 2011 22:40:43 +0000 (22:40 +0000)]
PR c++/48537
* init.c (build_value_init): Handle UNION_TYPE the same.

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

9 years ago PR middle-end/48661
jakub [Mon, 18 Apr 2011 21:58:51 +0000 (21:58 +0000)]
PR middle-end/48661
* gimple-fold.c (gimple_get_virt_method_for_binfo): Return NULL
if TREE_TYPE (v) is non-NULL.

* gimple-fold.c (gimple_get_virt_method_for_binfo): Renamed from
gimple_get_virt_mehtod_for_binfo.
* gimple.h (gimple_get_virt_method_for_binfo): Likewise.
* ipa-cp.c (ipcp_process_devirtualization_opportunities): Adjust
callers.
* ipa-prop.c (try_make_edge_direct_virtual_call): Likewise.

* g++.dg/torture/pr48661.C: New test.

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

9 years ago PR c++/48632
jakub [Mon, 18 Apr 2011 21:55:07 +0000 (21:55 +0000)]
PR c++/48632
* parser.c (cp_parser_omp_for_loop): Don't use cp_parser_omp_for_incr
for type dependent pointers.

* g++.dg/gomp/pr48632.C: New test.

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

9 years ago2011-05-18 Michael Matz <matz@suse.de>
sje [Mon, 18 Apr 2011 21:53:08 +0000 (21:53 +0000)]
2011-05-18  Michael Matz  <matz@suse.de>
    Steve Ellcey  <sje@cup.hp.com>

* expr.c (expand_expr_real_2): Use GET_MODE instead of TYPE_MODE.

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

9 years ago * doc/passes.texi: Fill crossref nodes.
gerald [Mon, 18 Apr 2011 21:28:05 +0000 (21:28 +0000)]
* doc/passes.texi: Fill crossref nodes.

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

9 years ago2011-04-18 Jack Howarth <howarth@bromo.med.uc.edu>
mrs [Mon, 18 Apr 2011 21:27:00 +0000 (21:27 +0000)]
2011-04-18  Jack Howarth  <howarth@bromo.med.uc.edu>

    PR lto/48086
    * configure.ac: Re-enable LTO on *-apple-darwin9*.
    * configure: Regenerate.

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

9 years agofix doubled-word typos in comments and strings: e.g., s/in in/in/
meyering [Mon, 18 Apr 2011 20:42:30 +0000 (20:42 +0000)]
fix doubled-word typos in comments and strings: e.g., s/in in/in/

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

9 years ago * config/i386/i386.h (SSE_VEC_FLOAT_MODE_P): Remove.
uros [Mon, 18 Apr 2011 19:48:09 +0000 (19:48 +0000)]
* config/i386/i386.h (SSE_VEC_FLOAT_MODE_P): Remove.
(AVX_FLOAT_MODE_P): Ditto.
(AVX128_VEC_FLOAT_MODE_P): Ditto.
(AVX256_VEC_FLOAT_MODE_P): Ditto.
(AVX_VEC_FLOAT_MODE_P): Ditto.
* config/i386/i386.md (UNSPEC_MASKLOAD): Remove.
(UNSPEC_MASKSTORE): Ditto.
* config/i386/sse.md (<sse>_movmsk<ssemodesuffix><avxmodesuffix>):
Merge from <sse>_movmsk<ssemodesuffix> and
avx_movmsk<ssemodesuffix>256.  Use VF mode iterator.
(*sse2_maskmovdqu): Merge with *sse2_maskmovdqu_rex64.  Use P mode
iterator.
(avx_maskload<ssemodesuffix><avxmodesuffix>): New expander.
(avx_maskstore<ssemodesuffix><avxmodesuffix>): Ditto.
(*avx_maskmov<ssemodesuffix><avxmodesuffix>): New insn.

testsuite/ChangeLog:

* gcc.target/i386/sse2-maskmovdqu.c: New test.
* gcc.target/i386/avx-vmaskmovdqu.c: Ditto.

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

9 years ago * semantics.c (finish_goto_stmt): Do set UNINLINABLE flag on computed
hubicka [Mon, 18 Apr 2011 19:28:46 +0000 (19:28 +0000)]
* semantics.c (finish_goto_stmt): Do set UNINLINABLE flag on computed
gotos.

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

9 years agoremove now-unused definition of gfc_free
meyering [Mon, 18 Apr 2011 19:21:05 +0000 (19:21 +0000)]
remove now-unused definition of gfc_free

* misc.c (gfc_free): Remove function.
* gfortran.h (gfc_free): Remove its prototype.

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

9 years agoconvert each use of gfc_free (p) to free (p)
meyering [Mon, 18 Apr 2011 19:20:53 +0000 (19:20 +0000)]
convert each use of gfc_free (p) to free (p)

Do that by running this command:
  perl -pi -e    's/\bgfc_free ?\(/free (/' \
    $(git grep -El '\bgfc_free ?\(')
which also corrects the few uses that lacked a space between
the function name and the open parenthesis.
Manually undo the change to the function definition itself
and its prototype.  They'll be removed next.
* array.c (gfc_free_array_spec, gfc_set_array_spec): s/gfc_free/free/
* constructor.c (node_free): Likewise.
* cpp.c (dump_queued_macros): Likewise.
* data.c (gfc_assign_data_value): Likewise.
* decl.c (free_variable, free_value, gfc_free_data): Likewise.
(gfc_free_data_all, match_old_style_init): Likewise.
(gfc_set_constant_character_len, gfc_free_enum_history, NUM_DECL):
Likewise.
(gfc_match_modproc): Likewise.
* dependency.c (check_section_vs_section): Likewise.
* error.c (gfc_pop_error, gfc_free_error): Likewise.
* expr.c (free_expr0, gfc_free_expr, gfc_free_actual_arglist): Likewise.
(gfc_free_ref_list, gfc_replace_expr, gfc_copy_ref): Likewise.
(find_substring_ref, gfc_simplify_expr, gfc_check_assign_symbol):
Likewise.
* frontend-passes.c (gfc_run_passes, cfe_expr_0): Likewise.
(strip_function_call, optimize_comparison): Likewise.
* interface.c (gfc_free_interface, arginfo, check_interface0): Likewise.
(CHECK_OS_COMPARISON, gfc_extend_assign, gfc_free_formal_arglist):
Likewise.
* intrinsic.c (gfc_intrinsic_done_1, gfc_convert_type_warn): Likewise.
(gfc_convert_chartype): Likewise.
* io.c (gfc_free_open, compare_to_allowed_values, gfc_free_close):
Likewise.
(gfc_free_filepos, gfc_free_dt, gfc_free_inquire): Likewise.
* match.c (gfc_free_iterator, gfc_match_associate): Likewise.
(gfc_free_alloc_list, gfc_free_namelist, gfc_free_equiv_until):
Likewise.
(free_case, gfc_free_forall_iterator): Likewise.
* misc.c: Likewise.
* module.c (free_pi_tree, resolve_fixups, free_rename): Likewise.
(free_true_name, peek_atom, mio_allocated_wide_string): Likewise.
(mio_pool_string, mio_internal_string, mio_gmp_integer): Likewise.
(mio_gmp_real, mio_expr, mio_typebound_proc): Likewise.
(mio_full_typebound_tree, skip_list, load_equiv): Likewise.
(free_written_common, gfc_use_module, gfc_free_use_stmts): Likewise.
* openmp.c (gfc_free_omp_clauses): Likewise.
* options.c (gfc_post_options): Likewise.
* parse.c (select_type_pop, parse_omp_structured_block): Likewise.
* primary.c (gfc_free_structure_ctor_component): Likewise.
* resolve.c (resolve_structure_cons, check_host_association): Likewise.
(gfc_resolve_forall, resolve_equivalence): Likewise.
* scanner.c (gfc_scanner_done_1, gfc_release_include_path): Likewise.
(gfc_define_undef_line, preprocessor_line, include_line): Likewise.
(load_file, gfc_read_orig_filename): Likewise.
* simplify.c (simplify_transformation_to_array): Likewise.
(gfc_simplify_ibits, simplify_shift, gfc_simplify_ishftc, STRING):
Likewise.
(gfc_simplify_compiler_options): Likewise.
* st.c (gfc_free_statement, gfc_free_statements): Likewise.
(gfc_free_association_list): Likewise.
* symbol.c (free_components, gfc_free_st_label, free_st_labels):
Likewise.
(gfc_delete_symtree, gfc_free_symbol, gfc_undo_symbols): Likewise.
(free_old_symbol, gfc_commit_symbols, free_tb_tree): Likewise.
(free_common_tree, free_uop_tree, free_sym_tree): Likewise.
(gfc_free_dt_list, gfc_free_equiv_infos, gfc_free_equiv_lists):
Likewise.
(gfc_free_finalizer, gfc_free_charlen, free_entry_list): Likewise.
(gfc_free_namespace): Likewise.
* trans-array.c (gfc_free_ss, gfc_trans_array_bound_check): Likewise.
(gfc_conv_array_ref, gfc_conv_ss_startstride): Likewise.
(gfc_trans_dummy_array_bias, gfc_conv_array_parameter): Likewise.
* trans-common.c (get_init_field, create_common): Likewise.
* trans-const.c (gfc_build_wide_string_const): Likewise.
(gfc_conv_string_init): Likewise.
* trans-decl.c (gfc_generate_function_code): Likewise.
* trans-expr.c (gfc_conv_substring, gfc_free_interface_mapping):
Likewise.
(SCALAR_POINTER, gfc_conv_statement_function): Likewise.
(gfc_trans_subarray_assign): Likewise.
* trans-intrinsic.c (conv_generic_with_optional_char_arg): Likewise.
* trans-io.c (gfc_trans_io_runtime_check, set_string): Likewise.
(transfer_namelist_element, transfer_array_component): Likewise.
* trans-openmp.c (gfc_trans_omp_array_reduction): Likewise.
* trans-stmt.c (cleanup_forall_symtrees, gfc_trans_forall_1): Likewise.
* trans.c (trans_runtime_error_vararg, gfc_restore_backend_locus):
Likewise.

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

9 years agogfortran: remove cpp definition of free, ...
meyering [Mon, 18 Apr 2011 19:20:43 +0000 (19:20 +0000)]
gfortran: remove cpp definition of free, ...

in preparation for the s/gfc_free/free/ transformation.
* gfortran.h (free): Remove macro definition that would otherwise
prevent direct use of the function.

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

9 years ago * ipa-inline.c (inline_small_functions): Fix pasto in previous patch.
hubicka [Mon, 18 Apr 2011 18:52:22 +0000 (18:52 +0000)]
* ipa-inline.c (inline_small_functions): Fix pasto in previous patch.

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

9 years ago * ipa-inline.c: Fix comment typos; do not inline gt-ipa-inline.h
hubicka [Mon, 18 Apr 2011 18:39:39 +0000 (18:39 +0000)]
* ipa-inline.c: Fix comment typos; do not inline gt-ipa-inline.h
(want_inline_function_called_once_p): Break out the logic from
ipa_inline.
(edge_badness): Ensure that profile is not misupdated.
(lookup_recursive_calls): Prioritize by call frequencies.
(inline_small_functions): Move program size estimates here;
actually process whole queue even when unit growth has been
met. (to properly compute inline_failed reasons and for the
case unit size decrease.) Revisit comments on recursive
inlining.
(ipa_inline): Remove unit summary code; first inline hot calls
of functions called once, cold calls next.
(order, nnodes): Remove unused variables.
* Makefile.in (ipa-inline.o): No longer depent on ggc files.
(GTFILES): Remove ipa-inline.c
* sel-sched.c (fill_insns): Silence uninitialized var warning.

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

9 years ago * dwarf2out.c (is_redundant_typedef): Add 'inline' to prototype.
ebotcazou [Mon, 18 Apr 2011 17:37:13 +0000 (17:37 +0000)]
* dwarf2out.c (is_redundant_typedef): Add 'inline' to prototype.

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

9 years agolibgo: Fix append declaration.
ian [Mon, 18 Apr 2011 17:31:00 +0000 (17:31 +0000)]
libgo: Fix append declaration.

From Rainer Orth.

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

9 years ago2011-04-18 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 18 Apr 2011 17:21:24 +0000 (17:21 +0000)]
2011-04-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * array.c (gfc_match_array_ref): Check for too many
        * codimensions.
        * check.c (gfc_check_image_index): Check number of elements
        in SUB argument.
        * simplify.c (gfc_simplify_image_index): Remove unreachable
        * checks.

2011-04-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_17.f90: New.
        * gfortran.dg/coarray_10.f90: Update dg-error.

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

9 years ago PR testsuite/48251
ro [Mon, 18 Apr 2011 15:54:50 +0000 (15:54 +0000)]
PR testsuite/48251
* gcc.dg/guality/guality.exp: Disable on alpha*-dec-osf*.
* gfortran.dg/guality/guality.exp: Likewise.

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

9 years ago * gfortran.dg/fmt_g0_5.f08: Use dg-add-options ieee.
ro [Mon, 18 Apr 2011 15:41:06 +0000 (15:41 +0000)]
* gfortran.dg/fmt_g0_5.f08: Use dg-add-options ieee.

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

9 years ago * gcc.dg/vect/pr48377.c: Remove dg-do run.
ro [Mon, 18 Apr 2011 15:39:20 +0000 (15:39 +0000)]
* gcc.dg/vect/pr48377.c: Remove dg-do run.

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

9 years ago * gcc.dg/ipa/pr48195.c: Add dg-require-effective-target lto.
ro [Mon, 18 Apr 2011 14:28:50 +0000 (14:28 +0000)]
* gcc.dg/ipa/pr48195.c: Add dg-require-effective-target lto.

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

9 years ago2011-04-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Apr 2011 14:22:35 +0000 (14:22 +0000)]
2011-04-18  Richard Guenther  <rguenther@suse.de>

PR middle-end/46364
* g++.dg/torture/pr46364.C: New testcase.

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

9 years ago * obj-c++.dg/dwarf-2.mm: Skip on alpha*-dec-osf*.
ro [Mon, 18 Apr 2011 14:18:44 +0000 (14:18 +0000)]
* obj-c++.dg/dwarf-2.mm: Skip on alpha*-dec-osf*.

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

9 years ago Jie Zhang <jie@codesourcery.com>
rearnsha [Mon, 18 Apr 2011 14:01:13 +0000 (14:01 +0000)]
Jie Zhang  <jie@codesourcery.com>
Richard Earnshaw  <rearnsha@arm.com>

* arm.c (neon_builtin_type_bits): Remove.
(typedef enum neon_builtin_mode): New.
(T_MAX): Don't define.
(typedef enum neon_builtin_datum): Remove bits, codes[],
num_vars and base_fcode.  Add mode, code and fcode.
(VAR1, VAR2, VAR3, VAR4, VAR5, VAR6, VAR7, VAR8, VAR9
VAR10): Change accordingly.
(neon_builtin_data[]): Change accordingly
(arm_init_neon_builtins): Change accordingly.
(neon_builtin_compare): Remove.
(locate_neon_builtin_icode): Remove.
(arm_expand_neon_builtin): Change accordingly.

* arm.h (enum arm_builtins): Move to ...
* arm.c (enum arm_builtins): ... here; and rearrange builtin code.

* arm.c (arm_builtin_decl): Declare.
(TARGET_BUILTIN_DECL): Define.
(enum arm_builtins): Correct ARM_BUILTIN_MAX.
(arm_builtin_decls[]): New.
(arm_init_neon_builtins): Store builtin declarations in
arm_builtin_decls[].
(arm_init_tls_builtins): Likewise.
(arm_init_iwmmxt_builtins): Likewise.  Refactor initialization code.
(arm_builtin_decl): New.

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

9 years ago2011-04-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Apr 2011 13:58:47 +0000 (13:58 +0000)]
2011-04-18  Richard Guenther  <rguenther@suse.de>

* tree.c (upper_bound_in_type): Build properly canonicalized
INTEGER_CSTs.
(lower_bound_in_type): Likewise.

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

9 years ago2011-04-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Apr 2011 11:59:34 +0000 (11:59 +0000)]
2011-04-18  Richard Guenther  <rguenther@suse.de>

* gimple.h (gimple_call_addr_fndecl): New function.
(gimple_call_fndecl): Use it.
* gimple-fold.c (gimple_fold_call): Fold away OBJ_TYPE_REFs
for direct calls.
* tree-ssa-ccp.c (ccp_fold_stmt): Remove OBJ_TYPE_REF folding.
* tree-ssa-pre.c (eliminate): Also simplify indirect OBJ_TYPE_REFs.

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

9 years ago * gcc.dg/pr48235.c: Add dg-require-effective-target freorder.
amonakov [Mon, 18 Apr 2011 11:33:52 +0000 (11:33 +0000)]
* gcc.dg/pr48235.c: Add dg-require-effective-target freorder.

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

9 years ago2011-04-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 Apr 2011 11:18:01 +0000 (11:18 +0000)]
2011-04-18  Richard Guenther  <rguenther@suse.de>

PR middle-end/48650
* tree.c (build_string): STRING_CST is now derived from tree_typed.

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

9 years ago PR lto/48492
ebotcazou [Mon, 18 Apr 2011 10:13:49 +0000 (10:13 +0000)]
PR lto/48492
* cfgexpand.c (expand_debug_expr) <VAR_DECL>: Return NULL for a
DECL_IN_CONSTANT_POOL without RTL.

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

9 years ago PR target/48252
irar [Mon, 18 Apr 2011 07:14:22 +0000 (07:14 +0000)]
PR target/48252
* config/arm/arm.c (neon_emit_pair_result_insn): Swap arguments
to match neon_vzip/vuzp/vtrn_internal.
* config/arm/neon.md (neon_vtrn<mode>_internal): Make both
outputs explicitly dependent on both inputs.
(neon_vzip<mode>_internal, neon_vuzp<mode>_internal): Likewise.

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

9 years ago PR tree-optimization/48616
jakub [Mon, 18 Apr 2011 06:55:13 +0000 (06:55 +0000)]
PR tree-optimization/48616
* tree-vect-stmts.c (vectorizable_shift): If SLP, determine
whether the shift is by scalar or vector based on whether all SLP
scalar stmts have the same rhs.

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

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

9 years ago2011-04-18 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 18 Apr 2011 05:56:05 +0000 (05:56 +0000)]
2011-04-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * iresolve.c (gfc_resolve_image_index): Set ts.type.
        * simplify.c (gfc_simplify_image_index): Don't abort if the
        * bounds
        are not known at compile time and handle -fcoarray=lib.
        * trans-intrinsics.c (gfc_conv_intrinsic_function): Handle
        IMAGE_INDEX.
        (conv_intrinsic_cobound): Fix comment typo.
        (trans_this_image): New function.
        * trans-array.c (gfc_unlikely): Move to trans.c.
        * trans.c (gfc_unlikely): Function moved from trans-array.c.
        (gfc_trans_runtime_check): Use it.
        * trans-io.c (gfc_trans_io_runtime_check): Ditto.
        * trans.h (gfc_unlikely): Add prototype.

2011-04-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_16.f90: New.

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

9 years ago2011-04-18 Paul Thomas <pault@gcc.gnu.org>
pault [Mon, 18 Apr 2011 05:07:38 +0000 (05:07 +0000)]
2011-04-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48462
* trans-expr.c (fcncall_realloc_result): Renamed version of
realloc_lhs_bounds_for_intrinsic_call that does not touch the
descriptor bounds anymore but makes a temporary descriptor to
hold the result.
(gfc_trans_arrayfunc_assign): Modify the reference to above
renamed function.

2011-04-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48462
* gfortran.dg/realloc_on_assign_7.f03: New test.

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