Ian Lance Taylor [Mon, 25 Apr 2011 19:36:12 +0000 (19:36 +0000)]
libgo: Irix 6 patches.
From Rainer Orth.
From-SVN: r172935
Jan Kratochvil [Mon, 25 Apr 2011 18:05:37 +0000 (18:05 +0000)]
ansidecl.h (ENUM_BITFIELD): New, from gcc/system.h.
include/
* ansidecl.h (ENUM_BITFIELD): New, from gcc/system.h.
contrib/
* paranoia.cc (ENUM_BITFIELD): Remove.
gcc/
* system.h (ENUM_BITFIELD): Remove.
libcpp/
* system.h (ENUM_BITFIELD): Remove.
From-SVN: r172933
Ian Lance Taylor [Mon, 25 Apr 2011 17:21:28 +0000 (17:21 +0000)]
Use backend interface for function types.
Drop type_tree() functions for Float_type and Complex_type.
Don't define builtin functions until gogo is created.
* go-gcc.cc (Gcc_backend::error_type): Implement.
(Gcc_backend::string_type): Remove.
(Gcc_backend::function_type): Change signature and implement.
(Gcc_backend::struct_type): Change signature.
(Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
(Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
(Gcc_backend::pointer_type): Check for error.
* Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
From-SVN: r172932
Evan Shaw [Mon, 25 Apr 2011 16:39:24 +0000 (16:39 +0000)]
Use backend interface for basic types
* go-gcc.c (class Gcc_tree): Make get_tree const.
(Gcc_backend::void_type): Implement.
(Gcc_backend::bool_type): Implement.
(Gcc_backend::integer_type): Implement.
(Gcc_backend::float_type): Implement.
(Gcc_backend::complex_type): New function.
(Gcc_backend::pointer_type): New function.
(Gcc_backend::make_type): New function.
(type_to_tree): New function.
From-SVN: r172931
Maxim Kuvyrkov [Mon, 25 Apr 2011 12:06:27 +0000 (12:06 +0000)]
combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals for STORE_FLAG_VALUE==-1 case.
* combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals
for STORE_FLAG_VALUE==-1 case.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r172930
GCC Administrator [Mon, 25 Apr 2011 00:18:21 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172929
Paolo Carlini [Sun, 24 Apr 2011 23:51:49 +0000 (23:51 +0000)]
multiway_merge.h: Uglify equally_split and equally_split_point throughout.
2011-04-24 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Uglify equally_split
and equally_split_point throughout.
* include/parallel/par_loop.h: Likewise.
* include/parallel/equally_split.h: Likewise.
* include/parallel/set_operations.h: Likewise.
* include/parallel/unique_copy.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/search.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/find.h: Likewise.
From-SVN: r172923
Richard Sandiford [Sun, 24 Apr 2011 20:04:24 +0000 (20:04 +0000)]
Author: Richard Sandiford <richard.sandiford@linaro.org>
PR target/43804
* gcc/config/m68k/constraints.md (T): Allow PIC operands that satisfy
LEGITIMATE_PIC_OPERAND_P.
From-SVN: r172920
Gerald Pfeifer [Sun, 24 Apr 2011 11:11:00 +0000 (11:11 +0000)]
parallel_mode.xml: Fix link to libgomp online documentation.
* doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
documentation. Expand link text.
From-SVN: r172916
Gerald Pfeifer [Sun, 24 Apr 2011 10:51:00 +0000 (10:51 +0000)]
* libsupc++/cxxabi.h: Adjust link to FAQ entry.
From-SVN: r172915
Jan Hubicka [Sun, 24 Apr 2011 10:43:00 +0000 (12:43 +0200)]
ipa-prop.c (ipa_propagate_indirect_call_infos): Remove obsolette WPA hack.
* ipa-prop.c (ipa_propagate_indirect_call_infos): Remove obsolette
WPA hack.
* ipa-prop.h (ipa_get_param, ipa_is_param_used, ipa_param_cannot_devirtualize_p,
ipa_param_types_vec_empty, ipa_get_ith_jump_func, ipa_get_lattice):
Fortify array bounds.
* ipa-inline-analysis.c (add_clause): Fix clause ordering.
(and_predicates, or_predicates, predicates_equal_p, evaulate_predicate):
Sanity check predicate length.
(remap_predicate): Likewise; sanity check jump functions.
(inline_read_section, inline_write_summary): Sanity check
predicate length.
From-SVN: r172914
Gerald Pfeifer [Sun, 24 Apr 2011 10:04:26 +0000 (10:04 +0000)]
* README: Refer to our generic bug reporting page.
From-SVN: r172913
Paolo Carlini [Sun, 24 Apr 2011 09:42:16 +0000 (09:42 +0000)]
re PR other/48748 (Undocumented type traits used in libstdc++-4.6)
2011-04-24 Paolo Carlini <paolo.carlini@oracle.com>
PR other/48748
* doc/extend.texi (Type Traits): Document __is_standard_layout,
__is_literal_type, and __is_trivial; update throughout about
possibly cv-qualified void types.
From-SVN: r172911
Gerald Pfeifer [Sun, 24 Apr 2011 09:34:22 +0000 (09:34 +0000)]
sourcebuild.texi (Ada Tests): Adjust reference to ACATS testsuite and make it version agnostic.
* doc/sourcebuild.texi (Ada Tests): Adjust reference to ACATS
testsuite and make it version agnostic.
From-SVN: r172910
GCC Administrator [Sun, 24 Apr 2011 00:18:45 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172909
Jakub Jelinek [Sat, 23 Apr 2011 23:32:09 +0000 (01:32 +0200)]
re PR preprocessor/48740 (Raw C++0x strings and trigraphs mix badly)
PR preprocessor/48740
* lex.c (lex_raw_string): When raw string ends with
??) followed by raw prefix and ", ensure it is preprocessed
with ??) rather than ??].
* c-c++-common/raw-string-11.c: New test.
From-SVN: r172903
Gerald Pfeifer [Sat, 23 Apr 2011 19:55:32 +0000 (19:55 +0000)]
gnat_ugn.texi (Complexity Metrics Control): Update link to the Watson/McCabe paper.
* gnat_ugn.texi (Complexity Metrics Control): Update link to
the Watson/McCabe paper.
From-SVN: r172902
John David Anglin [Sat, 23 Apr 2011 17:44:24 +0000 (17:44 +0000)]
pr48616.c (dg-options): Add -fno-common to options on hppa*-*-hpux*.
* gcc.dg/pr48616.c (dg-options): Add -fno-common to options on
hppa*-*-hpux*.
From-SVN: r172899
Jan Hubicka [Sat, 23 Apr 2011 11:37:26 +0000 (13:37 +0200)]
* ipa-inline-analysis.c (inline_write_summary): Fix thinko.
From-SVN: r172898
Tobias Burnus [Sat, 23 Apr 2011 10:26:38 +0000 (12:26 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-23 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* module.c (mio_array_spec): Set as->cotype on reading.
* resolve.c (resolve_allocate_expr): Fix allocating coarray
components.
2011-04-23 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_19.f90: New.
From-SVN: r172897
Jakub Jelinek [Sat, 23 Apr 2011 10:18:03 +0000 (12:18 +0200)]
re PR c/48685 (ICE in gimplify_expr, at gimplify.c:7034)
PR c/48685
* fold-const.c (fold_convert_loc): Add NOP_EXPR when casting
to VOID_TYPE even around MODIFY_EXPR.
* gcc.dg/pr48685.c: New test.
From-SVN: r172895
Uros Bizjak [Sat, 23 Apr 2011 07:43:50 +0000 (09:43 +0200)]
Revert:
2011-04-22 Uros Bizjak <ubizjak@gmail.com>
PR target/48723
* config/i386/i386.c (ix86_expand_prologue): Update m->fs.sp_offset
after the call to ix86_adjust_stack_and_probe.
From-SVN: r172894
Jim Meyering [Sat, 23 Apr 2011 06:48:29 +0000 (06:48 +0000)]
* gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
From-SVN: r172892
Mike Stump [Sat, 23 Apr 2011 00:41:32 +0000 (00:41 +0000)]
Remove Dale Johannesen as darwin maintainer, invalid address.
From-SVN: r172891
Mike Stump [Sat, 23 Apr 2011 00:33:15 +0000 (00:33 +0000)]
* gensupport.c (read_md_rtx): Fix typo in comment.
From-SVN: r172890
GCC Administrator [Sat, 23 Apr 2011 00:18:45 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172889
Mike Stump [Sat, 23 Apr 2011 00:16:55 +0000 (00:16 +0000)]
cris.opt (moverride-best-lib-options): Fix typo in comment.
* config/cris/cris.opt (moverride-best-lib-options): Fix typo in
comment.
From-SVN: r172884
Ian Lance Taylor [Sat, 23 Apr 2011 00:09:23 +0000 (00:09 +0000)]
re PR go/48553 (fmt FAILs on 32-bit Solaris 2 with stack overflow)
PR go/48553
libgo: Bring over patch to lower recursion depth in fmt.
From-SVN: r172883
Ian Lance Taylor [Sat, 23 Apr 2011 00:04:44 +0000 (00:04 +0000)]
Define go_unreachable to replace gcc_unreachable.
From Evan Shaw.
From-SVN: r172882
Jan Hubicka [Fri, 22 Apr 2011 20:04:42 +0000 (22:04 +0200)]
gengtype.c (open_base_files): Add ipa-inline.h include.
* gengtype.c (open_base_files): Add ipa-inline.h include.
* ipa-cp.c (ipcp_get_lattice, ipcp_lattice_from_jfunc): Move to ipa-prop.c
update all uses.
* ipa-prop.c: (ipa_get_lattice, ipa_lattice_from_jfunc): ... here.
* ipa-inline-transform.c (inline_call): Use inline_merge_summary to merge
summary of inlined function into former caller.
* ipa-inline.c (max_benefit): Remove.
(edge_badness): Compensate for removal of benefits.
(update_caller_keys): Use reset_node_growth_cache/reset_edge_growth_cache.
(update_callee_keys): Likewise.
(update_all_callee_keys): Likewise.
(inline_small_functions): Do not collect max_benefit; do not
reset stimated_growth; call free_growth_caches and initialize_growth_caches.
* ipa-inline.h (struct condition, type clause_t, struct predicate, struct
size_time_entry): New structures.
(INLINE_SIZE_SCALE, INLINE_TIME_SCALE, MAX_CLAUSES): New constants.
(inline_summary): Remove size_inlining_benefit, time_inlining_benefit and
estimated_growth.
(edge_growth_cache_entry): New structure.
(node_growth_cache, edge_growth_cache): New global vars.
(estimate_growth): Turn into inline.
(inline_merge_summary, do_estimate_edge_growth, do_estimate_edge_time,
initialize_growth_caches, free_growth_caches): Declare.
(estimate_edge_growth): Rewrite.
(estimate_edge_time): Implement as inline cache lookup.
(reset_node_growth_cache, reset_edge_growth_cache): New inline functions.
(MAX_TIME): Reduce to allow multiplicatoin by INLINE_SIZE_SCALE.
(NUM_CONDITIONS): New constant.
(predicate_conditions): New enum.
(IS_NOT_CONSTANT): New constant.
(edge_removal_hook_holder): New var.
(node_growth_cache, edge_growth_cache): New global vars.
(true_predicate, single_cond_predicate, false_predicate, not_inlined_predicate,
add_condition, add_clause, and_predicates, or_predicates, predicates_equal_p,
evaulate_predicate, dump_condition, dump_clause, dump_predicate, account_size_time,
evaulate_conditions_for_edge): New functions.
(inline_summary_alloc): Move to heap.
(inline_node_removal_hook): Clear condition and entry vectors.
(inline_edge_removal_hook): New function.
(initialize_growth_caches, free_growth_caches): New function.
(dump_inline_summary): Update.
(edge_execution_predicate): New function.
(will_be_nonconstant_predicate): New function.
(estimate_function_body_sizes): Compute BB and constantness predicates.
(compute_inline_parameters): Do not clear estimated_growth.
(estimate_edge_size_and_time): New function.
(estimate_calls_size_and_time): New function.
(estimate_callee_size_and_time): New function.
(remap_predicate): New function.
(inline_merge_summary): New function.
(do_estimate_edge_time): New function based on...
(estimate_edge_time): ... this one.
(do_estimate_edge_growth): New function.
(do_estimate_growth): New function based on....
(estimate_growth): ... this one.
(inline_analyze_function): Analyze after deciding on jump functions.
(inline_read_section): New function.
(inline_read_summary): Use it.
(inline_write_summary): Write all the new data.
* ipa-prop.c (ipa_get_param_decl_index): Export.
(ipa_lattice_from_jfunc): Move here from ipa-cp.c
* ipa-prop.h (ipa_get_param_decl_index, ipa_lattice_from_jfunc): Declare.
(ipa_get_lattice): Move hre from ipa-cp.c
* Makefile.in (GTFILES): Add ipa-inline.h and ipa-inline-analysis.c
* params.def (PARAM_EARLY_INLINING_INSNS): Set to 11.
* cgraph.h (cgraph_clone_inlined_nodes, compute_inline_parameters,
cgraph_edge_inlinable_p): Remove.
* cgraphunit.c: Include ipainline.h
(cgraph_process_new_functions): Update call of compute_inline_parameters.
* gcc.dg/tree-ssa/pr38699.c: Fix testcase.
From-SVN: r172873
François Dumont [Fri, 22 Apr 2011 19:34:38 +0000 (21:34 +0200)]
libstdc++.exp (check_v3_target_time): Discard unused compilation result thanks to /dev/null.
2011-04-22 François Dumont <francois.cppdevs@free.fr>
* testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
unused compilation result thanks to /dev/null.
* testsuite/lib/libstdc++.exp (check_v3_target_debug_mode
check_v3_target_profile_mode check_v3_target_normal_mode
check_v3_target_cstdint check_v3_target_cmath
check_v3_target_atomic_builtins check_v3_target_gthreads
check_v3_target_nanosleep check_v3_target_sched_yield
check_v3_target_string_conversions check_v3_target_swprintf
check_v3_target_binary_io): Use simple preprocessing rather than
compilation. Discard unused preprocessing result thanks to /dev/null.
From-SVN: r172872
Richard Guenther [Fri, 22 Apr 2011 19:29:54 +0000 (19:29 +0000)]
tree.c (build_int_cst): Properly create canonicalized integer constants.
2011-04-22 Richard Guenther <rguenther@suse.de>
* tree.c (build_int_cst): Properly create canonicalized integer
constants.
(build_int_cst_type): Remove scary comments.
From-SVN: r172871
Xinliang David Li [Fri, 22 Apr 2011 19:11:49 +0000 (19:11 +0000)]
Proper handling of -Werror=coverage-mismatch
From-SVN: r172870
Jakub Jelinek [Fri, 22 Apr 2011 18:52:48 +0000 (20:52 +0200)]
re PR tree-optimization/48717 (integer wrong code bug)
PR tree-optimization/48717
* tree-ssa-forwprop.c (associate_plusminus): For A + ~A and
~A + A optimizations use build_int_cst_type instead of build_int_cst.
* gcc.c-torture/execute/pr48717.c: New test.
From-SVN: r172868
Uros Bizjak [Fri, 22 Apr 2011 18:40:23 +0000 (20:40 +0200)]
re PR target/48723 (ICE on function returning structure with -fstack-check on corei7-avx)
PR target/48723
* config/i386/i386.c (ix86_expand_prologue): Update m->fs.sp_offset
after the call to ix86_adjust_stack_and_probe.
testsuite/ChangeLog:
PR target/48723
* gcc.target/i386/pr48723.c: New test.
From-SVN: r172866
Ian Lance Taylor [Fri, 22 Apr 2011 18:38:24 +0000 (18:38 +0000)]
libgo: Support multilib testing.
From Rainer Orth.
From-SVN: r172865
Ian Lance Taylor [Fri, 22 Apr 2011 18:23:47 +0000 (18:23 +0000)]
re PR go/48503 (http/cgi FAILs if libgcc_s.so.1 isn't in default ld.so.1 search path)
PR go/48503
libgo: Bring over http/cgi environment inheritance patches.
From-SVN: r172864
Eric Botcazou [Fri, 22 Apr 2011 17:41:28 +0000 (17:41 +0000)]
decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE onto the new type.
* gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
onto the new type.
From-SVN: r172863
Eric Botcazou [Fri, 22 Apr 2011 17:35:08 +0000 (17:35 +0000)]
gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG parameter.
* gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
parameter.
* gcc-interface/utils.c (create_subprog_decl): Likewise. Set
DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
<all>: Do not set flags on the reused DECL node coming from an alias.
Set DECL_IGNORED_P on the DECL node built for subprograms if they
don't need debug info here...
* gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
(gigi): Adjust calls to create_subprog_decl.
(build_raise_check): Likewise.
(establish_gnat_vms_condition_handler): Likewise.
(Compilation_Unit_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
From-SVN: r172862
Joseph Myers [Fri, 22 Apr 2011 16:47:38 +0000 (17:47 +0100)]
bfin-protos.h (Mmode): Don't define.
* config/bfin/bfin-protos.h (Mmode): Don't define. Expand
definition where used.
From-SVN: r172861
Jakub Jelinek [Fri, 22 Apr 2011 14:10:45 +0000 (16:10 +0200)]
re PR c/48716 (gcc OpenMP static variable declared in scope inside construct is predetermined shared)
PR c/48716
* gimplify.c (gimplify_bind_expr): Mark as GOVD_LOCAL also
TREE_STATIC variables declared inside of some OpenMP construct.
* gcc.dg/gomp/pr48716.c: New test.
* g++.dg/gomp/pr48716.C: New test.
From-SVN: r172859
Martin Jambor [Fri, 22 Apr 2011 12:52:30 +0000 (14:52 +0200)]
re PR middle-end/48585 (483.xalancbmk in SPEC CPU 2006 failed to build)
2011-04-22 Martin Jambor <mjambor@suse.cz>
PR middle-end/48585
* tree-inline.c (copy_bb): Create new edges only for analyzed
nodes.
From-SVN: r172858
Alexander Monakov [Fri, 22 Apr 2011 11:53:01 +0000 (15:53 +0400)]
re PR c/36750 (-Wmissing-field-initializers relaxation request)
PR c/36750
* c-typeck.c (pop_init_level): Do not warn about initializing
with ` = {0}'.
testsuite:
* gcc.dg/missing-field-init-2.c: Update testcase.
From-SVN: r172857
Alan Modra [Fri, 22 Apr 2011 04:19:40 +0000 (13:49 +0930)]
missed hunk from last commit
missed hunk from last commit
* config/rs6000/rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL
when returning call_cookie.
From-SVN: r172856
Alan Modra [Fri, 22 Apr 2011 03:58:15 +0000 (13:28 +0930)]
rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL when returning call_cookie.
gcc/
* config/rs6000/rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL
when returning call_cookie.
(rs6000_function_ok_for_sibcall): Allow sibcalls via function
pointers, to functions with no more vector args than the current
function, and some non-local calls for ABI_V4.
* config/rs6000/rs6000.md (sibcall_nonlocal_aix32,
sibcall_nonlocal_aix64): Combine to ..
(sibcall_nonlocal_aix<mode>): ..this. Handle function pointer calls.
(sibcall_value_nonlocal_aix32, sibcall_value_nonlocal_aix64): Combine..
(sibcall_value_nonlocal_aix<mode>): ..likewise.
(*sibcall_nonlocal_sysv<mode>): Handle function pointer calls.
(sibcall_value_nonlocal_sysv<mode>): Likewise. Correct call cookie
operand.
* config/rs6000/darwin.md (sibcall_nonlocal_darwin64,
sibcall_value_nonlocal_darwin64, sibcall_symbolic_64,
sibcall_value_symbolic_64): Delete.
gcc/testsuite/
* gcc.target/powerpc/ppc-pow.c: Allow for tail calls.
From-SVN: r172855
Jie Zhang [Fri, 22 Apr 2011 02:30:57 +0000 (02:30 +0000)]
* MAINTAINERS: Update my email address.
From-SVN: r172854
GCC Administrator [Fri, 22 Apr 2011 00:17:59 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r172853
Xinliang David Li [Fri, 22 Apr 2011 00:03:41 +0000 (00:03 +0000)]
Remove cgraph pid
From-SVN: r172848
Ian Lance Taylor [Thu, 21 Apr 2011 23:38:34 +0000 (23:38 +0000)]
godump.c (go_format_type): Use exported Go name for anonymous field name.
* godump.c (go_format_type): Use exported Go name for anonymous
field name.
From-SVN: r172847
Ian Lance Taylor [Thu, 21 Apr 2011 22:54:23 +0000 (22:54 +0000)]
Define go_assert to replace gcc_assert
This is defined in go-system.h in the backend.
* go-system.h (go_assert, go_unreachable): Define.
From-SVN: r172846
Easwaran Raman [Thu, 21 Apr 2011 20:37:35 +0000 (20:37 +0000)]
Changelog: Remove gcc/ prefix from a changelog entry.
*Changelog: Remove gcc/ prefix from a changelog entry.
From-SVN: r172845
Nathan Froyd [Thu, 21 Apr 2011 20:29:55 +0000 (20:29 +0000)]
objc-act.c (synth_module_prologue): Call build_function_type_list instead of build_function_type.
* objc-act.c (synth_module_prologue): Call build_function_type_list
instead of build_function_type.
* objc-next-runtime-abi-02.c (next_runtime_02_initialize):
Likewise.
From-SVN: r172844
Nathan Froyd [Thu, 21 Apr 2011 20:14:21 +0000 (20:14 +0000)]
frv.c (frv_init_builtins): Delete `endlink' variable.
* config/frv/frv.c (frv_init_builtins): Delete `endlink' variable.
Call builtin_function_type_list instead of builtin_function_type.
(UNARY, BINARY, TRINARY, QUAD): Likewise.
From-SVN: r172842
Nathan Froyd [Thu, 21 Apr 2011 20:13:17 +0000 (20:13 +0000)]
arm.c (arm_init_iwmmxt_builtins): Call build_function_type_list instead of build_function_type.
* config/arm/arm.c (arm_init_iwmmxt_builtins): Call
build_function_type_list instead of build_function_type.
Delete variable `endlink'.
From-SVN: r172841
Nathan Froyd [Thu, 21 Apr 2011 20:12:07 +0000 (20:12 +0000)]
s390.c (s390_init_builtins): Call build_function_type_list instead of build_function_type.
* config/s390/s390.c (s390_init_builtins): Call
build_function_type_list instead of build_function_type.
From-SVN: r172840
Nathan Froyd [Thu, 21 Apr 2011 20:11:12 +0000 (20:11 +0000)]
ia64.c (ia64_init_builtins): Call build_function_type_list instead of builtin_function_type.
* config/ia64/ia64.c (ia64_init_builtins): Call
build_function_type_list instead of builtin_function_type.
From-SVN: r172839
Thomas Koenig [Thu, 21 Apr 2011 19:23:34 +0000 (19:23 +0000)]
re PR fortran/48405 (Handle expressions in DO loops for front-end optimization)
2011-04-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48405
* frontend_passes (cfe_register_funcs): Remove workaround for DO
loops.
(gfc_code_walker): Make sure the pointer to the current
statement doen't change when other statements are inserted.
2011-04-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48405
* gfortran.dg/function_optimize_6.f90: New test.
From-SVN: r172838
Easwaran Raman [Thu, 21 Apr 2011 19:16:57 +0000 (19:16 +0000)]
cfgexpand.c (stack_var): Remove OFFSET...
2011-04-21 Easwaran Raman <eraman@google.com>
* gcc/cfgexpand.c (stack_var): Remove OFFSET...
(add_stack_var): ...and its reference here...
(expand_stack_vars): ...and here.
(stack_var_cmp): Sort by descending order of size.
(partition_stack_vars): Change heuristic.
(union_stack_vars): Fix to reflect changes in
partition_stack_vars.
(dump_stack_var_partition): Add newline after each partition.
testsuite/Changelog:
2011-04-21 Easwaran Raman <eraman@google.com>
* gcc.dg/stack-layout-2.c: New test.
From-SVN: r172837
Joseph Myers [Thu, 21 Apr 2011 17:02:17 +0000 (18:02 +0100)]
* de.po: Update.
From-SVN: r172835
Eric Botcazou [Thu, 21 Apr 2011 16:38:49 +0000 (16:38 +0000)]
Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
* gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
(NO_REORDER_ADAFLAGS): New variable.
(EXTRA_GNATTOOLS): Always define.
(../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
Clean up and adjust list of files compiled with special options.
* gcc-interface/Make-lang.in: Likewise.
(ada/decl.o): Cosmetical change.
(ada/misc.o): Remove dependency on $(PLUGIN_H).
From-SVN: r172834
Dimitrios Apostolou [Thu, 21 Apr 2011 14:53:43 +0000 (14:53 +0000)]
gengtype-state.c (read_a_state_token): Fix argument to obstack_free.
* gengtype-state.c (read_a_state_token): Fix argument to
obstack_free.
* gengtype.c (matching_file_name_substitute): Likewise.
Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r172832
Richard Guenther [Thu, 21 Apr 2011 14:35:43 +0000 (14:35 +0000)]
re PR debug/48703 (segfault in canonicalize_for_substitution)
2011-04-21 Richard Guenther <rguenther@suse.de>
PR lto/48703
* tree.c (free_lang_data_in_decl): Do not zero TREE_TYPE of
DECL_NAME.
* g++.dg/lto/pr48207-2_0.C: New testcase.
* g++.dg/lto/pr48207-3_0.C: Likewise.
From-SVN: r172830
Eric Botcazou [Thu, 21 Apr 2011 14:15:51 +0000 (14:15 +0000)]
* gimple.c (walk_gimple_op) <GIMPLE_CALL>: Fix couple of oversights.
From-SVN: r172828
Jakub Jelinek [Thu, 21 Apr 2011 13:15:02 +0000 (15:15 +0200)]
gcc_release (maybe_build_tarfile): Don't build a tarfile if the first directory doesn't exist.
* gcc_release (maybe_build_tarfile): Don't build a tarfile if
the first directory doesn't exist.
From-SVN: r172827
Richard Guenther [Thu, 21 Apr 2011 13:08:58 +0000 (13:08 +0000)]
Makefile.in (site.exp): Do not use tmp0 but site.tmp as temporary file name.
2011-04-21 Richard Guenther <rguenther@suse.de>
* Makefile.in (site.exp): Do not use tmp0 but site.tmp as temporary
file name.
From-SVN: r172826
Richard Guenther [Thu, 21 Apr 2011 13:06:47 +0000 (13:06 +0000)]
tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle MEM_REF and TARGET_MEM_REF, do not care about INDIRECT_REFs.
2011-04-21 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle
MEM_REF and TARGET_MEM_REF, do not care about INDIRECT_REFs.
Use DECL_P, not SSA_VAR_P.
(ptr_derefs_may_alias_p): Likewise.
(ptr_deref_may_alias_ref_p_1): Likewise.
(decl_refs_may_alias_p): Likewise.
(refs_may_alias_p_1): Likewise.
(ref_maybe_used_by_call_p_1): Likewise.
(call_may_clobber_ref_p_1): Likewise.
(indirect_ref_may_alias_decl_p): Assume indirect refrences
are either MEM_REF or TARGET_MEM_REF.
(indirect_refs_may_alias_p): Likewise.
* calls.c (emit_call_1): Build a MEM_REF instead of an INDIRECT_REF
for MEM_EXPR of indirect calls.
From-SVN: r172825
Tristan Gingold [Thu, 21 Apr 2011 13:01:26 +0000 (13:01 +0000)]
vmsdbgout.c (write_srccorr): Compute file length from the string.
2011-04-21 Tristan Gingold <gingold@adacore.com>
* vmsdbgout.c (write_srccorr): Compute file length from the string.
(dst_file_info_struct): Remove flen field.
(lookup_filename): Remove code that set flen field.
From-SVN: r172824
Tristan Gingold [Thu, 21 Apr 2011 12:47:17 +0000 (12:47 +0000)]
ia64.c (ia64_start_function): Add a guard.
2011-04-21 Tristan Gingold <gingold@adacore.com>
* config/ia64/ia64.c (ia64_start_function): Add a guard.
From-SVN: r172822
Uros Bizjak [Thu, 21 Apr 2011 11:55:45 +0000 (13:55 +0200)]
re PR target/48708 (Invalid V2DI vector set insn generated)
PR target/48708
* config/i386/i386.c (ix86_expand_vector_set) <V2DImode>: Generate
vec_extract and vec_concat for non-SSE4_1 targets.
testsuite/ChangeLog:
PR target/48708
* gcc.target/i386/pr48708.c: New test.
From-SVN: r172821
Richard Guenther [Thu, 21 Apr 2011 11:31:52 +0000 (11:31 +0000)]
tree-ssa-alias.c (ref_maybe_used_by_stmt_p): Handle return statements.
2011-04-21 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (ref_maybe_used_by_stmt_p): Handle
return statements.
From-SVN: r172820
Joseph Myers [Thu, 21 Apr 2011 10:50:24 +0000 (11:50 +0100)]
cygming.h (union tree_node, TREE): Don't define or undefine.
* config/i386/cygming.h (union tree_node, TREE): Don't define or
undefine.
(FILE): Don't undefine.
From-SVN: r172819
Joseph Myers [Thu, 21 Apr 2011 10:01:54 +0000 (11:01 +0100)]
alpha.c (struct machine_function): Use rtx, not struct rtx_def *.
* config/alpha/alpha.c (struct machine_function): Use rtx, not
struct rtx_def *.
* config/bfin/bfin.h (bfin_cc_rtx, bfin_rets_rtx): Use rtx, not
struct rtx_def *.
* config/cris/cris-protos.h (STDIO_INCLUDED): Don't define.
* config/h8300/h8300.h (struct cum_arg): Use rtx, not struct
rtx_def *.
* config/iq2000/iq2000.h (struct iq2000_args): Use rtx, not struct
rtx_def *.
* config/m32c/m32c-protos.h (MM, UINT): Don't define. Expand
definitions where used.
* config/microblaze/microblaze.h (struct microblaze_args): Use
rtx, not struct rtx_def *.
* config/pa/pa-protos.h (return_addr_rtx): Use rtx, not struct
rtx_def *.
* config/pa/pa.h (hppa_pic_save_rtx): Use rtx, not struct rtx_def
*.
* config/pdp11/pdp11.h (cc0_reg_rtx): Use rtx, not struct rtx_def
*.
* config/sh/sh-protos.h (sfunc_uses_reg, get_fpscr_rtx): Use rtx,
not struct rtx_def *.
* config/sh/sh.h (sh_compare_op0, sh_compare_op1): Use rtx, not
struct rtx_def *.
* config/spu/spu-protos.h (spu_float_const): Use rtx, not struct
rtx_def *.
* config/spu/spu.c (spu_float_const): Use rtx, not struct rtx_def
*.
From-SVN: r172818
Richard Sandiford [Thu, 21 Apr 2011 09:39:57 +0000 (09:39 +0000)]
tree-vect-data-refs.c (vect_drs_dependent_in_basic_block): Use operand_equal_p to compare DR_BASE_ADDRESSes.
gcc/
* tree-vect-data-refs.c (vect_drs_dependent_in_basic_block): Use
operand_equal_p to compare DR_BASE_ADDRESSes.
(vect_check_interleaving): Likewise.
gcc/testsuite/
* gcc.dg/vect/vect-119.c: New test.
From-SVN: r172817
Richard Sandiford [Thu, 21 Apr 2011 09:39:41 +0000 (09:39 +0000)]
vect.exp: Run the main tests twice, one with -flto and once without.
gcc/testsuite/
* gcc.dg/vect/vect.exp: Run the main tests twice, one with -flto
and once without.
From-SVN: r172816
Richard Sandiford [Thu, 21 Apr 2011 09:39:03 +0000 (09:39 +0000)]
re PR target/46329 (ICE on ARM for __attribute__ ((vector_size (8 * sizeof(int)))) operations)
gcc/
PR target/46329
* config/arm/arm.c (arm_legitimate_constant_p_1): Return false
for all Neon struct constants.
gcc/testsuite/
2011-04-04 Richard Earnshaw <rearnsha@arm.com>
Richard Sandiford <richard.sandiford@linaro.org>
PR target/46329
* gcc.target/arm/pr46329.c: New test.
From-SVN: r172815
Richard Sandiford [Thu, 21 Apr 2011 09:38:43 +0000 (09:38 +0000)]
target.def (legitimate_constant_p): New hook.
gcc/
* target.def (legitimate_constant_p): New hook.
* doc/tm.texi.in (LEGITIMATE_CONSTANT_P): Replace with...
(TARGET_LEGITIMATE_CONSTANT_P): ...this.
* doc/tm.texi: Regenerate.
* hooks.h (hook_bool_mode_rtx_true): Declare.
* hooks.c (hook_bool_mode_rtx_true): Define.
* system.h (LEGITIMATE_CONSTANT_P): Poison.
* calls.c (precompute_register_parameters): Replace uses of
LEGITIMATE_CONSTANT_P with targetm.legitimate_constant_p.
(emit_library_call_value_1): Likewise.
* expr.c (move_block_to_reg, can_store_by_pieces, emit_move_insn)
(compress_float_constant, emit_push_insn, expand_expr_real_1): Likewise.
* ira-costs.c (scan_one_insn): Likewise.
* recog.c (general_operand, immediate_operand): Likewise.
* reload.c (find_reloads_toplev, find_reloads_address_part): Likewise.
* reload1.c (init_eliminable_invariants): Likewise.
* config/alpha/alpha-protos.h (alpha_legitimate_constant_p): Add a
mode argument.
* config/alpha/alpha.h (LEGITIMATE_CONSTANT_P): Delete.
* config/alpha/alpha.c (alpha_legitimate_constant_p): Add a mode
argument.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/alpha/predicates.md (input_operand): Update call to
alpha_legitimate_constant_p.
* config/arm/arm-protos.h (arm_cannot_force_const_mem): Delete.
* config/arm/arm.h (ARM_LEGITIMATE_CONSTANT_P): Likewise.
(THUMB_LEGITIMATE_CONSTANT_P, LEGITIMATE_CONSTANT_P): Likewise.
* config/arm/arm.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(arm_legitimate_constant_p_1, thumb_legitimate_constant_p)
(arm_legitimate_constant_p): New functions.
(arm_cannot_force_const_mem): Make static.
* config/avr/avr.h (LEGITIMATE_CONSTANT_P): Delete.
* config/bfin/bfin-protos.h (bfin_legitimate_constant_p): Delete.
* config/bfin/bfin.h (LEGITIMATE_CONSTANT_P): Delete.
* config/bfin/bfin.c (expand_move): Use targetm.legitimate_constant_p
instead of bfin_legitimate_constant_p.
(bfin_legitimate_constant_p): Make static. Add a mode argument.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/cris/cris.h (LEGITIMATE_CONSTANT_P): Delete.
* config/fr30/fr30.h (LEGITIMATE_CONSTANT_P): Delete.
* config/frv/frv-protos.h (frv_legitimate_constant_p): Delete.
* config/frv/frv.h (LEGITIMATE_CONSTANT_P): Delete.
* config/frv/frv.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(frv_legitimate_constant_p): Make static. Add a mode argument.
* config/h8300/h8300-protos.h (h8300_legitimate_constant_p): Delete.
* config/h8300/h8300.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/h8300/h8300.c (h8300_legitimate_constant_p): Likewise.
* config/i386/i386-protos.h (legitimate_constant_p): Delete.
* config/i386/i386.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/i386/i386.c (legitimate_constant_p): Rename to...
(ix86_legitimate_constant_p): ...this. Make static. Add a mode
argument.
(ix86_cannot_force_const_mem): Update accordingly.
(ix86_legitimate_address_p): Likewise.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/i386/i386.md: Update commentary.
* config/ia64/ia64-protos.h (ia64_legitimate_constant_p): Delete.
* config/ia64/ia64.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/ia64/ia64.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(ia64_legitimate_constant_p): Make static. Add a mode argument.
* config/iq2000/iq2000.h (LEGITIMATE_CONSTANT_P): Delete.
* config/lm32/lm32-protos.h (lm32_legitimate_constant_p): Delete.
* config/lm32/lm32.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/lm32/lm32.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(lm32_legitimate_constant_p): Make static. Add a mode argument.
* config/m32c/m32c-protos.h (m32c_legitimate_constant_p): Delete.
* config/m32c/m32c.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/m32c/m32c.c (m32c_legitimate_constant_p): Likewise.
* config/m32r/m32r.h (LEGITIMATE_CONSTANT_P): Delete.
* config/m32r/m32r.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(m32r_legitimate_constant_p): New function.
* config/m68k/m68k-protos.h (m68k_legitimate_constant_p): Declare.
* config/m68k/m68k.h (CONSTANT_ADDRESS_P): Call it instead of
LEGITIMATE_CONSTANT_P.
(LEGITIMATE_CONSTANT_P): Delete.
* config/m68k/m68k.c (m68k_expand_prologue): Call
m68k_legitimate_constant_p instead of LEGITIMATE_CONSTANT_P.
(m68k_legitimate_constant_p): New function.
* config/m68k/m68k.md: Update comments.
* config/mcore/mcore.h (LEGITIMATE_CONSTANT_P): Delete.
* config/mcore/mcore.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(mcore_legitimate_constant_p): New function.
* config/mep/mep-protos.h (mep_legitimate_constant_p): Delete.
* config/mep/mep.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/mep/mep.c (mep_legitimate_constant_p): Make static.
Add a mode argument.
(mep_legitimate_address): Update accordingly.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/microblaze/microblaze-protos.h (microblaze_const_double_ok):
Delete.
* config/microblaze/microblaze.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/microblaze/microblaze.c (microblaze_const_double_ok): Make
static. Check OP's mode for VOIDmode.
(microblaze_legitimate_constant_p): New function.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/mips/mips.h (LEGITIMATE_CONSTANT_P): Delete.
* config/mips/mips.c (mips_legitimate_constant_p): New function.
(mips_cannot_force_const_mem): Use it instead of LEGITIMATE_CONSTANT_P.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/mips/predicates.md: Update comments.
* config/mmix/mmix-protos.h (mmix_legitimate_constant_p): Delete.
* config/mmix/mmix.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/mmix/mmix.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(mmix_legitimate_constant_p): Make static, return a bool, and take
a mode argument.
(mmix_print_operand_address): Update accordingly.
* config/mn10300/mn10300-protos.h (mn10300_legitimate_constant_p):
Delete.
* config/mn10300/mn10300.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/mn10300/mn10300.c (mn10300_legitimate_constant_p):
Make static. Add a mode argument.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/moxie/moxie.h (LEGITIMATE_CONSTANT_P): Delete.
* config/pa/pa.h (LEGITIMATE_CONSTANT_P): Delete.
* config/pa/pa.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(pa_legitimate_constant_p): New function.
* config/picochip/picochip.h (LEGITIMATE_CONSTANT_P): Delete.
* config/pdp11/pdp11.h (LEGITIMATE_CONSTANT_P): Delete.
* config/pdp11/pdp11.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(pdp11_legitimate_constant_p): New function.
* config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Delete.
* config/rs6000/rs6000.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(rs6000_legitimate_constant_p): New function.
* config/rx/rx-protos.h (rx_is_legitimate_constant): Replace with...
(rx_legitimate_constant_p): ...this.
* config/rx/rx.h (LEGITIMATE_CONSTANT_P): Delete.
* config/rx/rx.c (rx_is_legitimate_constant): Replace with...
(rx_legitimate_constant_p): ...this.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/rx/rx.md (mov<register_modes:mode>): Update accordingly.
* config/s390/s390-protos.h (legitimate_constant_p): Delete.
* config/s390/s390.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/s390/s390.c (legitimate_constant_p): Rename to...
(s390_legitimate_constant_p): ...this. Make static, return a bool,
and add a mode argument.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/score/score.h (LEGITIMATE_CONSTANT_P): Delete.
* config/sh/sh.h (LEGITIMATE_CONSTANT_P): Delete.
* config/sh/sh.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(sh_legitimate_constant_p): New function.
* config/sparc/sparc-protos.h (legitimate_constant_p): Delete.
* config/sparc/sparc.h (LEGITIMATE_CONSTANT_P): Delete.
* config/sparc/sparc.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(legitimate_constant_p): Rename to...
(sparc_legitimate_constant_p): ...this. Make static. Add a mode
argument.
(constant_address_p): Update accordingly.
* config/spu/spu-protos.h (spu_legitimate_constant_p): Add a mode
argument and return a bool.
* config/spu/spu.h (LEGITIMATE_CONSTANT_P): Delete.
* config/spu/spu.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(spu_legitimate_constant_p): Add a mode argument and return a bool.
(spu_rtx_costs): Update accordingly.
* config/spu/predicates.md (vec_imm_operand): Likewise.
* config/stormy16/stormy16.h (LEGITIMATE_CONSTANT_P): Delete.
* config/v850/v850.h (LEGITIMATE_CONSTANT_P): Delete.
* config/v850/v850.c (v850_legitimate_constant_p): New function.
(TARGET_LEGITIMATE_CONSTANT_P): Define.
* config/vax/vax-protos.h (legitimate_constant_p): Delete.
* config/vax/vax.h (LEGITIMATE_CONSTANT_P): Likewise.
* config/vax/vax.c (legitimate_constant_p): Likewise.
* config/xtensa/xtensa.h (LEGITIMATE_CONSTANT_P): Delete.
* config/xtensa/xtensa.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
(xtensa_legitimate_constant_p): New function.
From-SVN: r172814
Richard Sandiford [Thu, 21 Apr 2011 09:37:44 +0000 (09:37 +0000)]
target.def (cannot_force_const_mem): Add a mode argument.
gcc/
* target.def (cannot_force_const_mem): Add a mode argument.
* doc/tm.texi.in (TARGET_CANNOT_FORCE_CONST_MEM): Update accordingly.
* doc/tm.texi: Regenerate.
* hooks.h (hook_bool_mode_rtx_false): Declare.
* hooks.c (hook_bool_mode_const_rtx_false): Fix commentary.
(hook_bool_mode_const_rtx_true): Likewise.
(hook_bool_mode_rtx_false): New function.
* reload.c (CONST_POOL_OK_P): Take a mode argument and require it
to be non-VOID. Update call to cannot_force_const_mem.
(find_reloads): Update accordingly.
* varasm.c (force_const_mem): Update call to cannot_force_const_mem.
* config/alpha/alpha.c (alpha_cannot_force_const_mem): Add a mode
argument.
* config/arm/arm-protos.h (arm_cannot_force_const_mem): Likewise.
* config/arm/arm.h (LEGITIMATE_CONSTANT_P): Update call.
* config/arm/arm.c (arm_cannot_force_const_mem): Add a mode argument.
* config/bfin/bfin.c (bfin_cannot_force_const_mem): Likewise.
* config/frv/frv.c (frv_cannot_force_const_mem): Likewise.
* config/i386/i386.c (ix86_cannot_force_const_mem): Likewise.
* config/ia64/ia64.c (ia64_cannot_force_const_mem): Likewise.
* config/m68k/m68k.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to...
(m68k_cannot_force_const_mem): ...this new function.
* config/mips/mips.c (mips_cannot_force_const_mem): Add a mode
argument.
(mips_const_insns, mips_legitimize_const_move): Update calls.
(mips_secondary_reload_class): Likewise.
* config/pa/pa.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to...
(pa_cannot_force_const_mem): ...this new function.
* config/rs6000/rs6000.c (TARGET_CANNOT_FORCE_CONST_MEM): Reefine
to...
(rs6000_cannot_force_const_mem): ...this new function.
* config/s390/s390.c (s390_cannot_force_const_mem): Add a mode
argument.
* config/sparc/sparc.c (sparc_cannot_force_const_mem): Likewise.
* config/xtensa/xtensa.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine
to...
(xtensa_cannot_force_const_mem): ...this new function.
From-SVN: r172813
Tobias Burnus [Thu, 21 Apr 2011 08:29:41 +0000 (10:29 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-21 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* array.c (gfc_match_array_spec): Fix maximal rank(+corank) check.
2011-04-21 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_18.f90: New.
From-SVN: r172812
Ian Lance Taylor [Thu, 21 Apr 2011 05:55:22 +0000 (05:55 +0000)]
Use mpfr_prec_round, not real_convert, to constraint floats.
From-SVN: r172811
Jason Merrill [Thu, 21 Apr 2011 04:28:32 +0000 (00:28 -0400)]
semantics.c (finish_compound_literal): Don't put an array with a dtor in a static variable.
* semantics.c (finish_compound_literal): Don't put an array
with a dtor in a static variable.
From-SVN: r172810
Jason Merrill [Thu, 21 Apr 2011 04:28:25 +0000 (00:28 -0400)]
* call.c (build_over_call): Handle trivial dtor.
From-SVN: r172809
Jason Merrill [Thu, 21 Apr 2011 04:28:17 +0000 (00:28 -0400)]
* search.c (lookup_fnfields_slot): Call complete_type.
From-SVN: r172808
Jason Merrill [Thu, 21 Apr 2011 04:28:06 +0000 (00:28 -0400)]
re PR c++/48594 (Rejects valid with pointer-to-member in template)
PR c++/48594
* decl2.c (build_offset_ref_call_from_tree): Move
non-dependency of object outside condition.
From-SVN: r172807
GCC Administrator [Thu, 21 Apr 2011 00:18:21 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172802
Nathan Froyd [Wed, 20 Apr 2011 20:24:31 +0000 (20:24 +0000)]
mips.c (mips16_build_function_stub): Call build_function_type_list instead of build_function_type.
* config/mips/mips.c (mips16_build_function_stub): Call
build_function_type_list instead of build_function_type.
(mips16_build_call_stub): Likewise.
From-SVN: r172796
Nathan Froyd [Wed, 20 Apr 2011 20:22:52 +0000 (20:22 +0000)]
mep.c (mep_init_builtins): Call build_function_type_list instead of build_function_type.
* config/mep/mep.c (mep_init_builtins): Call build_function_type_list
instead of build_function_type.
From-SVN: r172795
Nathan Froyd [Wed, 20 Apr 2011 20:21:35 +0000 (20:21 +0000)]
pa.c (pa_init_builtins): Call build_function_type_list instead of build_function_type.
* config/pa/pa.c (pa_init_builtins): Call build_function_type_list
instead of build_function_type.
From-SVN: r172794
Uros Bizjak [Wed, 20 Apr 2011 19:58:23 +0000 (21:58 +0200)]
re PR target/48678 (unable to find a register to spill in class ‘GENERAL_REGS’)
PR target/48678
* config/i386/i386.md (insv): Change operand 0 constraint to
"register_operand". Change operand 1 and 2 constraint to
"const_int_operand". Expand to pinsr{b,w,d,q} * when appropriate.
* config/i386/sse.md (sse4_1_pinsrb): Export.
(sse2_pinsrw): Ditto.
(sse4_1_pinsrd): Ditto.
(sse4_1_pinsrq): Ditto.
* config/i386/i386-protos.h (ix86_expand_pinsr): Add prototype.
* config/i386/i386.c (ix86_expand_pinsr): New.
testsuite/ChangeLog:
PR target/48678
* gcc.target/i386/sse2-pinsrw.c: New test.
* gcc.target/i386/avx-vpinsrw.c: Ditto.
* gcc.target/i386/sse4_1-insvqi.c: Ditto.
* gcc.target/i386/sse2-insvhi.c: Ditto.
* gcc.target/i386/sse4_1-insvsi.c: Ditto.
* gcc.target/i386/sse4_1-insvdi.c: Ditto.
From-SVN: r172792
Jason Merrill [Wed, 20 Apr 2011 19:39:02 +0000 (15:39 -0400)]
re PR c++/48657 (could not convert template argument ‘VectorDimension’ to ‘unsigned int’)
PR c++/48657
* decl.c (cp_finish_decl): Simplify template handling.
From-SVN: r172790
Easwaran Raman [Wed, 20 Apr 2011 18:34:59 +0000 (18:34 +0000)]
cfgexpand.c (add_alias_set_conflicts): Add conflicts with a variable containing union type only with -fstrict-aliasing.
2011-04-20 Easwaran Raman <eraman@google.com>
* cfgexpand.c (add_alias_set_conflicts): Add conflicts with a variable
containing union type only with -fstrict-aliasing.
2011-04-20 Easwaran Raman <eraman@google.com>
* gcc.dg/stack-layout-1.c: New test.
From-SVN: r172788
Easwaran Raman [Wed, 20 Apr 2011 18:24:22 +0000 (18:24 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2011-04-20 Easwaran Raman <eraman@google.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r172787
Jim Meyering [Wed, 20 Apr 2011 18:19:03 +0000 (18:19 +0000)]
remove useless if-before-free tests
Change "if (E) free (E);" to "free (E);" everywhere except in the
libgo/, intl/, zlib/ and classpath/ directories.
Also transform equivalent variants like
"if (E != NULL) free (E);" and allow an extra cast on the
argument to free. Otherwise, the tested and freed "E"
expressions must be identical, modulo white space.
From-SVN: r172785
Jim Meyering [Wed, 20 Apr 2011 18:18:43 +0000 (18:18 +0000)]
discourage unnecessary use of if before free
* README.Portability: Explain why "if (P) free (P)" is best avoided.
From-SVN: r172784
Jakub Jelinek [Wed, 20 Apr 2011 18:18:16 +0000 (20:18 +0200)]
re PR tree-optimization/48611 (ICE: SIGSEGV in remap_eh_region_nr (tree-inline.c:1194) with -Os -fopenmp -fexceptions -fno-tree-ccp -fno-tree-copy-prop on basic code)
PR tree-optimization/48611
* tree-eh.c (note_eh_region_may_contain_throw): Don't propagate
beyond ERT_MUST_NOT_THROW region.
From-SVN: r172783
Tobias Burnus [Wed, 20 Apr 2011 18:07:52 +0000 (20:07 +0200)]
re PR fortran/48588 (ICE (segfault) in gfc_get_nodesc_array_type)
2011-04-19 Tobias Burnus <burnus@net-b.de>
PR fortran/48588
PR fortran/48692
* module.c (fix_mio_expr): Commit created symbol.
From-SVN: r172782
Kai Tietz [Wed, 20 Apr 2011 17:42:51 +0000 (19:42 +0200)]
Fixed recent testcases for backslash hell typo.
From-SVN: r172781
Catherine Moore [Wed, 20 Apr 2011 16:54:32 +0000 (12:54 -0400)]
mips.opt (mfix-24k): New.
2011-04-20 Catherine Moore <clm@codesourcery.com>
* config/mips/mips.opt (mfix-24k): New.
* config/mips/mips.h (ASM_SPEC): Handle -mfix-24k.
* config/mips/mips.md (length): Increase by 4 for stores if
fixing 24K errata.
* config/mips/mips.c (mips_reorg_process_insns): Do not allow
all noreorder if fixing 24K errata.
* doc/invoke.texi: Document mfix-24k.
From-SVN: r172780
Chung-Lin Tang [Wed, 20 Apr 2011 16:48:28 +0000 (16:48 +0000)]
arm.c (arm_legitimize_reload_address): For NEON quad-word modes, reduce to 9-bit index range when above 1016 limit.
2011-04-20 Chung-Lin Tang <cltang@codesourcery.com>
* config/arm/arm.c (arm_legitimize_reload_address): For NEON
quad-word modes, reduce to 9-bit index range when above 1016
limit.
From-SVN: r172779
Daniel Jacobowitz [Wed, 20 Apr 2011 16:39:37 +0000 (16:39 +0000)]
vect-shift-3.c, [...]: New.
2011-04-20 Daniel Jacobowitz <dan@codesourcery.com>
gcc/testsuite/
* gcc.dg/vect/vect-shift-3.c, gcc.dg/vect/vect-shift-4.c: New.
* lib/target-supports.exp (check_effective_target_vect_shift_char): New
function.
From-SVN: r172778
Andrew Stubbs [Wed, 20 Apr 2011 16:33:48 +0000 (16:33 +0000)]
arm.c (arm_gen_constant): Move movw support ....
2011-04-20 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.c (arm_gen_constant): Move movw support ....
(const_ok_for_op): ... to here.
From-SVN: r172777