Richard Henderson [Fri, 24 Sep 2010 21:20:51 +0000 (14:20 -0700)]
ia64.c (ia64_dwarf_handle_frame_unspec): New.
* config/ia64/ia64.c (ia64_dwarf_handle_frame_unspec): New.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): New.
(do_spill): Use REG_CFA_OFFSET.
(ia64_expand_prologue): Use REG_CFA_ADJUST_CFA and REG_CFA_REGISTER
as appropriate.
(ia64_expand_epilogue): Likewise.
(process_set): Split into ...
(process_cfa_adjust_cfa): this,
(process_cfa_register): this,
(process_cfa_offset): and this new function.
(ia64_asm_unwind_emit): Use them. Expect REG_CFA_* notes
instead of REG_FRAME_RELATED_EXPR.
From-SVN: r164609
Olivier Hainque [Fri, 24 Sep 2010 20:32:48 +0000 (20:32 +0000)]
vx-common.h (DBX_REGISTER_NUMBER): Reinstate.
* config/i386/vx-common.h (DBX_REGISTER_NUMBER): Reinstate.
From-SVN: r164607
Jan Hubicka [Fri, 24 Sep 2010 19:14:51 +0000 (21:14 +0200)]
extend.texi: (attribute leaf): Document.
* doc/extend.texi: (attribute leaf): Document.
* tree.c (local_define_builtin): Handle ECF_LEAF.
(build_common_builtin_nodes): Set ECF_LEAF where needed.
* tree.h (ECF_LEAF): New.
* ipa-reference.c (propagate_bits): For leaf calls propagate ever overwrittable
and unavailable functions.
(ipa_init): Put all_module_statics into optimization_summary_obstack.
(copy_global_bitmap): Do not copy all_module_statics.
(read_write_all_from_decl): Use cgraph_node argument; handle ECF_LEAF.
(propagate): Handle overwritable and unavailable leaf functions;
initialize global info for overwritable and unavailable leaf functions;
do not free all module statics.
(ipa_reference_get_not_read_global, ipa_reference_get_not_written_global):
leaf calls don't clobber local statics.
* calls.c (flags_from_decl_or_type): Handle leaf.
* tree-cfg.c (stmt_can_make_abnormal_goto): Leaf functions can't do
abnormal gotos.
* c-common.c (handle_leaf_attribute): New function.
(struct attribute_spec c_common_att): Add leaf.
* gcc.dg/tree-ssa/leaf.c: New testcase.
From-SVN: r164606
Basile Starynkevitch [Fri, 24 Sep 2010 17:37:16 +0000 (17:37 +0000)]
gengtype.c: Reindented.
2010-09-24 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/gengtype.c: Reindented.
* gcc/gengtype.h: Reindented.
* gcc/gengtype-parse.c: Reindented.
From-SVN: r164604
Jan Hubicka [Fri, 24 Sep 2010 16:24:45 +0000 (18:24 +0200)]
re PR middle-end/45738 (ICE: tree check: expected var_decl, have debug_expr_decl in const_value_known_p, at varpool.c:375)
PR tree-optimization/45738
PR tree-optimization/45741
* expr.c (string_constant): Allow CONST_DECL too;
check that DECL_INITIAL is set.
* varpool.c (const_value_known_p): Only look into VAR_DECL
and CONST_DECL.
* gcc.c-torture/compile/pr45741.c: New.
* gfortran.fortran-torture/compile/pr45738.f90: New.
From-SVN: r164602
Joseph Myers [Fri, 24 Sep 2010 15:14:40 +0000 (16:14 +0100)]
common.opt (undef): New.
* common.opt (undef): New.
testsuite:
* gcc.dg/cpp/undef-opt-1.c: New test.
From-SVN: r164599
Jason Merrill [Fri, 24 Sep 2010 15:13:19 +0000 (11:13 -0400)]
decl.c (compute_array_index_type): Remember type dependence of array bound.
* decl.c (compute_array_index_type): Remember type dependence of
array bound.
* pt.c (dependent_type_p_r): Don't recompute it here.
From-SVN: r164598
Jason Merrill [Fri, 24 Sep 2010 15:13:08 +0000 (11:13 -0400)]
error.c (dump_expr): Print conversion between reference and pointer to the same type as "*" or "&".
* error.c (dump_expr) [CASE_CONVERT]: Print conversion between
reference and pointer to the same type as "*" or "&".
From-SVN: r164597
Jakub Jelinek [Fri, 24 Sep 2010 14:37:02 +0000 (16:37 +0200)]
re PR middle-end/45234 (ICE in expand_call, at calls.c:2845 when passing aligned function argument from unaligned stack after alloca)
PR middle-end/45234
* rtl.h (enum global_rtl_index): Add
GR_VIRTUAL_PREFERRED_STACK_BOUNDARY.
(LAST_VIRTUAL_POINTER_REGISTER): Define.
(virtual_preferred_stack_boundary_rtx,
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM): Define.
(LAST_VIRTUAL_REGISTER): Increase by one.
(REGNO_PTR_FRAME_P): Use LAST_VIRTUAL_POINTER_REGISTER
instead of LAST_VIRTUAL_REGISTER.
* function.c (instantiate_new_reg): Handle
virtual_preferred_stack_boundary_rtx.
* emit-rtl.c (init_virtual_regs): Handle
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
(init_emit_regs): Initialize virtual_preferred_stack_boundary_rtx.
* explow.c (round_push): If crtl->preferred_stack_boundary
is smaller than MAX_SUPPORTED_STACK_ALIGNMENT, use
virtual_preferred_stack_boundary_rtx alignment instead of
crtl->preferred_stack_boundary alignment.
(allocate_dynamic_stack_space): Use CONST_INT_P and REG_P
macros. Never decrease crtl->preferred_stack_boundary,
use crtl->preferred_stack_boundary or MAX_SUPPORTED_STACK_ALIGNMENT
instead of PREFERRED_STACK_BOUNDARY. Don't modify
stack_pointer_delta in dynamic allocation, even when size
is constant.
(probe_stack_range, anti_adjust_stack_and_probe): Use CONST_INT_P
macro.
* print-rtl.c (print_rtx): Handle
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
* config/alpha/alpha.h (NONSTRICT_REG_OK_FP_BASE_P): Use
LAST_VIRTUAL_POINTER_REGISTER instead of LAST_VIRTUAL_REGISTER.
* config/frv/frv.c (frv_emit_movsi): Likewise.
* config/arm/arm.c (thumb1_legitimate_address_p): Likewise.
* config/rs6000/rs6000.c (virtual_stack_registers_memory_p):
Likewise.
* gcc.dg/torture/stackalign/alloca-6.c: New test.
* gcc.target/i386/pr45234.c: New test.
Revert:
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* calls.c (expand_call): Make sure that all variable sized
adjustments are multiple of preferred stack boundary after
stack alignment.
From-SVN: r164593
Iain Sandoe [Fri, 24 Sep 2010 14:06:35 +0000 (14:06 +0000)]
re PR bootstrap/45751 (Bootstrap failure: at stage 1 xgcc segfault)
PR bootstrap/45751
* gcc/config/darwin-driver.c (darwin_default_min_version):
Adjust size passed to memcpy in two places.
Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r164592
Richard Guenther [Fri, 24 Sep 2010 13:21:30 +0000 (13:21 +0000)]
c-decl.c (pop_scope): Always set file-scope DECL_CONTEXT.
2010-09-24 Richard Guenther <rguenther@suse.de>
* c-decl.c (pop_scope): Always set file-scope DECL_CONTEXT.
Make sure to not call set_type_context with error_mark_node.
* langhooks.c (lhd_set_decl_assembler_name): Use DECL_FILE_SCOPE_P.
* gcc.dg/lto/
20091006-2_0.c: Prune warnings.
From-SVN: r164591
Richard Guenther [Fri, 24 Sep 2010 11:59:12 +0000 (11:59 +0000)]
Makefile.in (OBJS-onestep): Remove.
2010-09-24 Richard Guenther <rguenther@suse.de>
* Makefile.in (OBJS-onestep): Remove.
(ALL_HOST_BACKEND_OBJS): Remove libbackend.o.
(libbackend.a): Remove onestep support.
(libbackend.o): Remove.
* configure.ac (--enable-intermodule): Remove.
* configure: Regenerate.
From-SVN: r164590
Bernd Schmidt [Fri, 24 Sep 2010 11:29:59 +0000 (11:29 +0000)]
cfgcleanup.c (flow_find_head_matching_sequence): Terminate when reaching the end of a block if it occurs at a DEBUG_INSN.
* cfgcleanup.c (flow_find_head_matching_sequence): Terminate when
reaching the end of a block if it occurs at a DEBUG_INSN.
From-SVN: r164589
Marcus Shawcroft [Fri, 24 Sep 2010 10:34:01 +0000 (10:34 +0000)]
nested-2.C: Permit the ARM @ character as a comment leader in regexp.
2010-09-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
* g++.dg/debug/dwarf2/nested-2.C: Permit the ARM @ character
as a comment leader in regexp.
From-SVN: r164588
Tristan Gingold [Fri, 24 Sep 2010 08:46:36 +0000 (08:46 +0000)]
re PR target/44242 (vms-crt0*.c should compile with gcc)
2010-09-09 Tristan Gingold <gingold@adacore.com>
PR target/44242
* config/vms/vms-crt0-64.c: Removed.
* config/vms/vms-crt0.c: Removed.
* config/vms/vms-psxcrt0-64.c: Removed.
* config/vms/vms-psxcrt0.c: Removed.
* config/vms/vms-ucrt0.c: New file.
* config/vms/t-vms64: Removed.
* config/vms/t-vms (VMS_EXTRA_PARTS): Uncomment it. Remove DECC.
Use $(GCC_FOR_TARGET) to build pcrt0.o and vcrt0.o
* config.gcc (alpha-dec-vms): Use t-vms.
From-SVN: r164587
Nicola Pero [Fri, 24 Sep 2010 08:19:17 +0000 (08:19 +0000)]
In gcc/:
* doc/invoke.texi (-fno-nil-receivers): Tidied up line to remove
underfull hbox in DVI output.
(-fobjc-class-cxx-cdtors): Same change.
(-fobjc-exceptions): Tidied up documentation. Explain what the
option does, but moved the (lenghty) description of the exception
syntax into objc.texi.
(-fobjc-gc): Explain that the option is not useful with the GNU
runtime.
(-fzero-link): Explain that the GNU runtime always works in
"zero-link" mode.
* doc/objc.texi: All sections: simplified @node declarations
removing specification of next, previous, up node.
(Objective-C): Updated introduction.
(Garbage Collection): Updated. The bohem-gc library is now
included in gcc itself. Mention that this section only applies to
the GNU Objective-C runtime.
(compatibility_alias): Small tidy up.
(Exceptions): New section mostly containing text previously in the
description of the -fobjc-exception command-line option.
(Synchronization): Same.
From-SVN: r164586
Nicola Pero [Fri, 24 Sep 2010 07:51:29 +0000 (07:51 +0000)]
sync-2.m: New test.
* objc.dg/sync-2.m: New test.
* obj-c++.dg/sync-2.mm: New test.
From-SVN: r164585
Tobias Burnus [Fri, 24 Sep 2010 06:39:20 +0000 (08:39 +0200)]
gfortran.texi: Add second space after end-of-sentence period...
2010-09-24 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Add second space after end-of-sentence period;
change / to /@/ to allow hyphenation of URLs.
(Standards): Remove duplicated OpenMP, update wording given that
Fortran 2008 now released.
(Fortran 2008 status): Update and add list of implemented features.
From-SVN: r164584
Uros Bizjak [Fri, 24 Sep 2010 06:10:35 +0000 (08:10 +0200)]
i386.md (ix86_code_end): Move the initialization of xops array near the consumer.
* config/i386/i386.md (ix86_code_end): Move the initialization of
xops array near the consumer. Use AX_REG and SP_REG instead of
numerical constants.
From-SVN: r164583
Tobias Burnus [Fri, 24 Sep 2010 05:42:03 +0000 (07:42 +0200)]
re PR fortran/40571 (F2008: ISO_FORTRAN_ENV: Missing constants)
2010-09-24 Tobias Burnus <burnus@net-b.de>
PR fortran/40571
* iso-fortran-env.def: Add NAMED_KINDARRAY with
character_kinds, integer_kinds, logical_kinds and
real_kinds.
* gfortran.h: Add them to iso_fortran_env_symbol.
* libgfortran.h: Rename GFC_INQUIRE_INTERNAL_UNIT to
LIBERROR_INQUIRE_INTERNAL_UNIT and move it from
libgfortran_stat_codes to libgfortran_error_codes.
* module.c (create_int_parameter_array): New function.
(use_iso_fortran_env_module): Use it for
NAMED_KINDARRAY of iso-fortran-env.def.
* trans-decl.c (gfc_get_symbol_decl): Parameter
arrays of intrinsics modules become local static variables.
* intrinsic.texi (ISO_FORTRAN_ENV): Add character_kinds,
integer_kinds, logical_kinds and real_kinds.
2010-09-24 Tobias Burnus <burnus@net-b.de>
PR fortran/40571
* gfortran.dg/iso_fortran_env_7.f90: New.
From-SVN: r164581
GCC Administrator [Fri, 24 Sep 2010 00:19:44 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r164578
Nicola Pero [Thu, 23 Sep 2010 22:21:39 +0000 (22:21 +0000)]
In gcc/:
* c-typeck.c (convert_arguments): Use warning 'too many arguments
to method [methodname]' for an Objective-C method instead of the
less satisfactory 'too many arguments to function' (with no method
name).
In gcc/cp/:
* typeck.c (warn_args_num): Use warning 'too many arguments to
method [methodname]' for an Objective-C method instead of the less
satisfactory 'too many arguments to function' (with no method
name).
In gcc/testsuite/:
* obj-c++.dg/too-many-args.mm: New file.
Merge from 'apple/trunk' branch on FSF servers.
2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
Radar
4491608
* objc.dg/too-many-args.m: New
From-SVN: r164573
Eric Botcazou [Thu, 23 Sep 2010 22:19:52 +0000 (22:19 +0000)]
Fix latest ChangeLog entry
From-SVN: r164572
Eric Botcazou [Thu, 23 Sep 2010 22:06:18 +0000 (22:06 +0000)]
tree-flow.h (execute_update_addresses_taken): Adjust.
* tree-flow.h (execute_update_addresses_taken): Adjust.
* tree-ssa.c (maybe_optimize_var): Tweak comment and dump messages.
(execute_update_addresses_taken): Remove parameter and OPTIMIZE test.
* passes.c (execute_function_todo): Adjust calls to above function.
From-SVN: r164571
Thomas Koenig [Thu, 23 Sep 2010 19:37:48 +0000 (19:37 +0000)]
re PR fortran/45744 (ICE with -O1 in gfc_conv_expr_op, at fortran/trans-expr.c:1366)
2010-09-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45744
* frontend-passes.c (optimize_binop_array_assignment):
Only re-use lhs as intermediate storage if kind and type
parameters match.
2010-09-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45744
* gfortran.dg/dependency_36.f90: New test.
From-SVN: r164570
Bernd Schmidt [Thu, 23 Sep 2010 17:44:00 +0000 (17:44 +0000)]
Remove accidentally added empty file.
From-SVN: r164569
Anatoly Sokolov [Thu, 23 Sep 2010 16:15:44 +0000 (20:15 +0400)]
arm.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
* config/arm/arm.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
* config/arm/arm-protos.h (arm_output_addr_const_extra): Remove.
* config/arm/arm.c (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
(arm_output_addr_const_extra): Make static.
From-SVN: r164568
Uros Bizjak [Thu, 23 Sep 2010 13:25:30 +0000 (15:25 +0200)]
i386.md (UNSPECV_NOPS): Rename from UNSPEC_NOPS and define as unspec_volatile.
* config/i386/i386.md (UNSPECV_NOPS): Rename from UNSPEC_NOPS and
define as unspec_volatile.
("nops"): Define as unspec_volatile. Use fputs to write to
asm_out_file directly. Output NOPs on separate lines using while loop.
* config/i386/i386.c (ix86_code_end): Use fputs to write to
asm_out_file directly. Output NOPs on separate lines using while loop.
testsuite/ChangeLog:
* gcc.target/i386/pad-1.c: Remove -S from dg-options.
* gcc.target/i386/pad-3.c: Ditto.
* gcc.target/i386/pad-7.c: Ditto.
* gcc.target/i386/pad-7.c: Ditto.
* gcc.target/i386/pr36502.c: Ditto.
* gcc.target/i386/zee.c: Ditto.
* gcc.target/i386/
20060821-1.c: Ditto.
* gcc.target/i386/pad-2.c: Ditto. Scan for NOPs on separate lines.
* gcc.target/i386/pad-5a.c: Ditto. Do not use scan-assembler-not.
* gcc.target/i386/pad-5b.c: Ditto.
* gcc.target/i386/pad-6a.c: Ditto.
* gcc.target/i386/pad-6b.c: Ditto.
* gcc.target/i386/pad-8.c: Ditto.
* gcc.target/i386/pad-9.c: Ditto.
* gcc.target/i386/pad-10.c: Ditto.
* gcc.target/i386/pad-4.c: Ditto. Require pic effective target.
From-SVN: r164564
Richard Guenther [Thu, 23 Sep 2010 12:39:26 +0000 (12:39 +0000)]
re PR middle-end/45565 (ICE: in execute_todo, at passes.c:1276 with -fno-toplevel-reorder -fno-inline -fipa-cp-clone -fkeep-inline-functions)
2010-09-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45565
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee):
Make sure to adjust the fndecl before replacing the stmt.
* g++.dg/ipa/pr45565.C: New testcase.
From-SVN: r164561
Mikael Morin [Thu, 23 Sep 2010 11:11:23 +0000 (11:11 +0000)]
re PR fortran/45745 (ICE in gfc_conv_array_stride)
2010-09-23 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45745
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Handle
ss->type == GFC_SS_INTRINSIC (for {l,u}bound intrinsics) case.
2010-09-23 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45745
PR fortran/45648
* gfortran.dg/vector_subscript_bound_1.f90: New.
From-SVN: r164558
Richard Guenther [Thu, 23 Sep 2010 11:00:27 +0000 (11:00 +0000)]
re PR tree-optimization/45750 (ICE: in iterative_hash_expr, at tree.c:6831 on invalid code)
2010-09-23 Richard Guenther <rguenther@suse.de>
PR middle-end/45750
* gimplify.c (gimplify_expr): Properly pass on GS_ERROR when
gimplifying MEM_REF.
* gcc.dg/pr45750.c: New testcase.
From-SVN: r164555
Jakub Jelinek [Thu, 23 Sep 2010 10:57:37 +0000 (12:57 +0200)]
alloca-4.c: Remove -m32 from dg-options.
* gcc.dg/torture/stackalign/alloca-4.c: Remove -m32 from dg-options.
* gcc.dg/torture/stackalign/alloca-5.c: Likewise. Fix up -DDEBUG
build.
From-SVN: r164554
Alan Modra [Thu, 23 Sep 2010 10:50:48 +0000 (20:20 +0930)]
rs6000.c (toc_relative_ok): Delete.
* config/rs6000/rs6000.c (toc_relative_ok): Delete.
(rs6000_emit_move): Use SYMBOL_REF_LOCAL_P instead.
From-SVN: r164553
Bernd Schmidt [Thu, 23 Sep 2010 10:04:33 +0000 (10:04 +0000)]
re PR rtl-optimization/44374 (Hoist same instructions in different branches)
PR rtl-optimization/44374
* basic-block.h (enum bb_flags): Add BB_MODIFIED.
* df-core.c (df_set_bb_dirty): Set it.
* ifcvt.c (find_memory): Remove function.
(dead_or_predicable): Use can_move_insns_across.
* df.h (can_move_insns_across): Declare function.
* cfgcleanup.c (block_was_dirty): New static variable.
(try_crossjump_bb, try_forward_edges): Test BB_MODIFIED flag rather
than df_get_bb_dirty.
(try_head_merge_bb): New static function.
(try_optimize_cfg): Call it. Call df_analyze if block_was_dirty
is set.
* df-problems.c: Include "target.h"
(df_simulate_find_uses): New static function.
(MEMREF_NORMAL, MEMREF_VOLATILE): New macros.
(find_memory, find_memory_store): New static functions.
(can_move_insns_across): New function.
* Makefile.in (df-problems.o): Update dependencies.
testsuite/
PR rtl-optimization/44374
* gcc.target/arm/headmerge-1.c: New test.
* gcc.target/arm/headmerge-2.c: New test.
* gcc.target/i386/headmerge-1.c: New test.
* gcc.target/i386/headmerge-2.c: New test.
From-SVN: r164552
Tobias Burnus [Thu, 23 Sep 2010 09:01:32 +0000 (11:01 +0200)]
intrinsic.texi (OpenMP modules): Add named constants of OMP_LIB.
gcc/fortran/
2010-09-23 Tobias Burnus <burnus@net-b.de>
* intrinsic.texi (OpenMP modules): Add named constants of
OMP_LIB.
libgomp/
2010-09-23 Tobias Burnus <burnus@net-b.de>
* libgomp.texi (omp_get_nested, omp_set_nested,
* omp_set_dynamic):
Change Fortran datatype to LOGICAL.
(omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
omp_unset_nested_lock): Use intent(inout) instead of intent(out).
From-SVN: r164551
Daniel Kraft [Thu, 23 Sep 2010 08:37:54 +0000 (10:37 +0200)]
re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-09-23 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44044
PR fortran/45474
* gfortran.h (gfc_check_vardef_context): New method.
(struct symbol_attribute): New flag `select_type_temporary'.
* primary.c (gfc_variable_attr): Clarify initialization of ref.
(match_variable): Remove PROTECTED check and assignment check
for PARAMETERs (this is now done later).
* match.c (gfc_match_iterator): Remove INTENT(IN) check.
(gfc_match_associate): Defer initialization of newAssoc->variable.
(gfc_match_nullify): Remove PURE definability check.
(select_type_set_tmp): Set new `select_type_temporary' flag.
* expr.c (gfc_check_assign): Remove INTENT(IN) check here.
(gfc_check_pointer_assign): Ditto (and other checks removed).
(gfc_check_vardef_context): New method.
* interface.c (compare_parameter_protected): Removed.
(compare_actual_formal): Use `gfc_check_vardef_context' for checks
related to INTENT([IN]OUT) arguments.
* intrinsic.c (check_arglist): Check INTENT for intrinsics.
* resolve.c (gfc_resolve_iterator): Use `gfc_check_vardef_context'.
(remove_last_array_ref): New method.
(resolve_deallocate_expr), (resolve_allocate_expr): Ditto.
(resolve_allocate_deallocate): Ditto (for STAT and ERRMSG).
(resolve_assoc_var): Remove checks for definability here.
(resolve_select_type): Handle resolving of code->block here.
(resolve_ordinary_assign): Remove PURE check.
(resolve_code): Do not resolve code->blocks for SELECT TYPE here.
Use `gfc_check_vardef_context' for assignments and pointer-assignments.
2010-09-23 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44044
PR fortran/45474
* gfortran.dg/intrinsic_intent_1.f03: New test.
* gfortran.dg/select_type_17.f03: New test.
* gfortran.dg/associate_5.f03: More definability tests.
* gfortran.dg/enum_2.f90: Check definability.
* gfortran.dg/allocatable_dummy_2.f90: Change expected error message.
* gfortran.dg/allocate_alloc_opt_2.f90: Ditto.
* gfortran.dg/char_expr_2.f90: Ditto.
* gfortran.dg/deallocate_alloc_opt_2.f90: Ditto.
* gfortran.dg/enum_5.f90: Ditto.
* gfortran.dg/equiv_constraint_8.f90: Ditto.
* gfortran.dg/impure_assignment_2.f90: Ditto.
* gfortran.dg/impure_assignment_3.f90: Ditto.
* gfortran.dg/intent_out_1.f90: Ditto.
* gfortran.dg/intent_out_3.f90: Ditto.
* gfortran.dg/pointer_assign_7.f90: Ditto.
* gfortran.dg/pointer_intent_3.f90: Ditto.
* gfortran.dg/pr19936_1.f90: Ditto.
* gfortran.dg/proc_ptr_comp_3.f90: Ditto.
* gfortran.dg/simpleif_2.f90: Ditto.
* gfortran.dg/protected_5.f90: Ditto.
* gfortran.dg/protected_4.f90: Ditto and remove invalid error check.
* gfortran.dg/protected_6.f90: Ditto.
* gfortran.dg/protected_7.f90: Ditto.
From-SVN: r164550
Jerry DeLisle [Thu, 23 Sep 2010 01:28:39 +0000 (01:28 +0000)]
re PR fortran/45710 (Adjust format and padding for WRITE of NAMELIST group to internal file)
2010-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45710
* gfortran.dg/namelist_65.f90: New test.
From-SVN: r164548
Jerry DeLisle [Thu, 23 Sep 2010 00:53:15 +0000 (00:53 +0000)]
re PR fortran/45710 (Adjust format and padding for WRITE of NAMELIST group to internal file)
2010-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45710
* io/write.c (namelist_write_newline): Pad character array internal
unit records with spaces.
From-SVN: r164543
GCC Administrator [Thu, 23 Sep 2010 00:18:26 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r164542
Eric Botcazou [Wed, 22 Sep 2010 21:14:50 +0000 (21:14 +0000)]
re PR java/44095 (massive java failures due to -findirect-dispatch breakage on sparc64-linux)
PR java/44095
* config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch
is specified and the suffix of the file isn't ".c".
* config/sparc/linux64.h (ASM_SPEC): Likewise.
From-SVN: r164534
Ralf Wildenhues [Wed, 22 Sep 2010 20:22:51 +0000 (20:22 +0000)]
Improve formatting of manuals.
contrib/:
* texi2pod.pl: Replace @@ before @{ and @}, for @samp{@@}.
Also escape characters with grave accents, to be fixed ...
(unmunge): ... here.
(postprocess): Also handle @/ and @acronym{...}.
gcc/:
* doc/contrib.texi (Contributors): Allow URL to wrap in PDF
output.
* doc/cppopts.texi: Fix markup of index entry.
* doc/extend.texi (Constructing Calls): Fix markup of
__builtin_va_arg_pack and __builtin_va_arg_pack_len definition.
(Conditionals, C++ Comments, Pragmas, Unnamed Fields, Thread-Local)
(Vague Linkage, C++ Attributes): Fix markup of index entries and
keywords.
* doc/invoke.texi (Option Summary): Fix spacing. Rewrap to
avoid long lines.
(C Dialect Options, C++ Dialect Options, Warning Options)
(Debugging Options, Spec Files, Darwin Options)
(i386 and x86-64 Options, MIPS Options)
(RS/6000 and PowerPC Options, Code Gen Options): Fix markup of
index entries, avoid abbreviations, allow URLs to wrap, avoid
long lines, avoid overlong pages from long @itemx lists.
* doc/objc.texi (Garbage Collection): Allow URLs to wrap.
* doc/standards.texi (Standards): Likewise.
* doc/trouble.texi (Incompatibilities): Fix markup of index
entry.
gcc/fortran/:
* gfortran.texi (Argument list functions): Allow URL to wrap.
* intrinsic.texi (GETGID, GETPID, GETUID, IMAGE_INDEX)
(IS_IOSTAT_END, IS_IOSTAT_EOR, NUM_IMAGES, THIS_IMAGE)
(ISO_FORTRAN_ENV): Fix markup in index entries, and a couple of
code markups in the text.
* invoke.texi (Fortran Dialect Options)
(Error and Warning Options, Directory Options, Code Gen Options):
Likewise. Remove @code inside @smallexample.
From-SVN: r164533
Joseph Myers [Wed, 22 Sep 2010 20:19:39 +0000 (21:19 +0100)]
opts-common.c (prune_options): Make static.
* opts-common.c (prune_options): Make static. Work with decoded
options.
(decode_cmdline_options_to_array): Call prune_options. Don't
resize option array here.
* opts.h (prune_options): Remove prototype.
* gcc.c (process_command): Take decoded options; don't call
decode_cmdline_options_to_array here. Use decoded options for
argv[0].
(main): Call decode_cmdline_options_to_array here instead of
prune_options. Update call to process_command.
* config/darwin-driver.c: Include opts.h.
(darwin_default_min_version): Work with decoded options. Don't
handle -b or -V here.
* config/darwin.h (darwin_default_min_version): Update prototype.
(GCC_DRIVER_HOST_INITIALIZATION): Update call to
darwin_default_min_version.
* config/i386/cygwin.h (mingw_scan): Update prototype.
(GCC_DRIVER_HOST_INITIALIZATION): Update call to mingw_scan.
* config/i386/cygwin1.c: Include opts.h.
(mingw_scan): Work with decoded options.
* config/i386/t-cygwin (cygwin1.o): Update dependencies.
* config/t-darwin (darwin-driver.o): Update dependencies.
From-SVN: r164532
Joseph Myers [Wed, 22 Sep 2010 20:12:06 +0000 (21:12 +0100)]
common.opt (-assemble, [...]): New.
* common.opt (-assemble, -compile, -coverage, -debug, -dump,
-dump=, -dumpbase, -dumpdir, -entry, -entry=, -extra-warnings,
-for-assembler, -for-assembler=, -for-linker, -for-linker=,
-force-link, -force-link=, -language, -language=,
-library-directory, -library-directory=, -no-canonical-prefixes,
-no-standard-libraries, -no-warnings, -optimize, -output,
-output=, -pass-exit-codes, -pedantic, -pedantic-errors, -pie,
-pipe, -prefix, -prefix=, -preprocess, -print-file-name,
-print-file-name=, -print-libgcc-file-name,
-print-multi-directory, -print-multi-lib,
-print-multi-os-directory, -print-prog-name, -print-prog-name=,
-print-search-dirs, -print-sysroot, -print-sysroot-headers-suffix,
-profile, -save-temps, -shared, -specs, -specs=, -static,
-symbolic, -time, -verbose, -param=, -sysroot, coverage, e, u,
symbolic): New.
(fhelp, fhelp=, ftarget-help, fversion): Make into aliases.
* gcc.c (A Short Introduction to Adding a Command-Line Option):
Remove comment.
(cc1_options): Correct specs for passing down --help,
--target-help and --help=*. Add spec for passing down --version.
(struct option_map, option_map, target_option_translations,
translate_options): Remove.
(driver_handle_option): Handle OPT__version, OPT__help, OPT__help_
and OPT__target_help instead of OPT_fversion, OPT_fhelp,
OPT_fhelp_ and OPT_ftarget_help.
(process_command): Don't call translate_options. Call
decode_cmdline_options_to_array before checking for
-no-canonical-prefixes using decoded options.
* opts-common.c (tm.h): Update comment on #include.
(find_opt): Allow abbreviations of long options.
(struct option_map, option_map): New.
(decode_cmdline_option): Use them instead of hardcoding -Wno, -fno
and -mno handling.
(target_option_translations): New.
(decode_cmdline_options_to_array): Handle
TARGET_OPTION_TRANSLATE_TABLE in driver.
* opts.c (common_handle_option): Don't handle OPT_fhelp,
OPT_ftarget_help, OPT_fhelp_ or OPT_fversion.
ada:
* gcc-interface/lang.opt (-all-warnings, -include-barrier,
-include-directory, -include-directory=, -no-standard-includes,
-no-standard-libraries): New.
c-family:
* c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
-comments-in-macros, -define-macro, -define-macro=, -dependencies,
-dump, -dump=, -imacros, -imacros=, -include, -include=,
-include-barrier, -include-directory, -include-directory=,
-include-directory-after, -include-directory-after=,
-include-prefix, -include-prefix=, -include-with-prefix,
-include-with-prefix=, -include-with-prefix-after,
-include-with-prefix-after=, -include-with-prefix-before,
-include-with-prefix-before=, -no-integrated-cpp,
-no-line-commands, -no-standard-includes, -no-warnings, -output,
-output=, -pedantic, -pedantic-errors, -preprocess,
-print-missing-file-dependencies, -trace-includes, -traditional,
-traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
-user-dependencies, -verbose, -write-dependencies,
-write-user-dependencies, no-integrated-cpp, traditional): New.
fortran:
* gfortranspec.c (lang_specific_driver): Handle OPT__version and
OPT__help instead of OPT_fversion and OPT_fhelp.
* lang.opt (-all-warnings, -assert, -assert=, -comments,
-comments-in-macros, -define-macro, -define-macro=, -dependencies,
-dump, -dump=, -include-barrier, -include-directory,
-include-directory=, -include-directory-after,
-include-directory-after=, -include-prefix, -include-prefix=,
-no-line-commands, -no-standard-includes, -output, -output=,
-preprocess, -print-missing-file-dependencies, -trace-includes,
-undefine-macro, -undefine-macro=, -user-dependencies, -verbose,
-write-dependencies, -write-user-dependencies): New.
java:
* jvspec.c (lang_specific_driver): Handle OPT__help instead of
OPT_fhelp.
* lang.opt (-CLASSPATH, -all-warnings, -bootclasspath, -classpath,
-dependencies, -encoding, -extdirs, -include-directory,
-include-directory=, -output-class-directory,
-output-class-directory=, -resource, -resource=,
-user-dependencies): New.
From-SVN: r164531
Paolo Carlini [Wed, 22 Sep 2010 19:46:06 +0000 (19:46 +0000)]
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* Fix typo in last ChangeLog entry.
From-SVN: r164530
David Krauss [Wed, 22 Sep 2010 19:40:43 +0000 (19:40 +0000)]
re PR libstdc++/45628 (std::fstream::tellg invalidates I/O buffer)
2010-09-22 David Krauss <potswa@mac.com>
PR libstdc++/45628
* include/bits/fstream.tcc (basic_filebuf::underflow): Add state
transition to avoid modality requiring seekoff(0,ios::cur).
(basic_filebuf::pbackfail): Likewise.
(basic_filebuf::overflow): Likewise.
(basic_filebuf::_M_seek): Avoid minor unnecessary conversion.
(basic_filebuf::seekoff): Remove code to _M_get_ext_pos; make
(0, ios::cur) a special case preserving buffer contents.
(basic_filebuf::_M_get_ext_pos): New function to obtain status
about codecvt extern_t buffer for overflow and seekoff.
* include/std/fstream (basic_filebuf::_M_get_ext_pos): Likewise.
* config/abi/pre/gnu.ver: Export new symbols.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: New,
verifies that seekoff(0, ios::cur) preserves buffers.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-2.cc: Likewise.
for codecvt case. More lenient as it may still flush put area.
* testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Modify to
check that seekoff is not required between read and write.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Remove.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Likewise.
* testsuite/util/testsuite_character.h (codecvt::do_length): Comply
with 22.2.1.5.2/10 "Returns ... the LARGEST value in the range..."
From-SVN: r164529
Paolo Carlini [Wed, 22 Sep 2010 17:50:36 +0000 (17:50 +0000)]
functional_hash.h (__hash_base): Add.
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (__hash_base): Add.
(hash): Derive from __hash_base instead.
* include/debug/bitset (hash): Likewise.
* include/debug/vector (hash): Likewise.
* include/std/system_error (hash): Likewise.
* include/std/thread (hash): Likewise.
* include/std/bitset (hash): Likewise.
* include/profile/bitset (hash): Likewise.
* include/profile/vector (hash): Likewise.
* include/bits/basic_string.h (hash): Likewise.
* include/bits/stl_bvector.h (hash): Likewise.
* include/std/typeindex (hash): Do not derive from unary_function,
add result_type and argument_type typedefs; trim includes.
From-SVN: r164528
Marcus Shawcroft [Wed, 22 Sep 2010 16:31:19 +0000 (16:31 +0000)]
scanasm.exp (dg-function-on-line): Permit .fnstart to appear in the regexp pattern between the expected label and...
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* lib/scanasm.exp(dg-function-on-line): Permit .fnstart to appear in
the regexp pattern between the expected label and location string.
From-SVN: r164527
Richard Guenther [Wed, 22 Sep 2010 14:44:13 +0000 (14:44 +0000)]
tree-inline.c (optimize_inline_calls): Schedule cleanups only if we inlined something.
2010-09-22 Richard Guenther <rguenther@suse.de>
* tree-inline.c (optimize_inline_calls): Schedule cleanups
only if we inlined something. Block compaction and conditional
folding are done by cfg cleanup. Schedule update-address-taken.
(tree_function_versioning): Remove redundant call to number_blocks.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Conditional
folding is done by cfg cleanup.
* passes.c (init_optimization_passes): Remove update-address-taken
pass after IPA inlining.
From-SVN: r164525
Chung-Lin Tang [Wed, 22 Sep 2010 14:38:08 +0000 (14:38 +0000)]
postreload.c (move2add_note_store): Add reg_symbol_ref[] checks to update conditions.
* postreload.c (move2add_note_store): Add reg_symbol_ref[] checks
to update conditions. Fix reg_mode[] check.
From-SVN: r164524
Hariharan Sandanagobalane [Wed, 22 Sep 2010 14:07:11 +0000 (14:07 +0000)]
picochip.md (movhicc): Use expand to check whether movhicc is available and split it after reload.
* config/picochip/picochip.md (movhicc): Use expand to check whether
movhicc is available and split it after reload.
From-SVN: r164523
Richard Guenther [Wed, 22 Sep 2010 12:15:56 +0000 (12:15 +0000)]
tree-ssanames.c (release_dead_ssa_names): Do not remove callee edges here.
2010-09-22 Richard Guenther <rguenther@suse.de>
* tree-ssanames.c (release_dead_ssa_names): Do not remove
callee edges here.
* passes.c (init_optimization_passes): Remove early CFG cleanup.
* tree-optimize.c (execute_cleanup_cfg_pre_ipa): Remove.
(pass_cleanup_cfg): Likewise.
(execute_fixup_cfg): Cleanup.
* tree-pass.h (pass_cleanup_cfg): Remove.
From-SVN: r164522
Paolo Carlini [Wed, 22 Sep 2010 12:04:08 +0000 (12:04 +0000)]
typeindex: New.
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/typeindex: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/precompiled/stdc++.h: Add.
* testsuite/20_util/typeindex/comparison_operators.cc: New.
* testsuite/20_util/typeindex/hash.cc: Likewise.
* testsuite/20_util/typeindex/hash_code.cc: Likewise.
* testsuite/20_util/typeindex/name.cc: Likewise.
* testsuite/18_support/type_info/hash_code.cc: Tweak.
From-SVN: r164521
Marcus Shawcroft [Wed, 22 Sep 2010 10:20:39 +0000 (10:20 +0000)]
pr28706.c: Typo fix to dg-require-effective-target lto.
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* gcc.dg/pr28706.c: Typo fix to dg-require-effective-target lto.
From-SVN: r164520
Marcus Shawcroft [Wed, 22 Sep 2010 10:10:23 +0000 (10:10 +0000)]
pr41893-1.c: Typo fix to dg-require-effective-target lto.
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* gcc.dg/debug/pr41893-1.c: Typo fix to dg-require-effective-target lto.
* gcc.dg/pr27898.c: Likewise.
* gcc.dg/pr28712.c: Likewise.
* gcc.dg/pr30762-1.c: Likewise.
* gcc.dg/pr31529-1.c: Likewise.
* gcc.dg/pr34457-1.c: Likewise.
* gcc.dg/pr34668-1.c: Likewise.
* gcc.dg/pr34989-1.c: Likewise.
* gcc.dg/pr43557-1.c: Likewise.
From-SVN: r164519
Tristan Gingold [Wed, 22 Sep 2010 09:26:03 +0000 (09:26 +0000)]
cplus-dem.c (ada_demangle): Add comments.
2010-09-22 Tristan Gingold <gingold@adacore.com>
* cplus-dem.c (ada_demangle): Add comments.
Handle stream and controlled type operations.
Decoding of some uppercase letters moved before separators.
* testsuite/demangle-expected: Add tests.
From-SVN: r164518
Martin Jambor [Wed, 22 Sep 2010 09:02:48 +0000 (11:02 +0200)]
gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold builtins if it is true.
2010-09-22 Martin Jambor <mjambor@suse.cz>
* gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold
builtins if it is true.
(fold_stmt_1): Call, fold_gimple_call always, pass inplace as a
parameter.
From-SVN: r164517
Jakub Jelinek [Wed, 22 Sep 2010 08:57:38 +0000 (10:57 +0200)]
re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
* gcc.target/i386/pr45739.c: Tighten up scan-assembler-not
regexps.
From-SVN: r164516
Martin Jambor [Wed, 22 Sep 2010 08:48:17 +0000 (10:48 +0200)]
tree-sra.c (struct access): New field grp_no_warning.
2010-09-22 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): New field grp_no_warning.
(create_access_replacement): Set TREE_NO_WARNING according to
grp_no_warning.
(create_artificial_child_access): Use build_ref_for_model and set
grp_no_warning if build_user_friendly_ref_for_offset fails.
(propagate_subaccesses_across_link): Likewise.
From-SVN: r164515
Eric Botcazou [Wed, 22 Sep 2010 08:31:14 +0000 (08:31 +0000)]
re PR target/35664 (unable to find a register to spill in class 'FP_REGS')
PR target/35664
* config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
('f'): Likewise.
From-SVN: r164512
Tristan Gingold [Wed, 22 Sep 2010 08:21:14 +0000 (08:21 +0000)]
alpha.c (alpha_use_linkage): Initialize target field.
2010-09-22 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_use_linkage): Initialize target field.
From-SVN: r164511
Paolo Carlini [Wed, 22 Sep 2010 08:19:08 +0000 (08:19 +0000)]
hash_bytes.cc: Move...
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash_bytes.cc: Move...
* libsupc++/hash_bytes.cc: ... here.
* src/Makefile.am: Adjust.
* libsupc++/Makefile.am: Likewise.
* config/abi/pre/gnu.ver: Likewise.
* libsupc++/typeinfo (type_info::hash_code): Add in C++0x mode.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Likewise.
* testsuite/18_support/type_info/hash_code.cc: New.
From-SVN: r164510
Uros Bizjak [Wed, 22 Sep 2010 07:41:13 +0000 (09:41 +0200)]
i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
* config/i386/i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
* config/i386/i386.c (decide_alg): Update for rename.
From-SVN: r164509
Nicola Pero [Wed, 22 Sep 2010 07:20:32 +0000 (07:20 +0000)]
Fixed ChangeLog entry for a previous commit of mine
From-SVN: r164508
Jerry DeLisle [Wed, 22 Sep 2010 03:10:24 +0000 (03:10 +0000)]
re PR libfortran/45723 (opening /dev/null for appending writes)
2010-09-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45723
* io/open.c (new_unit): On POSITION_APPEND don't seek if file length is
zero.
From-SVN: r164507
GCC Administrator [Wed, 22 Sep 2010 00:17:33 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r164506
Jason Merrill [Tue, 21 Sep 2010 23:40:30 +0000 (19:40 -0400)]
mangle.c (write_expression): Only do -fabi-version=1 special handling if we know the member.
* mangle.c (write_expression) [SCOPE_REF]: Only do -fabi-version=1
special handling if we know the member.
From-SVN: r164502
Jakub Jelinek [Tue, 21 Sep 2010 23:33:01 +0000 (01:33 +0200)]
re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
* simplify-rtx.c (simplify_binary_operation_1): Optimize even
vector mode | CONST0_RTX (mode) and ^ CONST0_RTX (mode).
* gcc.target/i386/pr45739.c: New test.
From-SVN: r164501
Nicola Pero [Tue, 21 Sep 2010 22:27:43 +0000 (22:27 +0000)]
Fixed ChangeLog entries for my last commit
From-SVN: r164499
Nicola Pero [Tue, 21 Sep 2010 20:47:04 +0000 (20:47 +0000)]
re PR objc/23710 (objc front-end should not "abort" after erroring out about method definition not in class context)
PR objc/23710
In gcc/:
* c-family/c-common.h (objc_start_method_definition): Return bool
instead of void.
* c-family/stub-objc.c (objc_start_method_definition): Return bool
instead of void.
* c-parser.c (c_parser_objc_method_definition): Check the return
value of objc_start_method_definition and if false is returned,
parse the method definition but emit no code.
In gcc/objc/:
* objc-act.c (objc_start_method_definition): Do not abort upon a
'method definition not in @implementation context' error. Return
'false' instead.
In gcc/testsuite/:
* objc.dg/invalid-method-1.m: New.
From-SVN: r164497
Jason Blevins [Tue, 21 Sep 2010 19:12:44 +0000 (19:12 +0000)]
intrinsics.texi (HYPOT, [...]): Correct spelling.
2010-09-21 Jason Blevins <jrblevin@sdf.org>
* intrinsics.texi (HYPOT, IMAGE_INDEX, BESSEL_JN, BESSEL_YN,
execute_command_line, IEOR, IOR, NORM2, NOT, NULL, PARITY):
Correct spelling.
From-SVN: r164496
Mikael Morin [Tue, 21 Sep 2010 19:04:09 +0000 (19:04 +0000)]
re PR fortran/45648 (Unnecessary temporary for transpose calls as actual argument.)
2010-09-21 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Calculate dim out of n and
info->dim.
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Unset full if we are
accessing dimensions in reversed order.
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Special case noncopying
intrinsic function call.
* trans-array.c (gfc_conv_expr_descriptor): Remove ss lookup.
Update asserts accordingly.
PR fortran/45648
* trans.h (gfc_se): New field force_tmp.
* trans-expr.c (gfc_conv_procedure_call): Check for argument alias
and set parmse.force_tmp if some alias is found.
* trans-array.c (gfc_conv_expr_descriptor): Force a temporary creation
if se->force_tmp is set.
2010-09-21 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45648
* gfortran.dg/inline_transpose_1.f90: Update temporary's locations
and counts. Add non-elemental function call check.
PR fortran/45648
* gfortran.dg/inline_transpose_1.f90: Add function calls with aliasing
arguments checks. Update temporary counts.
* gfortran.dg/transpose_optimization_1.f90: New.
From-SVN: r164494
Anatoly Sokolov [Tue, 21 Sep 2010 19:03:25 +0000 (23:03 +0400)]
rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
* config/rs6000/rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
* config/rs6000/rs6000-protos.h (rs6000_output_addr_const_extra):
Remove.
* config/rs6000/rs6000.c (rs6000_output_addr_const_extra): Make
static.
(TTARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
From-SVN: r164493
Kai Tietz [Tue, 21 Sep 2010 19:03:11 +0000 (21:03 +0200)]
Remove strayed semicolon.
From-SVN: r164492
Nicola Pero [Tue, 21 Sep 2010 18:51:34 +0000 (18:51 +0000)]
re PR objc/25965 (Allows duplicate member names in objc subclasses)
PR objc/25965
In gcc/objc/:
* objc-act.c (objc_get_interface_ivars): New function.
(objc_collecting_ivars): New variable.
(continue_class): Set and reset objc_collecting_ivars for context.
In gcc/:
* c-decl.c (detect_field_duplicates): If compiling Objective-C,
call objc_get_interface_ivars ().
* c-family/c-common.h (objc_get_interface_ivars): New declaration.
* c-family/stub-objc.c (objc_get_interface_ivars): New stub.
In gcc/objcp/:
* objcp-decl.c (objcp_finish_struct): Call
objc_get_interface_ivars() and check for duplicate ivars.
In gcc/testsuite/:
Merge from 'apple/trunk' branch on FSF servers.
2005-10-11 Fariborz Jahanian <fjahanian@apple.com>
Radar
4291785
objc.dg/naming-4.m: New
objc.dg/naming-5.m: New
obj-c++.dg/naming-1.mm: New
obj-c++.dg/naming-2.mm: New
From-SVN: r164491
Kai Tietz [Tue, 21 Sep 2010 17:58:32 +0000 (17:58 +0000)]
re PR target/45694 ([MinGW64] fortran host associated variables+optimization==failure?)
2010-09-21 Kai Tietz <kai.tietz@onevision.com>
PR target/45694
* config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
static chain-register is used for 64-bit.
From-SVN: r164489
Richard Guenther [Tue, 21 Sep 2010 15:21:48 +0000 (15:21 +0000)]
dwarf2out.c (is_cu_die): New function.
2010-09-21 Richard Guenther <rguenther@suse.de>
* dwarf2out.c (is_cu_die): New function.
(add_pubtype): Use it.
(gen_subprogram_die): Likewise.
(gen_struct_or_union_type_die): Likewise.
(dwarf2out_finish): Likewise.
(comp_unit_die): Rename to ...
(single_comp_unit_die): ... this.
(comp_unit_die): New function lazily constructing and
returning single_comp_unit_die.
(is_cxx, is_fortran, is_ada, debug_dwarf, break_out_comdat_types,
base_type_die, subrange_type_die, modified_type_die,
lower_bound_default, add_bound_info, add_prototyped_attribute,
dwarf2out_vms_debug_main_pointer, scope_die_for, retry_incomplete_types,
dwarf2out_abstract_function, gen_type_die_with_usage, get_context_die,
force_decl_die, gen_namespace_die, dwarf2out_decl,
dwarf2out_start_source_file, dwarf2out_end_source_file,
prune_unused_types, dwarf2out_finish): Use it.
(gen_compile_unit_die): For GNU GIMPLE derive DW_AT_language from
the global list of translation-unit decls.
(dwarf2out_init): Do not create single_comp_unit_die here.
(force_decl_die): Handle TRANSLATION_UNIT_DECL.
From-SVN: r164484
Richard Guenther [Tue, 21 Sep 2010 15:19:02 +0000 (15:19 +0000)]
dwarf2out.c (dwarf2out_decl): Do not always generate a DIE for bool for C++.
2010-09-21 Richard Guenther <rguenther@suse.de>
* dwarf2out.c (dwarf2out_decl): Do not always generate a DIE
for bool for C++.
From-SVN: r164483
Iain Sandoe [Tue, 21 Sep 2010 14:43:59 +0000 (14:43 +0000)]
Makefile.in (libgcc-extra-parts): Check for static archives and invoke ranlib after installing them.
* Makefile.in (libgcc-extra-parts): Check for static archives and
invoke ranlib after installing them.
(gcc-extra-parts): Likewise.
(install-leaf): Likewise.
From-SVN: r164482
Iain Sandoe [Tue, 21 Sep 2010 14:32:36 +0000 (14:32 +0000)]
configure.ac (enable-lto): Add Darwin to the list of supported lto targets and amend comment.
* configure.ac (enable-lto): Add Darwin to the list of supported lto
targets and amend comment.
* configure: Regenerate.
From-SVN: r164481
Jonathan Wakely [Tue, 21 Sep 2010 14:12:58 +0000 (15:12 +0100)]
re PR c++/45645 (pr44972.C fails with error: ‘__assert_fail’ was not declared in this scope)
2010-09-21 Jonathan Wakely <redi@gcc.gnu.org>
Jack Howarth <howarth@bromo.med.uc.edu>
PR c++/45645
* g++.dg/torture/pr44972.C: Use portable assert().
Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>
From-SVN: r164479
Jack Howarth [Tue, 21 Sep 2010 14:01:43 +0000 (14:01 +0000)]
configure.ac: Set LIBMATHSPEC to -lm except on darwin.
2010-09-21 Jack Howarth <howarth@bromo.med.uc.edu>
* libjava/configure.ac: Set LIBMATHSPEC to -lm except on darwin.
* libjava/libgcj.spec.in: Use LIBMATHSPEC.
* libjava/configure: Regenerate.
From-SVN: r164478
Bernd Schmidt [Tue, 21 Sep 2010 13:11:03 +0000 (13:11 +0000)]
iterators.md (qhs_extenddi_op): New mode_attr.
* config/arm/iterators.md (qhs_extenddi_op): New mode_attr.
(qhs_extenddi_cstr): Likewise.
* config/arm/arm.md (zero_extend<mode>di2, extend<mode>di2): Use
them for the source operand.
From-SVN: r164477
Uros Bizjak [Tue, 21 Sep 2010 11:42:06 +0000 (13:42 +0200)]
i386.c (ix86_split_ashl): Rename single_width variable to half_width.
* config/i386/i386.c (ix86_split_ashl): Rename single_width variable
to half_width. Use GET_MODE_BITSIZE to calculate mode size.
(ix86_split_ashr): Ditto.
(ix86_split_lshr): Ditto.
From-SVN: r164476
Richard Guenther [Tue, 21 Sep 2010 09:52:00 +0000 (09:52 +0000)]
re PR tree-optimization/45580 (Building WebKit fails with compiler catching SIGSEGV in gimple_fold_obj_type_ref_known_binfo())
2010-09-21 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45580
* tree-ssa-propagate.c (substitute_and_fold): Always replace
regular uses.
* gimple-fold.c (gimple_fold_obj_type_ref): For a BINFO without
virtuals fold the call into a regular indirect one.
* g++.dg/torture/pr45580.C: New testcase.
From-SVN: r164474
GCC Administrator [Tue, 21 Sep 2010 00:19:32 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r164472
Uros Bizjak [Mon, 20 Sep 2010 22:15:17 +0000 (00:15 +0200)]
gcc-dg.exp (clanup-stack-usage): Really remove .su files.
* lib/gcc-dg.exp (clanup-stack-usage): Really remove .su files.
From-SVN: r164466
Janus Weil [Mon, 20 Sep 2010 21:42:54 +0000 (23:42 +0200)]
re PR fortran/45438 ([OOP] ICE with -fcheck=pointer)
2010-09-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/45438
* trans-expr.c (gfc_conv_procedure_call): Fix pointer checking for
TBPs, PPCs and pointer/allocatable components.
2010-09-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/45438
* gfortran.dg/pointer_check_7.f90: New.
From-SVN: r164462
Eric Botcazou [Mon, 20 Sep 2010 21:29:48 +0000 (21:29 +0000)]
re PR rtl-optimization/42775 (GCC fails to rebuild itself with STAGE1_CFLAGS=-O1)
PR rtl-optimization/42775
* cfgrtl.c (rest_of_pass_free_cfg): Recompute notes if delay slot
scheduling is enabled.
From-SVN: r164458
Jakub Jelinek [Mon, 20 Sep 2010 20:41:08 +0000 (22:41 +0200)]
re PR rtl-optimization/45728 (ICE: in gen_lowpart_general, at rtlhooks.c:59 at -O1 when comparing union members)
PR rtl-optimization/45728
* expr.c (expand_expr_real_1): If op0 isn't REG or MEM, try
gen_lowpart_common first and if that fails, force_reg first
before calling gen_lowpart.
* gcc.c-torture/compile/pr45728.c: New test.
From-SVN: r164456
Jakub Jelinek [Mon, 20 Sep 2010 20:37:10 +0000 (22:37 +0200)]
re PR rtl-optimization/45678 (crash on vector code with -m32 -msse)
PR middle-end/45678
* cfgexpand.c (expand_one_stack_var_at): Use
crtl->max_used_stack_slot_alignment as max_align, instead
of maximum of that and PREFERRED_STACK_BOUNDARY.
Don't call update_stack_alignment.
From-SVN: r164454
Eric Botcazou [Mon, 20 Sep 2010 20:11:35 +0000 (20:11 +0000)]
langhooks.h (struct lang_hooks_for_types): Remove hash_types field.
* langhooks.h (struct lang_hooks_for_types): Remove hash_types field.
* langhooks-def.h (LANG_HOOKS_HASH_TYPES): Delete.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Remove LANG_HOOKS_HASH_TYPES.
* system.h (LANG_HOOKS_HASH_TYPES): Poison.
* tree.c (type_hash_canon): Do not test lang_hooks.types.hash_types.
(build_nonstandard_integer_type): Likewise.
(build_range_type_1): New function, built from...
(build_range_type): ...this. Call build_range_type_1.
(build_nonshared_range_type): New function.
(build_array_type_1): New function, built from...
(build_array_type: ...this. Call build_array_type_1.
(build_nonshared_array_type): New function.
* tree.h (build_nonshared_range_type): Declare.
(build_nonshared_array_type): Likewise.
ada/
* gcc-interface/decl.c (gnat_to_gnu_entity): Replace calls to
build_array_type with calls to build_nonshared_array_type.
(substitute_in_type): Likewise.
* gcc-interface/misc.c (LANG_HOOKS_HASH_TYPES): Delete.
(LANG_HOOKS_TYPE_HASH_EQ): Define.
(gnat_post_options): Add 'static' keyword.
(gnat_type_hash_eq): New static function.
* gcc-interface/utils.c (fntype_same_flags_p): New function.
(create_subprog_type): Call it.
(create_index_type): Call build_nonshared_range_type and tidy up.
(create_range_type): Likewise.
* gcc-interface/gigi.h (fntype_same_flags_p): Declare.
From-SVN: r164452
Ralf Wildenhues [Mon, 20 Sep 2010 19:33:12 +0000 (19:33 +0000)]
re PR libstdc++/45711 (Building with "--enable-libstdcxx-debug" fails during install)
Fix PR libstdc++/45711.
libstdc++-v3/:
PR libstdc++/45711
* src/Makefile.am (stamp-debug): Also adjust possibly-relative
file names in MKDIR_P, and, for consistency, also top_build_prefix.
* src/Makefile.in: Regenerate.
From-SVN: r164451
Anatoly Sokolov [Mon, 20 Sep 2010 19:30:31 +0000 (23:30 +0400)]
arm.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/arm/arm.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/arm/arm.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(arm_class_likely_spilled_p): New function.
From-SVN: r164450
Uros Bizjak [Mon, 20 Sep 2010 19:04:02 +0000 (21:04 +0200)]
i386.c (ix86_expand_ashl_const): Rewrite using indirect functions.
* config/i386/i386.c (ix86_expand_ashl_const): Rewrite using
indirect functions.
(ix86_split_ashl): Ditto.
(ix86_split_ashr): Ditto.
(ix86_split_lshr): Ditto.
(ix86_adjust_counter): Ditto.
From-SVN: r164449
Paul Thomas [Mon, 20 Sep 2010 18:55:12 +0000 (18:55 +0000)]
re PR fortran/45081 (ICE in gfc_conv_array_initializer, at fortran/trans-array.c:4208)
2010-09-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45081
* simplify.c (is_constant_array_expr): Allow structure array
elements as well as constants.
(gfc_simplify_pack, gfc_simplify_reshape, gfc_simplify_spread,
gfc_simplify_transpose, gfc_simplify_unpack): Copy the derived
type of source to the result.
2010-09-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45081
* gfortran.dg/derived_array_intrinsics_1.f90 : New test.
From-SVN: r164448
Nicola Pero [Mon, 20 Sep 2010 18:32:08 +0000 (18:32 +0000)]
In gcc/:
* c-family/c-common.h (constant_string_class): Documented with
comment identical to the one in c-common.c.
From-SVN: r164447
H.J. Lu [Mon, 20 Sep 2010 18:03:28 +0000 (18:03 +0000)]
Add "\\".
2010-09-20 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/tree-ssa/pr45605.C: Add "\\".
From-SVN: r164446
Jakub Jelinek [Mon, 20 Sep 2010 16:49:58 +0000 (18:49 +0200)]
dwarf2out.c (any_cfis_emitted): New static variable.
* dwarf2out.c (any_cfis_emitted): New static variable.
(add_fde_cfi): Set it.
(dwarf2out_frame_debug): Clear it before processing,
if it is set afterwards, flush any queued reg saves.
From-SVN: r164443
Jakub Jelinek [Mon, 20 Sep 2010 16:48:29 +0000 (18:48 +0200)]
re PR debug/45124 (No DW_AT_accessibility for public DIEs in DW_TAG_class_type)
PR debug/45124
* dwarf2out.c (add_accessibility_attribute): Assume
DW_ACCESS_private as the default for dwarf_version > 2
and DW_TAG_class_type parent.
(gen_inheritance_die): Assume DW_ACCESS_public as the default
for dwarf_version > 2 and parent other than DW_TAG_class_type.
From-SVN: r164442
Rafael Carre [Mon, 20 Sep 2010 16:21:57 +0000 (16:21 +0000)]
re PR target/45726 (Thumb2 instruction emitted for incompatible CPU)
2010-09-20 Rafael Carre <rafael.carre@gmail.com>
PR target/45726
* arm.md (arm_movt): Only enable on machines with MOVT.
From-SVN: r164441