gcc.git
15 years agoaot-compile.in: Print diagnostics for malformed or invalid class files.
Matthias Klose [Sun, 26 Apr 2009 14:11:58 +0000 (14:11 +0000)]
aot-compile.in: Print diagnostics for malformed or invalid class files.

2009-04-26  Matthias Klose <doko@ubuntu.com>

        * contrib/aot-compile.in: Print diagnostics for malformed or invalid
        class files.
        * contrib/generate-cacerts.pl.in: New.
        * configure.ac (AC_CONFIG_FILES): Add generate-cacerts.pl.

From-SVN: r146802

15 years agomingw-w64.h (STANDARD_INCLUDE_DIR): Redefine it to just use mingw/include.
Kai Tietz [Sun, 26 Apr 2009 13:50:12 +0000 (13:50 +0000)]
mingw-w64.h (STANDARD_INCLUDE_DIR): Redefine it to just use mingw/include.

2009-04-26  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/mingw-w64.h (STANDARD_INCLUDE_DIR):
Redefine it to just use mingw/include.
(ASM_SPEC): Rules for -m32 and -m64.
(LINK_SPEC): Use Likewise.
(SPEC_32): New define.
(SPEC_64): Likewise.
(SUB_LINK_SPEC): Likewise.
(MULTILIB_DEFAULTS): New define.
* config/i386/t-mingw-w64 (MULTILIB_OPTIONS):
Add multilib options.
(MULTILIB_DIRNAMES): Likewise.
(MULTILIB_OSDIRNAMES): Likewise.
(LIBGCC): Likewise.
(INSTALL_LIBGCC): Likewise.

From-SVN: r146801

15 years agore PR c/39556 (statics in C99 inline functions later declared extern)
Joseph Myers [Sun, 26 Apr 2009 13:40:19 +0000 (14:40 +0100)]
re PR c/39556 (statics in C99 inline functions later declared extern)

PR c/39556
* c-tree.h (enum c_inline_static_type): New.
(record_inline_static): Declare.
* c-decl.c (struct c_inline_static, c_inline_statics,
record_inline_static, check_inline_statics): New.
(pop_file_scope): Call check_inline_statics.
(start_decl): Call record_inline_static instead of pedwarning
directly for static in inline function.
* c-typeck.c (build_external_ref): Call record_inline_static
instead of pedwarning directly for static referenced in inline
function.

testsuite:
* gcc.dg/inline-34.c: New test.

From-SVN: r146800

15 years agodf-scan.c (df_insn_rescan): Salvage insn's LUID if the insn is not new but only being...
Steven Bosscher [Sun, 26 Apr 2009 12:28:53 +0000 (12:28 +0000)]
df-scan.c (df_insn_rescan): Salvage insn's LUID if the insn is not new but only being rescanned.

* df-scan.c (df_insn_rescan): Salvage insn's LUID if the insn is
not new but only being rescanned.
* gcse.c (uid_cuid, max_uid, INSN_CUID, max_cuid, struct reg_set,
reg_set_table, REG_SET_TABLE_SLOP, reg_set_in_block,
alloc_reg_set_mem, free_reg_set_mem, record_one_set,
record_set_info, compute_set, grealloc): Remove.
(recompute_all_luids): New function.
(gcse_main): Don't compute sets, and don't do related memory
allocations/free-ing.  If something changed before the end of the
pass, update LUIDs using recompute_all_luids.
(alloc_gcse_mem): Don't compute LUIDs.  Don't allocate reg_set memory.
(free_gcse_mem): Don't free it either.
(oprs_unchanged_p, load_killed_in_block, record_last_reg_set_info):
Use the df insn LUIDs.
(load_killed_in_block): Likewise.
(compute_hash_table_work): Don't compute reg_set_in_block.
(compute_transp): Use DF_REG_DEF_CHAINs.
(local_cprop_pass): Don't use compute_sets and related functions.
(one_cprop_pass, pre_gcse, one_pre_gcse_pass, one_code_hoisting_pass):
Use get_max_uid() instead of max_cuid.
(insert_insn_end_basic_block, pre_insert_copy_insn,
update_ld_motion_stores): Don't try to
keep reg_set tables up to date.
(pre_insert_copies): Use df insn LUIDs.
(sbitmap pre_redundant_insns): Replace with uses of INSN_DELETED_P.
(reg_set_info): Don't use extra bitmap argument.
(compute_store_table): Don't compute reg_set_in_block.  Use DF scan
information to compute regs_set_in_block.
(free_store_memory, store_motion): Don't nullify reg_set_in_block.
(bypass_jumps): Don't use compute_sets and friends.

From-SVN: r146799

15 years ago2009-04-26 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Sun, 26 Apr 2009 10:12:08 +0000 (10:12 +0000)]
2009-04-26  Paolo Carlini  <paolo.carlini@oracle.com>

Revert the last commit.

From-SVN: r146796

