]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
13 years agogcc/ChangeLog:
steven [Mon, 28 Jun 2010 10:52:46 +0000 (10:52 +0000)] 
gcc/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* system.h: Poison GCC_EXCEPT_H for front-end files.

* langhooks.h (struct lang_hooks): Add eh_protect_cleanup_actions
langhook.
* langhooks-def.h (LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS) New.
Define to NULL by default.
* except.h: Define GCC_EXCEPT_H.
(doing_eh): Remove prototype.
(init_eh, init_eh_for_function): Move prototypes to toplev.h.
(lang_protect_cleanup_actions): Remove.
* except.c (lang_protect_cleanup_actions): Remove.
(doing_eh): Remove.
(gen_eh_region): Don't check doing_eh here.
* toplev.h (init_eh, init_eh_for_function_): Moved from except.h.
* tree-eh.c (honor_protect_cleanup_actions): Use new langhook
instead of lang_protect_cleanup_actions.
* omp-low.c (maybe_catch_exception): Likewise.
* Makefile.in: Update dependencies.

gcc/c-family/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* c-cppbuiltin.c: Do not include except.h.

gcc/objc/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* objc-act.c: Do not include except.h.

gcc/cp/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* init.c: Do not include except.h.
* decl.c: Likewise.
* expr.c: Likewise.
* cp-lang.c: Likewise.
* pt.c: Likewise.
* semantics.c: Likewise.
* decl2.c: Likewise.
* except.c: Likewise.
(init_exception_processing): Do not set the removed
lang_protect_cleanup_actions here.
(cp_protect_cleanup_actions): Make non-static and remove prototype.
(doing_eh): New, moved from except.c but removed the do_warning flag.
(expand_start_catch_block): Update doing_eh call.
(expand_end_catch_block): Likewise.
(build_throw): Likewise.
* cp-tree.h: Prototype cp_protect_cleanup_actions.
* cp-objcp-common.h: Set LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS to
cp_protect_cleanup_actions.
* Make-lang.in: Update dependencies.

gcc/objcp/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* objcp-lang.c: Do not include except.h.
* Make-lang.in: Update dependencies.

gcc/java/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* lang.c: Do not include except.h
* except.c: Likewise.
(doing_eh): New, moved from except.c (in gcc/) but removed the
do_warning flag.
(maybe_start_try): Update doing_eh call.
* Make-lang.in: Update dependencies.

gcc/ada/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* gcc-interface/misc.c: Do not include except.h.
* gcc-interface/Make-lang.in: Update dependencies.

gcc/fortran/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

* Make-lang.in: Update dependencies.

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

13 years ago2010-06-28 Bingfeng Mei <bmei@broadcom.com>
meibf [Mon, 28 Jun 2010 10:39:38 +0000 (10:39 +0000)] 
2010-06-28  Bingfeng Mei <bmei@broadcom.com>

        * cgraph.h (struct varpool_node): new used_from_object_file flag.
        (struct cgraph_local_info): new used_from_object_file flag.
        * cgraph.c (dump_cgraph_node): dump used_from_object_file flag.
        (cgraph_clone_node): initialize used_from_object_file.
        (cgraph_create_virtual_clone): initialize used_from_object_file.
        * lto-symbtab.c (lto_symtab_merge_decls_1): Set
        used_from_object_file flags for symbols of LDPR_PREVAILING_DEF
        when compiling with -fwhole-program.
        (lto_symtab_resolve_symbols) Use LDPR_PREVAILING_DEF_IRONLY for
internal resolver.
        * ipa.c (function_and_variable_visibility): Set externally_visible
        flag of varpool_node if used_from_object_file flag is set.
        (cgraph_externally_visible_p): check used_from_object_file flag.
        * doc/invoke.texi (-fwhole-program option): Change description of
        externally_visible attribute accordingly.
        * doc/extend.texi (externally_visible): Ditto.

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

13 years ago * params.def (max-inline-insns-auto): Default to 40.
hubicka [Mon, 28 Jun 2010 00:31:05 +0000 (00:31 +0000)] 
* params.def (max-inline-insns-auto): Default to 40.
* doc/invoke.texi (max-inline-insns-auto): Document the change.

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

13 years agoDaily bump.
gccadmin [Mon, 28 Jun 2010 00:17:06 +0000 (00:17 +0000)] 
Daily bump.

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

13 years ago PR middle-end/44671
hubicka [Mon, 28 Jun 2010 00:10:34 +0000 (00:10 +0000)] 
PR middle-end/44671
PR middle-end/44686
* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on signature
change.
* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.

* gcc.c-torture/pr44686.c: New file.

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

13 years ago * gfortran.h (gfc_code): Split backend_decl field into cycle_label
froydnj [Sun, 27 Jun 2010 20:00:50 +0000 (20:00 +0000)] 
* gfortran.h (gfc_code): Split backend_decl field into cycle_label
and exit_label fields.
* trans-openmp.c (gfc_trans_omp_do): Assign to new fields
individually.
* trans-stmt.c (gfc_trans_simple_do): Likewise.
(gfc_trans_do): Likewise.
(gfc_trans_do_while): Likewise.
(gfc_trans_cycle): Use cycle_label directly.
(gfc_trans_exit): Use exit_label directly.

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

13 years ago * target.h (struct gcc_target): Add register_move_cost field.
aesok [Sun, 27 Jun 2010 11:40:42 +0000 (11:40 +0000)] 
* target.h (struct gcc_target): Add register_move_cost field.
* target-def.h (TARGET_REGISTER_MOVE_COST): New.
(TARGET_INITIALIZER): Use TARGET_REGISTER_MOVE_COST.
* targhooks.c (default_register_move_cost): New function.
* targhooks.h (default_register_move_cost): Declare function.
* defaults.h (REGISTER_MOVE_COST): Delete.
* ira-int.h (ira_register_move_cost): Update comment.
* ira.c: (ira_register_move_cost): Update comment.
* reload.h (register_move_cost): Declare.
* reginfo.c (register_move_cost): New function.
(move_cost): Update comment.
(init_move_cost, memory_move_secondary_cost): Replace
REGISTER_MOVE_COST with register_move_cost.
* postreload.c (reload_cse_simplify_set): (Ditto.).
* reload.c (find_valid_class, find_reloads): (Ditto.).
* reload1.c (choose_reload_regs): (Ditto.).
* doc/tm.texi (TARGET_REGISTER_MOVE_COST): New.
(REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Update documentation.
* doc/md.texi (can_create_pseudo_p): Update documentation.

* config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
* config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
* config/i386/i386.h (ix86_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.

* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
* config/ia64/ia64-protos.h (int ia64_memory_move_cost): Remove.
* config/ia64/ia64.h (ia64_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.

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

13 years ago2010-06-27 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 27 Jun 2010 11:16:46 +0000 (11:16 +0000)] 
2010-06-27  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44683
* tree-ssa-dom.c (record_edge_info): Record equivalences for the
false edge from the inverted condition.

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

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

13 years agoFix typo
ebotcazou [Sun, 27 Jun 2010 10:59:55 +0000 (10:59 +0000)] 
Fix typo

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

13 years ago2010-06-27 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 27 Jun 2010 09:29:25 +0000 (09:29 +0000)] 
2010-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/regex_compiler.h: Trivial formatting / stylistic fixes.
* include/bits/regex_grep_matcher.tcc: Likewise.
* include/bits/regex_cursor.h: Likewise.
* include/bits/regex.h: Likewise.

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

13 years ago * gcc-interface/trans.c: Include tree-flow.h.
ebotcazou [Sun, 27 Jun 2010 08:47:23 +0000 (08:47 +0000)] 
* gcc-interface/trans.c: Include tree-flow.h.
(gnu_switch_label_stack): Delete.
(Case_Statement_to_gnu): Do not emit the goto at the end of a case if
its associated block cannot fall through.  Do not emit the final label
if no cases branche to it.
* gcc-interface/Make-lang.in (ada/trans.o): Add $(TREE_FLOW_H).

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

13 years ago2010-06-27 Daniel Kraft <d@domob.eu>
domob [Sun, 27 Jun 2010 08:40:40 +0000 (08:40 +0000)] 
2010-06-27  Daniel Kraft  <d@domob.eu>

* dump-parse-tree.c (show_symbol): Dump target-expression for
associate names.
(show_code_node): Make distinction between BLOCK and ASSOCIATE.
(show_namespace): Use show_level for correct indentation of
"inner namespaces" (contained procedures or BLOCK).

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

13 years ago2010-06-27 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 27 Jun 2010 08:10:45 +0000 (08:10 +0000)] 
2010-06-27  Richard Guenther  <rguenther@suse.de>

