Jakub Jelinek [Mon, 10 May 2010 18:28:03 +0000 (20:28 +0200)]
re PR debug/44028 (-fcompare-debug failure (length) with -O3 -fsched-pressure -fschedule-insns)
PR debug/44028
* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
clear also INSN_REG_USE_LIST.
* gcc.dg/pr44028.c: New test.
From-SVN: r159240
Rainer Orth [Mon, 10 May 2010 18:26:12 +0000 (18:26 +0000)]
* config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Undef.
From-SVN: r159239
Daniel Franke [Mon, 10 May 2010 17:10:53 +0000 (13:10 -0400)]
re PR fortran/27866 (Warn when casting, e.g. assigning a double precision to a real)
gcc/fortran/:
2010-05-10 Daniel Franke <franke.daniel@gmail.com>
PR fortran/27866
PR fortran/35003
PR fortran/42809
* intrinsic.c (gfc_convert_type_warn): Be more discriminative
about conversion warnings.
gcc/testsuite/:
2010-05-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/27866
PR fortran/35003
PR fortran/42809
* gfortran.dg/array_constructor_type_17.f03: Updated match string.
* gfortran.dg/warn_conversion.f90: New.
From-SVN: r159238
Jan Hubicka [Mon, 10 May 2010 16:26:26 +0000 (18:26 +0200)]
* lto-stramer-out.c (produce_asm_for_decls): Correct accidentally commited change.
From-SVN: r159234
Jan Hubicka [Mon, 10 May 2010 16:13:52 +0000 (18:13 +0200)]
passes.c (ipa_write_summaries_1, [...]): Allocate encoders.
* passes.c (ipa_write_summaries_1, ipa_write_optimization_summaries): Allocate
encoders.
* lto-section-out.c (lto_new_out_decl_state): Do not allocate it here.
* lto-streamer.c (lto_streamer_cache_insert_1): Use alloc pool.
(lto_streamer_cache_create): Init alloc pool.
(lto_streamer_cache_delete): Free alloc pool.
* lto-streamer.h: Include alloc pool.
(lto_streamer_cache_d): Use alloc pool.
* lto-stramer-out.c (produce_asm_for_decls): Delete fn_out_states.
From-SVN: r159230
Jan Hubicka [Mon, 10 May 2010 16:00:40 +0000 (18:00 +0200)]
Makefile.in (cgraphbuild.o): Add dependency on except.h.
* Makefile.in (cgraphbuild.o): Add dependency on except.h.
* cgraphbuild.c: Include except.h
(record_type_list, record_eh_tables): New function.
(build_cgraph_edges, rebuild_cgraph_edges): Use it.
From-SVN: r159229
Jan Hubicka [Mon, 10 May 2010 15:53:04 +0000 (17:53 +0200)]
crtstuff.c (force_to_data, [...]): Attribute as used rather than unused.
* crtstuff.c (force_to_data, __do_global_dtors_aux_fini_array_entry,
__frame_dummy_init_array_entry, force_to_data): Attribute as used
rather than unused.
From-SVN: r159228
Uros Bizjak [Mon, 10 May 2010 15:23:29 +0000 (17:23 +0200)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
From-SVN: r159227
Michael Matz [Mon, 10 May 2010 14:31:37 +0000 (14:31 +0000)]
tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
* tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
(can_reassociate_p): Use FLOAT_TYPE_P.
* tree-vectorizer.h (vect_is_simple_reduction): Rename to ...
(vect_force_simple_reduction): ... this.
* tree-parloops.c (gather_scalar_reductions): Use
vect_force_simple_reduction.
* tree-vect-loop.c (vect_is_simple_reduction_1): Rename from
vect_is_simple_reduction, add modify argument, if true rewrite
"a-b" into "a+(-b)".
(vect_is_simple_reduction, vect_force_simple_reduction): New
functions.
(vect_analyze_scalar_cycles_1): Use vect_force_simple_reduction.
testsuite/
* gcc.dg/vect/fast-math-vect-reduc-8.c: New test.
From-SVN: r159226
H.J. Lu [Mon, 10 May 2010 14:02:43 +0000 (07:02 -0700)]
Nullify regno_allocno_map of the removed allocno.
gcc/
2010-05-10 H.J. Lu<hongjiu.lu@intel.com>
Vladimir Makarov<vmakarov@redhat.com>
PR rtl-optimization/44012
* ira-build.c (remove_unnecessary_allocnos): Nullify
regno_allocno_map of the removed allocno.
gcc/testsuite/
2010-05-10 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/44012
* gcc.dg/pr44012.c: New.
From-SVN: r159223
Rainer Orth [Mon, 10 May 2010 13:45:23 +0000 (13:45 +0000)]
lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
* lib/lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
Log text on entry and exit.
Prune Sun ld warnings for common symbols with differing sizes.
(lto-link-and-maybe-run): Change caller.
From-SVN: r159222
Rainer Orth [Mon, 10 May 2010 13:36:36 +0000 (13:36 +0000)]
configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors to /dev/null.
* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
to /dev/null.
* configure: Regenerate.
From-SVN: r159220
Rainer Orth [Mon, 10 May 2010 13:01:58 +0000 (13:01 +0000)]
sol2.c (solaris_assemble_visibility): Declare decl, vis unused.
* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
unused.
Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
support in Sun ld.
* configure: Regenerate.
From-SVN: r159218
Janus Weil [Mon, 10 May 2010 12:54:25 +0000 (14:54 +0200)]
re PR fortran/44044 ([OOP] SELECT TYPE with class-valued function)
2010-05-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/44044
* match.c (gfc_match_select_type): Move error message to
resolve_select_type.
* resolve.c (resolve_select_type): Error message moved here from
gfc_match_select_type. Correctly set type of temporary.
2010-05-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/44044
* gfortran.dg/class_7.f03: Modified.
* gfortran.dg/select_type_1.f03: Modified.
* gfortran.dg/select_type_12.f03: New.
From-SVN: r159217
Richard Guenther [Mon, 10 May 2010 11:28:38 +0000 (11:28 +0000)]
lto-symtab.c (lto_symtab_entry_marked_p): Make entry marked if the entry identifier is marked.
2010-05-10 Richard Guenther <rguenther@suse.de>
* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
marked if the entry identifier is marked.
From-SVN: r159216
Richard Guenther [Mon, 10 May 2010 09:43:17 +0000 (09:43 +0000)]
c-common.c (struct c_common_attributes): Add fnspec attribute.
2010-05-10 Richard Guenther <rguenther@suse.de>
* c-common.c (struct c_common_attributes): Add fnspec attribute.
(handle_fnspec_attribute): New function.
* gimple.h (gimple_call_return_flags): Declare.
(gimple_call_arg_flags): Likewise.
* gimple.c (gimple_call_arg_flags): New function.
(gimple_call_return_flags): Likewise.
* tree.h (EAF_DIRECT, EAF_NOCLOBBER, EAF_NOESCAPE, EAF_UNUSED):
New argument flags.
(ERF_RETURN_ARG_MASK, ERF_RETURNS_ARG, ERF_NOALIAS): New function
return value flags.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Skip unused args.
* tree-ssa-structalias.c (make_constraint_from_heapvar): Split
main work to ...
(make_heapvar_for): ... this new function.
(handle_rhs_call): Handle fnspec attribute argument specifiers.
(handle_lhs_call): Likewise.
(find_func_aliases): Adjust.
fortran/
* trans-decl.c (gfc_build_library_function_decl): Split out
worker to ...
(build_library_function_decl_1): ... this new function.
Set a fnspec attribute if a specification was provided.
(gfc_build_library_function_decl_with_spec): New function.
(gfc_build_intrinsic_function_decls): Annotate internal_pack
and internal_unpack.
From-SVN: r159215
Richard Guenther [Mon, 10 May 2010 08:55:32 +0000 (08:55 +0000)]
re PR tree-optimization/44050 (Wrong code is produced with -fipa-pta -fno-tree-pta)
2010-05-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44050
* tree-inline.c (tree_function_versioning): Clone the ipa-pta
flag.
* gcc.dg/torture/pr44050.c: New testcase.
From-SVN: r159214
Wei Guozhi [Mon, 10 May 2010 07:26:04 +0000 (07:26 +0000)]
thumb2.md (thumb2_tlobits_cbranch): New insn pattern.
* config/arm/thumb2.md (thumb2_tlobits_cbranch): New insn pattern.
* gcc.target/arm/pr42879.c: New testcase.
From-SVN: r159212
GCC Administrator [Mon, 10 May 2010 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159211
Joseph Myers [Sun, 9 May 2010 21:01:38 +0000 (22:01 +0100)]
re PR testsuite/44051 (FAIL: gcc.dg/anon-struct-9.c (test for excess errors))
PR c/44051
* gcc.dg/anon-struct-9.c: Avoid generating identifier i386.
From-SVN: r159207
Joseph Myers [Sun, 9 May 2010 20:39:39 +0000 (21:39 +0100)]
re PR c/10676 (Using unnamed fields in initializers)
PR c/10676
* c-typeck.c (lookup_field): Take a type directly. Update
recursive calls.
(build_component_ref): Update call to lookup_field.
(set_init_label): Use lookup_field to find initialized field.
Handle returned list of fields like a sequence of designators.
testsuite:
* gcc.dg/anon-struct-10.c: New test.
From-SVN: r159206
Richard Guenther [Sun, 9 May 2010 18:17:33 +0000 (18:17 +0000)]
re PR c/44024 (missed optimization)
2010-05-09 Richard Guenther <rguenther@suse.de>
PR middle-end/44024
* fold-const.c (tree_single_nonzero_warnv_p): Properly
handle &FUNCTION_DECL.
* gcc.dg/pr44024.c: New testcase.
From-SVN: r159205
Joseph Myers [Sun, 9 May 2010 16:19:28 +0000 (17:19 +0100)]
re PR c/4784 (Anonymous structs issues)
PR c/4784
* c-decl.c (detect_field_duplicates_hash): New. Handle anonymous
structures and unions recursively.
(detect_field_duplicates): Move duplicate detection with a hash to
detect_field_duplicates_hash. Always use a hash if anonymous
structures or unions are present.
* doc/extend.texi (Unnamed Fields): Document that duplicate fields
give errors.
testsuite:
* gcc.dg/anon-struct-9.c: New test.
From-SVN: r159204
H.J. Lu [Sun, 9 May 2010 14:49:53 +0000 (14:49 +0000)]
Properly detect Atom, Core 2 and Core i7.
2010-05-09 H.J. Lu <hongjiu.lu@intel.com>
PR target/44046
* config/i386/driver-i386.c (host_detect_local_cpu): Properly
detect Atom, Core 2 and Core i7.
From-SVN: r159202
Richard Guenther [Sun, 9 May 2010 14:14:27 +0000 (14:14 +0000)]
gcc.c (store_arg): Handle temporary file deletion for joined arguments.
2010-05-09 Richard Guenther <rguenther@suse.de>
* gcc.c (store_arg): Handle temporary file deletion for
joined arguments.
From-SVN: r159201
Richard Guenther [Sun, 9 May 2010 14:13:25 +0000 (14:13 +0000)]
re PR tree-optimization/44043 (sorry, unimplemented: inlining failed in call to 'dst_output': optimizing for size and code size would grow)
2010-05-09 Richard Guenther <rguenther@suse.de>
PR middle-end/44043
* ipa-inline.c (estimate_function_body_sizes): Return after
disregarding inline limits.
* gcc.c-torture/compile/pr44043.c: New testcase.
From-SVN: r159200
Richard Guenther [Sun, 9 May 2010 13:12:24 +0000 (13:12 +0000)]
ipa-pta-11.c: Make p and q referenced.
2010-05-09 Richard Guenther <rguenther@suse.de>
* gcc.dg/ipa/ipa-pta-11.c: Make p and q referenced.
From-SVN: r159199
Eric Botcazou [Sun, 9 May 2010 10:32:36 +0000 (10:32 +0000)]
* gnat.dg/lto6.adb: Remove superfluous -gnat05 switch.
From-SVN: r159198
Richard Guenther [Sun, 9 May 2010 10:31:14 +0000 (10:31 +0000)]
gcc.c (store_arg): Revert last change.
2010-05-09 Richard Guenther <rguenther@suse.de>
* gcc.c (store_arg): Revert last change.
From-SVN: r159197
GCC Administrator [Sun, 9 May 2010 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159195
Eric Botcazou [Sat, 8 May 2010 17:31:23 +0000 (17:31 +0000)]
lto[12456].adb: Add "target lto" marker.
* gnat.dg/lto[12456].adb: Add "target lto" marker.
* gnat.dg/specs/lto3.ads: Likewise.
From-SVN: r159191
Sandra Loosemore [Sat, 8 May 2010 15:53:59 +0000 (11:53 -0400)]
re PR middle-end/28685 (Multiple comparisons are not simplified)
2010-05-08 Sandra Loosemore <sandra@codesourcery.com>
PR middle-end/28685
gcc/
* tree-ssa-reassoc.c (eliminate_redundant_comparison): New function.
(optimize_ops_list): Call it.
gcc/testsuite/
* gcc.dg/pr28685-1.c: New file.
From-SVN: r159189
Janne Blomqvist [Sat, 8 May 2010 14:43:56 +0000 (17:43 +0300)]
Fix typo
From-SVN: r159188
Janne Blomqvist [Sat, 8 May 2010 14:43:32 +0000 (17:43 +0300)]
Fix typo in symbol visibility specification
From-SVN: r159187
Richard Guenther [Sat, 8 May 2010 13:12:56 +0000 (13:12 +0000)]
re PR tree-optimization/44030 (error: SSA name in freelist but still referenced)
2010-05-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44030
* tree-ssa-pre.c (eliminate): Copy NECESSARY flag. Set
NECESSARY flag if we propagate from a inserted expression.
* gcc.c-torture/compile/pr44030.c: New testcase.
From-SVN: r159186
Eric Botcazou [Sat, 8 May 2010 12:06:57 +0000 (12:06 +0000)]
gimple.c (gimple_types_compatible_p): Treat bounds of domain types as equal if they are both PLACEHOLDER_EXPRs.
* gimple.c (gimple_types_compatible_p) <ARRAY_TYPE>: Treat bounds of
domain types as equal if they are both PLACEHOLDER_EXPRs.
From-SVN: r159185
Eric Botcazou [Sat, 8 May 2010 11:50:18 +0000 (11:50 +0000)]
exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables.
* exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Make imported
constants really constant.
<E_Record_Subtype>: Strip the suffix for dispatch table entities.
From-SVN: r159184
Eric Botcazou [Sat, 8 May 2010 11:38:26 +0000 (11:38 +0000)]
* gcc-interface/decl.c (make_aligning_type): Declare the type.
From-SVN: r159183
Eric Botcazou [Sat, 8 May 2010 11:31:31 +0000 (11:31 +0000)]
decl.c (gnat_to_gnu_entity): Create variables for size expressions of variant part of record types declared...
* gcc-interface/decl.c (gnat_to_gnu_entity): Create variables for size
expressions of variant part of record types declared at library level.
From-SVN: r159182
Eric Botcazou [Sat, 8 May 2010 11:17:57 +0000 (11:17 +0000)]
gigi.h (create_field_decl): Move PACKED parameter.
* gcc-interface/gigi.h (create_field_decl): Move PACKED parameter.
* gcc-interface/utils.c (create_field_decl): Move PACKED parameter.
(rest_of_record_type_compilation): Adjust call to create_field_decl.
(make_descriptor_field): Likewise and pass correctly typed constants.
(build_unc_object_type): Likewise.
(unchecked_convert): Likewise.
* gcc-interface/decl.c (elaborate_expression_2): New static function.
(gnat_to_gnu_entity): Use it to make alignment factors explicit.
Adjust call to create_field_decl.
(make_aligning_type): Likewise.
(make_packable_type): Likewise.
(maybe_pad_type): Likewise.
(gnat_to_gnu_field): Likewise.
(components_to_record): Likewise.
(create_field_decl_from): Likewise.
(create_variant_part_from): Remove superfluous test.
* gcc-interface/trans.c (gigi): Adjust call to create_field_decl.
From-SVN: r159181
Eric Botcazou [Sat, 8 May 2010 11:02:08 +0000 (11:02 +0000)]
gigi.h (build_unc_object_type): Add DEBUG_INFO_P param.
* gcc-interface/gigi.h (build_unc_object_type): Add DEBUG_INFO_P param.
(build_unc_object_type_from_ptr): Likewise.
* gcc-interface/utils.c (build_unc_object_type): Add DEBUG_INFO_P param
and pass it to create_type_decl. Declare the type. Simplify.
(build_unc_object_type_from_ptr): Add DEBUG_INFO_P parameter and pass
it to build_unc_object_type.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust to above change.
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils2.c (build_allocator): Likewise.
From-SVN: r159180
GCC Administrator [Sat, 8 May 2010 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159179
Richard Guenther [Fri, 7 May 2010 22:13:14 +0000 (22:13 +0000)]
lto-wrapper.c (run_gcc): Remove linker output from command line for LTRANS invocation.
2010-05-08 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (run_gcc): Remove linker output from
command line for LTRANS invocation.
From-SVN: r159174
Steven Bosscher [Fri, 7 May 2010 21:37:43 +0000 (21:37 +0000)]
configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO.
ChangeLog:
* configure.ac (--enable-lto): Add x86_64-apple-darwin* as
a platform that supports LTO.
* configure: Regenerate.
gcc/ChangeLog:
* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
lto-macho as lto_binary_reader.
* target.h (struct gcc_target): New hooks lto_start and lto_end.
* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
in lto_start and lto_end calls.
(is_elf_or_coff): Rename to maybe_lto_object_file. Add Mach-O
magic numbers.
(scan_prog_file): Update is_elf_or_coff call.
* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
* collect2.c (main): Fix enum comparison.
* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
Add prototypes.
* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
* darwin.h (LINK_COMMAND_SPEC): Likewise. Define TARGET_ASM_LTO_START
and TARGET_ASM_LTO_END.
* darwin.c: Include obstack.h and lto-streamer.h.
(lto_section_names_offset, lto_section_names_obstack,
lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
global variables.
(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
(darwin_asm_lto_start): New function. Redirect output to asm_out_file
to a temporary file.
(darwin_asm_lto_end): New function. Restore asm_out_file.
(darwin_asm_named_section): For LTO sections, replace the name with
the offset of the section name in a string table, and build this
table.
(darwin_file_start): Initialize global vars for LTO support.
(darwin_file_end): If output to asm_out_file was redirected, append it
to the proper asm_out_file here. Add the section names section.
lto/ChangeLog:
* lto.h (struct lto_file_struct): Document offset member.
* lto-endian.h: New file.
* lto-macho.h: New file.
* lto-macho.c: New file.
* Make-lang.in: Add rule for lto-macho.o.
From-SVN: r159173
Steven Bosscher [Fri, 7 May 2010 20:49:29 +0000 (20:49 +0000)]
c-pragma.c (pending_weak_d, [...]): New.
* c-pragma.c (pending_weak_d, pending_weak): New.
(pending_weaks): Change the type to VEC((pending_weak,gc) *.
(maybe_apply_pragma_weak, maybe_apply_pending_pragma_weaks,
handle_pragma_weak): Update the uses of pending_weaks.
From-SVN: r159172
Ralf Wildenhues [Fri, 7 May 2010 20:10:09 +0000 (20:10 +0000)]
Fix link to outdated cxx0x status page.
gcc/:
PR documentation/44016
* doc/standards.texi (Standards): Link to unversioned
cxx0x_status.html page.
From-SVN: r159168
Iain Sandoe [Fri, 7 May 2010 17:34:31 +0000 (17:34 +0000)]
re PR target/43708 (gcc.dg/pragma-darwin.c "set not used", not working with pragma)
PR target/43708
* config/darwin-c.c (darwin_pragma_unused): Set DECL_READ_P
in addition to TREE_USED, to avoid "set but unused" warnings.
From-SVN: r159164
Changpeng Fang [Fri, 7 May 2010 17:26:02 +0000 (17:26 +0000)]
Define the TRIP_COUNT_TO_AHEAD_RATIO heuristic.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (TRIP_COUNT_TO_AHEAD_RATIO): New.
(is_loop_prefetching_profitable): Do not insert prefetches
when the trip count is not at least TRIP_COUNT_TO_AHEAD_RATIO
times the prefetch ahead distance.
From-SVN: r159163
Changpeng Fang [Fri, 7 May 2010 16:15:52 +0000 (16:15 +0000)]
Account for loop unrolling in the insn-to-prefetch ratio heuristic.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable):
Account for loop unrolling in the insn-to-prefetch ratio heuristic.
(loop_prefetch_arrays): Pass to is_loop_prefetching_profitable
the unroll_factor.
From-SVN: r159162
Changpeng Fang [Fri, 7 May 2010 16:15:45 +0000 (16:15 +0000)]
Dump a diagnostic info when the insn-to-mem ratio is too small.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Dump
a diagnostic info when the insn-to-mem ratio is too small.
From-SVN: r159161
Janne Blomqvist [Fri, 7 May 2010 15:55:59 +0000 (18:55 +0300)]
Remove free_mem
From-SVN: r159160
Richard Guenther [Fri, 7 May 2010 15:53:40 +0000 (15:53 +0000)]
re PR lto/43857 (-fresolution causes an ICE)
2010-05-07 Richard Guenther <rguenther@suse.de>
* gcc.c (LINK_COMMAND_SPEC): Provide a resolution file to
the linker plugin.
(store_arg): Queue temp_filename for deletion instead of
the whole argument.
lto/
PR lto/43857
PR lto/43371
* lang.opt (fresolution): Change to ...
(fresolution=): ... this.
* lto-lang.c (lto_handle_option): Adjust.
lto-plugin/
* lto-plugin.c (free_2): Do not free resolution_file.
(write_resolution): Check that we were passed a resolution file.
(all_symbols_read_handler): Adjust.
(cleanup_handler): Do not remove the resolution file.
(process_option): Handle -fresolution=.
From-SVN: r159159
Fabien Chêne [Fri, 7 May 2010 15:52:06 +0000 (15:52 +0000)]
re PR c++/43951 (Revision 158918 miscompiled 483.xalancbmk in SPEC CPU 2006)
PR c++/43951
* init.c (diagnose_uninitialized_cst_or_ref_member_1): Returns the
error count. Emit errors only if compain is true.
(build_new_1): Do not return error_mark_node if
diagnose_uninitialized_cst_or_ref_member_1 does not diagnose any
errors. Delay the check for user-provided constructor.
(perform_member_init): Adjust.
* cp-tree.h (diagnose_uninitialized_cst_or_ref_member): Change the
prototype.
From-SVN: r159158
Richard Biener [Fri, 7 May 2010 15:52:01 +0000 (15:52 +0000)]
lto-wrapper.c (DUMPBASE_SUFFIX): Define.
2010-05-07 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (DUMPBASE_SUFFIX): Define.
(run_gcc): Handle LTRANS phase invocation.
* collect2.c (maybe_run_lto_and_relink): Do not set
WPA_SAVE_LTRANS.
lto/
* lto.c (DUMPBASE_SUFFIX): Remove.
(lto_execute_ltrans): Move functionality to lto-wrapper.c.
Rename to ...
(lto_write_ltrans_list): ... only output the list of ltrans files.
(lto_maybe_unlink): Remove.
(do_whole_program_analysis): Do not execute LTRANS phase
from here.
From-SVN: r159157
Jakub Jelinek [Fri, 7 May 2010 15:47:52 +0000 (17:47 +0200)]
tree.h (TREE_ADDRESSABLE): Adjust comment to say that this is also meaningful on PARM_DECLs and RESULT_DECLs.
* tree.h (TREE_ADDRESSABLE): Adjust comment to say that
this is also meaningful on PARM_DECLs and RESULT_DECLs.
From-SVN: r159156
Daniel Franke [Fri, 7 May 2010 15:36:45 +0000 (11:36 -0400)]
re PR fortran/40728 (Bogus error "Error: Can't convert UNKNOWN to REAL(8) at (1)")
gcc/fortran/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol
as external
gcc/testsuite/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* gfortran.dg/coarray_1.f90: Fixed error message.
* gfortran.dg/selected_char_kind_3.f90: Fixed error message.
* gfortran.dg/intrinsic_std_1.f90: Fixed bogus message.
* gfortran.dg/intrinsic_std_5.f90: New.
From-SVN: r159155
Jason Merrill [Fri, 7 May 2010 13:53:46 +0000 (09:53 -0400)]
* g++.dg/cpp0x/nullptr20.C: Use sprintf.
From-SVN: r159153
Rainer Orth [Fri, 7 May 2010 12:36:58 +0000 (12:36 +0000)]
* config/mips/iris6.h (LINK_SPEC): Don't pass -init, -fini with -r.
From-SVN: r159151
Richard Guenther [Fri, 7 May 2010 11:55:21 +0000 (11:55 +0000)]
re PR middle-end/44020 (Failed to build 200.sixtrack in SPEC CPU 2K)
2010-05-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44020
* tree-ssa-pre.c (execute_pre): Do not remove dead inserted
code when PRE is not yet initialized.
From-SVN: r159150
Eric Botcazou [Fri, 7 May 2010 10:25:54 +0000 (10:25 +0000)]
re PR c/40989 (-Werror= and #pragma diagnostics do not work with group flags)
PR 40989
* gcc-interface/misc.c (gnat_handle_option): Fix long line.
From-SVN: r159149
Rainer Orth [Fri, 7 May 2010 09:21:23 +0000 (09:21 +0000)]
dbxmdebug.h: Remove.
* config/mips/dbxmdebug.h: Remove.
* config.gcc (mips-sgi-irix6.5*): Remove mips/dbxmdebug.h.
From-SVN: r159147
Rainer Orth [Fri, 7 May 2010 09:11:31 +0000 (09:11 +0000)]
20100423-2_0.c: Include <stdio.h>.
* gcc.dg/lto/
20100423-2_0.c: Include <stdio.h>.
(size_t, stderr): Remove.
(read_error): Replaced __builtin_fprintf by fprintf.
From-SVN: r159146
Shujing Zhao [Fri, 7 May 2010 08:18:06 +0000 (08:18 +0000)]
c-typeck.c (build_binary_op): Warn ordered comparison of pointer with null pointer and also warn about...
gcc/
2010-05-07 Shujing Zhao <pearly.zhao@oracle.com>
* c-typeck.c (build_binary_op): Warn ordered comparison of pointer
with null pointer and also warn about ordered comparison of zero
with pointer if -Wextra.
gcc/testsuite/
2010-05-07 Shujing Zhao <pearly.zhao@oracle.com>
* gcc.dg/ordered-comparison-1.c: New test.
* gcc.dg/ordered-comparison-2.c: New test.
* gcc.dg/ordered-comparison-3.c: New test.
* gcc.dg/ordered-comparison-4.c: New test.
From-SVN: r159145
Jonathan Wakely [Fri, 7 May 2010 01:05:38 +0000 (01:05 +0000)]
exception_ptr.h (make_exception_ptr): Add.
2010-05-07 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception_ptr.h (make_exception_ptr): Add.
* testsuite/18_support/exception_ptr/make_exception_ptr.cc: New.
From-SVN: r159144
GCC Administrator [Fri, 7 May 2010 00:18:37 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r159143
Mike Stump [Thu, 6 May 2010 23:53:46 +0000 (23:53 +0000)]
Note which PR this was related to.
From-SVN: r159139
Mike Stump [Thu, 6 May 2010 23:49:18 +0000 (23:49 +0000)]
* obj-c++.dg/cxx-ivars-2.mm: Restore running of testcase.
From-SVN: r159138
Jason Merrill [Thu, 6 May 2010 21:59:37 +0000 (17:59 -0400)]
gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
* config/abi/pre/gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.5.
From-SVN: r159136
Andreas Simbuerger [Thu, 6 May 2010 21:53:47 +0000 (21:53 +0000)]
Add ChangeLog entries.
From-SVN: r159135
Sebastian Pop [Thu, 6 May 2010 21:53:42 +0000 (21:53 +0000)]
Allow all the versions greater than 0.10 of PPL.
2010-05-05 Sebastian Pop <sebastian.pop@amd.com>
* configure.ac: Allow all the versions greater than 0.10 of PPL.
* configure: Regenerated.
From-SVN: r159134
Andreas Simbuerger [Thu, 6 May 2010 21:53:35 +0000 (21:53 +0000)]
Replace Value with mpz_t
2010-04-12 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-blocking.c
(pbb_strip_mine_profitable_p): Replace Value with mpz_t.
* graphite-clast-to-gimple.c
(clast_to_gcc_expression): Same.
(precision_for_value): Same.
(precision_for_interval): Same.
(gcc_type_for_interval): Same.
(graphite_create_new_guard): Same.
(compute_bounds_for_level): Same.
(graphite_create_new_loop_guard): Same.
* graphite-interchange.c
(build_linearized_memory_access): Same.
(pdr_stride_in_loop): Same.
(memory_strides_in_loop_1): Same.
(memory_strides_in_loop): Same.
(extend_scattering): Same.
(psct_scattering_dim_for_loop_depth): Same.
(pbb_number_of_iterations): Same.
* graphite-poly.h
(debug_iteration_domains): Same.
* graphite-ppl.c
(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
(ppl_set_inhomogeneous_gmp): Same.
(ppl_strip_loop): Same.
(ppl_lexico_compare_linear_expressions): Same.
(ppl_read_polyhedron_matrix): Same.
(ppl_max_for_le_pointset): Same.
* graphite-ppl.h
(ppl_read_polyhedron_matrix): Same.
(tree_int_to_gmp): Same.
(gmp_cst_to_tree): Same.
(ppl_set_inhomogeneous): Same.
(ppl_set_inhomogeneous_tree): Same.
(ppl_set_coef): Same.
(ppl_set_coef_tree): Same.
* graphite-sese-to-poly.c
(build_pbb_scattering_polyhedrons): Same.
(build_scop_scattering): Same.
(scan_tree_for_params_right_scev): Same.
(scan_tree_for_params): Same.
(find_params_in_bb): Same.
(find_scop_parameters): Same.
(add_upper_bounds_from_estimated_nit): Same.
(build_loop_iteration_domains): Same.
(add_condition_to_domain): Same.
(pdr_add_memory_accesses): Same.
From-SVN: r159133
Andreas Simbuerger [Thu, 6 May 2010 21:53:29 +0000 (21:53 +0000)]
Resolve CLooG's value_* macros to their respective mpz_* counterparts.
2010-04-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-blocking.c (pbb_strip_mine_profitable_p): Resolve
CLooG's value_* macros to their respective mpz_* counterparts.
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Same.
(graphite_create_new_loop_guard): Same.
* graphite-interchange.c (build_linearized_memory_access): Same.
(pdr_stride_in_loop): Same.
(memory_strides_in_loop_1): Same.
(1st_interchange_profitable_p): Same.
* graphite-poly.c (extend_scattering): Same.
(psct_scattering_dim_for_loop_depth): Same.
(pbb_number_of_iterations): Same.
(pbb_number_of_iterations_at_time): Same.
* graphite-poly.h (new_1st_loop): Same.
* graphite-ppl.c (cloog_matrix_to_ppl_constraint): Same.
(oppose_constraint): Same.
(insert_constraint_into_matrix): Same.
(ppl_set_inhomogeneous_gmp): Same.
(ppl_set_coef_gmp): Same.
(ppl_strip_loop): Same.
(ppl_lexico_compare_linear_expressions): Same.
(ppl_max_for_le_pointset): Same.
(ppl_min_for_le_pointset): Same.
(ppl_build_realtion): Same.
* graphite-ppl.h (gmp_cst_to_tree): Same.
(ppl_set_inhomogeneous): Same.
(ppl_set_inhomogeneous_tree): Same.
(ppl_set_coef): Same.
(ppl_set_coef_tree): Same.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Same.
(build_scop_scattering): Same.
(add_value_to_dim): Same.
(scan_tree_for_params_right_scev): Same.
(scan_tree_for_params_int): Same.
(scan_tree_for_params): Same.
(find_params_in_bb): Same.
(find_scop_parameters): Same.
(add_upper_bounds_from_estimated_nit): Same.
(build_loop_iteration_domains): Same.
(create_linear_expr_from_tree): Same.
(add_condition_to_domain): Same.
(pdr_add_memory_accesses): Same.
From-SVN: r159132
Jason Merrill [Thu, 6 May 2010 20:51:52 +0000 (16:51 -0400)]
Add support for C++0x nullptr.
gcc:
* c-common.c (c_common_reswords): Add nullptr.
* c-common.h: Add RID_NULLPTR. Reorganize C++0x rids.
* dwarf2out.c (is_base_type): Handle NULLPTR_TYPE.
(gen_type_die_with_usage): Likewise.
* dbxout.c (dbxout_type): Likewise.
* sdbout.c (plain_type_1): Likewise.
gcc/cp:
* cp-tree.def: Add NULLPTR_TYPE.
* cp-tree.h: Add nullptr_node.
(cp_tree_index): Add CPTI_NULLPTR.
(SCALAR_TYPE_P): Add NULLPTR_TYPE.
* call.c (null_ptr_cst_p): Handle nullptr.
(standard_conversion): Likewise.
(convert_arg_to_ellipsis): Likewise.
* mangle.c (write_type): Likewise.
* name-lookup.c (arg_assoc_type): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
* typeck.c (cp_build_binary_op): Likewise.
(build_reinterpret_cast_1): Likewise.
* error.c (dump_type): Likewise.
(dump_type_prefix, dump_type_suffix): Likewise.
* decl.c (cxx_init_decl_processing): Likewise.
* cxx-pretty-print.c (pp_cxx_constant): Likewise.
* cvt.c (ocp_convert): Likewise.
* rtti.c (typeinfo_in_lib_p, emit_support_tinfos): Put
nullptr_t tinfo in libsupc++.
libstdc++-v3:
* config/abi/pre/gnu.ver: Add typeinfo for decltype(nullptr).
libiberty:
* cp-demangle.c (cplus_demangle_builtin_types): Add nullptr.
(cplus_demangle_type): Handle nullptr.
From-SVN: r159131
Jonathan Wakely [Thu, 6 May 2010 20:18:13 +0000 (20:18 +0000)]
basic_string.h: Escape class names in doxygen docs.
2010-05-06 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/basic_string.h: Escape class names in doxygen docs.
From-SVN: r159129
Jonathan Wakely [Thu, 6 May 2010 19:57:58 +0000 (19:57 +0000)]
re PR libstdc++/44014 (no std::string in API documentation)
2010-05-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/44014
* include/bits/stringfwd.h: Add doxygen comments and new group.
* include/bits/basic_string.h: Add to new doxygen group.
* doc/doxygen/user.cfg.in (ALIASES): Link to correct group.
From-SVN: r159126
Jason Merrill [Thu, 6 May 2010 19:46:14 +0000 (15:46 -0400)]
gimplify.c (gimplify_expr): Set GS_ALL_DONE when appropriate.
gcc:
* gimplify.c (gimplify_expr): Set GS_ALL_DONE when appropriate.
Don't change GS_OK to GS_ALL_DONE. Make sure that all cases set
ret appropriately.
(gimplify_compound_lval): Return GS_ALL_DONE as appropriate.
gcc/cp:
* semantics.c (simplify_aggr_init_expr): Use INIT_EXPR.
From-SVN: r159125
Jason Merrill [Thu, 6 May 2010 19:46:03 +0000 (15:46 -0400)]
gimplify.c (gimplify_modify_expr_rhs): Don't return GS_OK for stripping WITH_SIZE_EXPR.
* gimplify.c (gimplify_modify_expr_rhs): Don't return GS_OK for
stripping WITH_SIZE_EXPR.
(gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the rhs didn't
change.
From-SVN: r159124
Rainer Orth [Thu, 6 May 2010 18:47:18 +0000 (18:47 +0000)]
config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from list of obsolete configurations.
gcc:
* config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from
list of obsolete configurations.
Disabled check for obsolete configurations.
(mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
Removed support for previous versions.
* config/mips/iris.h: Removed.
* config/mips/iris5.h: Removed.
* config/mips/iris6.h: Merged old iris.h contents.
(TARGET_IRIX): Removed.
(DRIVER_SELF_SPECS): Removed mabi=32.
(IDENT_ASM_OP): Removed undef.
(STARTFILE_SPEC): Removed mabi=32.
(ENDFILE_SPEC): Likewise.
(IRIX_SUBTARGET_LINK_SPEC): Likewise.
(MACHINE_TYPE): Update for IRIX 6.5.
* config/mips/mips.c (mips_build_builtin_va_list): Replaced
TARGET_IRIX by TARGET_IRIX6.
(mips_file_start): Likewise.
(mips_output_external): Remove IRIX 5/6 O32 support.
(mips_output_function_prologue): Likewise.
* config/mips/mips.h (TARGET_GPWORD): Replaced TARGET_IRIX by
TARGET_IRIX6.
(TARGET_CPU_CPP_BUILTINS): Likewise.
(TARGET_IRIX): Removed.
* config/mips/t-iris6 (MULTILIB_OPTIONS): Removed mabi=32.
(MULTILIB_DIRNAMES): Removed 32.
(MULTILIB_OSDIRNAMES): Removed ../lib.
* doc/install.texi (Prerequisites): Don't reference IRIX before
6.5.
(Specific, mips-sgi-irix5): Document removal.
(Specific, mips-sgi-irix6): Document IRIX 6.[0-4] and O32 ABI
removal.
Remove references to older IRIX 6 releases and the O32 ABI.
gcc/ada:
* gcc-interface/Makefile.in: Removed mips-sgi-irix5* support.
libstdc++-v3:
* configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
support.
* config/os/irix/irix5.2: Removed.
From-SVN: r159121
Jakub Jelinek [Thu, 6 May 2010 17:41:34 +0000 (19:41 +0200)]
Wunused-var-8.c: Move to...
* gcc.dg/Wunused-var-8.c: Move to...
* c-c++-common/Wunused-var-6.c: ... here. New test.
From-SVN: r159118
Jakub Jelinek [Thu, 6 May 2010 17:34:47 +0000 (19:34 +0200)]
re PR bootstrap/43994 (Revision 159063 failed to bootstrap on Linux/ia64)
PR bootstrap/43994
* df-problems.c (dead_debug_insert_before): Use *DF_REF_REAL_LOC
instead of DF_REF_REAL_REG.
From-SVN: r159117
Dave Korn [Thu, 6 May 2010 16:20:53 +0000 (16:20 +0000)]
re PR target/42811 (java.lang.ExceptionInInitializerError in ecj1)
PR target/42811
* tests/staticrootstest.c: New test source file.
* tests/staticrootslib.c: New test library source file.
* Makefile.am (test_ldadd): New variable.
(gctest_LDADD): Use it.
(TESTS): Add leaktest, middletest and staticrootstest.
(check_PROGRAMS): Likewise.
(leaktest_SOURCES): New libtool variable definition.
(leaktest_LDADD): Likewise.
(leaktest_LDFLAGS): Likewise.
(leaktest_LINK): Likewise.
(middletest_SOURCES): Likewise.
(middletest_LDADD): Likewise.
(middletest_LDFLAGS): Likewise.
(middletest_LINK): Likewise.
(staticrootstest_SOURCES): Likewise.
(staticrootstest_LDADD): Likewise.
(staticrootstest_LDFLAGS): Likewise.
(staticrootstest_LINK): Likewise.
(check_LTLIBRARIES): Likewise.
(libstaticrootslib_la_SOURCES): Likewise.
(libstaticrootslib_la_LIBADD): Likewise.
(libstaticrootslib_la_LDFLAGS): Likewise.
(libstaticrootslib_la_DEPENDENCIES): Likewise.
* Makefile.in: Regenerate.
From-SVN: r159115
Paolo Carlini [Thu, 6 May 2010 16:07:02 +0000 (16:07 +0000)]
re PR c++/40406 (ICE with broken template member declaration)
2010-05-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/40406
* g++.dg/template/crash96.C: New.
From-SVN: r159112
Dave Korn [Thu, 6 May 2010 16:06:18 +0000 (16:06 +0000)]
re PR target/43888 (FAIL: gcc.dg/alias-7.c execution test)
PR target/43888
* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
handling to still return true for x64 targets.
From-SVN: r159111
Maxim Kuvyrkov [Thu, 6 May 2010 15:54:14 +0000 (15:54 +0000)]
* config/m68k/uclinux.h (LIB_SPEC): Bring in sync with config/linux.h.
From-SVN: r159110
Jan Hubicka [Thu, 6 May 2010 14:15:22 +0000 (16:15 +0200)]
re PR tree-optimization/43791 (kernel/rtmutex.c:1138:1: internal compiler error: in cgraph_decide_inlining_of_small_functions, at ipa-inline.c:1009)
PR tree-optimization/43791
* ipa-inline.c (update_caller_keys): Remove bogus
disregard_inline_limits check.
* gcc.c-torture/compile/pr43791.c: New file.
From-SVN: r159108
Michael Matz [Thu, 6 May 2010 13:54:32 +0000 (13:54 +0000)]
re PR tree-optimization/43984 (PRE misses full-redundancies, inserts into loops)
PR tree-optimization/43984
* tree-ssa-pre.c (inserted_phi_names): Remove.
(inserted_exprs): Change to bitmap.
(create_expression_by_pieces): Set bits, don't append to vector.
(insert_into_preds_of_block): Don't handle inserted_phi_names.
(eliminate): Don't look at inserted_phi_names, remove deleted
insns from inserted_exprs.
(remove_dead_inserted_code): Adjust to use bitmaps instead of
vectors.
(init_pre, fini_pre): Allocate and free bitmaps.
(execute_pre): Insert insns on edges before elimination.
testsuite/
* gfortran.dg/pr43984.f90: New test.
From-SVN: r159106
H.J. Lu [Thu, 6 May 2010 13:03:12 +0000 (13:03 +0000)]
Add argument kind to lto_handle_option.
2010-05-06 H.J. Lu <hongjiu.lu@intel.com>
* lto-lang.c (lto_handle_option): Add argument kind.
From-SVN: r159105
Maxim Kuvyrkov [Thu, 6 May 2010 10:28:46 +0000 (10:28 +0000)]
* tree.c (initializer_zerop): Handle STRING_CST.
From-SVN: r159103
Manuel López-Ibáñez [Thu, 6 May 2010 10:12:36 +0000 (10:12 +0000)]
re PR c/40989 (-Werror= and #pragma diagnostics do not work with group flags)
2010-05-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR 40989
* doc/invoke.texi (Wimplicit): Document as C only.
* opts.c (common_handle_option): Add argument kind.
(handle_option): Rename as read_cmdline_option. Factor out code to...
(handle_option): ... here. New.
(handle_options): Rename as read_cmdline_options.
(decode_options): Update call.
(set_option): Use option index instead of option pointer. Classify
diagnostics correctly.
(enable_warning_as_error): Call handle_option.
* opts.h (set_option): Update declaration.
(handle_option): Declare.
* langhooks.h (struct lang_hooks): Add argument kind to
handle_option.
* c.opt (Wimplicit,Wimplicit-int): Initialize to -1.
* c-opts.c (set_Wimplicit): Delete.
(c_family_lang_mask): New static constant.
(c_common_handle_option): Add argument kind. Use handle_option
instead of set_Wimplicit.
(c_common_post_options): warn_implicit and warn_implicit_int
are disabled by default.
* c-common.c (warn_implicit): Do not define here.
* c-common.h (warn_implicit): Do not declare here.
(c_common_handle_option): Update declaration.
* lto-opts.c (lto_reissue_options): Update call to set_option.
java/
* lang.c (java_handle_option): Add argument kind.
fortran/
* options.c (gfc_handle_option): Add argument kind.
* gfortran.h (gfc_handle_option): Update declaration.
ada/
* gcc-interface/misc.c (gnat_handle_option): Add argument kind.
testsuite/
* gcc.dg/pr40989.c: New.
From-SVN: r159102
Richard Guenther [Thu, 6 May 2010 09:08:57 +0000 (09:08 +0000)]
re PR tree-optimization/43571 (domwalk sucks)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43571
* domwalk.c (walk_dominator_tree): Walk the dominator
sons in more optimal order.
From-SVN: r159100
Richard Guenther [Thu, 6 May 2010 09:04:00 +0000 (09:04 +0000)]
re PR tree-optimization/43934 (LIM should handle PHI nodes)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43934
* tree-ssa-loop-im.c (movement_possibility): Handle PHI nodes.
(stmt_cost): Likewise.
(extract_true_false_args_from_phi): New helper.
(determine_max_movement): For PHI nodes verify we can hoist them
and compute their cost.
(determine_invariantness_stmt): Handle PHI nodes.
(move_computations_stmt): Likewise. Hoist PHI nodes in
if-converted form using COND_EXPRs.
(move_computations): Return TODO_cleanup_cfg if we hoisted PHI
nodes.
(tree_ssa_lim): Likewise.
* tree-flow.h (tree_ssa_lim): Adjust prototype.
* tree-ssa-loop.c (tree_ssa_loop_im): Return todo.
* gcc.dg/tree-ssa/ssa-lim-9.c: New testcase.
From-SVN: r159099
Richard Guenther [Thu, 6 May 2010 08:53:19 +0000 (08:53 +0000)]
re PR middle-end/43987 (type-punning causes broken binaries unless -O0 is used)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43987
* tree-ssa-structalias.c (could_have_pointers): For possibly
address-taken variables force pointers to be recorded.
(create_variable_info_for_1): Likewise.
(push_fields_onto_fieldstack): Pass in wheter all fields
must have pointers.
(find_func_aliases): Query types instead of vars whether
they contain pointers where appropriate.
* gcc.c-torture/execute/pr43987.c: New testcase.
* gcc.dg/torture/pta-escape-1.c: Adjust.
* gcc.dg/tree-ssa/pta-escape-1.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
* gcc.dg/ipa/ipa-pta-11.c: Likewise.
From-SVN: r159098
Jan Hubicka [Thu, 6 May 2010 08:39:32 +0000 (10:39 +0200)]
cgraphbuild.c (record_reference_ctx): Add varpool_node.
* cgraphbuild.c (record_reference_ctx): Add varpool_node.
(record_reference, mark_address, mark_load, mark_store): Record
references.
(record_references_in_initializer): Update call of record_references.
(rebuild_cgraph_edges): Remove all references before rebuiding.
* cgraph.c (cgraph_create_node): Clear ref list.
(cgraph_remove_node): Remove references.
(dump_cgraph_node): Dump references.
(cgraph_clone_node): Clone references.
* cgraph.h: Include ipa-ref.h and ipa-ref-inline.h
(struct cgraph_node, varpool_node): Add ref_lst.
* ipa-ref.c: New file.
* ipa-ref.h: New file.
* ipa-ref-inline.h: New file.
* lto-cgraph.c (output_varpool): Take cgrag node set argument.
(referenced_from_other_partition_p): New function.
(lto_output_varpool_node): Take set arugment; call
referenced_from_other_partition.
(lto_output_ref): New.
(add_references): New.
(output_refs): New.
(output_cgraph): Compute boundary based on references;
output refs.
(output_varpool): Accept cgraph_node_set argument.
(input_ref): New.
(input_refs): New.
(input_cgraph): Call input_refs.
* lto-section-in.c (lto_section_name): Add refs.
* Makefile.in: (cgraph.h): Include ipa-ref.h and ipa-ref-inline.h
(ipa-ref.o): New file.
* varpool.c (varpool_node): Clear ipa ref list.
(varpool_remove_node): Remove references.
(dump_varpool_node): Dump references.
(varpool_assemble_decl): Only compile finalized ones.
(varpool_extra_name_alias): Initialize ref list.
* lto-streamer.c (lto-get_section_name): Add .refs section.
* lto-streamer.h (lto_section_type): Add LTO_section_refs.
(referenced_from_other_partition_p): Declared.
From-SVN: r159097
Jakub Jelinek [Thu, 6 May 2010 06:52:30 +0000 (08:52 +0200)]
C++ support for -Wunused-but-set-variable
gcc/cp/ChangeLog:
PR 18624
* cp-tree.h (mark_exp_read, mark_rvalue_use, mark_lvalue_use,
mark_type_use): Declare ...
* expr.c (mark_exp_read, mark_rvalue_use, mark_lvalue_use,
mark_type_use): ... new fns.
* typeck.c (cxx_sizeof_expr, cxx_alignof_expr): Call mark_type_use.
(perform_integral_promotions): Call mark_rvalue_use.
(cp_build_unary_op): Call mark_lvalue_use.
(decay_conversion): Update comment. Call mark_lvalue.
* decl.c (unused_but_set_errorcount): New variable.
(poplevel): Issue -Wunused-but-set-variable diagnostics.
(duplicate_decls): Merge DECL_READ_P flags.
(start_cleanup_fn): Set DECL_READ_P flag.
(finish_function): Issue -Wunused-but-set-parameter diagnostics.
* tree.c (rvalue): Call mark_rvalue_use.
* pt.c (convert_nontype_argument): Likewise.
* semantics.c (finish_typeof, finish_decltype_type): Call
mark_type_use.
(finish_asm_stmt): Call mark_lvalue_use.
(finish_expr_stmt): Call mark_exp_read.
* call.c (convert_like_real) <ck_identity, ck_user>: Call
mark_rvalue_use.
(build_x_va_arg): Call mark_lvalue_use.
(build_over_call): Call mark_type_use.
* init.c (build_new, build_delete): Call mark_value_use.
* rtti.c (build_typeid): Call mark_lvalue_use or mark_type_use.
(build_dynamic_cast_1): call mark_lvalue_use or mark_rvalue_use.
gcc/testsuite/ChangeLog:
PR 18624
* g++.dg/warn/Wunused-7.C: Add dg-warning.
* g++.dg/template/sfinae16.C: Likewise.
* gcc.dg/Wunused-var-1.c: Moved to...
* c-c++-common/Wunused-var-1.c: ...here. New test.
* gcc.dg/Wunused-var-2.c: Moved to...
* c-c++-common/Wunused-var-2.c: ...here. New test.
* gcc.dg/Wunused-var-3.c: Moved to...
* c-c++-common/Wunused-var-3.c: ...here. New test.
* gcc.dg/Wunused-var-4.c: Moved to...
* gcc.dg/Wunused-var-1.c: ... here.
* gcc.dg/Wunused-var-5.c: Moved to...
* c-c++-common/Wunused-var-4.c: ...here. New test.
* gcc.dg/Wunused-var-7.c: Moved to...
* c-c++-common/Wunused-var-5.c: ...here. New test.
* gcc.dg/Wunused-var-6.c: Moved to...
* gcc.dg/Wunused-var-2.c: ... here.
* c-c++-common/Wunused-var-1.c: New test.
* c-c++-common/Wunused-var-2.c: New test.
* c-c++-common/Wunused-var-3.c: New test.
* c-c++-common/Wunused-var-4.c: New test.
* c-c++-common/Wunused-var-5.c: New test.
* g++.dg/warn/Wunused-var-1.C: New test.
* g++.dg/warn/Wunused-var-2.C: New test.
* g++.dg/warn/Wunused-var-3.C: New test.
* g++.dg/warn/Wunused-var-4.C: New test.
* g++.dg/warn/Wunused-var-5.C: New test.
* g++.dg/warn/Wunused-var-6.C: New test.
* g++.dg/warn/Wunused-var-7.C: New test.
* g++.dg/warn/Wunused-var-8.C: New test.
* g++.dg/warn/Wunused-parm-1.C: New test.
* g++.dg/warn/Wunused-parm-2.C: New test.
* g++.dg/warn/Wunused-parm-3.C: New test.
Co-Authored-By: Dodji Seketeli <dodji@redhat.com>
From-SVN: r159096
Ira Rosen [Thu, 6 May 2010 06:42:51 +0000 (06:42 +0000)]
re PR middle-end/43901 (FAIL: gcc.c-torture/compile/pr42196-2.c)
PR tree-optimization/43901
* tree-vect-stmts.c (vectorizable_call): Assert that vector
type is not NULL if it's transformation phase, and return
FALSE if it's analysis.
(vectorizable_conversion, vectorizable_operation,
vectorizable_type_demotion, vectorizable_type_promotion):
Likewise.
From-SVN: r159095
GCC Administrator [Thu, 6 May 2010 00:17:31 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159094
Andrew Pinski [Thu, 6 May 2010 00:14:59 +0000 (00:14 +0000)]
mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Delete.
2010-05-05 Andrew Pinski <andrew.pinski@caviumnetworks.com>
* config/mips/mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
Delete.
* config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
New define.
* config/mips/mips-protos.h
(mips_small_register_classes_for_mode_p): Delete prototype.
From-SVN: r159090
Bernd Schmidt [Wed, 5 May 2010 22:46:38 +0000 (22:46 +0000)]
arm.h (MAX_LDM_STM_OPS): New macro.
* config/arm/arm.h (MAX_LDM_STM_OPS): New macro.
* config/arm/arm.c (multiple_operation_profitable_p,
compute_offset_order): New static functions.
(load_multiple_sequence, store_multiple_sequence): Use them.
Replace constant 4 with MAX_LDM_STM_OPS. Compute order[0] from
memory offsets, not register numbers.
(emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS.
From-SVN: r159089
Tobias Burnus [Wed, 5 May 2010 22:11:14 +0000 (00:11 +0200)]
re PR fortran/43985 (ICE when assumed size cray-pointee passed as argument)
2010-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43985
* trans-types.c (gfc_sym_type): Mark Cray pointees as
GFC_POINTER_TYPE_P.
2010-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43985
* gfortran.dg/gomp/crayptr5.f90: New test case.
From-SVN: r159086
Steven Bosscher [Wed, 5 May 2010 21:32:44 +0000 (21:32 +0000)]
stor-layout.c (pending_sizes): Change the type to VEC(tree,gc) *.
* stor-layout.c (pending_sizes): Change the type to
VEC(tree,gc) *.
(get_pending_sizes, put_pending_size, put_pending_sizes):
Update the uses of pending_sizes.
* c-decl.c (store_parm_decls): Likewise.
* c-tree.h (struct c_arg_info): Likewise.
* tree.h: Update the prototype for get_pending_sizes and
put_pending_sizes.
From-SVN: r159085