15 years agore PR testsuite/39710 (gcc.misc-tests/help.exp doesn't work when configured with...
Ralf Wildenhues [Sun, 26 Apr 2009 08:18:48 +0000 (08:18 +0000)]
re PR testsuite/39710 (gcc.misc-tests/help.exp doesn't work when configured with --enable-checking=assert)

gcc/
PR testsuite/39710
* opts.c (undocumented_msg): Do not leave blank even with
ENABLE_CHECKING.

From-SVN: r146795

15 years agoUpdate copyright year. Committed without a ChangeLog entry.
Ian Lance Taylor [Sun, 26 Apr 2009 03:51:54 +0000 (03:51 +0000)]
Update copyright year.  Committed without a ChangeLog entry.

From-SVN: r146794

15 years agoMakefile.in (needed-list): Target removed (not used in GCC 3.0 and later).
Eli Zaretskii [Sun, 26 Apr 2009 02:23:29 +0000 (02:23 +0000)]
Makefile.in (needed-list): Target removed (not used in GCC 3.0 and later).

* Makefile.in (needed-list): Target removed (not used in GCC
3.0 and later).  All references deleted.
(mostlyclean): Remove references to needed.awk and needed2.awk.

From-SVN: r146793

15 years agoDaily bump.
GCC Administrator [Sun, 26 Apr 2009 00:17:14 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r146792

15 years agoc-decl.c (build_enumerator): Allow values folding to integer constants but not intege...
Joseph Myers [Sat, 25 Apr 2009 23:30:10 +0000 (00:30 +0100)]
c-decl.c (build_enumerator): Allow values folding to integer constants but not integer constant expressions...

* c-decl.c (build_enumerator): Allow values folding to integer
constants but not integer constant expressions with a pedwarn if
pedantic.

testsuite:
* gcc.dg/enum-const-1.c, gcc.dg/enum-const-2.c,
gcc.dg/enum-const-3.c: New tests.
* gcc.dg/gnu89-const-expr-1.c, gcc.dg/gnu99-const-expr-1.c: Use
-pedantic-errors.  Update expected diagnostics.

From-SVN: r146789

15 years agore PR c/39582 (bad errors for some uses of [*] arrays)
Joseph Myers [Sat, 25 Apr 2009 21:19:09 +0000 (22:19 +0100)]
re PR c/39582 (bad errors for some uses of [*] arrays)

PR c/39582
* c-typeck.c (c_expr_sizeof_type): Create a C_MAYBE_CONST_EXPR
with non-null C_MAYBE_CONST_EXPR_PRE if size of a variable-length
type is an integer constant.

testsuite:
* gcc.dg/vla-20.c: New test.

From-SVN: r146787

15 years agomutex (__get_once_functor_lock, [...]): Replace global lock object with local locks...
Jonathan Wakely [Sat, 25 Apr 2009 20:14:27 +0000 (20:14 +0000)]
mutex (__get_once_functor_lock, [...]): Replace global lock object with local locks on global mutex.

2009-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/std/mutex (__get_once_functor_lock, __get_once_mutex):
Replace global lock object with local locks on global mutex.
* src/mutex.cc: Likewise.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/30_threads/call_once/call_once2.cc: New.

From-SVN: r146785

15 years agore PR target/39897 (Revision 146761 caused libgomp.fortran/omp_atomic1.f90)
Uros Bizjak [Sat, 25 Apr 2009 20:11:01 +0000 (22:11 +0200)]
re PR target/39897 (Revision 146761 caused libgomp.fortran/omp_atomic1.f90)

PR target/39897
* config/i386/i386.c (print_operand) ['z']: Revert handling of
HImode operands.

From-SVN: r146784

15 years agotest_summary: Only include LAST_UPDATED if it exists.
Gerald Pfeifer [Sat, 25 Apr 2009 20:03:12 +0000 (20:03 +0000)]
test_summary: Only include LAST_UPDATED if it exists.

* test_summary: Only include LAST_UPDATED if it exists.
Complete copyright years.

From-SVN: r146783

15 years agore PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
Paolo Carlini [Sat, 25 Apr 2009 19:02:17 +0000 (19:02 +0000)]
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)

2009-04-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.

From-SVN: r146781

15 years agore PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
Paolo Carlini [Sat, 25 Apr 2009 19:00:52 +0000 (19:00 +0000)]
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)

2009-04-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.

From-SVN: r146780

15 years agoFix typo in comment in previous commit.
Joseph Myers [Sat, 25 Apr 2009 18:59:20 +0000 (19:59 +0100)]
Fix typo in comment in previous commit.

From-SVN: r146779

15 years agore PR c/39564 (variably modified function return types not always diagnosed)
Joseph Myers [Sat, 25 Apr 2009 18:55:50 +0000 (19:55 +0100)]
re PR c/39564 (variably modified function return types not always diagnosed)

PR c/39564
* c-decl.c (grokdeclarator): Diagnose declarations of functions
with variably modified return type and no storage class
specifiers, except for the case of nested functions.  Distinguish
extern declarations of functions with variably modified return
types from those of objects with variably modified types.

testsuite:
* gcc.dg/vla-19.c: New test.

From-SVN: r146778

15 years agore PR preprocessor/39559 (constants too large for intmax_t need pedwarns)
Joseph Myers [Sat, 25 Apr 2009 18:46:03 +0000 (19:46 +0100)]
re PR preprocessor/39559 (constants too large for intmax_t need pedwarns)

libcpp:
PR preprocessor/39559
* expr.c (cpp_interpret_integer): Use a pedwarn for decimal
constants larger than intmax_t in C99 mode.

gcc/testsuite:
* gcc.dg/c99-intconst-2.c: New test.

From-SVN: r146777

15 years agotree.c (list_equal_p): New function.
Jan Hubicka [Sat, 25 Apr 2009 18:27:19 +0000 (20:27 +0200)]
tree.c (list_equal_p): New function.

* tree.c (list_equal_p): New function.
* tree.h (list_equal_p): Declare.
* coretypes.h (edge_def, edge, const_edge, basic_block_def
basic_block_def, basic_block, const_basic_block): New.
* tree-eh.c (make_eh_edge): EH edges are not abnormal.
(redirect_eh_edge): New function.
(make_eh_edge_update_phi): EH edges are not abnormal.
* except.c: Include tree-flow.h.
(list_match): New function.
(eh_region_replaceable_by_p): New function.
(replace_region): New function.
(hash_type_list): New function.
(hash_eh_region): New function.
(eh_regions_equal_p): New function.
(merge_peers): New function.
(remove_unreachable_regions): Verify EH tree when checking;
merge peers.
(copy_eh_region_1): New function.
(copy_eh_region): New function.
(push_reachable_handler): New function.
(build_post_landing_pads, dw2_build_landing_pads): Be ready for
regions without label but with live RESX.
* except.h (redirect_eh_edge_to_label): New.
* tree-flow.h (redirect_eh_edge): New.
* coretypes.h (edge_def, edge, const_edge, basic_block_def
basic_block_def, basic_block, const_basic_block): Remove.
* Makefile.in (except.o): Add dependency on tree-flow.h
* tree-cfg.c (gimple_redirect_edge_and_branch): Handle EH edges.
* basic-block.h (edge, const_edge, basic_block, const_basic_block):
Remove.

From-SVN: r146776

15 years agore PR bootstrap/39645 (uninitialized variable in genattrtab.c)
Eric Botcazou [Sat, 25 Apr 2009 13:32:43 +0000 (13:32 +0000)]
re PR bootstrap/39645 (uninitialized variable in genattrtab.c)

PR bootstrap/39645
* config/sparc/sparc.c (sparc_gimplify_va_arg): Set TREE_ADDRESSABLE
on the destination of memcpy.

From-SVN: r146772

15 years agoMakefile.tpl (POSTSTAGE1_HOST_EXPORTS): Add GNATBIND.
Eric Botcazou [Sat, 25 Apr 2009 12:24:08 +0000 (12:24 +0000)]
Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Add GNATBIND.

* Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Add GNATBIND.
(POSTSTAGE1_FLAGS_TO_PASS): Pick up exported value for GNATBIND.
* Makefile.in: Regenerate.

From-SVN: r146769

15 years agodecl.c (gnat_to_gnu_entity): Put back kludge.
Eric Botcazou [Sat, 25 Apr 2009 10:38:24 +0000 (10:38 +0000)]
decl.c (gnat_to_gnu_entity): Put back kludge.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
back kludge.

From-SVN: r146766

15 years agotm.texi (REGNO_OK_FOR_BASE_P, [...]): Mention strict/nonstrict difference.
Paolo Bonzini [Sat, 25 Apr 2009 10:20:58 +0000 (10:20 +0000)]
tm.texi (REGNO_OK_FOR_BASE_P, [...]): Mention strict/nonstrict difference.

2009-04-25  Paolo Bonzini  <bonzini@gnu.org>

* doc/tm.texi (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P,
REGNO_MODE_OK_FOR_REG_BASE_P, REGNO_MODE_CODE_OK_FOR_BASE_P,
REGNO_OK_FOR_INDEX_P): Mention strict/nonstrict difference.

From-SVN: r146765

15 years agotree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.
Jan Hubicka [Sat, 25 Apr 2009 09:02:05 +0000 (11:02 +0200)]
tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.

* tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.
(tree_empty_eh_handler_p): Allow non-EH predecestors; allow region
to be reached by different label than left.
(update_eh_edges): Update comment; remove edge_to_remove if possible
and return true if suceeded.
(cleanup_empty_eh): Accept sharing map; handle shared regions.
(cleanup_eh): Compute sharing map.
* except.c (remove_eh_handler_and_replace): Add argument if we should
update regions.
(remove_unreachable_regions): Update for label sharing.
(label_to_region_map): Likewise.
(get_next_region_sharing_label): New function.
(remove_eh_handler_and_replace): Add update_catch_try parameter; update
prev_try pointers.
(remove_eh_handler): Update.
(remove_eh_region_and_replace_by_outer_of): New function.
* except.h (struct eh_region): Add next_region_sharing_label.
(remove_eh_region_and_replace_by_outer_of,
get_next_region_sharing_label): Declare.
* tree-cfgcleanup.c (tree_forwarder_block_p): Simplify.

* tree-cfg.c (split_critical_edges): Split also edges where we can't
insert code even if they are not critical.

* tree-cfg.c (gimple_can_merge_blocks_p): EH edges are unmergable.
(gimple_can_remove_branch_p): EH edges won't remove branch by
redirection.
* tree-inline.c (update_ssa_across_abnormal_edges): Do handle
updating of non-abnormal EH edges.
* tree-cfg.c (gimple_can_merge_blocks_p): EH edges are unmergable.
(gimple_can_remove_branch_p): EH edges are unremovable by redirection.
(split_critical_edges): Split also edges where emitting code on them
will lead to splitting later.

From-SVN: r146763

15 years agore PR fortran/39688 (IMPORT of derived type fails)
Janus Weil [Sat, 25 Apr 2009 08:11:48 +0000 (10:11 +0200)]
re PR fortran/39688 (IMPORT of derived type fails)

2009-04-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39688
* decl.c (gfc_match_import): Use 'sym->name' instead of 'name'.
They differ if the symbol has been use-renamed.

2009-04-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39688
* gfortran.dg/import7.f90: New.

From-SVN: r146762

15 years agore PR inline-asm/39590 (inline asm %z on amd64 says "ll" instead of "q")
Uros Bizjak [Sat, 25 Apr 2009 08:10:51 +0000 (10:10 +0200)]
re PR inline-asm/39590 (inline asm %z on amd64 says "ll" instead of "q")

PR target/39590
* configure.ac (HAVE_AS_IX86_FILDQ): On x86 targets check whether
the configured assembler supports fildq and fistpq mnemonics.
(HAVE_AS_IX86_FILDS): Rename from HAVE_GAS_FILDS_FISTS.
* configure: Regenerated.
* config.in: Ditto.

* config/i386/i386.c (print_operand): Handle 'Z'.
['z']: Remove handling of special fild/fist suffixes.
(output_fix_trunc): Use '%Z' to output suffix of fist{,p,tp} insn.
* config/i386/i386.md (*floathi<mode>2_i387): Use '%Z' to output
suffix of fild insn.
(*floatsi<mode>2_vector_mixed): Ditto.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit): Ditto.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_i387_with_temp): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_i387): Ditto.
* config/i386/gas.h (GAS_MNEMONICS): Remove.