PR middle-end/44684
* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
for register LHS.  Or non-store assignments.

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

13 years agoDaily bump.
gccadmin [Sun, 27 Jun 2010 00:16:50 +0000 (00:16 +0000)] 
Daily bump.

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

13 years ago2010-06-27 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sat, 26 Jun 2010 22:54:39 +0000 (22:54 +0000)] 
2010-06-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/44678
* dump-parse-tree.c (show_code_node):  Show namespace for
EXEC_BLOCK.

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

13 years ago * call.c (add_function_candidate): Set LOOKUP_COPY_PARM for any
jason [Sat, 26 Jun 2010 21:34:36 +0000 (21:34 +0000)] 
* call.c (add_function_candidate): Set LOOKUP_COPY_PARM for any
constructor called with a single argument that takes a reference
to the constructor's class.
(BAD_CONVERSION_RANK): New.
(compare_ics): Use it to compare bad ICSes.

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

13 years ago * config/sparc/sparc.c (sparc_emit_set_const32): Make static.
ebotcazou [Sat, 26 Jun 2010 21:08:46 +0000 (21:08 +0000)] 
* config/sparc/sparc.c (sparc_emit_set_const32): Make static.
(sparc_emit_set_const64): Likewise.  Remove disabled code.
* config/sparc/sparc-protos.h (sparc_emit_set_const32): Delete.
(sparc_emit_set_const64): Likewise.

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

13 years ago2010-06-26 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 26 Jun 2010 20:11:20 +0000 (20:11 +0000)] 
2010-06-26  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/util/testsuite_hooks.h: Cast fn to bool.

2010-06-26  Kees Cook  <kees.cook@canonical.com>

* testsuite/27_io/ios_base/sync_with_stdio/1.cc: Verify freopen.
* testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-2.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-4.cc: Likewise.
* testsuite/27_io/objects/wchar_t/11.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
* testsuite/27_io/objects/wchar_t/10.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-5.cc: Likewise.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/char/12048-2.cc: Likewise.
* testsuite/27_io/objects/char/12048-4.cc: Likewise.
* testsuite/27_io/objects/char/9.cc: Likewise.
* testsuite/27_io/objects/char/12048-1.cc: Likewise.
* testsuite/27_io/objects/char/12048-3.cc: Likewise.
* testsuite/27_io/objects/char/12048-5.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Verify fgets.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Verify
fwrite.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.

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

13 years ago2010-06-26 Catherine Moore <clm@codesourcery.com>
clm [Sat, 26 Jun 2010 19:27:04 +0000 (19:27 +0000)] 
2010-06-26  Catherine Moore  <clm@codesourcery.com>

        * config/mips/mips.md (alu_type): New attribute.
        (type): Infer type from alu_type.
        (*add<mode>3, *add<mode>3_mips16, *addsi3_extended,
        *baddu_si_eb, *baddu_si_el, *baddu_di, sub<mode>3,
        *subsi3_extended, negsi2, negdi2, *low<mode>,
        *low<mode>_mips16, *ior<mode>3, *ior<mode>3_mips16,
        xor<mode>3, *nor<mode>3,
        *zero_extend<GPR:mode>_trunc<SHORT:mode>,
        *zero_extendhi_truncqi):  Set alu_type instead of type.

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

13 years agoFix typo in last ChangeLog entry.
rupp [Sat, 26 Jun 2010 17:44:58 +0000 (17:44 +0000)] 
Fix typo in last ChangeLog entry.

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

13 years agoFix the Alpha/VMS build. Installed as obvious.
rupp [Sat, 26 Jun 2010 17:42:58 +0000 (17:42 +0000)] 
Fix the Alpha/VMS build. Installed as obvious.

* config/alpha/alpha.c (alpha_need_linkage): Adjust
splay_tree_new_gcc_call.
(alpha_use_linkage): Likewise.

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

13 years ago * collect2.c (main): Remove SWITCHES_NEED_SPACES conditional.
jsm28 [Sat, 26 Jun 2010 17:04:16 +0000 (17:04 +0000)] 
* collect2.c (main): Remove SWITCHES_NEED_SPACES conditional.
* doc/tm.texi (SWITCHES_NEED_SPACES): Don't document.
* gcc.c (SWITCHES_NEED_SPACES, switches_need_spaces): Remove.
(static_specs): Remove switches_need_spaces.
(process_command, do_self_spec): Hardcode handling "-o" instead of
checking switches_need_spaces.
* system.h (SWITCHES_NEED_SPACES): Poison.

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

13 years ago2010-06-26 Richard Guenther <rguenther@suse.de>
rguenth [Sat, 26 Jun 2010 15:55:05 +0000 (15:55 +0000)] 
2010-06-26  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44393
* tree-loop-distribution.c (generate_loops_for_partition): Fix
stmt removal and VOP renaming.
(generate_memset_zero): Remove redundant stmt updating.
* tree-flow.h (mark_virtual_ops_in_bb): Remove.
* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.

* gcc.dg/pr44393.c: New testcase.

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

13 years ago * gcc.dg/tree-ssa/ipa-split-2.c: New testcase.
hubicka [Sat, 26 Jun 2010 14:45:40 +0000 (14:45 +0000)] 
* gcc.dg/tree-ssa/ipa-split-2.c: New testcase.
* ipa-split.c (consider_split): PHI in entry block is OK as long as all
edges comming from header are equivalent.
(visit_bb): Handle PHIs correctly.
* tree-inline.c (copy_phis_for_bb): Be able to copy
PHI from entry edge.
(copy_cfg_body): Produce edge from entry BB before copying
PHIs.

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

13 years ago2010-06-26 Richard Guenther <rguenther@suse.de>
rguenth [Sat, 26 Jun 2010 13:24:57 +0000 (13:24 +0000)] 
2010-06-26  Richard Guenther  <rguenther@suse.de>

PR middle-end/44674
* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
decls.  Handle LABEL_DECLs like FUNCTION_DECLs.

* gcc.dg/pr44674.c: New testcase.

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

13 years ago * gcc.c (n_switches_alloc, n_infiles_alloc, alloc_infile,
jsm28 [Sat, 26 Jun 2010 13:11:04 +0000 (13:11 +0000)] 
* gcc.c (n_switches_alloc, n_infiles_alloc, alloc_infile,
add_infile, alloc_switch): New.
(process_command): Remove variable lang_n_infiles.  Process
options in a single pass.  Use new functions for allocating
infiles and switches arrays.  Properly skip operands of
-Xpreprocessor and -Xassembler.

testsuite:
* gcc.dg/opts-3.c: New test.

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

13 years ago2010-06-26 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 26 Jun 2010 13:03:49 +0000 (13:03 +0000)] 
2010-06-26  Tobias Burnus  <burnus@net-b.de>

        * decl.c (gfc_match_decl_type_spec): Support
        TYPE(intrinsic-type-spec).

