OSDN Git Service
wilson [Tue, 20 Apr 2010 01:07:07 +0000 (01:07 +0000)]
Enable doloop optimization on loops with calls.
* config/ia64/ia64.c (TARGET_INVALID_WITHIN_DOLOOP): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158538
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 20 Apr 2010 00:19:41 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158537
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 19 Apr 2010 23:33:21 +0000 (23:33 +0000)]
* opts.c (decode_options): Disable whpr incompatible passes.
* lto/lto.c (lto_1_to_1_map): Skip clones.
(read_cgraph_and_symbols): Do not mark everything as needed.
(do_whole_program_analysis): Do map only after optimizing;
set proper cgraph_state; use passmanager.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158533
138bc75d-0d04-0410-961f-
82ee72b054a4
dj@138bc75d-0d04-0410-961f-82ee72b054a4 [Mon, 19 Apr 2010 23:25:31 +0000 (23:25 +0000)]
* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
POINTER_PLUS_EXPR and fix them.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158532
138bc75d-0d04-0410-961f-
82ee72b054a4
eweddington [Mon, 19 Apr 2010 22:46:52 +0000 (22:46 +0000)]
2010-04-19 Eric B. Weddington <eric.weddington@atmel.com>
* config/avr/avr-devices.c (avr_mcu_types): Add support for new
devices atmega644pa, attiny2313a, attiny24a, attiny261a, attiny4313,
attiny44a, attiny861a, atmega16a, atmega168a, atmega164a, atmega165a,
atmega169a, atmega169pa, atmega16hva2, atmega324a, atmega324pa,
atmega325a, atmega3250a, atmega328, atmega329a, atmega329pa,
atmega3290a, atmega48a, atmega644a, atmega645a, atmega645p,
atmega6450a, atmega6450p, atmega649a, atmega649p, atmega6490a,
atmega6490p, atmega64hve, atmega88a, atmega88pa, attiny461a, attiny84a,
m3000. Remove support for devices atmega8m1, atmega8c1, atmega16c1,
atmega4hvd, atmega8hvd, attiny327, m3000f, m3000s, m3001b.
* config/avr/t-avr.c (MULTILIB_MATCHES): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158530
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 19 Apr 2010 22:04:57 +0000 (22:04 +0000)]
* ifcvt.c (noce_try_cmove_arith): Fix long lines.
(check_cond_move_block): Likewise.
(cond_move_process_if_block): Likewise.
(noce_find_if_block): Improve formatting.
(find_if_header): Pass 0 to memset and tweak conditions.
(cond_exec_find_if_block): Fix long lines and tweak conditions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158529
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 19 Apr 2010 21:51:28 +0000 (21:51 +0000)]
PR fortran/43339
* openmp.c (gfc_resolve_do_iterator): Only make iteration vars for
sequential loops private in the innermost containing task region.
* gfortran.dg/gomp/sharing-2.f90: Adjust for iteration vars
of sequential loops being private only in the innermost containing
task region.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158528
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 19 Apr 2010 21:50:16 +0000 (21:50 +0000)]
PR middle-end/43337
* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
with non-local decl doesn't need chain.
* gfortran.dg/gomp/pr43337.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158527
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 19 Apr 2010 19:37:14 +0000 (19:37 +0000)]
* dwarf2out.c (lower_bound_default): For DW_LANG_Python return
0 for -gdwarf-4.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158526
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 19 Apr 2010 18:22:14 +0000 (18:22 +0000)]
* ira-color.c (allocno_reload_assign): Avoid accumulating
reload registers in ALLOCNO_TOTAL_CONFLICT_HARD_REGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158524
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 19 Apr 2010 17:58:54 +0000 (17:58 +0000)]
2010-04-19 Martin Jambor <mjambor@suse.cz>
* gimple.h (create_tmp_reg): Declare.
* gimplify.c (create_tmp_reg): New function.
(gimplify_return_expr): Use create_tmp_reg.
(gimplify_omp_atomic): Likewise.
(gimple_regimplify_operands): Likewise.
* tree-dfa.c (make_rename_temp): Likewise.
* tree-predcom.c (predcom_tmp_var): Likewise.
(reassociate_to_the_same_stmt): Likewise.
* tree-sra.c (replace_uses_with_default_def_ssa_name): Likewise.
(get_replaced_param_substitute): Likewise.
* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
* tree-ssa-pre.c (get_representative_for): Likewise.
(create_expression_by_pieces): Likewise.
* tree-tailcall.c (adjust_return_value_with_ops): Likewise.
(create_tailcall_accumulator): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158523
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 19 Apr 2010 17:55:22 +0000 (17:55 +0000)]
2010-04-19 Martin Jambor <mjambor@suse.cz>
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update
new_stmt.
(cgraph_materialize_all_clones): Assert !need_ssa_update_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158522
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 19 Apr 2010 15:17:26 +0000 (15:17 +0000)]
2010-04-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43796
* tree-vrp.c (adjust_range_with_scev): Lookup init and step
from SCEV in the lattice.
(vrp_visit_phi_node): Dump change.
* gfortran.dg/pr43796.f90: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158520
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 19 Apr 2010 15:13:50 +0000 (15:13 +0000)]
2010-04-19 Richard Guenther <rguenther@suse.de>
* configure.ac: Fix quoting around elf_getshstrndx ABI check.
* configure: Re-generated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158519
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 19 Apr 2010 13:36:54 +0000 (13:36 +0000)]
2010-04-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43783
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
constant ARRAY_REF operands two and three if possible.
* gcc.c-torture/execute/pr43783.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158517
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 19 Apr 2010 12:37:16 +0000 (12:37 +0000)]
PR target/43766
* config/i386/i386.c (ix86_decompose_address): Handle ASHIFT addends.
testsuite/ChangeLog:
PR target/43766
* gcc.target/i386/pr43766.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158515
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Mon, 19 Apr 2010 10:12:53 +0000 (10:12 +0000)]
gcc/po:
* zh_CN.po: Update.
libcpp/po:
* zh_CN.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158512
138bc75d-0d04-0410-961f-
82ee72b054a4
jiez [Mon, 19 Apr 2010 10:02:52 +0000 (10:02 +0000)]
PR target/43662
* reginfo.c (reinit_regs): Set caller_save_initialized_p
to false.
testsuite/
PR target/43662
* gcc.target/i386/pr43662.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158509
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Mon, 19 Apr 2010 09:32:16 +0000 (09:32 +0000)]
Fix PR c++/43704
gcc/cp/ChangeLog:
PR c++/43704
* typeck.c (structural_comptypes): Test dependent typedefs
incompatibility before testing for their main variant based
equivalence.
gcc/testsuite/ChangeLog:
PR c++/43704
* g++.dg/template/typedef32.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158508
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Mon, 19 Apr 2010 09:10:45 +0000 (09:10 +0000)]
PR tree-optimization/37027
* tree-vectorizer.h (struct _loop_vec_info): Add new field reductions
and macro to access it.
(vectorizable_reduction): Add argument.
(vect_get_slp_defs): Likewise.
* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Collect reduction
statements for possible use in SLP.
(new_loop_vec_info): Initialize LOOP_VINFO_REDUCTIONS.
(destroy_loop_vec_info): Free LOOP_VINFO_REDUCTIONS.
(vect_create_epilog_for_reduction): Handle SLP. Modify documentation,
add new argument.
(vectorizable_reduction): Likewise.
* tree-vect-stmts.c (vect_get_vec_defs): Update call to
vect_get_slp_defs.
(vectorizable_type_demotion, vectorizable_type_promotion,
vectorizable_store): Likewise.
(vect_analyze_stmt): Update call to vectorizable_reduction.
(vect_transform_stmt): Likewise.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Handle reduction.
(vect_build_slp_tree): Fix indentation. Check that there are no loads
from different interleaving chains in same node.
(vect_slp_rearrange_stmts): New function.
(vect_supported_load_permutation_p): Allow load permutations for
reductions. Call vect_slp_rearrange_stmts() to rearrange statements
inside SLP nodes if necessary.
(vect_analyze_slp_instance): Handle reductions.
(vect_analyze_slp): Try to build SLP instances originating from groups
of reductions.
(vect_detect_hybrid_slp_stmts): Skip reduction statements.
(vect_get_constant_vectors): Create initial vectors for reductions
according to reduction code. Add new argument.
(vect_get_slp_defs): Add new argument, pass it to
vect_get_constant_vectors.
(vect_schedule_slp_instance): Remove SLP tree root statements.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158506
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 19 Apr 2010 07:48:46 +0000 (07:48 +0000)]
* tree.h (ENUM_IS_SCOPED): Define.
* dwarf2out.c (gen_enumeration_type_die): Add DW_AT_enum_class
for ENUM_IS_SCOPED enums.
cp/
* cp-tree.h (SCOPED_ENUM_P, UNSCOPED_ENUM_P, SET_SCOPED_ENUM_P): Use
ENUM_IS_SCOPED bit instead of TYPE_LANG_FLAG_5.
testsuite/
* g++.dg/debug/dwarf2/enum1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158505
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 19 Apr 2010 00:17:30 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158501
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 18 Apr 2010 21:49:29 +0000 (21:49 +0000)]
2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
* fold-const.c (fold_comparison): Use ssizetype.
* gimple-fold.c (maybe_fold_offset_to_array_ref): Likewise.
* ipa-prop.c (ipa_modify_call_arguments): Use sizetype.
* tree-loop-distribution.c (build_size_arg_loc): Likewise.
* tree-object-size.c (compute_object_sizes): Use size_type_node.
* tree.h (initialize_sizetypes): Remove parameter.
(build_common_tree_nodes): Remove second parameter.
* stor-layout.c (initialize_sizetypes): Remove parameter.
Always create an unsigned type.
(set_sizetype): Assert that the passed type is unsigned and simplify.
* tree.c (build_common_tree_nodes): Remove second parameter.
Adjust call to initialize_sizetypes.
* c-decl.c (c_init_decl_processing): Remove second argument in call to
build_common_tree_nodes.
cp/
* decl.c (cxx_init_decl_processing): Remove second argument in call to
build_common_tree_nodes.
java/
* decl.c (java_init_decl_processing): Remove argument in call to
initialize_sizetypes
fortran/
* f95-lang.c (gfc_init_decl_processing): Remove second argument in call
to build_common_tree_nodes.
ada/
* gcc-interface/misc.c (gnat_init): Remove second argument in call to
build_common_tree_nodes.
lto/
* lto-lang.c (lto_init): Remove second argument in call to
build_common_tree_nodes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158496
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Sun, 18 Apr 2010 17:44:42 +0000 (17:44 +0000)]
2010-04-18 Matthias Klose <doko@ubuntu.com>
* gcc.c (main): Search for liblto_plugin.so with mode R_OK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158494
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 18 Apr 2010 15:47:10 +0000 (15:47 +0000)]
* gnat.dg/rep_clause5.ad[sb]: New test.
* gnat.dg/rep_clause5_pkg.ads: New helper.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158488
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sun, 18 Apr 2010 12:33:22 +0000 (12:33 +0000)]
* es.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158485
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Sun, 18 Apr 2010 12:20:34 +0000 (12:20 +0000)]
PR tree-optimization/43771
* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
load permutation doesn't have gaps.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158484
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sun, 18 Apr 2010 10:52:26 +0000 (10:52 +0000)]
* i386.md (UNSPEC_SSE_PROLOGUE_SAVE_LOW): New.
(sse_prologue_save_insn expander): Use new pattern.
(sse_prologue_save_insn1): New pattern and splitter.
(sse_prologue_save_insn): Update to deal also with 64bit aligned
blocks.
* i386.c (setup_incoming_varargs_64): Do not compute jump destination here.
(ix86_gimplify_va_arg): Update alignment needed.
(ix86_local_alignment): Do not align all local arrays
to 128bit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158483
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Sun, 18 Apr 2010 10:15:52 +0000 (10:15 +0000)]
2010-04-18 Ozkan Sezer <sezeroz@gmail.com>
* gsocket.h: Make sure that winsock2.h is included before windows.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158482
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 18 Apr 2010 00:17:01 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158481
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 17 Apr 2010 23:42:04 +0000 (23:42 +0000)]
* ipa-inline.c (cgraph_early_inlining): Handle flattening too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158477
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Sat, 17 Apr 2010 21:05:53 +0000 (21:05 +0000)]
2010-04-17 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/31538
* gfortran.dg/bounds_check_fail_4.f90: Adjust error message.
* gfortran.dg/bounds_check_fail_3.f90: Ditto.
2010-04-17 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/31538
* fortran/trans-array.c (gfc_conv_ss_startstride): Remove the use of
gfc_msg_bounds by using 'Array bound mismatch' directly.
(gfc_trans_dummy_array_bias): Remove the use of gfc_msg_bounds. Reword
error message to include the mismatch in the extent of array bound.
* fortran/trans.c: Remove gfc_msg_bounds. It is only used in one place.
* fortran/trans.h: Remove extern definition of gfc_msg_bounds.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158474
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sat, 17 Apr 2010 19:04:16 +0000 (19:04 +0000)]
2010-04-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* gfortran.texi: Update information on temporary file locations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158473
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Sat, 17 Apr 2010 16:53:21 +0000 (16:53 +0000)]
* arm.md (negdi2): Remove redundant code to force values into a
register.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158472
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Sat, 17 Apr 2010 15:34:25 +0000 (15:34 +0000)]
* arm/bpabi.S: Add EABI alignment attributes to objects.
* arm/bpabi-v6m.S: Likewise.
* arm/crti.asm: Likewise.
* arm/crtn.asm: Likewise.
* arm/lib1funcs.asm: Likewise.
* arm/libunwind.S: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158470
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 14:53:08 +0000 (14:53 +0000)]
* gcc-interface/utils2.c (build_unary_op) <ATTR_ADDR_EXPR>: Do not
issue warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158469
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 14:44:47 +0000 (14:44 +0000)]
Fix copyright date.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158468
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 14:32:15 +0000 (14:32 +0000)]
Add missing hunk for previous patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158467
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 14:16:36 +0000 (14:16 +0000)]
* uintp.h (UI_Lt): Declare.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do the size
computation in sizetype.
<E_Array_Subtype>: Use unified handling for all index types. Do not
generate MAX_EXPR-based expressions, only COND_EXPR-based ones. Add
bypass for PATs.
(annotate_value): Change test for negative values.
(validate_size): Apply test for negative values on GNAT nodes.
(set_rm_size): Likewise.
* gcc-interface/misc.c (gnat_init): Set unsigned types for sizetypes.
* gcc-interface/utils.c (rest_of_record_type_compilation): Change test
for negative values.
(max_size) <MINUS_EXPR>: Do not reassociate a COND_EXPR on the LHS.
(builtin_type_for_size): Adjust definition of signed_size_type_node.
* gcc-interface/utils2.c (compare_arrays): Optimize comparison of
lengths against zero.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158466
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Sat, 17 Apr 2010 12:43:40 +0000 (12:43 +0000)]
* arm-protos.h (tune_params): New structure.
* arm.c (current_tune): New variable.
(arm_constant_limit): Delete.
(struct processors): Add pointer to the tune parameters.
(arm_slowmul_tune): New tuning option.
(arm_fastmul_tune, arm_xscale_tune, arm_9e_tune): Likewise.
(all_cores): Adjust to pick up the tuning model.
(arm_constant_limit): New function.
(arm_override_options): Select the appropriate tuning model. Delete
initialization of arm_const_limit.
(arm_split_constant): Use the new constant-limit model.
(arm_rtx_costs): Pick up the current tuning model.
* arm.md (is_strongarm, is_xscale): Delete.
* arm-generic.md (load_ldsched_x, load_ldsched): Test explicitly
for Xscale variant architectures.
(mult_ldsched_strongarm, mult_ldsched): Similarly for StrongARM.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158463
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 08:24:16 +0000 (08:24 +0000)]
* back-end.adb (Call_Back_End): Pass Standard_Character to gigi.
* gcc-interface/gigi.h (gigi): Add standard_character parameter.
(CHAR_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
LONG_LONG_TYPE_SIZE, FLOAT_TYPE_SIZE, DOUBLE_TYPE_SIZE,
LONG_DOUBLE_TYPE_SIZE, SIZE_TYPE): Delete.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Call
rm_size.
* gcc-interface/misc.c (gnat_init): Set signedness of char as per
flag_signed_char. Tag sizetype with "size_type" moniker.
* gcc-interface/trans.c (gigi): Add standard_character parameter.
Remove useless built-in types. Equate unsigned_char_type_node to
Standard.Character. Use it instead of char_type_node throughout.
(Attribute_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils2.c (build_call_raise): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158462
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 17 Apr 2010 08:14:08 +0000 (08:14 +0000)]
* gcc-interface/gigi.h (enum standard_datatypes): Add new values
ADT_sbitsize_one_node and ADT_sbitsize_unit_node.
(sbitsize_one_node): New macro.
(sbitsize_unit_node): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Fix
latent bug in the computation of subrange_p. Fold wider_p predicate.
(cannot_be_superflat_p): Use an explicitly signed 64-bit type to do
the final comparison.
(make_aligning_type): Build real negation and use sizetype throughout
the offset computation.
(maybe_pad_type): Do not issue the warning when the new size expression
is too complex.
(annotate_value) <INTEGER_CST>: Simplify code handling negative values.
* gcc-interface/misc.c (gnat_init): Initialize sbitsize_one_node and
sbitsize_unit_node.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Pool_Address>: Fold
double negation.
(gnat_to_gnu) <N_Free_Statement>: Likewise.
* gcc-interface/utils.c (convert): Use sbitsize_unit_node.
* gcc-interface/utils2.c (compare_arrays): Compute real lengths and use
constants in sizetype. Remove dead code and tweak comments. Generate
equality instead of inequality comparisons for zero length tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158461
138bc75d-0d04-0410-961f-
82ee72b054a4
ramana [Sat, 17 Apr 2010 08:06:05 +0000 (08:06 +0000)]
Fix set but unused variables.
2010-04-17 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm.c (arm_gen_constant): Remove unused variable 'can_shift'.
(arm_rtx_costs_1): Remove unused variable 'extra_cost'.
(arm_unwind_emit_set): Use variable 'offset'.
(thumb1_output_casesi): Remove unused variable 'flags'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158460
138bc75d-0d04-0410-961f-
82ee72b054a4
corsepiu [Sat, 17 Apr 2010 03:02:28 +0000 (03:02 +0000)]
2010-04-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac (*-*-rtems*): Add target-libiberty to $skipdirs.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158459
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 17 Apr 2010 01:30:35 +0000 (01:30 +0000)]
* ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos
needing assignment rather than doing a two-phase assignment. Remove
unused variable 'm'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158458
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 17 Apr 2010 00:17:28 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158457
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 23:13:37 +0000 (23:13 +0000)]
* ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos
needing assignment rather than doing a two-phase assignment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158453
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 22:56:21 +0000 (22:56 +0000)]
* config/h8300/h8300.c (print_operand) : Modify case 'V' and
case 'W' print operands for HI mode.
* config/h8300/h8300.h (Y0, Y2) : New constraints.
* config/h8300/h8300.md (bclrqi_msx, bclrhi_msx): New patterns
(bsetqi_msx, bsethi_msx, bnotqi_msx, bnothi_msx): Likewise.
* config/h8300/predicate.md (bit_register_indirect_operand): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158452
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Apr 2010 21:44:48 +0000 (21:44 +0000)]
* trans-decl.c (gfc_build_qualified_array): Ensure
ubound.N and lbound.N artificial variable names don't appear
in debug info.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158451
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Apr 2010 21:43:36 +0000 (21:43 +0000)]
PR bootstrap/43767
* alias.c (memrefs_conflict_p): Don't crash if CSELIB_VAL_PTR is NULL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158450
138bc75d-0d04-0410-961f-
82ee72b054a4
dougkwan [Fri, 16 Apr 2010 20:31:39 +0000 (20:31 +0000)]
2010-04-16 Doug Kwan <dougkwan@google.com>
* tree-ssa-reassoc.c (struct operand_entry): Add new field ID.
(next_operand_entry_id): New static variable.
(sort_by_operand_rank): Stabilize qsort comparator by using unique IDs.
(add_to_ops_vec): Assigned unique ID to operand entry.
(struct oecount_s): New field ID.
(oecount_cmp): Stabilize qsort comparotor by using unique IDs.
(undistribute_ops_list): Assign unique IDs to oecounts.
(init_reassoc): reset next_operand_entry_id.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158449
138bc75d-0d04-0410-961f-
82ee72b054a4
dougkwan [Fri, 16 Apr 2010 20:10:32 +0000 (20:10 +0000)]
2010-04-16 Doug Kwan <dougkwan@google.com>
* config/i386/i386.md (*jcc_bt<mode>): Fix build breakage by adding
missing left parenthesis.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158448
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 16 Apr 2010 18:58:56 +0000 (18:58 +0000)]
* sv.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158443
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 18:58:03 +0000 (18:58 +0000)]
* config/h8300/h8300.h (OK_FOR_U): Support 'U' constraint for H8300SX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158442
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 18:19:50 +0000 (18:19 +0000)]
* config/h8300/h8300.md (movqi_h8sx, movhi_h8sx, movsi_h8sx,
cmphi_h8300hs_znvc, cmpsi, addhi3_h8sx) : Emit instructions in #xx:3
and #xx:4 mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158439
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 16 Apr 2010 17:58:12 +0000 (17:58 +0000)]
* config/i386/i386.md (*bt<mode>): Macroize insn from *btsi and
*btdi_rex64 using SWI48 mode iterator.
(*jcc_bt<mode>): Ditto from *jcc_btsi and *jcc_btdi_rex64.
(*jcc_bt<mode>_mask): Ditto from *jcc_btsi_mask and
*jcc_btdi_mask_rex64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158438
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Fri, 16 Apr 2010 17:31:00 +0000 (17:31 +0000)]
* double-int.h (tree_to_double_int): Convert to macro.
* double-int.c (tree_to_double_int): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158437
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 16:39:45 +0000 (16:39 +0000)]
* config/h8300/h8300.md (inverted load with HImode dest): Add
support for H8300SX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158436
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 16 Apr 2010 15:55:25 +0000 (15:55 +0000)]
* crontab: Enable 4.6 snapshots.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158434
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Apr 2010 15:34:47 +0000 (15:34 +0000)]
PR debug/43762
* dwarf2out.c (add_bound_info): Always call loc_list_from_tree
with want_address 2 and in case a single element list might be
possible, call it again with want_address 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158430
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 16 Apr 2010 15:24:07 +0000 (15:24 +0000)]
2010-04-12 Kaushik Phatak<kaushik.phatak@kpitcummins.com>
* config/h8300/predicate.md (bit_operand): Allow immediate values that
satisfy 'U' constraint.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158429
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 15:04:26 +0000 (15:04 +0000)]
* gcc-interface/gigi.h (gnat_init_decl_processing): Delete.
* gcc-interface/decl.c (gnat_to_gnu_entity): Constify a few variables.
<object>: Do not create the fake PARM_DECL if no debug info is needed.
Do not create the corresponding VAR_DECL of a CONST_DECL for debugging
purposes if no debug info is needed.
Fix formatting. Reorder and add comments.
* gcc-interface/trans.c (gnat_to_gnu) <N_Attribute_Reference>: Constify
variable and remove obsolete comment.
* gcc-interface/utils.c (convert_vms_descriptor64): Tweak comment.
(convert_vms_descriptor32): Likewise.
(convert): Remove dead code.
<UNCONSTRAINED_ARRAY_REF>: Pass the field instead of its name to build
the reference to the P_ARRAY pointer.
<POINTER_TYPE>: Likewise.
(maybe_unconstrained_array) <UNCONSTRAINED_ARRAY_TYPE>: Likewise.
(gnat_init_decl_processing): Delete, move contents to...
* gcc-interface/misc.c (gnat_init): ...here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158428
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 16 Apr 2010 14:55:56 +0000 (14:55 +0000)]
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, id.po, ja.po,
nl.po, sv.po, tr.po, uk,po, vi.po, zh_CN.po, zh_TW.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158426
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 16 Apr 2010 14:52:16 +0000 (14:52 +0000)]
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po,
nl.po, ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158424
138bc75d-0d04-0410-961f-
82ee72b054a4
ro@138bc75d-0d04-0410-961f-82ee72b054a4 [Fri, 16 Apr 2010 13:45:25 +0000 (13:45 +0000)]
toplevel:
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx
separately.
* configure: Regenerate.
gcc:
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx
flavor.
* configure: Regenerate.
* config.in: Regenerate.
* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
works.
gcc/lto:
* lto-elf.c [!HAVE_ELF_GETSHDRSTRNDX] (elf_getshdrstrndx): New
function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158423
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 16 Apr 2010 13:33:31 +0000 (13:33 +0000)]
2010-04-16 Richard Guenther <rguenther@suse.de>
* tree.h (struct tree_decl_minimal): Move pt_uid ...
(struct tree_decl_common): ... here.
(DECL_PT_UID): Adjust.
(SET_DECL_PT_UID): Likewise.
(DECL_PT_UID_SET_P): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158421
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 16 Apr 2010 13:21:38 +0000 (13:21 +0000)]
2010-04-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43572
* tree-ssa-alias.h (call_may_clobber_ref_p): Declare.
* tree-ssa-alias.c (call_may_clobber_ref_p): Export.
* tree-flow.h (is_call_clobbered): Remove.
* tree-flow-inline.h (is_call_clobbered): Likewise.
* tree-dfa.c (dump_variable): Do not dump call clobber state.
* tree-nrv.c (dest_safe_for_nrv_p): Use the alias oracle.
(execute_return_slot_opt): Adjust.
* tree-tailcall.c (suitable_for_tail_opt_p): Remove
check for call clobbered vars here.
(find_tail_calls): Move tailcall verification to the
proper place.
* gcc.dg/tree-ssa/tailcall-5.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158418
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 16 Apr 2010 12:38:22 +0000 (12:38 +0000)]
Fixed ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158416
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 16 Apr 2010 12:38:14 +0000 (12:38 +0000)]
typo fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158415
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 16 Apr 2010 12:38:04 +0000 (12:38 +0000)]
rephrase text
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158414
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 16 Apr 2010 12:37:55 +0000 (12:37 +0000)]
Clarify what happens with an unrecognized -Wno- option
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158413
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 12:23:39 +0000 (12:23 +0000)]
* gcc-interface/trans.c (unchecked_conversion_nop): Handle function
calls. Return true for conversion from a record subtype to its type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158412
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 12:07:02 +0000 (12:07 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity): Use boolean_type_node in
lieu of integer_type_node for boolean operations.
(choices_to_gnu): Likewise.
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
(Loop_Statement_to_gnu): Likewise.
(establish_gnat_vms_condition_handler): Likewise.
(Exception_Handler_to_gnu_sjlj): Likewise.
(gnat_to_gnu): Likewise.
(build_unary_op_trapv): Likewise.
(build_binary_op_trapv): Likewise.
(emit_range_check): Likewise.
(emit_index_check): Likewise.
(convert_with_check): Likewise.
* gcc-interface/utils.c (convert_vms_descriptor64): Likewise.
(convert_vms_descriptor32): Likewise.
(convert_vms_descriptor): Likewise.
* gcc-interface/utils2.c (nonbinary_modular_operation): Likewise.
(compare_arrays): Use boolean instead of integer constants.
(build_binary_op) <TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR,
TRUTH_OR_EXPR, TRUTH_XOR_EXPR>: New case. Check that the result type
is a boolean type.
<GE_EXPR, LE_EXPR, GT_EXPR, LT_EXPR>: Remove obsolete assertion.
<EQ_EXPR, NE_EXPR>: Check that the result type is a boolean type.
<PREINC/PREDECREMENT_EXPR, POSTINC/POSTDECREMENT_EXPR>: Delete.
<TRUTH_NOT_EXPR>: Check that the result type is a boolean type.
(build_unary_op): Use boolean_type_node in lieu of integer_type_node
for boolean operations.
(fill_vms_descriptor): Likewise. Fix formatting nits.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158411
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 11:54:51 +0000 (11:54 +0000)]
* gcc-interface/ada-tree.def (LOOP_STMT): Change to 4-operand nodes.
* gcc-interface/ada-tree.h (LOOP_STMT_TOP_COND, LOOP_STMT_BOT_COND):
Merge into...
(LOOP_STMT_COND): ...this.
(LOOP_STMT_BOTTOM_COND_P): New flag.
(LOOP_STMT_TOP_UPDATE_P): Likewise.
* gcc-interface/trans.c (can_equal_min_or_max_val_p): New function.
(can_equal_min_val_p): New static inline function.
(can_equal_max_val_p): Likewise.
(Loop_Statement_to_gnu): Use build4 in lieu of build5 and adjust to
new LOOP_STMT semantics. Use two different strategies depending on
whether optimization is enabled to translate the loop.
(gnat_gimplify_stmt) <LOOP_STMT>: Adjust to new LOOP_STMT semantics.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158410
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 10:16:52 +0000 (10:16 +0000)]
* uintp.adb (UI_From_Dint): Remove useless code.
(UI_From_Int): Likewise.
* uintp.h: Reorder declarations.
(UI_From_gnu): Declare.
(UI_Base): Likewise.
(Vector_Template): Likewise.
(Vector_To_Uint): Likewise.
(Uint_0): Remove.
(Uint_1): Likewise.
* gcc-interface/gigi.h: Tweak comments.
* gcc-interface/cuintp.c (UI_From_gnu): New global function.
* gcc-interface/decl.c (maybe_pad_type): Do not warn if either size
overflows.
(annotate_value) <INTEGER_CST>: Call UI_From_gnu.
* gcc-interface/trans.c (post_error_ne_num): Call post_error_ne.
(post_error_ne_tree): Call UI_From_gnu and post_error_ne.
* gcc-interface/utils.c (max_size) <tcc_binary>: Do not special-case
TYPE_MAX_VALUE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158408
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 16 Apr 2010 10:04:15 +0000 (10:04 +0000)]
PR target/40603
* config/arm/arm.md (cbranchqi4): New pattern.
* config/arm/predicates.md (const0_operand,
cbranchqi4_comparison_operator): New predicates.
PR target/40603
* gcc.target/arm/thumb-cbranchqi.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158407
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 16 Apr 2010 09:49:20 +0000 (09:49 +0000)]
2010-04-16 Richard Guenther <rguenther@suse.de>
* gimple-pretty-print.c (dump_gimple_phi): Dump alias info.
(dump_gimple_stmt): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158406
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 16 Apr 2010 09:47:17 +0000 (09:47 +0000)]
* config/arm/arm.md (addsi3_cbranch): If destination is a high
register, inputs must be low registers and we need a low register
scratch. Handle alternative 2 like alternative 3.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158405
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 16 Apr 2010 09:42:32 +0000 (09:42 +0000)]
PR target/41514
* config/arm/arm.md (cbranchsi4_insn): Renamed from "*cbranchsi4_insn".
If the previous insn is a cbranchsi4_insn with the same arguments,
omit the compare instruction.
PR target/41514
gcc.target/arm/thumb-comparisons.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158404
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 16 Apr 2010 09:32:21 +0000 (09:32 +0000)]
* recog.h (struct recog_data): New field is_operator.
(struct insn_operand_data): New field is_operator.
* recog.c (extract_insn): Set recog_data.is_operator.
* genoutput.c (output_operand_data): Emit code to set the
is_operator field.
* reload.c (find_reloads): Use it rather than testing for an
empty constraint string.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158403
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Apr 2010 09:26:43 +0000 (09:26 +0000)]
* alias.c (memrefs_conflict_p): If x and y are the same VALUE,
don't call get_addr on both. If one expression is a VALUE and
the other a REG, check VALUE's locs if the REG isn't among them.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158401
138bc75d-0d04-0410-961f-
82ee72b054a4
kwilliam [Fri, 16 Apr 2010 09:15:59 +0000 (09:15 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158400
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Fri, 16 Apr 2010 08:04:05 +0000 (08:04 +0000)]
add accumulate-outgoing-args and omit-frame-pointer for SH
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158399
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 16 Apr 2010 06:58:43 +0000 (06:58 +0000)]
* gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Just copy
TYPE_NAME.
* gcc-interface/trans.c (smaller_packable_type_p): Rename into...
(smaller_form_type_p): ...this. Change parameter and variable names.
(call_to_gnu): Use the nominal type of the parameter to create the
temporary if it's a smaller form of the actual type.
(addressable_p): Return false if the actual type is integral and its
size is greater than that of the expected type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158398
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 16 Apr 2010 00:17:47 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158397
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Thu, 15 Apr 2010 21:51:14 +0000 (21:51 +0000)]
PR target/43471
* config/sh/sh.c (sh_legitimize_reload_address): Use
MAYBE_BASE_REGISTER_RTX_P instead of BASE_REGISTER_RTX_P.
Remove a unneeded check for offset_base.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158393
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Thu, 15 Apr 2010 21:32:21 +0000 (21:32 +0000)]
PR fortran/30073
* trans-array.c (gfc_trans_array_bound_check): Eliminate a redundant
block of code. Set name to the variable associated with the descriptor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158392
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 15 Apr 2010 21:15:47 +0000 (21:15 +0000)]
* gcc-interface/cuintp.c (UI_To_gnu): Fix long line.
* gcc-interface/gigi.h (MARK_VISITED): Skip objects of constant class.
(process_attributes): Delete.
(post_error_ne_num): Change parameter name.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force debug info
with -g3. Remove a couple of obsolete lines. Minor tweaks.
If type annotating mode, operate on trees to compute the adjustment to
the sizes of tagged types. Fix long line.
(cannot_be_superflat_p): Tweak head comment.
(annotate_value): Fold local constant.
(set_rm_size): Fix long line.
* gcc-interface/trans.c (Identifier_to_gnu): Rework comments.
(Attribute_to_gnu): Fix long line.
<Attr_Size>: Remove useless assertion.
Reorder statements. Use size_binop routine.
(Loop_Statement_to_gnu): Use build5 in lieu of build_nt.
Create local variables for the label and the test. Tweak comments.
(Subprogram_Body_to_gnu): Reset cfun to NULL.
(Compilation_Unit_to_gnu): Use the Sloc of the Unit node.
(process_inlined_subprograms): Integrate into...
(Compilation_Unit_to_gnu): ...this.
(gnat_to_gnu): Fix long line.
(post_error_ne_num): Change parameter name.
* gcc-interface/utils.c (process_attributes): Static-ify.
<ATTR_MACHINE_ATTRIBUTE>: Set input_location before proceeding.
(create_type_decl): Add comment.
(create_var_decl_1): Process the attributes after adding the VAR_DECL
to the current binding level.
(create_subprog_decl): Likewise for the FUNCTION_DECL.
(end_subprog_body): Do not reset cfun to NULL.
(build_vms_descriptor32): Fix long line.
(build_vms_descriptor): Likewise.
(handle_nonnull_attribute): Likewise.
(convert_vms_descriptor64): Likewise.
* gcc-interface/utils2.c (fill_vms_descriptor): Fix long line.
(gnat_protect_expr): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158390
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 15 Apr 2010 20:21:08 +0000 (20:21 +0000)]
* gcc-interface/trans.c (gigi): Set DECL_IGNORED_P on EH functions.
(gnat_to_gnu) <N_Op_Eq>: Restore the value of input_location
before translating the top-level node.
(lvalue_required_p) <N_Function_Call>: Return 1 if !constant.
<N_Object_Declaration>: Likewise.
<N_Assignment_Statement>: Likewise.
<N_Unchecked_Type_Conversion>: Likewise.
(call_to_gnu): Remove kludge.
(gnat_to_gnu) <N_Return_Statement>: When not optimizing, force labels
associated with user returns to be preserved.
(gnat_to_gnu): Add special code to deal with boolean rvalues.
* gcc-interface/utils2.c (compare_arrays): Set input_location on all
comparisons.
(build_unary_op) <ADDR_EXPR>: Call build_fold_addr_expr.
<INDIRECT_REF>: Call build_fold_indirect_ref.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158388
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 15 Apr 2010 19:00:27 +0000 (19:00 +0000)]
Regenerate gcc/configure.
2010-04-15 H.J. Lu <hongjiu.lu@intel.com>
* configure: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158386
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Thu, 15 Apr 2010 16:30:32 +0000 (16:30 +0000)]
2010-04-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (s390_call_save_register_used): Switch back
to HARD_REGNO_NREGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158384
138bc75d-0d04-0410-961f-
82ee72b054a4
joel [Thu, 15 Apr 2010 15:39:47 +0000 (15:39 +0000)]
2010-04-15 Joel Sherrill <joel.sherrill@oarcorp.com>
* g-socket.adb: A target can have multiple missing errno's. This
will result in multiple errno's being defined as -1. Because of this
we can not use a case but must use a series of if's to avoid
a duplicate case error in GNAT.Sockets.Resolve_Error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158382
138bc75d-0d04-0410-961f-
82ee72b054a4
joel [Thu, 15 Apr 2010 15:35:27 +0000 (15:35 +0000)]
2010-04-13 Joel Sherrill <joel.sherrill@oarcorp.com>
* gsocket.h: Run-time can no longer be built without network
OS headers available. Changing RTEMS GNAT build procedure to
reflect this and letting run-time build use network .h files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158381
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Apr 2010 15:30:17 +0000 (15:30 +0000)]
2010-04-15 Richard Guenther <rguenther@suse.de>
* alias.c (alias_set_subset_of): Handle alias-set zero
child properly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158380
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Thu, 15 Apr 2010 14:39:22 +0000 (14:39 +0000)]
gcc/
* config/arm/thumb2.md (thumb2_movsi_insn): Split ldr and str
alternatives according to use of high and low regs.
* config/arm/vfp.md (thumb2_movsi_vfp): Likewise.
* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Use high regs when
optimizing for size on Thumb-2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158378
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 15 Apr 2010 13:29:07 +0000 (13:29 +0000)]
2010-04-15 Thomas Schwinge <tschwinge@gnu.org>
gcc/
* config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.
libgcc/
* config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158375
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Apr 2010 13:16:44 +0000 (13:16 +0000)]
2010-04-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (struct variable_info): Add
is_fn_info flag.
(new_var_info): Initialize it.
(dump_constraints): Support printing last added constraints.
(debug_constraints): Adjust.
(dump_constraint_graph): Likewise.
(make_heapvar_for): Check for NULL cfun.
(get_function_part_constraint): New function.
(get_fi_for_callee): Likewise.
(find_func_aliases): Properly implement IPA PTA constraints.
(process_ipa_clobber): New function.
(find_func_clobbers): Likewise.
(insert_into_field_list_sorted): Remove.
(create_function_info_for): Properly allocate vars for IPA mode.
Do not use insert_into_field_list_sorted.
(create_variable_info_for): Properly generate constraints for
global vars in IPA mode.
(dump_solution_for_var): Always dump the solution.
(set_uids_in_ptset): Initialize DECL_PT_UID if in ipa-mode.
(find_what_var_points_to): Adjust.
(pt_solution_set): Change.
(pt_solution_ior_into): New function.
(pt_solution_empty_p): Export.
(pt_solution_includes_global): Adjust.
(pt_solution_includes_1): Likewise.
(pt_solutions_intersect_1): Likewise.
(dump_sa_points_to_info): Check some invariants.
(solve_constraints): Move constraint dumping ...
(compute_points_to_sets): ... here.
(ipa_pta_execute): ... and here.
(compute_may_aliases): Do not re-compute points-to info
locally if IPA info is available.
(ipa_escaped_pt): New global var.
(ipa_pta_execute): Properly implement IPA PTA.
* tree-into-ssa.c (dump_decl_set): Support dumping
decls not in referenced-vars.
* tree-flow.h (struct gimple_df): Add ipa_pta flag.
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Adjust.
(dump_points_to_solution): Likewise.
* tree-dfa.c (dump_variable): Also dump DECL_PT_UID.
* tree-inline.c (remap_ssa_name): Copy IPA points-to solution.
(remap_gimple_stmt): Reset call clobber/use information if
necessary.
(copy_decl_to_var): Copy DECL_PT_UID.
(copy_result_decl_to_var): Likewise.
* tree.c (make_node_stat): Initialize DECL_PT_UID.
(copy_node_stat): Copy it.
* tree.h (DECL_PT_UID): New macro.
(SET_DECL_PT_UID): Likewise.
(DECL_PT_UID_SET_P): Likewise.
(struct tree_decl_minimal): Add pt_uid member.
* tree-ssa-alias.h (struct pt_solution): Add ipa_escaped flag.
(pt_solution_empty_p): Declare.
(pt_solution_set): Adjust.
(ipa_escaped_pt): Declare.
* cfgexpand.c (update_alias_info_with_stack_vars): Adjust.
* gimple-pretty-print.c (pp_points_to_solution): New function.
(dump_gimple_call): Dump call clobber/use information.
* tree-dump.c (dump_option_value_in): Add TDF_ALIAS entry.
* tree-pass.h (TDF_ALIAS): New dump option.
* tree-pretty-print.c (dump_decl_name): Dump DECL_PT_UID if asked to.
* doc/invoke.texi (-fipa-pta): Update documentation.
* gcc.dg/ipa/ipa-pta-1.c: New testcase.
* gcc.dg/ipa/ipa-pta-2.c: Likewise.
* gcc.dg/ipa/ipa-pta-3.c: Likewise.
* gcc.dg/ipa/ipa-pta-4.c: Likewise.
* gcc.dg/ipa/ipa-pta-5.c: Likewise.
* gcc.dg/ipa/ipa-pta-6.c: Likewise.
* gcc.dg/ipa/ipa-pta-7.c: Likewise.
* gcc.dg/ipa/ipa-pta-8.c: Likewise.
* gcc.dg/ipa/ipa-pta-9.c: Likewise.
* gcc.dg/ipa/ipa-pta-10.c: Likewise.
* gcc.dg/ipa/ipa-pta-11.c: Likewise.
* gcc.dg/ipa/ipa-pta-12.c: Likewise.
* gcc.dg/ipa/ipa-pta-13.c: Likewise.
* gcc.dg/torture/ipa-pta-2.c: Likewise.
* gcc.dg/torture/ipa-pta-1.c: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158374
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Apr 2010 12:58:05 +0000 (12:58 +0000)]
2010-04-15 Richard Guenther <rguenther@suse.de>
* Makefile.in (OBJS-common): Add gimple-fold.o.
(gimple-fold.o): New rule.
* tree.h (maybe_fold_offset_to_reference,
maybe_fold_offset_to_address, maybe_fold_stmt_addition): Move
prototypes ...
* gimple.h: ... here.
* tree-flow.h (fold_stmt, fold_stmt_inplace, get_symbol_constant_value,
may_propagate_address_into_dereference): Move prototypes ...
* gimple.h: ... here.
* tree-ssa-ccp.c (get_symbol_constant_value,
may_propagate_address_into_dereference, maybe_fold_offset_to_array_ref,
maybe_fold_offset_to_component_ref, maybe_fold_offset_to_reference,
maybe_fold_offset_to_address, maybe_fold_stmt_indirect,
maybe_fold_stmt_addition, maybe_fold_reference, get_maxval_strlen,
ccp_fold_builtin, fold_gimple_assign, fold_gimple_cond,
fold_gimple_call, fold_stmt_1, fold_stmt, fold_stmt_inplace,
gimplify_and_update_call_from_tree): Move ...
* gimple-fold.c: ... here. New file.
(ccp_fold_builtin): Rename to ...
(gimple_fold_builtin): ... this.
* tree-ssa-ccp.c (execute_fold_all_builtins): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158373
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Apr 2010 12:45:58 +0000 (12:45 +0000)]
2010-04-15 Richard Guenther <rguenther@suse.de>
* fold-const.c (LOWPART, HIGHPART, BASE, encode, decode,
fit_double_type, force_fit_type_double, add_double_with_sign,
neg_double, mul_double_with_sign, lshift_double, rshift_double,
lrotate_double, rrotate_double, div_and_round_double): Move ...
* double-int.c: ... here.
* tree.h (force_fit_type_double, fit_double_type, add_double_with_sign,
add_double, neg_double, mul_double_with_sign, mul_double,
lshift_double, rshift_double, lrotate_double, rrotate_double,
div_and_round_double): Move prototypes ...
* double-int.h: ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158372
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 15 Apr 2010 12:40:15 +0000 (12:40 +0000)]
* gcc-interface/trans.c (call_to_gnu): Open a nesting level if this is
a statement. Otherwise, if at top-level, push the processing of the
elaboration routine. In the misaligned case, issue the error messages
again on entry and create the temporary explicitly. Do not issue them
for CONSTRUCTORs.
For a function call, emit the range check if necessary.
In the copy-in copy-out case, create the temporary for the return
value explicitly.
Do not unnecessarily convert by-ref parameters to the formal's type.
Remove obsolete guards in conditions.
(gnat_to_gnu) <N_Assignment_Statement>: For a function call, pass the
target to call_to_gnu in all cases.
(gnat_gimplify_expr) <ADDR_EXPR>: Remove handling of SAVE_EXPR.
(addressable_p) <CONSTRUCTOR>: Return false if not static.
<COMPOUND_EXPR>: New case.
* gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Fold a compound
expression if it has unconstrained array type.
(gnat_mark_addressable) <COMPOUND_EXPR>: New case.
(gnat_stabilize_reference) <COMPOUND_EXPR>: Stabilize operands on an
individual basis.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158371
138bc75d-0d04-0410-961f-
82ee72b054a4