From-SVN: r146761

15 years agoconfigure.ac: Create missing directory gnu/java/security/jce/prng.
Matthias Klose [Sat, 25 Apr 2009 08:04:38 +0000 (08:04 +0000)]
configure.ac: Create missing directory gnu/java/security/jce/prng.

2009-04-24  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Create missing directory gnu/java/security/jce/prng.
        * configure: Regenerate.

From-SVN: r146759

15 years agogenrecog.c (validate_pattern): Do not warn for VOIDmode CALLs as the source of a...
Ben Elliston [Sat, 25 Apr 2009 04:51:34 +0000 (04:51 +0000)]
genrecog.c (validate_pattern): Do not warn for VOIDmode CALLs as the source of a set operation.

* genrecog.c (validate_pattern): Do not warn for VOIDmode CALLs as
the source of a set operation.

From-SVN: r146757

15 years agotarget.h (struct gcc_target): Add case_values_threshold field.
Anatoly Sokolov [Sat, 25 Apr 2009 04:34:27 +0000 (08:34 +0400)]
target.h (struct gcc_target): Add case_values_threshold field.

* target.h (struct gcc_target): Add case_values_threshold field.
* target-def.h (TARGET_CASE_VALUES_THRESHOLD): New.
(TARGET_INITIALIZER): Use TARGET_CASE_VALUES_THRESHOLD.
* targhooks.c (default_case_values_threshold): New function.
* targhooks.h (default_case_values_threshold): Declare function.
* stmt.c (expand_case): Use case_values_threshold target hook.
* expr.h (case_values_threshold): Remove declartation.
* expr.c (case_values_threshold): Remove function.
* doc/tm.texi (CASE_VALUES_THRESHOLD): Revise documentation.

* config/avr/avr.h (CASE_VALUES_THRESHOLD): Remove macro.
* config/avr/avr.c (TARGET_CASE_VALUES_THRESHOLD): Define macro.
(avr_case_values_threshold): Declare as static.
* config/avr/avr-protos.h (avr_case_values_threshold): Remove.

* config/avr/mn10300.h (CASE_VALUES_THRESHOLD): Remove macro.
* config/avr/mn10300.c (TARGET_CASE_VALUES_THRESHOLD): Define macro.
(mn10300_case_values_threshold): New function.

From-SVN: r146756

15 years agore PR bootstrap/39739 (Bootstrapping with in-tree mpfr-2.4.1 and --with-gmp=... errors)
Kaveh R. Ghazi [Sat, 25 Apr 2009 03:24:17 +0000 (03:24 +0000)]
re PR bootstrap/39739 (Bootstrapping with in-tree mpfr-2.4.1 and --with-gmp=... errors)

PR bootstrap/39739
* configure.ac (extra_mpfr_configure_flags): Set and AC_SUBST.
* Makefile.def (module=mpfr): Use extra_mpfr_configure_flags.

* configure, Makefile.in: Regenerate.

From-SVN: r146754

15 years agoira.c (setup_cover_and_important_classes): Add enum cast.
H.J. Lu [Sat, 25 Apr 2009 00:55:51 +0000 (00:55 +0000)]
ira.c (setup_cover_and_important_classes): Add enum cast.

2009-04-24  H.J. Lu  <hongjiu.lu@intel.com>

* ira.c (setup_cover_and_important_classes): Add enum cast.

From-SVN: r146753

15 years agoDaily bump.
GCC Administrator [Sat, 25 Apr 2009 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r146752

15 years agogenpreds.c (write_enum_constraint_num): Output definition of CONSTRAINT_NUM_DEFINED_P...
Vladimir Makarov [Fri, 24 Apr 2009 23:35:16 +0000 (23:35 +0000)]
genpreds.c (write_enum_constraint_num): Output definition of CONSTRAINT_NUM_DEFINED_P macro.

2009-04-24  Vladimir Makarov  <vmakarov@redhat.com>

* genpreds.c (write_enum_constraint_num): Output definition of
CONSTRAINT_NUM_DEFINED_P macro.
* ira.c (setup_cover_and_important_classes): Use
CONSTRAINT_NUM_DEFINED_P instead of CONSTRAINT__LIMIT in #ifdef.

From-SVN: r146748

15 years agosh.h (LIBGCC2_DOUBLE_TYPE_SIZE): Test __SH2A_SINGLE_ONLY__ also.
DJ Delorie [Fri, 24 Apr 2009 23:06:14 +0000 (19:06 -0400)]
sh.h (LIBGCC2_DOUBLE_TYPE_SIZE): Test __SH2A_SINGLE_ONLY__ also.

* config/sh/sh.h (LIBGCC2_DOUBLE_TYPE_SIZE): Test
__SH2A_SINGLE_ONLY__ also.

From-SVN: r146747

15 years agoauthors.xml: Add space.
Benjamin Kosnik [Fri, 24 Apr 2009 20:39:16 +0000 (20:39 +0000)]
authors.xml: Add space.

2009-04-24  Benjamin Kosnik  <bkoz@redhat.com>

* xml/authors.xml: Add space.
* xml/faq.xml: Update links.
* xml/manual/intro.xml: Same.
* xml/manual/abi.xml: Update.
* xml/manual/appendix_contributing.xml: Fix typo.
* xml/manual/status_cxxtr1.xml: Update links.
* xml/manual/status_cxx1998.xml: Same.
* xml/manual/status_cxx200x.xml: Same.

From-SVN: r146746

15 years agovrp48.c: Fix.
Richard Guenther [Fri, 24 Apr 2009 20:29:06 +0000 (20:29 +0000)]
vrp48.c: Fix.

2009-04-24  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/vrp48.c: Fix.

From-SVN: r146745

15 years agocopy7.C: Only abort in memcpy if source and destination are the same.
Doug Kwan [Fri, 24 Apr 2009 20:25:02 +0000 (20:25 +0000)]
copy7.C: Only abort in memcpy if source and destination are the same.

2008-04-24  Doug Kwan  <dougkwan@google.com>

        * g++.dg/init/copy7.C: Only abort in memcpy if source and
        destination are the same.

From-SVN: r146744

15 years agoia64.md (movfs_internal): Allow flt constants.
Steve Ellcey [Fri, 24 Apr 2009 19:35:52 +0000 (19:35 +0000)]
ia64.md (movfs_internal): Allow flt constants.

* config/ia64/ia64.md (movfs_internal): Allow flt constants.
(movdf_internal): Ditto.
* config/ia64/ia64.c (ia64_legitimate_constant_p): Allow
SFmode and DFmode constants.
(ia64_print_operand): Add 'G' format for printing
floating point constants.

From-SVN: r146743

15 years agotree-vrp.c (extract_range_from_binary_expr): Handle overflow from unsigned additions.
Richard Guenther [Fri, 24 Apr 2009 19:10:55 +0000 (19:10 +0000)]
tree-vrp.c (extract_range_from_binary_expr): Handle overflow from unsigned additions.

2009-04-24  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_binary_expr): Handle overflow
from unsigned additions.