2010-06-26  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/type_decl_1.f90: New.
        * gfortran.dg/type_decl_2.f90: New.

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

13 years ago PR middle-end/44671
hubicka [Sat, 26 Jun 2010 11:38:57 +0000 (11:38 +0000)] 
PR middle-end/44671
* cgraphunit.c (cgraph_function_versioning): Remove wrong cgraph_make_decl_local
call; fix typo copying RTL data.

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

13 years ago2010-06-26 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 26 Jun 2010 06:19:57 +0000 (06:19 +0000)] 
2010-06-26  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/semicolon_fixed.f: Fix dg syntax..
        * gfortran.dg/semicolon_fixed_2.f: Ditto.

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

13 years ago* config/m32c/m32c-protos.h (m32c_note_pragma_address): Declare.
dj [Sat, 26 Jun 2010 03:30:19 +0000 (03:30 +0000)] 
* config/m32c/m32c-protos.h (m32c_note_pragma_address): Declare.
(m32c_output_aligned_common): Likewise.
* config/m32c/m32c.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
* config/m32c/m32c-pragma.c (m32c_pragma_address): New.
(m32c_register_pragmas): Register it.
* config/m32c/m32c.c (m32c_get_pragma_address): New.
(m32c_insert_attributes): Set #pragma address decls volatile.
(pragma_entry_eq): New.
(pragma_entry_hash): New.
(m32c_note_pragma_address): New.
(m32c_get_pragma_address): New.
(m32c_output_aligned_common): New.
* doc/extend.texi: Document the new pragma.

* config/m32c/m32c.c (m32c_illegal_subreg_p): Reject illegal MEMs
also.
* config/m32c/predicates.md (m32c_any_operand): Check the code
instead of memory_operand so as to allow matching volatile MEMs.
(m32c_nonimmediate_operand): Likewise.
(mra_operand): Allow volatiles.

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

13 years agoDaily bump.
gccadmin [Sat, 26 Jun 2010 00:17:02 +0000 (00:17 +0000)] 
Daily bump.

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

13 years ago2010-06-25 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Fri, 25 Jun 2010 23:18:08 +0000 (23:18 +0000)] 
2010-06-25  Jonathan Wakely  <jwakely.gcc@gmail.com>

* doc/xml/faq.xml: Fix typo.
* doc/html/faq.xml: Likewise.

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

13 years ago2010-06-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 25 Jun 2010 23:04:11 +0000 (23:04 +0000)] 
2010-06-25  Paolo Carlini <paolo.carlini@oracle.com>

Reformat last ChangeLog entry.

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

13 years ago2010-06-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Fri, 25 Jun 2010 21:32:37 +0000 (21:32 +0000)] 
2010-06-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR testsuite/38946
* gfortran.dg/array_constructor_23.f: Update test to allow for small
error in comparing reals.

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

13 years agoPR debug/44610
aoliva [Fri, 25 Jun 2010 21:11:32 +0000 (21:11 +0000)] 
PR debug/44610
* simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
address if the offset is unknown.

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

13 years ago2010-06-25 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 25 Jun 2010 19:40:37 +0000 (19:40 +0000)] 
2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.h (gfc_check_selected_real_kind,
        gfc_simplify_selected_real_kind): Update prototypes.
        * intrinsic.c (add_functions): Add radix support to
        selected_real_kind.
        * check.c (gfc_check_selected_real_kind): Ditto.
        * simplify.c (gfc_simplify_selected_real_kind): Ditto.
        * trans-decl.c (gfc_build_intrinsic_function_decls):
        Change call from selected_real_kind to selected_real_kind2008.
        * intrinsic.texi (SELECTED_REAL_KIND): Update for radix.
        (PRECISION, RANGE, RADIX): Add cross @refs.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * intrinsics/selected_real_kind.f90
        (_gfortran_selected_real_kind2008): Add function.
        (_gfortran_selected_real_kind): Stub which calls
        _gfortran_selected_real_kind2008.
        * gfortran.map (GFORTRAN_1.4): Add
        _gfortran_selected_real_kind2008.
        * mk-srk-inc.sh: Save also RADIX.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * selected_real_kind_2.f90: New.
        * selected_real_kind_3.f90: New.

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

13 years ago2010-06-25 Stephen M. Webb <stephen.webb@bregmasoft.ca>
smw [Fri, 25 Jun 2010 19:27:16 +0000 (19:27 +0000)] 
2010-06-25  Stephen M. Webb  <stephen.webb@bregmasoft.ca>

  Initial regex implementation.

  * include/std/regex: Modified to use bits/regex_* headers.
  * include/bits/regex_compiler.h: New file.
  * include/bits/regex_constants.h: New file.
  * include/bits/regex_cursor.h: New file.
  * include/bits/regex_error.h: New file.
  * include/bits/regex_grep_matcher.h: New file.
  * include/bits/regex_grep_matcher.tcc: New file.
  * include/bits/regex.h: New file.
  * include/bits/regex_nfa.h: New file.
  * include/bits/regex_nfa.tcc: New file.
  * include/Makefile.am: Added above new files.
  * include/Makefile.in: Regenerated.
  * testsuite/28_regex/02_definitions: New file.
  * testsuite/28_regex/03_requirements: New file.
  * testsuite/28_regex/03_requirements/typedefs.cc: New file.
  * testsuite/28_regex/04_header: New file.
  * testsuite/28_regex/04_header/regex: New file.
  * testsuite/28_regex/04_header/regex/std_c++0x_neg.cc: New file.
  * testsuite/28_regex/05_constants: New file.
  * testsuite/28_regex/05_constants/error_type.cc: New file.
  * testsuite/28_regex/05_constants/match_flag_type.cc: New file.
  * testsuite/28_regex/05_constants/syntax_option_type.cc: New file.
  * testsuite/28_regex/06_exception_type: New file.
  * testsuite/28_regex/06_exception_type/regex_error.cc: New file.
  * testsuite/28_regex/07_traits: New file.
  * testsuite/28_regex/07_traits/char: New file.
  * testsuite/28_regex/07_traits/char/ctor.cc: New file.
  * testsuite/28_regex/07_traits/char/isctype.cc: New file.
  * testsuite/28_regex/07_traits/char/length.cc: New file.
  * testsuite/28_regex/07_traits/char/lookup_classname.cc: New file.
  * testsuite/28_regex/07_traits/char/lookup_collatename.cc: New file.
  * testsuite/28_regex/07_traits/char/transform.cc: New file.
  * testsuite/28_regex/07_traits/char/transform_primary.cc: New file.
  * testsuite/28_regex/07_traits/char/translate.cc: New file.
  * testsuite/28_regex/07_traits/char/translate_nocase.cc: New file.
  * testsuite/28_regex/07_traits/char/value.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t: New file.
  * testsuite/28_regex/07_traits/wchar_t/ctor.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t/length.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t/transform.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t/translate.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc: New file.
  * testsuite/28_regex/07_traits/wchar_t/value.cc: New file.
  * testsuite/28_regex/08_basic_regex: New file.
  * testsuite/28_regex/08_basic_regex/assign: New file.
  * testsuite/28_regex/08_basic_regex/assign/char: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/moveable.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/pstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/range.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/string.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/char/string_op.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc: New file.
  * testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors: New file.
  * testsuite/28_regex/08_basic_regex/ctors/basic: New file.
  * testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/basic/string_range_01_02_03.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/default.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/char/range.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/copy_char.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/extended: New file.
  * testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/extended/string_range_01_02_03.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/move_char.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/string_char.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/wchar_t: New file.
  * testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc: New file.
  * testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc: New file.
  * testsuite/28_regex/08_basic_regex/regex.cc: New file.
  * testsuite/28_regex/09_sub_match: New file.
  * testsuite/28_regex/09_sub_match/cast_char.cc: New file.
  * testsuite/28_regex/09_sub_match/cast_wchar_t.cc: New file.
  * testsuite/28_regex/09_sub_match/length.cc: New file.
  * testsuite/28_regex/09_sub_match/typedefs.cc: New file.
  * testsuite/28_regex/10_match_results: New file.
  * testsuite/28_regex/10_match_results/ctors: New file.
  * testsuite/28_regex/10_match_results/ctors/char: New file.
  * testsuite/28_regex/10_match_results/ctors/char/default.cc: New file.
  * testsuite/28_regex/10_match_results/ctors/wchar_t: New file.
  * testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc: New file.
  * testsuite/28_regex/10_match_results/typedefs.cc: New file.
  * testsuite/28_regex/11_algorithms: New file.
  * testsuite/28_regex/11_algorithms/02_match: New file.
  * testsuite/28_regex/11_algorithms/02_match/basic: New file.
  * testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/basic/string_range_00_03.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/basic/string_range_01_03.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/basic/string_range_02_03.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/cstring_questionmark.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/string_range_00_03.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/string_range_01_03.cc: New file.
  * testsuite/28_regex/11_algorithms/02_match/extended/string_range_02_03.cc: New file.
  * testsuite/28_regex/12_iterators: New file.
  * testsuite/28_regex/12_iterators/regex_iterator: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/ctors: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/ctors/char: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/ctors/char/default.cc: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/default.cc: New file.
  * testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/ctors: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/default.cc: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t/default.cc: New file.
  * testsuite/28_regex/12_iterators/regex_token_iterator/typedefs.cc: New file.
  * testsuite/28_regex/13_ecmascript: New file.

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

13 years ago2010-06-25 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 25 Jun 2010 19:17:21 +0000 (19:17 +0000)] 
2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * decl.c (gfc_match_entry): Mark ENTRY as GFC_STD_F2008_OBS.
        * gfortran.texi (_gfortran_set_options): Update for
        GFC_STD_F2008_OBS addition.
        * libgfortran.h: Add GFC_STD_F2008_OBS.
        * options.c (set_default_std_flags, gfc_handle_option): Handle
        GFC_STD_F2008_OBS.
        io.c (check_format): Fix allow_std check.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * runtime/compile_options.c (init_compile_options): Update
        compile_options.allow_std for GFC_STD_F2008_OBS.
        * io/transfer.c (formatted_transfer_scalar_read,
        formatted_transfer_scalar_write): Fix allow_std check.
        * io/list_read.c (nml_parse_qualifier): Ditto.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/entry_19.f90: New.

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

13 years ago2010-06-25 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 25 Jun 2010 19:02:47 +0000 (19:02 +0000)] 
2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * decl.c (gfc_match_entry): Allow END besides
        END SUBROUTINE/END FUNCTION for contained procedures.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/end_subroutine_1.f90: New.
        * gfortran.dg/end_subroutine_2.f90: New.
        * gfortran.dg/interface_proc_end.f90: Update.

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

13 years ago2010-06-25 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 25 Jun 2010 19:01:04 +0000 (19:01 +0000)] 
2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * parse.c (next_free, next_fixed): Allow ";" as first character.

2010-06-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/semicolon_fixed.f: Update.
        * gfortran.dg/semicolon_fixed_2.f: New.
        * gfortran.dg/semicolon_free_2.f90: New.
        * gfortran.dg/semicolon_free.f90: Update.

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

13 years ago * dwarf2out.c (dwarf2out_vms_debug_main_pointer): New function.
rupp [Fri, 25 Jun 2010 18:49:36 +0000 (18:49 +0000)] 
* dwarf2out.c (dwarf2out_vms_debug_main_pointer): New function.
* dwarf2out.h (dwarf2out_vms_debug_main_pointer): Declare new function.
* config/ia64/ia64-protos.h (ia64_start_function): Declare.
* config/ia64/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Move contents
to ia64_start_function. Invoke it.
* config/ia64/ia64.c (ia64_start_function): Call new function
dwarf2out_vms_debug_main_pointer.

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

13 years agoDo not insert statements computing the true predicate.
spop [Fri, 25 Jun 2010 18:38:25 +0000 (18:38 +0000)] 
Do not insert statements computing the true predicate.

2010-06-25  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (insert_gimplified_predicates): Do not insert
statements computing the true predicate.

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

13 years agoUse reset_bb_predicate whenever the predicate of a BB should be reset to true.
spop [Fri, 25 Jun 2010 18:38:14 +0000 (18:38 +0000)] 
Use reset_bb_predicate whenever the predicate of a BB should be reset to true.

2010-06-25  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (init_bb_predicate): Initialize the predicate
to boolean_true_node.
(reset_bb_predicate): New.
(predicate_bbs): Call reset_bb_predicate.

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

13 years agoCall cleanup_tree_cfg after if-conversion.
spop [Fri, 25 Jun 2010 18:38:04 +0000 (18:38 +0000)] 
Call cleanup_tree_cfg after if-conversion.

2010-06-25  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (combine_blocks): Remove FIXME comment.
(tree_if_conversion): Returns true when something has been changed.
(main_tree_if_conversion): Return TODO_cleanup_cfg when if-conversion
changed something.

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

13 years agoAdd a debug counter for the tree-ssa level if-conversion.
spop [Fri, 25 Jun 2010 18:37:50 +0000 (18:37 +0000)] 
Add a debug counter for the tree-ssa level if-conversion.

2010-06-25  Sebastian Pop  <sebastian.pop@amd.com>

* Makefile.in (tree-if-conv.o): Depends on DBGCNT_H.
* dbgcnt.def (if_conversion_tree): New DEBUG_COUNTER.
* tree-if-conv.c: Include dbgcnt.h.
(tree_if_conversion): Use if_conversion_tree to count the number of
if-convertible loops.

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

13 years ago2010-06-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
ro [Fri, 25 Jun 2010 18:31:33 +0000 (18:31 +0000)] 
2010-06-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/44448
* gfortran.dg/atan2_1.f90: Add -ffloat-store.

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

13 years agoEnable prefetching at -O3 for AMD cpus.
spop [Fri, 25 Jun 2010 18:25:00 +0000 (18:25 +0000)] 
Enable prefetching at -O3 for AMD cpus.

2010-06-25  Changpeng Fang  <changpeng.fang@amd.com>

* common.opt (fprefetch-loop-arrays): Re-define
-fprefetch-loop-arrays as a tri-state option with the initial
value of -1.
* tree-ssa-loop.c (gate_tree_ssa_loop_prefetch): Invoke prefetch
pass only when flag_prefetch_loop_arrays > 0.
* toplev.c (process_options): Note that, with tri-states,
flag_prefetch_loop_arrays>0 means prefetching is enabled.
* config/i386/i386.c (override_options): Enable prefetching at -O3
for a set of CPUs that sw prefetching is helpful.
(software_prefetching_beneficial_p): New.  Return TRUE if software
prefetching is beneficial for the given CPU.

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

13 years ago2010-06-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 25 Jun 2010 17:06:06 +0000 (17:06 +0000)] 
2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_list_to_slist.h: Remove spurious
semicolon; prefer pre-increment.
* include/profile/impl/profiler_container_size.h: Use everywhere
qualified std::size_t.
* include/profile/impl/profiler_trace.h (__trace_base<>::
__collect_warnings): Tidy loop.
* include/profile/impl/profiler_vector_to_list.h: Minor formatting
changes.

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