* gcc.dg/tree-ssa/vrp48.c: New testcase.

From-SVN: r146742

15 years agoc-typeck.c (set_init_index): Allow array designators that are not integer constant...
Joseph Myers [Fri, 24 Apr 2009 17:24:32 +0000 (18:24 +0100)]
c-typeck.c (set_init_index): Allow array designators that are not integer constant expressions with a...

* c-typeck.c (set_init_index): Allow array designators that are
not integer constant expressions with a pedwarn if pedantic.

testsuite:
* gcc.dg/array-const-1.c, gcc.dg/array-const-2.c,
gcc.dg/array-const-3.c: New tests.

From-SVN: r146741

15 years agoCorrect filenames.
H.J. Lu [Fri, 24 Apr 2009 16:47:20 +0000 (09:47 -0700)]
Correct filenames.

From-SVN: r146740

15 years agoAdd missing ChangeLog entries for revision 146607.
Taras Glek [Fri, 24 Apr 2009 16:46:13 +0000 (09:46 -0700)]
Add missing ChangeLog entries for revision 146607.

From-SVN: r146739

15 years agosimplify-rtx.c (simplify_binary_operation_1, case AND): Result is zero if no overlap...
Bernd Schmidt [Fri, 24 Apr 2009 16:19:36 +0000 (16:19 +0000)]
simplify-rtx.c (simplify_binary_operation_1, case AND): Result is zero if no overlap in nonzero bits between the operands.

* simplify-rtx.c (simplify_binary_operation_1, case AND): Result is
zero if no overlap in nonzero bits between the operands.

From-SVN: r146738

15 years agoFix typo
Eric Botcazou [Fri, 24 Apr 2009 16:12:48 +0000 (16:12 +0000)]
Fix typo

From-SVN: r146737

15 years agocombine.c (record_value_for_reg): Change 0 to VOIDmode, twice.
Ian Lance Taylor [Fri, 24 Apr 2009 15:31:38 +0000 (15:31 +0000)]
combine.c (record_value_for_reg): Change 0 to VOIDmode, twice.

gcc/:
* combine.c (record_value_for_reg): Change 0 to VOIDmode, twice.
(record_dead_and_set_regs): Likewise.
* df.h (struct df_mw_hardreg): Change flags field to int.
(struct df_base_ref): Likewise.
(struct df): Change changeable_flags field to int.
* df-scan.c (df_defs_record): Change clobber_flags to int.
* dwarf2.h (enum dwarf_tag): Make lo_user and hi_user values enum
constants rather than #define macros.
(enum dwarf_attribute, enum dwarf_location_atom): Likewise.
(enum dwarf_type, enum dwarf_endianity_encoding): Likewise.
(enum dwarf_calling_convention): Likewise.
(enum dwarf_line_number_x_ops): Likewise.
(enum dwarf_call_frame_info): Likewise.
(enum dwarf_source_language): Likewise.
* dwarf2out.c (int_loc_descriptor): Add cast to enum type.
(add_calling_convention_attribute): Likewise.
* fold-const.c (fold_undefer_overflow_warnings): Add cast to enum
type.
(combine_comparisons): Change compcode to int.  Add cast to enum
type.
* genrecog.c (maybe_both_true_2): Change c to int.
(write_switch): Likewise.  Add cast to enum type.
* gimplify.c (gimplify_omp_for): Handle return values from
gimplify_expr using MIN rather than bitwise or.
(gimplify_expr): Add cast to enum type.
* ipa-prop.c (update_jump_functions_after_inlining): Change
IPA_BOTTOM to IPA_JF_UNKNOWN.
* ira.c (setup_class_subset_and_memory_move_costs): Change mode to
int.  Add casts to enum type.
(setup_cover_and_important_classes): Change cl to int.  Add casts
to enum type.
(setup_class_translate): Change cl and mode to int.
(ira_init_once): Change mode to int.
(free_register_move_costs): Likewise.
(setup_prohibited_mode_move_regs): Add casts to enum type.
* langhooks.c (add_builtin_function_common): Rework assertion that
value fits bitfield.
* mcf.c (add_fixup_edge): Change type parameter to edge_type.
* omega.c (omega_do_elimination): Avoid math on enum types.
* optabs.c (expand_vec_shift_expr): Remove casts to int.
* opts.c (set_debug_level): Change 2 to enum constant.  Use new
int local to handle integral_argment value.
* regmove.c (try_auto_increment): Change PUT_MODE to
PUT_REG_NOTE_KIND.
* reload.c (push_secondary_reload): Add casts to enum type.
(secondary_reload_class, find_valid_class): Likewise.
* reload1.c (emit_input_reload_insns): Likewise.
* rtl.h (NOTE_VAR_LOCATION_STATUS): Likewise.
* sel-sched.c (init_hard_regs_data): Change cur_mode to int.
* sel-sched-ir.c (hash_with_unspec_callback): Change 0 to enum
constant.
* tree.c (build_common_builtin_nodes): Add casts to enum type.
* tree-complex.c (complex_lattice_t): Typedef to int rather than
enum type.
(expand_complex_libcall): Add casts to enum type.
* tree-into-ssa.c (get_ssa_name_ann): Change 0 to enum constant.
* tree-vect-loop.c (vect_model_reduction_cost): Compare reduc_code
with ERROR_MARK, not NUM_TREE_CODES.
(vect_create_epilog_for_reduction): Likewise.
(vectorizable_reduction): Don't initialize epiloc_reduc_code.
When not using it, set it to ERROR_MARK rather than
NUM_TREE_CODES.
* tree-vect-patterns.c (vect_pattern_recog_1): Change vec_mode to
enum machine_mode.
* tree-vect-stmts.c (new_stmt_vec_info): Change 0 to
vect_unused_in_loop.  Change 0 to loop_vect.
* tree-vectorizer.c (vect_set_verbosity_level): Add casts to enum
type.
* var-tracking.c (get_init_value): Change return type to enum
var_init_status.
* vec.h (DEF_VEC_FUNC_P) [iterate]: Cast 0 to type T.
* config/arm/arm.c (fp_model_for_fpu): Change to array to enum
arm_fp_model.
(arm_override_options): Add casts to enum type.
(arm_emit_tls_decoration): Likewise.
* config/i386/i386.c (ix86_function_specific_restore): Add casts
to enum type.
* config/i386/i386-c.c (ix86_pragma_target_parse): Likewise.
* config/ia64/ia64.c (ia64_expand_compare): Change magic to int.
* config/rs6000/rs6000.c (rs6000_override_options): Add casts to
enum type.
* config/s390/s390.c (code_for_builtin_64): Change to array of
enum insn_code.
(code_for_builtin_31): Likewise.
(s390_expand_builtin): Change code_for_builtin to enum insn_code
const *.
* config/sparc/sparc.c (sparc_override_options): Change value
field in struct code_model to enum cmodel.  In initializer change
0 to NULL and add cast to enum type.

* c-typeck.c (build_modify_expr): Add lhs_origtype parameter.
Change all callers.  Issue a -Wc++-compat warning using
lhs_origtype if necessary.
(convert_for_assignment): Issue -Wc++-compat warnings about
invalid conversions to enum type on assignment.
* c-common.h (build_modify_expr): Update declaration.