13 years agoDon't search DEBUG_INSNs for removable zero extends.
hjl [Fri, 25 Jun 2010 15:33:21 +0000 (15:33 +0000)] 
Don't search DEBUG_INSNs for removable zero extends.

2010-06-25  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/44326
* implicit-zee.c (find_removable_zero_extends): Replace
INSN_P with NONDEBUG_INSN_P.

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

13 years ago2010-06-25 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 25 Jun 2010 14:27:47 +0000 (14:27 +0000)] 
2010-06-25  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (struct ipa_param_descriptor): Removed the modified flag.
(struct ipa_node_params): Removed the modification_analysis_done flag.
(ipa_is_param_modified): Removed.
(ipa_analyze_node): Declare.
(ipa_compute_jump_functions): Remove declaration.
(ipa_count_arguments): Likewise.
(ipa_detect_param_modifications): Likewise.
(ipa_analyze_params_uses): Likewise.
* ipa-prop.c (struct param_analysis_info): New type.
(visit_store_addr_for_mod_analysis): Removed.
(visit_load_for_mod_analysis): Renamed to visit_ref_for_mod_analysis,
moved down in the file.
(ipa_detect_param_modifications): Merged into ipa_analyze_params_uses.
(ipa_count_arguments): Made static.
(mark_modified): New function.
(is_parm_modified_before_call): New function.
(compute_pass_through_member_ptrs): New parameter parms_info, call
is_parm_modified_before_call instead of ipa_is_param_modified.
(ipa_compute_jump_functions_for_edge): New parameter parms_info, pass
it to compute_pass_through_member_ptrs.
(ipa_compute_jump_functions): New parameter parms_info, pass it to
ipa_compute_jump_functions_for_edge.  Call ipa_initialize_node_params
on the callee if it is analyzed.  Made static.
(ipa_analyze_indirect_call_uses): New parameter parms_info, call
is_parm_modified_before_call instead of ipa_is_param_modified.
(ipa_analyze_call_uses): New parameter parms_info, pass it to
ipa_analyze_indirect_call_uses.
(ipa_analyze_stmt_uses): New parameter parms_info, pass it to
ipa_analyze_call_uses.
(ipa_analyze_params_uses): New parameter parms_info, pass it to
ipa_analyze_stmt_uses.  Also perform the used analysis.  Made static.
(ipa_analyze_node): New function.
(ipa_print_node_params): Do not dump the modified flag.
(ipa_write_node_info): Assert uses_analysis_done rather than streaming
it.  Do not stream the modified parameter flag.
(ipa_read_node_info): Set uses_analysis_done to 1 instead of streaming
it.  Do not stream the modified parameter flag.
* ipa-cp.c (ipcp_analyze_node): Removed.
(ipcp_init_stage): Iterate only once over the nodes, analyze each one
with only a call to ipa_analyze_node.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): Analyze the
node with only a call to ipa_analyze_node.

* testsuite/g++.dg/ipa/iinline-3.C: New test.
* testsuite/gcc.dg/ipa/modif-1.c: Removed.

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

13 years ago2010-06-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Fri, 25 Jun 2010 13:23:08 +0000 (13:23 +0000)] 
2010-06-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* doc/invoke.texi (-Wsuggest-attribute): Add item for noreturn.

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

13 years ago * tree-pass.h (pass_split_functions): Declare.
hubicka [Fri, 25 Jun 2010 13:13:31 +0000 (13:13 +0000)] 
* tree-pass.h (pass_split_functions): Declare.
* opts.c (decode_options): Enable function splitting at -O2
* timevar.def (TV_IPA_FNSPLIT): New macro.
* ipa-split.c: New file.
* common.opt (-fpartial-inlining): New flag.
* Makefile.in (ipa-split.o): New object file.
* passes.c (init_optimization_passes): Add ipa-split.
* params.def (max-inline-insns-auto): Reduce max-inline-insns-auto to 40.
(partial-inlining-entry-probability): New parameters.
* doc/invoke.texi (-fpartial-inlining): New.

* testsuite/gcc.dg/tree-ssa/ipa-split.c

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

13 years ago2010-06-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Fri, 25 Jun 2010 13:09:28 +0000 (13:09 +0000)] 
2010-06-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR 44665
       * tree-inline.c (gimple_expand_calls_inline): Fix typo in comment.
       * gimplify.c (is_gimple_reg_rhs_or_call): Likewise.
       (gimplify_expr): Likewise.

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

13 years ago2010-06-25 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 25 Jun 2010 12:46:41 +0000 (12:46 +0000)] 
2010-06-25  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering
statements instead of bailing out on them.
(ipa_analyze_indirect_call_uses): Do not require that loads from the
parameter are in the same BB as the condition.  Update comments.

* testsuite/g++.dg/ipa/iinline-2.C: New test.

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

13 years ago PR middle-end/43866
jakub [Fri, 25 Jun 2010 12:10:42 +0000 (12:10 +0000)] 
PR middle-end/43866
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
true or always false, return NULL_TREE.
(tree_unswitch_single_loop): Optimize conditions even when reaching
max-unswitch-level parameter.  If num > 0, optimize first all conditions
using entry checks, then do still reachable block discovery and consider
only conditions in still reachable basic blocks in the loop.

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

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

13 years ago PR tree-optimization/44539
jakub [Fri, 25 Jun 2010 12:07:00 +0000 (12:07 +0000)] 
PR tree-optimization/44539
* tree-cfgcleanup.c (fixup_noreturn_call): Call update_stmt even when
the call doesn't have LHS, but has VDEF.

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

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

13 years ago2010-06-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 25 Jun 2010 11:37:54 +0000 (11:37 +0000)] 
2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_list_to_slist.h: Remove spurious
semicolon; prefer pre-increment.
* include/profile/impl/profiler_container_size.h: Use everywhere
qualified std::size_t.
* include/profile/impl/profiler_trace.h (__trace_base<>::
__collect_warnings): Tidy loop.
* include/profile/impl/profiler_vector_to_list.h: Minor formatting
changes.

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

13 years ago * config/pa/pa.h (MODIFY_TARGET_NAME): Remove.
jsm28 [Fri, 25 Jun 2010 11:12:01 +0000 (11:12 +0000)] 
* config/pa/pa.h (MODIFY_TARGET_NAME): Remove.
* doc/tm.texi (MODIFY_TARGET_NAME): Don't document.
* gcc.c (enum add_del, struct modify_target, modify_target):
Remove.
(process_command): Remove code conditional on MODIFY_TARGET_NAME.
* system.h (MODIFY_TARGET_NAME): Poison.

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

13 years ago * doc/invoke.texi: Delete mcmodel=medium from powerpc options.
amodra [Fri, 25 Jun 2010 10:42:41 +0000 (10:42 +0000)] 
* doc/invoke.texi: Delete mcmodel=medium from powerpc options.
* config/rs6000/rs6000.h (enum rs6000_cmodel): Delete CMODEL_MEDIUM.
* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
CMODEL_LARGE as default.
* config/rs6000/rs6000.c (rs6000_handle_option): Remove mcmodel=medium.
(offsettable_ok_by_alignment): Delete.
(rs6000_emit_move): Remove mcmodel=medium optimization.

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

13 years ago2010-06-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 25 Jun 2010 09:43:18 +0000 (09:43 +0000)] 
2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_trace.h: Uglify it to __it, use
everywhere std::size_t instead of size_t.

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