gcc/cp/:
* call.c (build_temp): Change 0 to enum constant.
* cp-tree.h (cp_lvalue_kind): Typedef to int rather than enum
type.
* cp-gimplify.c (cp_gimplify_expr): Add cast to enum type.
* decl2.c (constrain_visibility): Likewise.
* parser.c (cp_lexer_get_preprocessor_token): Likewise.
(cp_parser_flags): Typedef to int rather than enum type.
(cp_parser_expression_stack_entry): Change prec field to enum
cp_parser_prec.

* typeck.c (build_modify_expr): Add lhs_origtype parameter.
Change all callers.

gcc/fortran/:
* gfortran.h (enum gfc_symbol_type): New named enum type, broken
out of struct gfc_symbol.
(struct gfc_symbol): Use enum gfc_symbol_type.
(enum gfc_array_ref_dimen_type): New named enum type, broken out
of struct gfc_array_ref).
(struct gfc_array_ref): Use enum gfc_array_ref_dimen_type.
(mod_pointee_as): Update declaration.
* decl.c (add_global_entry): Change type to enum gfc_symbol_type.
(gfc_mod_pointee_as): Change return type to "match".
* module.c (mio_array_ref): Add cast to enum type.
(mio_symbol): Likewise.
* resolve.c (resolve_global_procedure): Change type to enum
gfc_symbol_type.
* trans-io.c (gfc_build_st_parameter): Change type to unsigned
int.

gcc/java/:
* jcf-parse.c (handle_constant): Add cast to enum type.

gcc/objc/:
* objc-act.c (get_super_receiver): Update calls to
build_modify_expr to pass new argument.

gcc/testsuite/:
* gcc.dg/Wcxx-compat-4.c: New testcase.

From-SVN: r146735

15 years agoiq2000.c (function_arg): Handle TImode values.
Nick Clifton [Fri, 24 Apr 2009 15:25:40 +0000 (15:25 +0000)]
iq2000.c (function_arg): Handle TImode values.

        * config/iq2000/iq2000.c (function_arg): Handle TImode values.
        (function_arg_advance): Likewise.
        * config/iq2000/iq2000.md (movsi_internal2): Fix the length of the
        5th alternative.

From-SVN: r146734

15 years agogfortran.h (gfc_get_typebound_proc): Removed as macro, now a function.
Daniel Kraft [Fri, 24 Apr 2009 15:20:23 +0000 (17:20 +0200)]
gfortran.h (gfc_get_typebound_proc): Removed as macro, now a function.

2009-04-24  Daniel Kraft  <d@domob.eu>

* gfortran.h (gfc_get_typebound_proc): Removed as macro, now a function.
(struct gfc_symtree): Moved `typebound' member inside union.
(struct gfc_namespace): Add `tb_sym_root' as new symtree to sort out
type-bound procedures there.
(gfc_get_tbp_symtree): New procedure.
* symbol.c (tentative_tbp_list): New global.
(gfc_get_namespace): NULL new `tb_sym_root' member.
(gfc_new_symtree): Removed initialization of `typebound' member.
(gfc_undo_symbols): Process list of tentative tbp's.
(gfc_commit_symbols): Ditto.
(free_tb_tree): New method.
(gfc_free_namespace): Call it.
(gfc_get_typebound_proc): New method.
(gfc_get_tbp_symtree): New method.
(gfc_find_typebound_proc): Adapt to structural changes of gfc_symtree
and gfc_namespace with regards to tbp's.
* dump-parse-tree.c (show_typebound): Ditto.
* primary.c (gfc_match_varspec): Ditto.  Don't reference tbp-symbol
as it isn't a symbol any longer.
* module.c (mio_typebound_symtree): Adapt to changes.
(mio_typebound_proc): Ditto, create symtrees using `gfc_get_tbp_symtree'
rather than `gfc_get_sym_tree'.
(mio_f2k_derived): Ditto.
* decl.c (match_procedure_in_type): Ditto.
(gfc_match_generic): Ditto.  Don't reference tbp-symbol.
* resolve.c (check_typebound_override): Adapt to changes.
(resolve_typebound_generic): Ditto.
(resolve_typebound_procedures): Ditto.
(ensure_not_abstract_walker): Ditto.
(ensure_not_abstract): Ditto.
(resolve_typebound_procedure): Ditto, ignore erraneous symbols (for
instance, through removed tentative ones).
* gfc-internals.texi (Type-bound procedures): Document changes.

2009-04-24  Daniel Kraft  <d@domob.eu>

* gfortran.dg/typebound_generic_1.f03: Change so that no error is
expected on already erraneous symbol (renamed to fresh one).

From-SVN: r146733

15 years agomlib-prj.adb, [...]: Minor reformatting.
Robert Dewar [Fri, 24 Apr 2009 14:56:55 +0000 (14:56 +0000)]
mlib-prj.adb, [...]: Minor reformatting.

2009-04-24  Robert Dewar  <dewar@adacore.com>

* mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
clean.adb: Minor reformatting.
Minor code reorganization and message improvement.

From-SVN: r146732

15 years ago2009-04-24 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Fri, 24 Apr 2009 14:53:19 +0000 (14:53 +0000)]
2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
(Alternate_Languages): now implemented as a malloc-ed list rather
than through a table.

From-SVN: r146731

15 years agoconstraints.md ('I', 'J'): Fix condition.
Andreas Krebbel [Fri, 24 Apr 2009 14:47:33 +0000 (14:47 +0000)]
constraints.md ('I', 'J'): Fix condition.

2009-04-24  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/constraints.md ('I', 'J'): Fix condition.

From-SVN: r146729

15 years agosem_res.adb (Static_Concatenation): Simplify predicate to make it accurately handle...
Thomas Quinot [Fri, 24 Apr 2009 14:47:29 +0000 (14:47 +0000)]
sem_res.adb (Static_Concatenation): Simplify predicate to make it accurately handle cases such as "lit" & "lit" and...

2009-04-24  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb (Static_Concatenation): Simplify predicate to make it
accurately handle cases such as "lit" & "lit" and
"lit" & static_string_constant

From-SVN: r146728

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 14:35:21 +0000 (16:35 +0200)]
[multiple changes]

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
removed. Lists of projects are now implemented via standard malloc
rather than through the table.

2009-04-24  Thomas Quinot  <quinot@adacore.com>

* sem_ch12.adb: Minor reformatting

* g-trasym.adb: Minor reformatting

* exp_ch6.adb: Minor reformatting

2009-04-24  Robert Dewar  <dewar@adacore.com>

* layout.adb (Layout_Type): For packed array type, copy unset
size/alignment fields from the referenced Packed_Array_Type.

2009-04-24  Bob Duff  <duff@adacore.com>

* lib-load.adb (Make_Instance_Unit): Revert previous change, no
longer needed after sem_ch12 changes.

* sem.adb (Walk_Library_Items): Include with's in some debugging
printouts.

From-SVN: r146727

15 years agoMinor reformatting.
Arnaud Charlet [Fri, 24 Apr 2009 14:30:39 +0000 (16:30 +0200)]
Minor reformatting.

From-SVN: r146726

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 14:30:06 +0000 (16:30 +0200)]
[multiple changes]

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
only ever using the Project field.

2009-04-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
Body_Required on the generated compilation node. The new node is linked
to its body, but both share the same file, so we do not set this flag
on the new unit so as not to create a spurious dependency on a
non-existent body in the ali file for the instance.

2009-04-24  Robert Dewar  <dewar@adacore.com>

* make.adb: Minor reformatting

From-SVN: r146725

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 13:59:23 +0000 (15:59 +0200)]
[multiple changes]

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
Add_Source): merge some code between those. In particular change where
file normalization is done to avoid a few extra calls to
Canonicalize_File_Name. This also removes the need for passing
Current_Dir in a number of subprograms.

2009-04-24  Bob Duff  <duff@adacore.com>

* lib-load.adb (Make_Instance_Unit): In the case where In_Main is
False, assign the correct unit to the Cunit field of the new table
entry. We want the spec unit, not the body unit.

* rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
interface for these.
(Maybe_Add_With): Check whether we're trying to a with on the current
unit, and avoid creating such directly self-referential with clauses.
(Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
[[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
and matches existing comments in the spec.

* sem.adb (Walk_Library_Items): Add various special cases to make the
assertions pass.

* sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
instead of Parent (N), for uniformity.

From-SVN: r146724

15 years ago(pragma Source_File_Name): add missing documentation for the Index
Arnaud Charlet [Fri, 24 Apr 2009 13:49:15 +0000 (15:49 +0200)]
(pragma Source_File_Name): add missing documentation for the Index
 argument.

From-SVN: r146723

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 13:48:25 +0000 (15:48 +0200)]
[multiple changes]

2009-04-24  Robert Dewar  <dewar@adacore.com>

* errout.ads: Minor reformatting

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* gnat_ugn.texi (Library Projects): add documentation on gnatmake's
behavior when the project includes sources from multiple languages

2009-04-24  Vincent Celier  <celier@adacore.com>

* prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
is a language other than Ada declared.

* makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
Imported_First set to True.

From-SVN: r146722

15 years agogengtype-parse.c (parse_error): Add newline after message.
Diego Novillo [Fri, 24 Apr 2009 13:46:47 +0000 (09:46 -0400)]
gengtype-parse.c (parse_error): Add newline after message.

* gengtype-parse.c (parse_error): Add newline after message.

From-SVN: r146721

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 13:31:46 +0000 (15:31 +0200)]
[multiple changes]

2009-04-24  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb: additional optimization to inhibit creation of
redundant transient scopes.

2009-04-24  Bob Duff  <duff@adacore.com>

* rtsfind.ads: Minor comment fix

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
Get_Path_Name_And_Record_Ada_Sources): merged, since these were
basically doing the same work (for explicit or implicit sources).
(Find_Explicit_Sources): renamed to Find_Sources to better reflect its
role. Rewritten to share some code (testing that all explicit sources
have been found) between ada_only and multi_language modes.

2009-04-24  Jerome Lambourg  <lambourg@adacore.com>

* sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
for CLI imported types.
(Analyze_Pragma): Allow CIL or Java imported functions returning
access-to-subprogram types.

From-SVN: r146720

15 years ago2009-04-24 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Fri, 24 Apr 2009 13:25:35 +0000 (13:25 +0000)]
2009-04-24  Emmanuel Briot  <briot@adacore.com>

* make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
(Project_Data.Dir_Path): field removed, since it can be computed
directly from .Directory, and is needed only once when processing the
project is buildgpr.adb or make.adb

From-SVN: r146719

15 years agoMinor reformatting.
Arnaud Charlet [Fri, 24 Apr 2009 13:23:31 +0000 (15:23 +0200)]
Minor reformatting.

From-SVN: r146718

15 years agoprj-env.adb, [...]: Minor reformatting.
Robert Dewar [Fri, 24 Apr 2009 13:22:53 +0000 (13:22 +0000)]
prj-env.adb, [...]: Minor reformatting.

2009-04-24  Robert Dewar  <dewar@adacore.com>

* prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
rtsfind.adb: Minor reformatting.
Minor code reorganization

From-SVN: r146717

15 years agosse.md (avxmodesuffixs): Removed.
H.J. Lu [Fri, 24 Apr 2009 13:22:20 +0000 (13:22 +0000)]
sse.md (avxmodesuffixs): Removed.

2009-04-24  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/sse.md (avxmodesuffixs): Removed.
(*avx_pinsr<avxmodesuffixs>): Renamed to ...
(*avx_pinsr<ssevecsize>): This.

From-SVN: r146716

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 13:15:23 +0000 (15:15 +0200)]
[multiple changes]

2009-04-24  Arnaud Charlet  <charlet@adacore.com>

* mlib-prj.adb: Use friendlier english identifier.

* gnatcmd.adb, make.adb: Use better english identifiers.

2009-04-24  Robert Dewar  <dewar@adacore.com>

* clean.adb: Minor reformatting

From-SVN: r146715

15 years agoeinfo.adb (OK_To_Rename): New flag
Robert Dewar [Fri, 24 Apr 2009 13:14:22 +0000 (13:14 +0000)]
einfo.adb (OK_To_Rename): New flag

2009-04-24  Robert Dewar  <dewar@adacore.com>

* einfo.adb (OK_To_Rename): New flag

* einfo.ads (OK_To_Rename): New flag

* exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
OK_To_Rename set.

* exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename

* sem_ch7.adb (Uninstall_Declarations): Allow for renames from
OK_To_Rename.

From-SVN: r146714

15 years agoloop-iv.c (simple_rhs_p): Allow expressions that are function_invariant_p.
Bernd Schmidt [Fri, 24 Apr 2009 11:05:59 +0000 (11:05 +0000)]
loop-iv.c (simple_rhs_p): Allow expressions that are function_invariant_p.

* loop-iv.c (simple_rhs_p): Allow expressions that are
function_invariant_p.

From-SVN: r146701

15 years agoloop-iv.c (replace_single_def_regs): Look for REG_EQUAL notes...
Bernd Schmidt [Fri, 24 Apr 2009 11:01:57 +0000 (11:01 +0000)]
loop-iv.c (replace_single_def_regs): Look for REG_EQUAL notes...

* loop-iv.c (replace_single_def_regs): Look for REG_EQUAL notes;
follow chains of regs with a single definition, and allow expressions
that are function_invariant_p.

From-SVN: r146700

15 years agoprj-proc.adb, [...] (Project_Data.Seen): field removed.
Emmanuel Briot [Fri, 24 Apr 2009 10:42:30 +0000 (10:42 +0000)]
prj-proc.adb, [...] (Project_Data.Seen): field removed.

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
field removed. This is not a property of the
project, just a boolean used to traverse the project tree, and storing
it in the structure prevents doing multiple traversal in parallel.
(Project_Data.Checked): also removed, since it was playing the same role
as Seen when we had two nested loops, and this is no longer necessary
(For_All_Imported_Projects): removed, since in fact there was already
the equivalent in For_Every_Project_Imported. The latter was rewritten
to use a local hash table instead of Project_Data.Seen
Various loops were rewritten to use For_Every_Project_Imported, thus
removing the need for Project_Data.Seen. This avoids a lot of code
duplication

From-SVN: r146699

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 10:37:20 +0000 (12:37 +0200)]
[multiple changes]

2009-04-24  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Actuals): Do not create blocks around code
statements, even though the actual of the call is a concatenation,
because the argument is static, and we want to preserve warning
messages  about sequences of code statements that are not marked
volatile.

* sem_warn.adb: remove obsolete comment about warning being obsolete