13 years ago With large parts from Jim Wilson:
bernds [Fri, 25 Jun 2010 08:56:24 +0000 (08:56 +0000)] 
With large parts from Jim Wilson:
PR target/43902
* tree-pretty-print.c (dump_generic_node, op_code_prio): Add
WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
* optabs.c (optab_for_tree_code): Likewise.
(expand_widen_pattern_expr): Likewise.
* tree-ssa-math-opts.c (convert_mult_to_widen): New function, broken
out of execute_optimize_widening_mul.
(convert_plusminus_to_widen): New function.
(execute_optimize_widening_mul): Use the two new functions.
* expr.c (expand_expr_real_2): Add support for GIMPLE_TERNARY_RHS.
Remove code to generate widening multiply-accumulate.  Add support
for WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
* gimple-pretty-print.c (dump_ternary_rhs): New function.
(dump_gimple_assign): Call it when appropriate.
* tree.def (WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR): New codes.
* cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
(expand_gimple_stmt_1): Likewise.
(expand_debug_expr): Support WIDEN_MULT_PLUS_EXPR and
WIDEN_MULT_MINUS_EXPR.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* gimple.c (extract_ops_from_tree_1): Renamed from
extract_ops_from_tree.  Add new arg for a third operand; fill it.
(gimple_build_assign_stat): Support operations with three operands.
(gimple_build_assign_with_ops_stat): Likewise.
(gimple_assign_set_rhs_from_tree): Likewise.
(gimple_assign_set_rhs_with_ops_1): Renamed from
gimple_assign_set_rhs_with_ops.  Add new arg for a third operand.
(get_gimple_rhs_num_ops): Support GIMPLE_TERNARY_RHS.
(get_gimple_rhs_num_ops): Handle WIDEN_MULT_PLUS_EXPR and
WIDEN_MULT_MINUS_EXPR.
* gimple.h (enum gimple_rhs_class): Add GIMPLE_TERNARY_RHS.
(extract_ops_from_tree_1): Adjust declaration.
(gimple_assign_set_rhs_with_ops_1): Likewise.
(gimple_build_assign_with_ops): Pass NULL for last operand.
(gimple_build_assign_with_ops3): New macro.
(gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3,
gimple_assign_set_rhs_with_ops, extract_ops_from_tree): New inline
functions.
* tree-cfg.c (verify_gimple_assign_ternary): New static function.
(verify_gimple_assign): Call it.
* doc/gimple.texi (Manipulating operands): Document GIMPLE_TERNARY_RHS.
(Tuple specific accessors, subsection GIMPLE_ASSIGN): Document new
functions for dealing with three-operand statements.
* tree.c (commutative_ternary_tree_code): New function.
* tree.h (commutative_ternary_tree_code): Declare it.
* tree-vrp.c (gimple_assign_nonnegative_warnv_p): Return false for ternary
statements.
(gimple_assign_nonzero_warnv_p): Likewise.
* tree-ssa-sccvn.c (stmt_has_constants): Handle GIMPLE_TERNARY_RHS.
* tree-ssa-ccp.c (get_rhs_assign_op_for_ccp): New static function.
(ccp_fold): Use it.  Handle GIMPLE_TERNARY_RHS.
* tree-ssa-dom.c (enum expr_kind): Add EXPR_TERNARY.
(struct hashtable_expr): New member ternary in the union.
(initialize_hash_element): Handle GIMPLE_TERNARY_RHS.
(hashable_expr_equal_p): Fix indentation.  Handle EXPR_TERNARY.
(iterative_hash_hashable_expr): Likewise.
(print_expr_hash_elt): Handle EXPR_TERNARY.
* gimple-fold.c (fold_gimple_assign): Handle GIMPLE_TERNARY_RHS.
* tree-ssa-threadedge.c (fold_assignment_stmt): Remove useless break
statements.  Handle GIMPLE_TERNARY_RHS.

testsuite/
PR target/43902
* gcc.target/mips/madd-9.c: New test.

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

13 years ago * doc/invoke.texi (-Wsuggest-attribute): Add noreturn.
hubicka [Fri, 25 Jun 2010 07:56:43 +0000 (07:56 +0000)] 
* doc/invoke.texi (-Wsuggest-attribute): Add noreturn.

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

13 years agogcc/
pzhao [Fri, 25 Jun 2010 07:31:49 +0000 (07:31 +0000)] 
gcc/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * c-parser.c (c_parser_parms_list_declarator): Return NULL if one of
        parameters are not good.
        (c_parser_parameter_declaration): Error unknown type name if the type
        name can't start declaration specifiers.

gcc/testsuite/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * gcc.dg/noncompile/pr44517.c: New.
        * gcc.dg/noncompile/990416-1.c: Adjust expected error.

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

13 years ago * gcc.c (translate_options): Don't mention +e in comment.
jsm28 [Fri, 25 Jun 2010 00:26:24 +0000 (00:26 +0000)] 
* gcc.c (translate_options): Don't mention +e in comment.
(process_command): Don't handle +e specially.

cp:
* lang-specs.h: Remove +e handling.

objcp:
* lang-specs.h: Remove +e handling.

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

13 years agoDaily bump.
gccadmin [Fri, 25 Jun 2010 00:18:17 +0000 (00:18 +0000)] 
Daily bump.

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

13 years ago * ira-int.h (struct live_range, live_range_t): Renamed from struct
bernds [Thu, 24 Jun 2010 23:30:28 +0000 (23:30 +0000)] 
* ira-int.h (struct live_range, live_range_t): Renamed from struct
ira_allocno_live_range and allocno_live_range_t; all uses changed.
* ira-build.c (live_range_pool): Renamed from allocno_live_range_pool.
All uses changed.

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

13 years ago * ira-int.h (SET_MINMAX_SET_BIT, CLEAR_MINMAX_SET_BIT,
bernds [Thu, 24 Jun 2010 23:29:44 +0000 (23:29 +0000)] 
* ira-int.h (SET_MINMAX_SET_BIT, CLEAR_MINMAX_SET_BIT,
TEST_MINMAX_SET_BIT, minmax_set_iterator, minmax_set_iter_init,
minmax_set_iter_cond, minmax_set_iter_next,
FOR_EACH_BIT_IN_MINMAX_SET): Renamed from SET_ALLOCNO_SET_BIT,
CLEAR_ALLOCNO_SET_BIT, TEST_ALLOCNO_SET_BIT, ira_allocno_set_iterator,
ira_allocno_set_iter_init, ira_allocno_set_iter_cond,
ira_allocno_set_iter_Next and FOR_EACH_ALLOCNO_IN_ALLOCNO_SET.  All
uses changed.

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

13 years ago * ira-color.c (assign_hard_reg): Improve formatting of multi-line for
bernds [Thu, 24 Jun 2010 23:28:35 +0000 (23:28 +0000)] 
* ira-color.c (assign_hard_reg): Improve formatting of multi-line for
statement.

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

13 years ago * ira-int.h (ira_parent_allocno, ira_parent_or_cap_allocno): Declare.
bernds [Thu, 24 Jun 2010 23:27:58 +0000 (23:27 +0000)] 
* ira-int.h (ira_parent_allocno, ira_parent_or_cap_allocno): Declare.
* ira-build.c (ira_parent_allocno, ira_parent_or_cap_allocno): New
functions.
(ira_flattening): Use ira_parent_allocno.
* ira-conflicts.c (process_regs_for_copy, propagate_copies)
build_allocno_conflicts): Use ira_parent_or_cap_allocno.

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