* s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
requeued and the delay has expired while within the accept statement
that executes the requeue, do not perform the requeue and indicate that
the timed call has been aborted.

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
(Has_Ada_Sources, Has_Foreign_Sources): new subprograms
(Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
since they can be computed from the above.

From-SVN: r146698

15 years agoMinor reformatting.
Arnaud Charlet [Fri, 24 Apr 2009 10:33:02 +0000 (12:33 +0200)]
Minor reformatting.

From-SVN: r146697

15 years agognatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
Vincent Celier [Fri, 24 Apr 2009 10:31:57 +0000 (10:31 +0000)]
gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree

2009-04-24  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree

* prj-env.adb: Move all global variables to the private part of the
project tree data.
Access these new components instead of the global variables no longer
in existence.
(Add_To_Path): New Project_Tree_Ref parameter, to access the new
components that were previously global variables.

* prj-env.ads (Initialize): New Project_Tree_Ref parameter
(Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
parameter.

* prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
be able to call Set_Mapping_File_Initial_State_To_Empty with it.

* prj.adb (Initialize): Do not call Prj.Env.Initialize
(Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
components in the private part of the project tree data.

* prj.ads (Private_Project_Tree_Data): new components moved from
Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
Ada_Prj_Objects_File_Set, Fill_Mapping_File.

From-SVN: r146696

15 years agore PR middle-end/39867 (Wrong result of conditional operator exp < 2 ? 2U : (unsigned...
Paolo Bonzini [Fri, 24 Apr 2009 10:29:18 +0000 (10:29 +0000)]
re PR middle-end/39867 (Wrong result of conditional operator exp < 2 ? 2U : (unsigned int) exp)

2009-04-24  Paolo Bonzini  <bonzini@gnu.org>

PR middle-end/39867
* fold-const.c (fold_cond_expr_with_comparison): When folding
> and >= to MAX, make sure the MAX uses the same type as the
comparison operands.

testsuite:
2009-04-24  Paolo Bonzini  <bonzini@gnu.org>

PR middle-end/39867
* gcc.dg/pr39867.c: New.

From-SVN: r146695

15 years agofrv.c (frv_frame_access): Do not use reg+reg addressing for DImode accesses.
Nick Clifton [Fri, 24 Apr 2009 10:27:06 +0000 (10:27 +0000)]
frv.c (frv_frame_access): Do not use reg+reg addressing for DImode accesses.

        * config/frv/frv.c (frv_frame_access): Do not use reg+reg
        addressing for DImode accesses.
        (frv_print_operand_address): Handle PLUS case.
        * config/frv/frv.h (FIXED_REGISTERS): Mark link register as
        fixed.

From-SVN: r146694

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 10:25:20 +0000 (12:25 +0200)]
[multiple changes]

2009-04-24  Vincent Celier  <celier@adacore.com>

* opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.

* prj-nmsc.adb (Check_Library): No error for imports by shared library
projects, when --unchecked-shared-lib-imports is used.

2009-04-24  Robert Dewar  <dewar@adacore.com>

* sem_ch7.adb: Minor reformatting

From-SVN: r146693

15 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Apr 2009 10:22:43 +0000 (12:22 +0200)]
[multiple changes]

2009-04-24  Tristan Gingold  <gingold@adacore.com>

* s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
mach thread id.

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
(For_All_Imported_Projects): new procedure
(For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
above rather than duplicating code.

From-SVN: r146692

15 years ago2009-04-24 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Fri, 24 Apr 2009 10:18:20 +0000 (10:18 +0000)]
2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
(Source_Id, Source_Data): use a real list to store sources rather than
using an external table to store the elements. This makes code more
efficient and more readable.

From-SVN: r146691

15 years ago2009-04-24 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Fri, 24 Apr 2009 10:13:43 +0000 (10:13 +0000)]
2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
(Source_Iterator): new type.
        This removes the need for having the sources on three different
        lists at the project tree, project and language level. They are now
        on a single list.

From-SVN: r146689

15 years agognatcmd.adb, [...]: Remove unused entities
Emmanuel Briot [Fri, 24 Apr 2009 10:10:09 +0000 (10:10 +0000)]
gnatcmd.adb, [...]: Remove unused entities

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* gnatcmd.adb, prj.adb, prj.ads: Remove unused entities

From-SVN: r146688

15 years agosem_warn.adb: Add comment on obsolete warning
Ed Schonberg [Fri, 24 Apr 2009 10:06:35 +0000 (10:06 +0000)]
sem_warn.adb: Add comment on obsolete warning

2009-04-24  Ed Schonberg  <schonberg@adacore.com>

* sem_warn.adb: Add comment on obsolete warning

From-SVN: r146687

15 years ago* prj.ads (Language_Ptr): Make a general access type.
Arnaud Charlet [Fri, 24 Apr 2009 10:05:56 +0000 (12:05 +0200)]
* prj.ads (Language_Ptr): Make a general access type.

From-SVN: r146686

15 years agos-tassta.adb (Create_Task): Fix violation of locking rule.
Arnaud Charlet [Fri, 24 Apr 2009 10:02:16 +0000 (10:02 +0000)]
s-tassta.adb (Create_Task): Fix violation of locking rule.

2009-04-24  Arnaud Charlet  <charlet@adacore.com>

* s-tassta.adb (Create_Task): Fix violation of locking rule.

From-SVN: r146685

15 years agoprj.adb, [...] (Language_Index): renamed to Language_Ptr to better reflect its new...
Emmanuel Briot [Fri, 24 Apr 2009 10:01:21 +0000 (10:01 +0000)]
prj.adb, [...] (Language_Index): renamed to Language_Ptr to better reflect its new implementation.

2009-04-24  Emmanuel Briot  <briot@adacore.com>

* prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
to Language_Ptr to better reflect its new implementation.
(Project_Data.First_Languages_Processing): renamed to Languages now
that the field with that name is no longer used
(Project_Data.Languages): removed, no longer used, and duplicates
information already available through First_Language_Processing.
(Prj.Language_Index): now an actual pointer, instead of an index into
a table. This makes the list somewhat more obvious, but more importantly
removes the need to pass a pointer to the project_tree_data in a few
places, and makes accessing the attributes of a languages more
efficient.

From-SVN: r146684

15 years agoarray (at): Do not use builtin_expect.
Jan Hubicka [Fri, 24 Apr 2009 09:35:19 +0000 (11:35 +0200)]
array (at): Do not use builtin_expect.

* include/tr1_impl/array (at): Do not use builtin_expect.
* include/ext/throw_allocator.h (allocate): Likewise.
* include/ext/pool_allocator.h (allocate): Likweise.
* include/ext/bitmap_allocator.h (allocate): Likewise.
* include/ext/rc_string_base.h (_S_construct): Likewise.
* include/ext/malloc_allocator.h (allocate): Likewise.
* include/ext/mt_allocator.h (allocate): Likewise.
* include/ext/sso_string_base.h (_M_construct): Likewise.
* include/bits/basic_string.tcc (_S_construct): Likewise.

From-SVN: r146681

15 years agoFix nit
Eric Botcazou [Fri, 24 Apr 2009 08:41:00 +0000 (08:41 +0000)]
Fix nit

From-SVN: r146679

15 years agofe.h (Set_Identifier_Casing): Add const to second parameter.
Richard Kenner [Fri, 24 Apr 2009 08:37:17 +0000 (08:37 +0000)]
fe.h (Set_Identifier_Casing): Add const to second parameter.

* fe.h (Set_Identifier_Casing): Add const to second parameter.
* gcc-interface/misc.c (internal_error_function): Make copy of retur
from pp_formatted_text before assigning BUFFER to it.
(gnat_init): Likewise for main_input_filename and gnat_argv.
(gnat_printable_name): Remove cast from call to Set_Identifier_Casing.

Co-Authored-By: Thomas Quinot <quinot@adacore.com>
From-SVN: r146678

15 years agore PR fortran/39861 (ICE with INTRINSIC in module: write_symbol(): bad module symbol)
Janus Weil [Fri, 24 Apr 2009 08:34:14 +0000 (10:34 +0200)]
re PR fortran/39861 (ICE with INTRINSIC in module: write_symbol(): bad module symbol)

2009-04-24  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39861
PR fortran/39864
* symbol.c (gfc_copy_formal_args_intr): Set attr.flavor and attr.dummy
for the formal arguments.

2009-04-24  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39861
PR fortran/39864
* gfortran.dg/intrinsic_1.f90: New.

From-SVN: r146677

15 years agoFix nits
Eric Botcazou [Fri, 24 Apr 2009 08:24:38 +0000 (08:24 +0000)]
Fix nits

From-SVN: r146676

15 years agottypes.ads (Target_Double_Float_Alignment): New variable.
Eric Botcazou [Fri, 24 Apr 2009 08:04:38 +0000 (08:04 +0000)]
ttypes.ads (Target_Double_Float_Alignment): New variable.

* ttypes.ads (Target_Double_Float_Alignment): New variable.
(Target_Double_Scalar_Alignment): Likewise.
* get_targ.ads (Get_Strict_Alignment): Adjust external name.
(Get_Double_Float_Alignment): New imported function.
(Get_Double_Scalar_Alignment): Likewise.
* layout.adb (Set_Elem_Alignment): Take into account specific caps for
the alignment of "double" floating-point types and "double" or larger
scalar types, as parameterized by Target_Double_Float_Alignment and
Target_Double_Scalar_Alignment respectively.
* gcc-interface/gigi.h (double_float_alignment): Declare.
(double_scalar_alignment): Likewise.
(is_double_float_or_array): Likewise.
(is_double_scalar_or_array): Likewise.
(get_target_double_float_alignment): Likewise.
(get_target_double_scalar_alignment): Likewise.
* gcc-interface/targtyps.c (get_strict_alignment): Rename into...
(get_target_strict_alignment): ...this.
(get_target_double_float_alignment): New function.
(get_target_double_scalar_alignment): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
Test the presence of an alignment clause for under-aligned integer
types.  Take into account specific caps for the alignment of "double"
floating-point types and "double" or larger scalar types, as
parameterized by Target_Double_Float_Alignment and
Target_Double_Scalar_Alignment respectively.
(validate_alignment): Likewise.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
(gigi): Initialize double_float_alignment and double_scalar_alignment.
* gcc-interface/utils.c (double_float_alignment): New global variable.
(double_scalar_alignment): Likewise.
(is_double_float_or_array): New predicate.
(is_double_scalar_or_array): Likewise.

From-SVN: r146675

15 years agoutils2.c (build_cond_expr): Move SAVE_EXPR ahead of the conditional expression only...
Eric Botcazou [Fri, 24 Apr 2009 07:20:19 +0000 (07:20 +0000)]
utils2.c (build_cond_expr): Move SAVE_EXPR ahead of the conditional expression only if...

* gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
the conditional expression only if it is common to both arms.

From-SVN: r146673

15 years agogigi.h (build_call_alloc_dealloc): Update comment.
Eric Botcazou [Fri, 24 Apr 2009 07:09:22 +0000 (07:09 +0000)]
gigi.h (build_call_alloc_dealloc): Update comment.

* gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
arguments to build_allocator.
* gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
Remove code handling special allocator and assert its uselessness.

From-SVN: r146671

15 years agodecl.c (gnat_to_gnu_entity): If an alignment is specified, do not promote that of...
Eric Botcazou [Fri, 24 Apr 2009 07:01:41 +0000 (07:01 +0000)]
decl.c (gnat_to_gnu_entity): If an alignment is specified, do not promote that of the component type beyond it.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
alignment is specified, do not promote that of the component type
beyond it.
<E_Array_Subtype>: Likewise.

From-SVN: r146670

15 years agore PR rtl-optimization/39794 (Miscompile with -O2 -funroll-loops)
Jakub Jelinek [Fri, 24 Apr 2009 06:58:02 +0000 (08:58 +0200)]
re PR rtl-optimization/39794 (Miscompile with -O2 -funroll-loops)

PR rtl-optimization/39794
* alias.c (canon_true_dependence): Add x_addr argument.
* rtl.h (canon_true_dependence): Adjust prototype.
* cse.c (check_dependence): Adjust canon_true_dependence callers.
* cselib.c (cselib_invalidate_mem): Likewise.
* gcse.c (compute_transp): Likewise.
* dse.c (scan_reads_nospill): Likewise.
(record_store, check_mem_read_rtx): Likewise.  For non-const-or-frame
addresses pass base->val_rtx as mem_addr, for const-or-frame addresses
canon_base_addr of the group, plus optional offset.
(struct group_info): Rename canon_base_mem to
canon_base_addr.
(get_group_info): Set canon_base_addr to canon_rtx of base, not
canon_rtx of base_mem.

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

From-SVN: r146669

15 years agosh.c (sh_expand_prologue, [...]): Use memory_address_p instead of GO_IF_LEGITIMATE_AD...
Paolo Bonzini [Fri, 24 Apr 2009 06:30:15 +0000 (06:30 +0000)]
sh.c (sh_expand_prologue, [...]): Use memory_address_p instead of GO_IF_LEGITIMATE_ADDRESS.

2009-04-23  Paolo Bonzini  <bonzini@gnu.org>

* config/sh/sh.c (sh_expand_prologue, sh_expand_epilogue):
Use memory_address_p instead of GO_IF_LEGITIMATE_ADDRESS.

From-SVN: r146668

15 years agoDaily bump.
GCC Administrator [Fri, 24 Apr 2009 00:17:00 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r146667

15 years agospu-builtins.h: Delete file.
Ulrich Weigand [Thu, 23 Apr 2009 22:48:47 +0000 (22:48 +0000)]
spu-builtins.h: Delete file.

* config/spu/spu-builtins.h: Delete file.

* config/spu/spu.h (enum spu_builtin_type): Move here from
spu-builtins.h.
(struct spu_builtin_description): Likewise.  Add GTY marker.
Do not use enum spu_function_code or enum insn_code.
(spu_builtins): Add extern declaration.

* config/spu/spu.c: Do not include "spu-builtins.h".
(enum spu_function_code, enum spu_builtin_type_index,
V16QI_type_node, V8HI_type_node, V4SI_type_node, V2DI_type_node,
V4SF_type_node, V2DF_type_node, unsigned_V16QI_type_node,
unsigned_V8HI_type_node, unsigned_V4SI_type_node,
unsigned_V2DI_type_node): Move here from spu-builtins.h.
(spu_builtin_types): Make static.  Add GTY marker.
(spu_builtins): Add extern declaration with GTY marker.
Include "gt-spu.h".

* config/spu/spu-c.c: Do not include "spu-builtins.h".
(spu_resolve_overloaded_builtin): Do not use spu_function_code.
Check programmatically whether all parameters are scalar.

* config/spu/t-spu-elf (spu.o, spu-c.o): Update dependencies.

From-SVN: r146660

15 years agogimplify.c (gimplify_modify_expr_rhs): Do not do a direct assignment from the constru...
Eric Botcazou [Thu, 23 Apr 2009 16:40:55 +0000 (16:40 +0000)]
gimplify.c (gimplify_modify_expr_rhs): Do not do a direct assignment from the constructor either if the target is volatile.

* gimplify.c (gimplify_modify_expr_rhs) <VAR_DECL>: Do not do a direct
assignment from the constructor either if the target is volatile.
ada/
* einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
* sinfo.ads (Object Declaration): Likewise.
(Assignment Statement): Likewise.
* freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
Do not force Is_True_Constant to false on the temporary.
(Freeze_Entity): Do not force Is_True_Constant to false on names on
the RHS of object declarations.
* gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
New case.  Return 1 if the object is atomic.
<N_Assignment_Statement>: Likewise.

From-SVN: r146652

15 years agore PR testsuite/39632 (Revision 145497 caused extra failures on Linux/ia64)
Steve Ellcey [Thu, 23 Apr 2009 15:36:48 +0000 (15:36 +0000)]
re PR testsuite/39632 (Revision 145497 caused extra failures on Linux/ia64)

PR testsuite/39623
* gcc.dg/vect/no-vfa-vect-57.c: XFAIL when vect_no_align.
* gcc.dg/vect/no-vfa-vect-61.c: Ditto.

From-SVN: r146650

15 years ago* config/arm/arm.md (insv): Do not share operands[0].
Daniel Jacobowitz [Thu, 23 Apr 2009 15:07:19 +0000 (15:07 +0000)]
* config/arm/arm.md (insv): Do not share operands[0].

From-SVN: r146649

15 years ago* update_web_docs_svn: Redirect output of texi2dvi to /dev/null.
Gerald Pfeifer [Thu, 23 Apr 2009 13:30:49 +0000 (13:30 +0000)]
* update_web_docs_svn: Redirect output of texi2dvi to /dev/null.

From-SVN: r146648