13 years ago * ira-build.c (merge_hard_reg_conflicts): New function.
bernds [Thu, 24 Jun 2010 23:27:09 +0000 (23:27 +0000)] 
* ira-build.c (merge_hard_reg_conflicts): New function.
(create_cap_allocno, copy_info_to_removed_store_destinations,
propagate_some_info_from_allocno, propagate_allocno_info): Use it.
(move_allocno_live_ranges, copy_allocno_live_ranges): New functions.
(remove_unnecessary_allocnos, remove_low_level_allocnos)
copy_nifo_to_removed_store_destination): Use them.
* ira-lives.c (make_hard_regno_born): New function, split out of
make_regno_born.
(make_allocno_born): Likewise.
(make_hard_regno_dead): New function, split out of make_regno_dead.
(make_allocno_dead): Likewise.
(inc_register_pressure): New function, split out of set_allocno_live.
(dec_register_pressure): New function, split out of clear_allocno_live.
(mark_pseudo_regno_live): New function, split out of mark_reg_live.
(mark_hard_reg_live): Likewise.  Use inc_register_pressure.
(mark_pseudo_regno_dead): New function, split out of mark_reg_dead.
(mark_hard_reg_dead): Likewise.  Use dec_register_pressure.
(make_pseudo_conflict): Use mark_pseudo_regno_dead and
mark_pseudo_regno_live.
(process_bb_node_lives): Use mark_pseudo_regno_live,
make_hard_regno_born and make_allocno_dead.
(make_regno_born, make_regno_dead, mark_reg_live, mark_reg_dead,
set_allocno_live, clear_allocno_live): Delete functions.

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

13 years ago * ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.
bernds [Thu, 24 Jun 2010 23:25:23 +0000 (23:25 +0000)] 
* ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.

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

13 years ago * thumb2.md (thumb2_tlobits_cbranch): Delete.
rearnsha [Thu, 24 Jun 2010 22:46:54 +0000 (22:46 +0000)] 
* thumb2.md (thumb2_tlobits_cbranch): Delete.
(peephole2 to convert zero_extract/compare of single bit to
 lshift/compare): New.

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

13 years agoFix type in last checkin. (Added \t that should not have been there.)
sje [Thu, 24 Jun 2010 22:38:15 +0000 (22:38 +0000)] 
Fix type in last checkin. (Added \t that should not have been there.)

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

13 years ago2010-06-24 Steve Ellcey <sje@cup.hp.com>
sje [Thu, 24 Jun 2010 22:31:23 +0000 (22:31 +0000)] 
2010-06-24  Steve Ellcey  <sje@cup.hp.com>

PR testsuite/43283
* gcc.dg/lto/20091216-1_0.c: Use newline instead of semicolon
and add argument to nop for IA64.

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

13 years ago * fold-const.c (const_binop): Remove 'notrunc' argement. Adjust
aesok [Thu, 24 Jun 2010 19:11:19 +0000 (19:11 +0000)] 
* fold-const.c (const_binop): Remove 'notrunc' argement. Adjust
recursive call and call to 'int_const_binop'.
(build_range_check, fold_cond_expr_with_comparison, unextend,
fold_truthop, extract_muldiv_1, fold_comparison, fold_binary_loc,
multiple_of_p): Adjust call to const_binop.

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

13 years ago2010-06-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 24 Jun 2010 18:52:42 +0000 (18:52 +0000)] 
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_trace.h (__trace_base<>::
__trace_base()): Move inline, simplify; formatting tweaks.
* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

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

13 years ago2010-06-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 24 Jun 2010 18:52:31 +0000 (18:52 +0000)] 
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_trace.h (__trace_base<>::
__trace_base()): Move inline, simplify; formatting tweaks.
* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

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

13 years ago * config/i386/i386.md (XFmode push splitter): Use GET_MODE_SIZE to
uros [Thu, 24 Jun 2010 18:35:52 +0000 (18:35 +0000)] 
* config/i386/i386.md (XFmode push splitter): Use GET_MODE_SIZE to
determine size of XFmode operand.
(XFmode extended DFmode push splitter): Ditto.
(XFmode extended SFmode push splitter): Ditto.

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

13 years agoAdd missing testcases for PR 44588.
hjl [Thu, 24 Jun 2010 18:21:21 +0000 (18:21 +0000)] 
Add missing testcases for PR 44588.

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

13 years agoImplement 8bit divmod patterns.
hjl [Thu, 24 Jun 2010 18:20:28 +0000 (18:20 +0000)] 
Implement 8bit divmod patterns.

gcc/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44588
* config/i386/i386.md (extract_code): New.
(<u>divmodqi4): Likewise.
(divmodhiqi3): Likewise.
(udivmodhiqi3): Likewise.
(<u>divqi3): Remvoved.

gcc/testsuite/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44588
* gcc.target/i386/mod-1.c: New.
* gcc.target/i386/umod-1.c: Likewise.
* gcc.target/i386/umod-2.c: Likewise.
* gcc.target/i386/umod-3.c: Likewise.

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

13 years ago PR middle-end/44492
jakub [Thu, 24 Jun 2010 17:48:16 +0000 (17:48 +0000)] 
PR middle-end/44492
* recog.h (struct recog_data): Add is_asm field.
* recog.c (asm_operand_ok, constrain_operands): If neither < nor > is
present in constraints of inline-asm operand and memory operand
contains {PRE,POST}_{INC,DEC,MODIFY}, return 0.
(extract_insn): Initialize recog_data.is_asm.
* doc/md.texi (Constraints): Document operand side-effect rules.

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

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

13 years ago2010-06-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 24 Jun 2010 16:17:55 +0000 (16:17 +0000)] 
2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/impl/profiler_trace.h (__warning_data::
__warning_message): Change to std::string; clean-up includes,
qualify size_t, fprintf, etc, with std everywhere.
(struct __warn::operator()): Adjust.
* include/profile/impl/profiler_list_to_slist.h
(__list2slist_info::__advice): Change to return a std::string;
clean-up includes, qualify size_t, fprintf, etc, with std.
* include/profile/impl/profiler_container_size.h
(__container_size_info::__advice): Likewise.
* include/profile/impl/profiler_hash_func.h (__hashfunc_info::
__advice): Likewise.
* include/profile/impl/profiler_list_to_vector.h
(__list2vector_info::__advice): Likewise.
* include/profile/impl/profiler_vector_to_list.h
(__vector2list_info::__advice): Likewise.
* include/profile/impl/profiler_map_to_unordered_map.h
(__map2umap_info::__advice): Likewise.
* include/profile/impl/profiler.h: Likewise.
* include/profile/impl/profiler_hashtable_size.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.
* include/profile/impl/profiler_vector_size.h: Likewise.

* include/profile/iterator_tracker.h: Formatting and stylistic
tweaks.
* include/profile/base.h: Likewise.
* include/profile/map.h: Likewise.

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

13 years ago * update_web_docs_svn: Also pass -I option pointing to ada/ source
jsm28 [Thu, 24 Jun 2010 15:52:46 +0000 (15:52 +0000)] 
* update_web_docs_svn: Also pass -I option pointing to ada/ source
directory for Ada manual.

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

13 years ago2010-06-24 Andi Kleen <ak@linux.intel.com>
manu [Thu, 24 Jun 2010 12:47:30 +0000 (12:47 +0000)] 
2010-06-24  Andi Kleen  <ak@linux.intel.com>

* c-parser.c (c_parser_conditional_expression):
        Call warn_for_omitted_condop.
        * doc/invoke.texi: Document omitted condop warning.
c-family/
        * c-common.c (warn_for_omitted_condop): New.
        * c-common.h (warn_for_omitted_condop): Add prototype.
testsuite/
        * c-c++-common/warn-omitted-condop.c: New.
cp/
* parser.c: (cp_parser_question_colon_clause):
        Switch to use cp_lexer_peek_token.
        Call warn_for_omitted_condop. Call pedwarn for omitted
        middle operand.

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

13 years ago * loop-unswitch.c (compare_and_jump_seq): Assert that the last
nickc [Thu, 24 Jun 2010 10:01:57 +0000 (10:01 +0000)] 
    * loop-unswitch.c (compare_and_jump_seq): Assert that the last
        insn in the sequence is a jump insn before setting its label.

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

13 years ago * collect2.c (main): Match exactly --version and --help.
amodra [Thu, 24 Jun 2010 08:39:11 +0000 (08:39 +0000)] 
* collect2.c (main): Match exactly --version and --help.

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

13 years ago2010-06-24 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 24 Jun 2010 07:51:22 +0000 (07:51 +0000)] 
2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * decl.c (variable_decl): Fix IMPORT diagnostic for CLASS.

2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * gfortran.dg/import8.f90: New.

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

13 years ago* config/m32c/m32c-pragma.c: Don't include rtl.h.
dj [Thu, 24 Jun 2010 04:26:04 +0000 (04:26 +0000)] 
* config/m32c/m32c-pragma.c: Don't include rtl.h.

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

13 years agoDaily bump.
gccadmin [Thu, 24 Jun 2010 00:17:50 +0000 (00:17 +0000)] 
Daily bump.

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

13 years ago/java
aesok [Wed, 23 Jun 2010 19:18:10 +0000 (19:18 +0000)] 
/java
* decl.c (java_init_decl_processing): Use double_int_to_tree instead
of build_int_cst_wide.
* boehm.c (set_bit): Remove.
(mark_reference_fields): Use double_int type for 'mask' argument.
Use double_int_setbit instead of set_bit.
(get_boehm_type_descriptor): Use double_int_setbit instead of
set_bit. Use double_int_to_tree instead of build_int_cst_wide.

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

13 years ago * config/i386/i386 (mov<mode>): Macroize expander from mov{sf,df,xf}
uros [Wed, 23 Jun 2010 19:02:42 +0000 (19:02 +0000)] 
* config/i386/i386 (mov<mode>): Macroize expander from mov{sf,df,xf}
using X87MODEF mode iterator.
(pushsf splitter): Macroize splitter using P mode iterator.
(*swap<mode>): Macroize insn from *swap{sf,df} using MODEF
mode iterator.

(*movxf_internal): Rename from *movxf_integer.
(*movxf_internal_nointeger): Rename from *movxf_nointeger.
(*movdf_internal_rex64): Rename from *movdf_integer_rex64.
(*movdf_internal): Rename from *movdf_integer.
(*movdf_internal_nointeger): Rename from *movdf_nointeger.
(*movsf_internal): Rename from *movdf_1.

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

13 years ago2010-06-23 Basile Starynkevitch <basile@starynkevitch.net>
bstarynk [Wed, 23 Jun 2010 16:10:01 +0000 (16:10 +0000)] 
2010-06-23  Basile Starynkevitch  <basile@starynkevitch.net>

* coretypes.h: (gimple_seq_node_d, gimple_seq_node)
(const_gimple_seq_node): Removed typedefs.

* gimple.h: (gimple_seq_node_d, gimple_seq_node)
(const_gimple_seq_node): Added typedefs moved from coretypes.h.

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

13 years ago PR other/44644
amylaar [Wed, 23 Jun 2010 14:25:33 +0000 (14:25 +0000)] 
    PR other/44644
        * df-core.c (struct df): Rename to df_d.
        * df.h (struct df): Likewise.
        * dse.h (struct df): Remove forward declaration.
        * recog.h (struct insn_data): Rename to:
        (struct_insn_data_d).  Adjusted all users.

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

13 years agoSplit AVX vec_extract_lo_XXX and 128bit to 256bit cast.
hjl [Wed, 23 Jun 2010 14:11:23 +0000 (14:11 +0000)] 
Split AVX vec_extract_lo_XXX and 128bit to 256bit cast.
Remove 256bit to 128bit cast.

2010-06-23  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (bdesc_args): Replace CODE_FOR_avx_si_si256,
CODE_FOR_avx_ps_ps256 and CODE_FOR_avx_pd_pd256 with
CODE_FOR_vec_extract_lo_v8si, CODE_FOR_vec_extract_lo_v8sf
and CODE_FOR_vec_extract_lo_v4df.

* config/i386/sse.md (vec_extract_lo_<AVX256MODE4P:mode>):
Changed to define_insn_and_split.
(vec_extract_lo_<AVX256MODE8P:mode>): Likewise.
(vec_extract_lo_v16hi): Likewise.
(vec_extract_lo_v32qi): Likewise.
(avx_<avxmodesuffixp><avxmodesuffix>_<avxmodesuffixp>): Likewise.
(avx_<avxmodesuffixp>_<avxmodesuffixp><avxmodesuffix>): Removed.

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

13 years agoFix header.
charlet [Wed, 23 Jun 2010 12:51:37 +0000 (12:51 +0000)] 
Fix header.

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

13 years ago2010-06-23 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 23 Jun 2010 12:44:34 +0000 (12:44 +0000)] 
2010-06-23  Thomas Quinot  <quinot@adacore.com>

* exp_attr.adb (Expand_Access_To_Protected_Op): When rewriting a
reference to a protected subprogram outside of the protected's scope,
ensure the corresponding external subprogram is frozen before the
reference.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb: Fix typo in error message.
* sem.adb: Refine previous change.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* impunit.adb, a-suewen.adb, a-suewen.ads, a-suenco.adb, a-suenco.ads,
a-suezen.adb, a-suezen.ads, a-stuten.adb, a-stuten.ads, Makefile.rtl:
Implement Ada 2012 string encoding packages.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* a-stwiun-shared.adb, a-stwiun-shared.ads, a-stzunb-shared.adb,
a-stzunb-shared.ads, a-swunau-shared.adb, a-swuwti-shared.adb,
a-szunau-shared.adb, a-szuzti-shared.adb: New files.
* gcc-interface/Makefile.in: Enable use of above files.

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

13 years agoAdd PR markers.
amylaar [Wed, 23 Jun 2010 12:40:04 +0000 (12:40 +0000)] 
Add PR markers.

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

13 years ago * config/spu/spu.c (ea_load_store_inline): Use add_reg_note.
amylaar [Wed, 23 Jun 2010 12:31:08 +0000 (12:31 +0000)] 
    * config/spu/spu.c (ea_load_store_inline): Use add_reg_note.

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

13 years ago * config/spu/spu-protos.h (spu_expand_epilogue) Use bool.
amylaar [Wed, 23 Jun 2010 12:29:32 +0000 (12:29 +0000)] 
    * config/spu/spu-protos.h (spu_expand_epilogue) Use bool.
        * config/spu/spu.c (spu_scalar_mode_supported_p): Declare with bool.
        (spu_vector_mode_supported_p, spu_handle_fndecl_attribute): Likewise.
        (spu_handle_vector_attribute, spu_pass_by_reference): Likewise.
        (spu_rtx_costs, spu_function_ok_for_sibcall): Likewise.

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

13 years ago2010-06-23 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 23 Jun 2010 10:21:23 +0000 (10:21 +0000)] 
2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Constant_Address_Clauses): Do not check legality
of address clauses if if Ignore_Rep_Clauses is active.
* freeze.adb (Check_Address_Clause): If Ignore_Rep_Clauses is active,
remove address clause from tree so that it does not reach the backend.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Do not
expand 'Valid from user code in CodePeer mode, will be handled by the
back-end directly.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-comlin.ads: Minor comment improvements.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Uses_SS): The expression that initializes a controlled
component of a record type may be a user-defined operator that is
rewritten as a function call.

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