Richard Henderson [Tue, 22 Sep 2009 15:11:37 +0000 (08:11 -0700)]
re PR target/41246 (should "sorry" when regparm=3 and nested functions are encountered)
PR target/41246
* target.h (struct gcc_target): Add asm_out.trampoline_template,
calls.static_chain, calls.trampoline_init,
calls.trampoline_adjust_address.
* target-def.h (TARGET_ASM_TRAMPOLINE_TEMPLATE): New.
(TARGET_STATIC_CHAIN, TARGET_TRAMPOLINE_INIT): New.
(TARGET_TRAMPOLINE_ADJUST_ADDRESS): New.
* builtins.c (expand_builtin_setjmp_receiver): Use
targetm.calls.static_chain; only clobber registers.
(expand_builtin_init_trampoline): Use targetm.calls.trampoline_init;
set up memory attributes properly for the trampoline block.
(expand_builtin_adjust_trampoline): Use
targetm.calls.trampoline_adjust_address.
* calls.c (prepare_call_address): Add fndecl argument. Use
targetm.calls.static_chain.
* df-scan.c (df_need_static_chain_reg): Remove.
(df_get_entry_block_def_set): Use targetm.calls.static_chain;
consolodate static chain handling.
* doc/tm.texi: Document new hooks.
* emit-rtl.c (static_chain_rtx, static_chain_incoming_rtx): Remove.
(init_emit_regs): Don't initialize them.
* expr.h (prepare_call_address): Update decl.
* final.c (profile_function): Use targetm.calls.static_chain.
* function.c (expand_function_start): Likewise.
* rtl.h (static_chain_rtx, static_chain_incoming_rtx): Remove.
* stmt.c (expand_nl_goto_receiver): Use targetm.calls.static_chain;
only clobber registers.
* targhooks.c (default_static_chain): New.
(default_asm_trampoline_template, default_trampoline_init): New.
(default_trampoline_adjust_address): New.
* targhooks.h: Declare them.
* varasm.c (assemble_trampoline_template): Use
targetm.asm_out.trampoline_template. Make the memory block const
and set its size.
From-SVN: r151983
Richard Guenther [Tue, 22 Sep 2009 14:58:05 +0000 (14:58 +0000)]
re PR bootstrap/41395 (Revision 151800 failed bootstrap)
2009-09-22 Richard Guenther <rguenther@suse.de>
PR middle-end/41395
* tree-dfa.c (get_ref_base_and_extent): Handle trailing
arrays really properly.
* gcc.c-torture/execute/pr41395-1.c: New testcase.
* gcc.c-torture/execute/pr41395-2.c: Likewise.
From-SVN: r151981
Richard Guenther [Tue, 22 Sep 2009 13:49:03 +0000 (13:49 +0000)]
re PR objc++/41430 (exception handling testsuite failures in objc++)
2009-09-22 Richard Guenther <rguenther@suse.de>
PR objc++/41430
* Make-lang.in (objcp-lang.o): Add $(EXCEPT_H) dependency.
* objcp-lang.c (LANG_HOOKS_EH_PERSONALITY): Define.
(LANG_HOOKS_EH_RUNTIME_TYPE): Likewise.
(objcxx_eh_personality): New function.
From-SVN: r151979
Jakub Jelinek [Tue, 22 Sep 2009 13:22:15 +0000 (15:22 +0200)]
re PR bootstrap/41405 (Bootstrap fails on *-apple-darwin* due to revision 151815)
PR bootstrap/41405
* dwarf2out.c (base_type_die, record_type_tag, gen_subprogram_die,
add_call_src_coords_attributes, add_high_low_attributes,
gen_compile_unit_die, gen_type_die_with_usage force_decl_die,
gen_decl_die, dwarf2out_imported_module_or_decl_1, dwarf2out_finish,
dwarf2out_imported_module_or_decl): Avoid using DWARF3 additions
when -gdwarf-2 -gstrict-dwarf.
(loc_list_from_tree): Likewise. Avoid using DWARF4 additions when
-gdwarf-[23] -gstrict-dwarf.
(address_of_int_loc_descriptor, loc_descriptor,
loc_list_for_address_of_addr_expr_of_indirect_ref): Avoid using
DWARF4 additions when -gdwarf-[23] -gstrict-dwarf.
* common.opt (gno-strict-dwarf, gstrict-dwarf): New options.
* gfortran.dg/debug/pr37738.f: Add -gno-strict-dwarf to dg-options.
* gfortran.dg/debug/pr35154-dwarf2.f: Likewise.
* g++.dg/debug/dwarf2/explicit-constructor.C: Likewise.
* g++.dg/debug/dwarf2/imported-module-2.C: Likewise.
* g++.dg/debug/dwarf2/imported-module-3.C: Likewise.
* g++.dg/debug/dwarf2/imported-module-4.C: Likewise.
* g++.dg/debug/dwarf2/namespace-1.C: Likewise.
* objc.dg/dwarf-2.m: Likewise.
From-SVN: r151978
Jakub Jelinek [Tue, 22 Sep 2009 12:53:14 +0000 (14:53 +0200)]
rs6000.c (bdesc_2arg): Fix CODE_FOR_vector_gt* codes for __builtin_altivec_vcmpgt{sb,uh,sh,uw}.
* config/rs6000/rs6000.c (bdesc_2arg): Fix CODE_FOR_vector_gt* codes
for __builtin_altivec_vcmpgt{sb,uh,sh,uw}.
From-SVN: r151977
Jakub Jelinek [Tue, 22 Sep 2009 12:52:20 +0000 (14:52 +0200)]
reload1.c (reload): Call wrap_constant when substituting reg for equiv inside of DEBUG_INSNs.
* reload1.c (reload): Call wrap_constant when substituting
reg for equiv inside of DEBUG_INSNs.
* gcc.dg/
20090922-1.c: New test.
From-SVN: r151976
Iain Sandoe [Tue, 22 Sep 2009 10:23:06 +0000 (10:23 +0000)]
configure.ac: Check for GFORTRAN_C99_1.1 funcs in OS libm.
2009-09-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
* configure.ac: Check for GFORTRAN_C99_1.1 funcs in OS libm.
* configure: Regenerate.
* config.h.in: Ditto.
From-SVN: r151972
Richard Guenther [Tue, 22 Sep 2009 08:37:31 +0000 (08:37 +0000)]
re PR preprocessor/38987 (Including a precompiled header from another header causes invalid assembly to be generated)
2009-09-22 Richard Guenther <rguenther@suse.de>
PR pch/38987
* files.c (pch_open_file): Disallow non-toplevel PCH inclusion.
From-SVN: r151970
Richard Guenther [Tue, 22 Sep 2009 08:34:52 +0000 (08:34 +0000)]
re PR tree-optimization/41428 (CCP doesn't fold all comparisons it could)
2009-09-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41428
* tree-ssa-ccp.c (ccp_fold_stmt): New function.
(ccp_finalize): Pass it to substitute_and_fold.
* g++.dg/tree-ssa/pr41428.C: New testcase.
From-SVN: r151969
Richard Guenther [Tue, 22 Sep 2009 08:30:34 +0000 (08:30 +0000)]
tree-ssa-propagate.h (ssa_prop_fold_stmt_fn): Declare.
2009-09-22 Richard Guenther <rguenther@suse.de>
* tree-ssa-propagate.h (ssa_prop_fold_stmt_fn): Declare.
(substitute_and_fold): Adjust prototype.
* tree-vrp.c (vrp_evaluate_conditional): Make static.
(simplify_stmt_using_ranges): Likewise.
(fold_predicate_in): Move here from tree-ssa-propagate.c.
(vrp_fold_stmt): New function.
(vrp_finalize): Pass it to substitute_and_fold.
* tree-flow.h (vrp_evaluate_conditional): Remove.
(simplify_stmt_using_ranges): Likewise.
* tree-ssa-ccp.c (ccp_finalize): Adjust call to substitute_and_fold.
* tree-ssa-copy.c (fini_copy_prop): Likewise.
* tree-ssa-propagate.c (struct prop_stats_d): Rename num_pred_folded
member.
(fold_predicate_in): Move to tree-vrp.c.
(substitute_and_fold): Use the callback instead of calling into
tree-vrp.c functions directly.
From-SVN: r151968
Jakub Jelinek [Tue, 22 Sep 2009 06:43:53 +0000 (08:43 +0200)]
dwarf2out.c (address_of_int_loc_descriptor): Avoid signed/unsigned comparison warning on rs6000.
* dwarf2out.c (address_of_int_loc_descriptor): Avoid signed/unsigned
comparison warning on rs6000.
From-SVN: r151967
Jakub Jelinek [Tue, 22 Sep 2009 06:42:26 +0000 (08:42 +0200)]
re PR middle-end/41429 (gomp tests timeout with -fpic)
PR middle-end/41429
* tree-cfg.c (remove_useless_stmts_tc): Call gsi_next (gsi) even for
GIMPLE_EH_MUST_NOT_THROW cleanup.
(verify_types_in_gimple_stmt): Handle GIMPLE_EH_MUST_NOT_THROW.
* g++.dg/gomp/pr41429.C: New test.
From-SVN: r151966
Peter O'Gorman [Tue, 22 Sep 2009 02:37:45 +0000 (02:37 +0000)]
Correct the copyright year. It is not 2006 or 2007.
From-SVN: r151961
Jack Howarth [Tue, 22 Sep 2009 02:28:19 +0000 (02:28 +0000)]
re PR middle-end/41260 (major regressions on *-apple-darwin10 at -m64 caused by r147995)
PR middle-end/41260
* gcc/config.gcc: Use darwin9.h and darwin10.h on darwin10 and later.
* gcc/config/darwin10.h: Add file to pass -no_compact_unwind on
LIB_SPEC for darwin10 and later since it always uses the unwinder in
libSystem which is derived from the gcc 4.2.1 unwinder.
From-SVN: r151960
Dave Korn [Tue, 22 Sep 2009 01:33:53 +0000 (01:33 +0000)]
re PR middle-end/41357 (libgomp build fail)
PR middle-end/41357
* varasm.c (default_encode_section_info): Copy TLS model into
sym_ref flags regardless of backend support for TLS, for all
model types except TLS_MODEL_EMULATED.
From-SVN: r151959
Dave Korn [Tue, 22 Sep 2009 01:17:24 +0000 (01:17 +0000)]
re PR bootstrap/41404 (expr.c undefined reference while linking jc1)
PR bootstrap/41404
* dwarf2out.c (mem_loc_descriptor): Punt on CONST_STRING until
we can handle it correctly.
From-SVN: r151958
GCC Administrator [Tue, 22 Sep 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151957
Joel Sherrill [Mon, 21 Sep 2009 20:52:46 +0000 (20:52 +0000)]
s-osinte-rtems.ad[bs]: Get_Page_Size cannot return 0.
2009-09-21 Joel Sherrill <joel.sherrill@oarcorp.com>
* s-osinte-rtems.ad[bs]: Get_Page_Size cannot return 0.
Bind to getpagesize() in RTEMS 4.10 and newer.
From-SVN: r151946
Gerald Pfeifer [Mon, 21 Sep 2009 20:50:57 +0000 (20:50 +0000)]
* doc/install.texi (os2): Remove section.
From-SVN: r151945
Gerald Pfeifer [Mon, 21 Sep 2009 20:34:47 +0000 (20:34 +0000)]
* doc/standards.texi (Objective-C): Adjust two URLs.
From-SVN: r151944
Ralf Wildenhues [Mon, 21 Sep 2009 20:32:37 +0000 (20:32 +0000)]
Require c++ in stage1_languages with --enable-gold in combined bootstrap.
/:
* configure.ac: If bootstrapping a combined tree with
--enable-gold, require c++ in stage1_languages.
* configure: Regenerate.
From-SVN: r151943
Ralf Wildenhues [Mon, 21 Sep 2009 20:31:18 +0000 (20:31 +0000)]
toplevel configure: bootstrap target_libs of stage1_languages.
/:
* configure.ac: Also add target_libs of stage1_languages to
bootstrap_target_libs.
* configure: Regenerate.
From-SVN: r151942
Gerald Pfeifer [Mon, 21 Sep 2009 20:15:07 +0000 (20:15 +0000)]
appendix_contributing.xml: Adjust link to coreutils.
* doc/xml/manual/appendix_contributing.xml: Adjust link to
coreutils.
From-SVN: r151941
Ralf Wildenhues [Mon, 21 Sep 2009 19:24:40 +0000 (19:24 +0000)]
Diagnose --enable-build-with-cxx --enable-bootstrap --enable-languages w/o c++
/*
* configure.ac: Diagnose --enable-build-with-cxx bootstrap
with --enable-languages not containing c++.
* configure: Regenerate.
From-SVN: r151939
Rainer Orth [Mon, 21 Sep 2009 18:58:29 +0000 (18:58 +0000)]
ada: init.c (__gnat_error_handler): Cast msg to const char *.
* env.c [__alpha__ && __osf__] (_BSD): Define.
* init.c [__alpha__ && __osf__] (__gnat_error_handler): Cast msg
to const char *.
From-SVN: r151938
Giuseppe Scrivano [Mon, 21 Sep 2009 16:41:58 +0000 (16:41 +0000)]
tree-tailcall.c (process_assignment): Don't check if a multiplication or an addition are already present.
2009-09-21 Giuseppe Scrivano <gscrivano@gnu.org>
* tree-tailcall.c (process_assignment): Don't check if a multiplication
or an addition are already present.
(find_tail_calls): Combine multiple additions and multiplications.
(adjust_accumulator_values): Emit accumulators.
testsuite:
2009-09-21 Giuseppe Scrivano <gscrivano@gnu.org>
* gcc.dg/tree-ssa/tailrecursion-6.c: New file.
From-SVN: r151935
Jason Merrill [Mon, 21 Sep 2009 16:11:26 +0000 (12:11 -0400)]
re PR c++/41421 ([C++0x] Trivial types should require trivial default constructor.)
PR c++/41421
* tree.c (trivial_type_p): Fix logic.
From-SVN: r151932
Jason Merrill [Mon, 21 Sep 2009 16:11:19 +0000 (12:11 -0400)]
* name-lookup.c (push_class_level_binding): Sanity check.
From-SVN: r151931
Kai Tietz [Mon, 21 Sep 2009 13:24:37 +0000 (13:24 +0000)]
i386.c (ix86_expand_epilogue): Adjust offset for xmm register restore.
2009-09-21 Kai Tietz <kai.tietz@onevision.com>
* config/i386/i386.c (ix86_expand_epilogue): Adjust offset for
xmm register restore.
2009-09-21 Kai Tietz <kai.tietz@onevision.com>
* gcc.dg/torture/calleesave-sse.c: New.
From-SVN: r151918
Jan Hubicka [Mon, 21 Sep 2009 12:48:37 +0000 (14:48 +0200)]
inline-params.c: New testcase.
* gcc.dg/guality/inline-params.c: New testcase.
* dwarf2out.c (decl_loc_table_eq): Allow decl_loc_table to be NULL.
(dwarf2out_abstract_function): NULLify decl_loc_table at begginig and
restore at the end.
From-SVN: r151917
Uros Bizjak [Mon, 21 Sep 2009 10:52:57 +0000 (12:52 +0200)]
ieee.exp (additional_flags): Add -fno-inline.
* gcc.c-torture/execute/ieee/ieee.exp (additional_flags):
Add -fno-inline.
* gcc.c-torture/execute/ieee/pr36332.c (foo): Remove attributes.
* gcc.c-torture/execute/ieee/pr30704.c (f1): Ditto.
(f2): Ditto.
From-SVN: r151915
Eric Botcazou [Mon, 21 Sep 2009 05:55:22 +0000 (05:55 +0000)]
* stor-layout.c (layout_type): Remove obsolete code.
From-SVN: r151913
GCC Administrator [Mon, 21 Sep 2009 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151911
H.J. Lu [Sun, 20 Sep 2009 21:13:56 +0000 (21:13 +0000)]
ipa-sra-1.c (dg-options): Add -fipa-sra.
2009-09-20 H.J. Lu <hongjiu.lu@intel.com>
* gcc.dg/ipa/ipa-sra-1.c (dg-options): Add -fipa-sra.
* gcc.dg/ipa/ipa-sra-2.c (dg-options): Likewise.
* gcc.dg/ipa/ipa-sra-3.c (dg-options): Likewise.
* gcc.dg/ipa/ipa-sra-4.c (dg-options): Likewise.
* gcc.dg/ipa/ipa-sra-5.c (dg-options): Likewise.
From-SVN: r151908
Andrew Pinski [Sun, 20 Sep 2009 20:05:00 +0000 (13:05 -0700)]
re PR tree-optimization/40642 (ICE with -fprofile-generate)
2009-09-20 Andrew Pinski <pinskia@gcc.gnu.org>
PR middle-end/40642
* g++.dg/torture/pr40642.C: New testcase.
From-SVN: r151907
H.J. Lu [Sun, 20 Sep 2009 17:59:44 +0000 (17:59 +0000)]
re PR bootstrap/41395 (Revision 151800 failed bootstrap)
2009-09-20 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/41395
* opts.c (decode_options): Don't turn on flag_ipa_sra for opt2.
From-SVN: r151905
Kaveh R. Ghazi [Sun, 20 Sep 2009 15:39:22 +0000 (15:39 +0000)]
re PR middle-end/30789 (complex folding inexact)
PR middle-end/30789
* builtins.c (do_mpc_arg2): Accept DO_NONFINITE parameter.
(do_mpc_ckconv): Accept FORCE_CONVERT parameter.
(fold_builtin_2, do_mpc_arg1): Update accordingly.
* fold-const.c (const_binop): Likewise.
* real.h (do_mpc_arg2): Update prototype.
testsuite:
* gcc.dg/torture/builtin-math-7.c: Update for testing Annex G
cases in static initializers.
From-SVN: r151904
Jan Hubicka [Sun, 20 Sep 2009 12:04:21 +0000 (14:04 +0200)]
dwarf2out.c (add_const_value_attribute): Return true if successful.
* dwarf2out.c (add_const_value_attribute): Return true if successful.
(add_location_or_const_value_attribute): Rewrite using loc_list_from_tree.
(tree_add_const_value_attribute): Return true if successful.
(tree_add_const_value_attribute_for_decl): Likewise.
* dwarf2out.c (address_of_int_loc_descriptor): Break out from ...
(loc_descriptor): ... here;
(loc_list_for_address_of_addr_expr_of_indirect_ref): New function.
(cst_pool_loc_descr): Break out from ...; do not reffer constant
pool items that was not marked for output.
(loc_list_from_tree): ... here; handle special cases of ADDR_EXPR;
(loc_list_for_address_of_addr_expr_of_indirect_ref): New function.
(loc_list_for_address_of_addr_expr_of_indirect_ref): New function.
handle ALIGN_INDIRECT_REF, MISALIGNED_INDIRECT_REF, REALPART_EXPR,
IMAGPART_EXPR; handle address of INTEGER_CST; improve handling of
CONSTRUCTOR; handle REAL_CST, STRING_CST, COMPLEX_CST; use
DW_OP_stack_value to get address of items that are not available
as addresses.
(dw_loc_list): Handle single element lists correctly.
From-SVN: r151901
Kai Tietz [Sun, 20 Sep 2009 11:03:33 +0000 (11:03 +0000)]
unwind-dw2-fde.c (classify_object_over_fdes): Cast the constant 1 to _Unwind_Ptr.
2009-09-20 Kai Tietz <kai.tietz@onevision.com>
Pascal Obry <obry@adacore.com>
* unwind-dw2-fde.c (classify_object_over_fdes):
Cast the constant 1 to _Unwind_Ptr.
(add_fdes): Likewise.
(linear_search_fdes): Likewise.
Co-Authored-By: Pascal Obry <obry@adacore.com>
From-SVN: r151899
Eric Botcazou [Sun, 20 Sep 2009 10:55:30 +0000 (10:55 +0000)]
* stor-layout.c (set_sizetype): Avoid useless type copy.
From-SVN: r151898
Eric Botcazou [Sun, 20 Sep 2009 10:54:20 +0000 (10:54 +0000)]
Adjust component
From-SVN: r151897
Richard Sandiford [Sun, 20 Sep 2009 10:36:05 +0000 (10:36 +0000)]
configure.ac (gcc_cv_ld_mips_personality_relaxation): New feature check.
gcc/
* configure.ac (gcc_cv_ld_mips_personality_relaxation): New
feature check.
(HAVE_LD_PERSONALITY_RELAXATION): New macro definition.
* configure, config.in: Regenerate.
* dwarf2asm.c (eh_data_format_name): Handle DW_EH_PE_indirect |
DW_EH_PE_absptr.
* config/mips/mips.h (TARGET_WRITABLE_EH_FRAME): New macro.
(ASM_PREFERRED_EH_DATA_FORMAT): Define. Use MIPS_EH_INDIRECT
for global data if the output could be used in a shared library.
* config/mips/mips.c (mips_override_options): Set flag_dwarf2_cfi_asm
to 0 if TARGET_WRITABLE_EH_FRAME.
From-SVN: r151896
Kai Tietz [Sun, 20 Sep 2009 09:22:11 +0000 (11:22 +0200)]
[multiple changes]
2009-09-20 Paolo Bonzini <bonzini@gnu.org>
PR/39886
* combine.c (update_cfg_for_uncondjump): Set EDGE_FALLTHRU
just when insn is equal to BB_END (bb).
2009-09-20 Kai Tietz <kai.tietz@onevision.com>
* gcc.c-tortue/compile/pr39886.c: New.
From-SVN: r151895
Chris Demetriou [Sun, 20 Sep 2009 08:08:06 +0000 (01:08 -0700)]
re PR preprocessor/28435 (-MMD vs not found system header (included from a system header))
[gcc/testsuite/ChangeLog]
2009-09-20 Chris Demetriou <cgd@google.com>
PR preprocessor/28435:
* gcc.dg/cpp/missing-header-MD.c: Make output checking match
gcc.dg/cpp/missing-header-1.c, and add PR number to test comment.
* gcc.dg/cpp/missing-header-MMD.c: Likewise.
* gcc.dg/cpp/missing-sysheader-MD.c: Likewise.
* gcc.dg/cpp/missing-sysheader-MMD.c: Likewise.
From-SVN: r151894
GCC Administrator [Sun, 20 Sep 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151893
Adam Nemet [Sat, 19 Sep 2009 20:23:55 +0000 (20:23 +0000)]
mips.opt (mrelax-pic-calls): New option.
* config/mips/mips.opt (mrelax-pic-calls): New option.
* config/mips/mips.c (mips_strip_unspec_address): Move it up in
the file.
(mips_unspec_call): Change "unspec_call" expander into this.
(mips_strip_unspec_call): New function.
(mips_got_load): Call mips_unspec_call instead of
gen_unspec_call<mode>.
(mips16_build_call_stub): Fix comment for fp_code. Adjust call to
MIPS_CALL.
(mips_cfg_in_reorg): New function.
(mips16_lay_out_constants): Use it to decide whether to call
CFG-aware insn splitting.
(r10k_insert_cache_barriers): Move CFG set-up code from here to
mips_reorg. Move DF set-up code from here ...
(mips_df_reorg): ... to here. Call r10k_insert_cache_barriers
from here.
(mips_reorg): Call mips_df_reorg instead of
r10k_insert_cache_barriers. Move CFG set-up code here from
r10k_insert_cache_barriers.
(mips_call_expr_from_insn): New function.
(mips_pic_call_symbol_from_set): Likewise.
(mips_find_pic_call_symbol): Likewise.
(mips_annotate_pic_call_expr): Likewise.
(mips_get_pic_call_symbol): Likewise.
(mips_annotate_pic_calls): Likewise.
(mips_override_options): Disable -mrelax-pic-calls unless PIC
calls are used.
(mips_set_mips16_mode): Disable -mrelax-pic-calls for MIPS16.
* config/mips/mips-protos.h (mips_get_pic_call_symbol): Declare it.
* config/mips/mips.h (MIPS_CALL): Use it to print the .reloc
directive.
* config/mips/mips.md (UNSPEC_CALL_ATTR): New unspec.
(unspec_call<mode>): Remove it.
(sibcall_internal, sibcall_value_internal,
sibcall_value_multiple_internal, call_internal, call_split,
call_value_internal, call_value_split,
call_value_multiple_internal, call_value_multiple_split): Pass
SIZE_OPNO to MIPS_CALL.
(call_internal_direct, call_direct_split,
call_value_internal_direct, call_value_direct_split): Pass -1 as
SIZE_OPNO to MIPS_CALL.
* configure.ac <mips*-*-*>: Add test for .reloc R_MIPS_JALR.
* configure: Regenerate.
* doc/invoke.texi (Option Summary): Add -mrelax-pic-calls
and -mno-relax-pic-calls.
(MIPS Options): Document -mrelax-pic-calls
and -mno-relax-pic-calls.
testsuite/
* gcc.target/mips/mips.exp: Add relax-pic-calls
under -mfoo/-mno-foo options.
(mips-dg-options): Make -mrelax-pic-calls imply -mno-plt, -mabicalls
and -mexplicit-relocs.
* gcc.target/mips/call-1.c: New test.
* gcc.target/mips/call-2.c: New test.
* gcc.target/mips/call-3.c: New test.
* gcc.target/mips/lazy-binding-1.c: Add MIPS-specific dg-options.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
From-SVN: r151890
Joseph Myers [Sat, 19 Sep 2009 12:30:33 +0000 (13:30 +0100)]
* vi.po: Update.
From-SVN: r151881
Ralf Wildenhues [Sat, 19 Sep 2009 08:29:58 +0000 (08:29 +0000)]
Fix long-standing in-tree build include-fixed bug.
gcc/:
PR bootstrap/35619
* Makefile.in (stmp-fixinc): Ensure `include-fixed' is created
in the directory this rule is called from, rather than the
toplevel 'gcc' directory, to fix in-tree build.
From-SVN: r151880
Chris Demetriou [Sat, 19 Sep 2009 06:15:21 +0000 (23:15 -0700)]
re PR preprocessor/28435 (-MMD vs not found system header (included from a system header))
[libcpp/ChangeLog]
2009-09-18 Chris Demetriou <cgd@google.com>
PR preprocessor/28435:
* include/cpplib.h (struct cpp_options): Add new member
deps.need_preprocessor_output.
* files.c (open_file_failed): If preprocessor output is needed
always report an error.
[gcc/ChangeLog]
2009-09-19 Chris Demetriou <cgd@google.com>
PR preprocessor/28435:
* c-opts.c (c_common_handle_option): For -MD and -MMD, indicate
to cpplib that the preprocessor output is needed.
[gcc/testsuite/ChangeLog]
2009-09-19 Chris Demetriou <cgd@google.com>
PR preprocessor/28435:
* gcc.dg/cpp/missing-header-MD.c: New test.
* gcc.dg/cpp/missing-header-MMD.c: New test.
* gcc.dg/cpp/missing-sysheader-MD.c: New test.
* gcc.dg/cpp/missing-sysheader-MMD.c: New test.
From-SVN: r151879
Jerry DeLisle [Sat, 19 Sep 2009 04:45:00 +0000 (04:45 +0000)]
re PR fortran/41328 (bad iostat when reading DOS file in a character array (non-advancing))
2009-09-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/41328
* gfortran.dg/cr_lf.f90: Modify test to include check that no EOR with
EOF works.
From-SVN: r151878
Jerry DeLisle [Sat, 19 Sep 2009 04:41:38 +0000 (04:41 +0000)]
re PR fortran/41328 (bad iostat when reading DOS file in a character array (non-advancing))
2009-09-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/41328
* io/transfer.c (read_sf): Set at_eof flag on short read if any
characters were successfully read so that EOF condition with no EOR
marker succeeds.
From-SVN: r151877
GCC Administrator [Sat, 19 Sep 2009 00:17:57 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151876
Jakub Jelinek [Fri, 18 Sep 2009 23:23:48 +0000 (01:23 +0200)]
* config/rs6000/rs6000.md (*save_gpregs_<mode>, *save_fpregs_<mode>,
*restore_gpregs_<mode>, *return_and_restore_gpregs_<mode>,
*return_and_restore_fpregs_<mode>,
*return_and_restore_fpregs_aix_<mode>): Remove 'z' operand modifier.
From-SVN: r151873
Jakub Jelinek [Fri, 18 Sep 2009 23:17:25 +0000 (01:17 +0200)]
re PR bootstrap/41397 (RTL checking failure compiling libiberty)
PR bootstrap/41397
* dwarf2out.c (mem_loc_descriptor) <case SUBREG>: Recurse
instead of assuming it has always a REG inside of it.
From-SVN: r151872
Gerald Pfeifer [Fri, 18 Sep 2009 22:15:58 +0000 (22:15 +0000)]
freebsd.h: Update comment on types.
* config/freebsd.h: Update comment on types.
(WINT_TYPE): Define.
From-SVN: r151871
Jason Merrill [Fri, 18 Sep 2009 21:25:18 +0000 (17:25 -0400)]
decl2.c (determine_visibility): Make anonymous types internal.
* decl2.c (determine_visibility): Make anonymous types internal.
(mark_used): Complain about types without linkage used in
decls with internal linkage.
(vague_linkage_fn_p): Split out from...
* decl.c (maybe_commonize_var): ...here.
(grokdeclarator): Adjust linkage when a typedef gives linkage name.
* tree.c (no_linkage_check): Check the enclosing class and template
arguments.
* cp-tree.h (TYPE_NAMESPACE_SCOPE_P): New.
From-SVN: r151868
Jason Merrill [Fri, 18 Sep 2009 21:25:10 +0000 (17:25 -0400)]
c.opt: Add -fno-deduce-init-list.
* c.opt: Add -fno-deduce-init-list.
* pt.c (get_pattern_parm): New.
(listify): Split out from...
(listify_autos): ...here.
(unify): Deduce std::initializer_list for T.
* call.c (build_over_call): Warn about it.
From-SVN: r151867
Jan Kratochvil [Fri, 18 Sep 2009 20:03:47 +0000 (20:03 +0000)]
hook.in: Fix prefix trailing slash on 64bit host arches.
2009-09-18 Jan Kratochvil <jan.kratochvil@redhat.com>
* python/hook.in: Fix prefix trailing slash on 64bit host arches.
From-SVN: r151866
Neil Vachharajani [Fri, 18 Sep 2009 18:39:43 +0000 (18:39 +0000)]
value-prof.c (interesting_stringop_to_profile_p): Added output argument to indicate which parameter is the size parameter.
2009-09-18 Neil Vachharajani <nvachhar@google.com>
* value-prof.c (interesting_stringop_to_profile_p): Added output
argument to indicate which parameter is the size parameter.
* value-prof.c (gimple_stringop_fixed_value): Use
INTERESTING_STRINGOP_TO_PROFILE_P to find size argument.
* value-prof.c (gimple_stringops_transform): Update call sites to
INTERESTING_STRINGOP_TO_PROFILE_P to reflect parameter change.
* testsuite/gcc.dg/tree-prof/val-prof-7.c: Added test case.
From-SVN: r151864
Janis Johnson [Fri, 18 Sep 2009 17:40:28 +0000 (17:40 +0000)]
dfp.exp: Also run tests in c-c++-common/dfp.
* gcc.dg/dfp/dfp.exp: Also run tests in c-c++-common/dfp.
* c-c++-common/dfp: New directory.
* c-c++-common/dfp/dfp-dbg.h: New file.
* gcc.dg/dfp/call-by-value.c: Move to ...
* c-c++-common/call-by-value.c: here.
* gcc.dg/dfp/cast.c: Move to ...
* c-c++-common/cast.c: here.
* gcc.dg/dfp/compare-eq-const.c: Move to ...
* c-c++-common/compare-eq-const.c: here.
* gcc.dg/dfp/compare-eq-d128.c: Move to ...
* c-c++-common/compare-eq-d128.c: here.
* gcc.dg/dfp/compare-eq-d32.c: Move to ...
* c-c++-common/compare-eq-d32.c: here.
* gcc.dg/dfp/compare-eq-d64.c: Move to ...
* c-c++-common/compare-eq-d64.c: here.
* gcc.dg/dfp/compare-eq-dfp.c: Move to ...
* c-c++-common/compare-eq-dfp.c: here.
* gcc.dg/dfp/compare-eq.h: Move to ...
* c-c++-common/compare-eq.h: here.
* gcc.dg/dfp/compare-rel-const.c: Move to ...
* c-c++-common/compare-rel-const.c: here.
* gcc.dg/dfp/compare-rel-d128.c: Move to ...
* c-c++-common/compare-rel-d128.c: here.
* gcc.dg/dfp/compare-rel-d32.c: Move to ...
* c-c++-common/compare-rel-d32.c: here.
* gcc.dg/dfp/compare-rel-d64.c: Move to ...
* c-c++-common/compare-rel-d64.c: here.
* gcc.dg/dfp/compare-rel-dfp.c: Move to ...
* c-c++-common/compare-rel-dfp.c: here.
* gcc.dg/dfp/compare-rel.h: Move to ...
* c-c++-common/compare-rel.h: here.
* gcc.dg/dfp/compare-special-d128.c: Move to ...
* c-c++-common/compare-special-d128.c: here.
* gcc.dg/dfp/compare-special-d32.c: Move to ...
* c-c++-common/compare-special-d32.c: here.
* gcc.dg/dfp/compare-special-d64.c: Move to ...
* c-c++-common/compare-special-d64.c: here.
* gcc.dg/dfp/compare-special.h: Move to ...
* c-c++-common/compare-special.h: here.
* gcc.dg/dfp/constants-zero.c: Move to ...
* c-c++-common/constants-zero.c: here.
* gcc.dg/dfp/convert-bfp-10.c: Move to ...
* c-c++-common/convert-bfp-10.c: here.
* gcc.dg/dfp/convert-bfp-11.c: Move to ...
* c-c++-common/convert-bfp-11.c: here.
* gcc.dg/dfp/convert-bfp-12.c: Move to ...
* c-c++-common/convert-bfp-12.c: here.
* gcc.dg/dfp/convert-bfp-13.c: Move to ...
* c-c++-common/convert-bfp-13.c: here.
* gcc.dg/dfp/convert-bfp-14.c: Move to ...
* c-c++-common/convert-bfp-14.c: here.
* gcc.dg/dfp/convert-bfp-2.c: Move to ...
* c-c++-common/convert-bfp-2.c: here.
* gcc.dg/dfp/convert-bfp-3.c: Move to ...
* c-c++-common/convert-bfp-3.c: here.
* gcc.dg/dfp/convert-bfp-4.c: Move to ...
* c-c++-common/convert-bfp-4.c: here.
* gcc.dg/dfp/convert-bfp-5.c: Move to ...
* c-c++-common/convert-bfp-5.c: here.
* gcc.dg/dfp/convert-bfp-6.c: Move to ...
* c-c++-common/convert-bfp-6.c: here.
* gcc.dg/dfp/convert-bfp-7.c: Move to ...
* c-c++-common/convert-bfp-7.c: here.
* gcc.dg/dfp/convert-bfp-8.c: Move to ...
* c-c++-common/convert-bfp-8.c: here.
* gcc.dg/dfp/convert-bfp-9.c: Move to ...
* c-c++-common/convert-bfp-9.c: here.
* gcc.dg/dfp/convert-bfp.c: Move to ...
* c-c++-common/convert-bfp.c: here.
* gcc.dg/dfp/convert-bfp-fold.c: Move to ...
* c-c++-common/convert-bfp-fold.c: here.
* gcc.dg/dfp/convert-dfp.c: Move to ...
* c-c++-common/convert-dfp.c: here.
* gcc.dg/dfp/convert-dfp-fold-2.c: Move to ...
* c-c++-common/convert-dfp-fold-2.c: here.
* gcc.dg/dfp/convert-dfp-fold.c: Move to ...
* c-c++-common/convert-dfp-fold.c: here.
* gcc.dg/dfp/convert.h: Move to ...
* c-c++-common/convert.h: here.
* gcc.dg/dfp/convert-int.c: Move to ...
* c-c++-common/convert-int.c: here.
* gcc.dg/dfp/convert-int-fold.c: Move to ...
* c-c++-common/convert-int-fold.c: here.
* gcc.dg/dfp/convert-int-max.c: Move to ...
* c-c++-common/convert-int-max.c: here.
* gcc.dg/dfp/convert-int-max-fold.c: Move to ...
* c-c++-common/convert-int-max-fold.c: here.
* gcc.dg/dfp/convert-int-saturate.c: Move to ...
* c-c++-common/convert-int-saturate.c: here.
* gcc.dg/dfp/func-array.c: Move to ...
* c-c++-common/func-array.c: here.
* gcc.dg/dfp/func-deref.c: Move to ...
* c-c++-common/func-deref.c: here.
* gcc.dg/dfp/func-mixed.c: Move to ...
* c-c++-common/func-mixed.c: here.
* gcc.dg/dfp/func-pointer.c: Move to ...
* c-c++-common/func-pointer.c: here.
* gcc.dg/dfp/func-scalar.c: Move to ...
* c-c++-common/func-scalar.c: here.
* gcc.dg/dfp/func-struct.c: Move to ...
* c-c++-common/func-struct.c: here.
* gcc.dg/dfp/func-vararg-alternate-d128-2.c: Move to ...
* c-c++-common/func-vararg-alternate-d128-2.c: here.
* gcc.dg/dfp/func-vararg-alternate-d128.c: Move to ...
* c-c++-common/func-vararg-alternate-d128.c: here.
* gcc.dg/dfp/func-vararg-alternate-d32.c: Move to ...
* c-c++-common/func-vararg-alternate-d32.c: here.
* gcc.dg/dfp/func-vararg-alternate-d64.c: Move to ...
* c-c++-common/func-vararg-alternate-d64.c: here.
* gcc.dg/dfp/func-vararg-alternate.h: Move to ...
* c-c++-common/func-vararg-alternate.h: here.
* gcc.dg/dfp/func-vararg-dfp.c: Move to ...
* c-c++-common/func-vararg-dfp.c: here.
* gcc.dg/dfp/func-vararg-mixed-2.c: Move to ...
* c-c++-common/func-vararg-mixed-2.c: here.
* gcc.dg/dfp/func-vararg-mixed.c: Move to ...
* c-c++-common/func-vararg-mixed.c: here.
* gcc.dg/dfp/func-vararg-size0.c: Move to ...
* c-c++-common/func-vararg-size0.c: here.
* gcc.dg/dfp/inf-1.c: Move to ...
* c-c++-common/inf-1.c: here.
* gcc.dg/dfp/loop-index.c: Move to ...
* c-c++-common/loop-index.c: here.
* gcc.dg/dfp/modes.c: Move to ...
* c-c++-common/modes.c: here.
* gcc.dg/dfp/nan-1.c: Move to ...
* c-c++-common/nan-1.c: here.
* gcc.dg/dfp/nan-2.c: Move to ...
* c-c++-common/nan-2.c: here.
* gcc.dg/dfp/operator-arith-fold.c: Move to ...
* c-c++-common/operator-arith-fold.c: here.
* gcc.dg/dfp/operator-assignment.c: Move to ...
* c-c++-common/operator-assignment.c: here.
* gcc.dg/dfp/operator-comma.c: Move to ...
* c-c++-common/operator-comma.c: here.
* gcc.dg/dfp/operator-cond.c: Move to ...
* c-c++-common/operator-cond.c: here.
* gcc.dg/dfp/operator-logical.c: Move to ...
* c-c++-common/operator-logical.c: here.
* gcc.dg/dfp/operator-unary.c: Move to ...
* c-c++-common/operator-unary.c: here.
* gcc.dg/dfp/pr31385.c: Move to ...
* c-c++-common/pr31385.c: here.
* gcc.dg/dfp/pr33466.c: Move to ...
* c-c++-common/pr33466.c: here.
* gcc.dg/dfp/pr35620.c: Move to ...
* c-c++-common/pr35620.c: here.
* gcc.dg/dfp/pr36800.c: Move to ...
* c-c++-common/pr36800.c: here.
* gcc.dg/dfp/pr39034.c: Move to ...
* c-c++-common/pr39034.c: here.
* gcc.dg/dfp/pr39035.c: Move to ...
* c-c++-common/pr39035.c: here.
* gcc.dg/dfp/pr39902.c: Move to ...
* c-c++-common/pr39902.c: here.
* gcc.dg/dfp/pr39986.c: Move to ...
* c-c++-common/pr39986.c: here.
* gcc.dg/dfp/signbit-1.c: Move to ...
* c-c++-common/signbit-1.c: here.
* gcc.dg/dfp/signbit-2.c: Move to ...
* c-c++-common/signbit-2.c: here.
* gcc.dg/dfp/struct-layout-1.c: Move to ...
* c-c++-common/struct-layout-1.c: here.
* gcc.dg/dfp/usual-arith-conv.c: Move to ...
* c-c++-common/usual-arith-conv.c: here.
* gcc.dg/dfp/usual-arith-conv-const.c: Move to ...
* c-c++-common/usual-arith-conv-const.c: here.
From-SVN: r151861
Jack Howarth [Fri, 18 Sep 2009 15:16:44 +0000 (15:16 +0000)]
re PR testsuite/41288 (gcc.target/x86_64/abi/test_struct_returning.c regressions on *-apple-darwin* at -m64)
PR testsuite/41288
* gcc.target/x86_64/abi/asm-support-darwin.s (snapshot_ret): Preserve
stack alignment.
From-SVN: r151855
Uros Bizjak [Fri, 18 Sep 2009 15:12:48 +0000 (17:12 +0200)]
re PR target/38288 (i386/i386.c: 7 * set but not used variables)
PR target/38288
From David Binderman <dcb314@hotmail.com>:
* gcc/config/i386/i386.c (ix86_function_regparm): Remove useless
local variable f. Remove stale comments.
(ix86_compute_frame_layout): Remove useless local variable total_size.
Remove #if 0'd code.
(legitimate_address_p): Remove useless local variables
reason_rtx and reason.
(ix86_split_copysign_const): Remove useless local variable op1.
(scale_counter): Remove useless local variable piece_size_mask.
From-SVN: r151854
Arnaud Charlet [Fri, 18 Sep 2009 14:01:37 +0000 (16:01 +0200)]
[multiple changes]
2009-09-18 Pascal Obry <obry@adacore.com>
* mingw32.h: Activate Unicode support for x86-64 Windows platform.
2009-09-18 Vadim Godunko <godunko@adacore.com>
* s-oscons-tmplt.c: Add circuit for handling IOV_MAX macro on IRIX.
2009-09-18 Javier Miranda <miranda@adacore.com>
* exp_aggr.adb (Backend_Processing_Possible): Disable backend
processing for array aggregates in the VM backend if the array has
aliased components.
2009-09-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_Indexed_Component): Emit error if the type of
the prefix indicates a previous semantic error, and this is the first
error in the program.
2009-09-18 Bob Duff <duff@adacore.com>
* gnat_ugn.texi: Minor editing.
From-SVN: r151844
Arnaud Charlet [Fri, 18 Sep 2009 13:55:20 +0000 (15:55 +0200)]
[multiple changes]
2009-09-18 Vincent Celier <celier@adacore.com>
* prj.ads, prj.adb (Project_Data): New component
Imported_Directories_Switches.
2009-09-18 Pascal Obry <obry@adacore.com>
* mingw32.h: Include standard _mingw.h file.
Define _WIN32_WINNT only if not already defined.
From-SVN: r151843
Arnaud Charlet [Fri, 18 Sep 2009 13:50:26 +0000 (15:50 +0200)]
[multiple changes]
2009-09-18 Thomas Quinot <quinot@adacore.com>
* g-socket.adb (Is_Open): New function indicating whether a
Selector_Type object is open.
2009-09-18 Vincent Celier <celier@adacore.com>
* osint-c.adb (Create_Output_Library_Info): Make sure that the ALI file
is deleted before creating it.
2009-09-18 Robert Dewar <dewar@adacore.com>
* bindgen.adb: Minor reformatting
From-SVN: r151842
Arnaud Charlet [Fri, 18 Sep 2009 13:40:54 +0000 (15:40 +0200)]
[multiple changes]
2009-09-18 Arnaud Charlet <charlet@adacore.com>
* s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
s-taprop-irix.adb, s-taprop-posix.adb (Abort_Task): Do nothing if no
signal handler is installed.
* s-tassta.adb (Finalize_Global_Tasks): Do not wait for independent
tasks if Abort_Task_Interrupt cannot be used.
2009-09-18 Vincent Celier <celier@adacore.com>
* prj-tree.ads: Minor comment update
From-SVN: r151841
Jakub Jelinek [Fri, 18 Sep 2009 08:48:31 +0000 (10:48 +0200)]
stmt.c (expand_asm_operands): Set REG_ATTRS on the temporary from output decl.
* stmt.c (expand_asm_operands): Set REG_ATTRS on the temporary from
output decl.
From-SVN: r151837
GCC Administrator [Fri, 18 Sep 2009 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151829
Michael Haubenwallner [Fri, 18 Sep 2009 00:03:19 +0000 (02:03 +0200)]
re PR target/40913 (hppa-hpux: libgcc_s.sl does not have the 'internal name' (=soname) set)
PR target/40913
* config/pa/t-hpux-shlib: Set soname in libgcc_s.sl.
From-SVN: r151826
Joseph Myers [Thu, 17 Sep 2009 23:54:25 +0000 (00:54 +0100)]
libstdc++.exp (check_v3_target_binary_io): New.
* testsuite/lib/libstdc++.exp (check_v3_target_binary_io): New.
* testsuite/lib/dg-options.exp (dg-require-binary-io): New.
* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc,
testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc,
testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc,
testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc,
testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc,
testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc,
testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc,
testsuite/27_io/basic_istream/readsome/char/6746-2.cc,
testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc,
testsuite/27_io/objects/char/10.cc: Use dg-require-binary-io.
From-SVN: r151825
Joseph Myers [Thu, 17 Sep 2009 23:53:28 +0000 (00:53 +0100)]
vstring.h (to_wstring(long long), [...]): Disable for _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
* include/ext/vstring.h (to_wstring(long long),
to_wstring(unsigned long long), to_wstring(long double)): Disable
for _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
From-SVN: r151824
Andrew Pinski [Thu, 17 Sep 2009 23:03:55 +0000 (16:03 -0700)]
re PR c++/39365 (++ operator with volatile bool increments)
2009-09-17 Andrew Pinski <pinskia@gcc.gnu.org>
PR c++/39365
* typeck.c (cp_build_unary_op): Check TREE_CODE for bools instead of
using same_type_p.
(convert_for_assignment): Likewise.
* cvt.c (type_promotes_to): Likewise.
2009-09-17 Andrew Pinski <pinskia@gcc.gnu.org>
PR c++/39365
* g++.dg/expr/bool3.C: New test.
* g++.dg/expr/bool4.C: New test.
From-SVN: r151823
Janis Johnson [Thu, 17 Sep 2009 21:41:38 +0000 (21:41 +0000)]
dfp-dbg.h: Define EXTERN.
* gcc/testsuite/gcc.dg/dfp/dfp-dbg.h: Define EXTERN.
* gcc/testsuite/gcc.dg/dfp/signbit-2.c: Use it.
* gcc/testsuite/gcc.dg/dfp/func-vararg-alternate.h: Change two
arguments to unsigned int.
* gcc/testsuite/gcc.dg/dfp/convert-bfp-10.c: Don't include float.h.
* gcc/testsuite/gcc.dg/dfp/convert-bfp-fold.c: Include dfp-dbg.h.
* gcc/testsuite/gcc.dg/dfp/convert-dfp-fold.c: Ditto
* gcc/testsuite/gcc.dg/dfp/convert-int-max-fold.c: Ditto.
* gcc/testsuite/gcc.dg/dfp/operator-arith-fold.c: Ditto.
* gcc/testsuite/gcc.dg/dfp/pr39986.c: Ditto.
* gcc/testsuite/gcc.dg/dfp/usual-arith-conv-const.c: Ditto.
* gcc/testsuite/gcc.dg/dfp/pr31385.c: Use mode in typedef, not C type.
* gcc/testsuite/gcc.dg/dfp/pr35620.c: Define typedef for C++.
* gcc/testsuite/gcc.dg/dfp/convert-int.c: Define BOOL for C++.
* gcc/testsuite/gcc.dg/dfp/convert-int-fold.c: Ditto.
From-SVN: r151821
Loren J. Rittle [Thu, 17 Sep 2009 20:54:56 +0000 (20:54 +0000)]
PR testsuite/32843 (strikes again)
2009-09-17 Loren J. Rittle <ljrittle@acm.org>
PR testsuite/32843 (strikes again)
* src/x86/ffi.c (ffi_prep_cif_machdep): Add X86_FREEBSD to
enable proper extension on char and short.
From-SVN: r151819
Jakub Jelinek [Thu, 17 Sep 2009 20:31:54 +0000 (22:31 +0200)]
c-decl.c (finish_struct): Adjust DECL_SOURCE_LOCATION of TYPE_STUB_DECL.
* c-decl.c (finish_struct): Adjust DECL_SOURCE_LOCATION of
TYPE_STUB_DECL.
* gcc.dg/debug/dwarf2/struct-loc1.c: New test.
From-SVN: r151816
Alexandre Oliva [Thu, 17 Sep 2009 20:29:56 +0000 (20:29 +0000)]
dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and DW_OP_implicit_value even without dwarf_version 4.
* dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and
DW_OP_implicit_value even without dwarf_version 4.
From-SVN: r151815
Jan Hubicka [Thu, 17 Sep 2009 17:27:00 +0000 (19:27 +0200)]
dwarf2out.c: Include tree-pass.h and gimple.h.
* dwarf2out.c: Include tree-pass.h and gimple.h.
(loc_list_plus_const): New function.
(loc_descriptor_from_tree_1): Rename to ...
(loc_descriptor_from_tree): ... remove original.
(loc_list_from_tree): New function.
(add_AT_location_description): Accept location list.
(tls_mem_loc_descriptor): Update call of loc_descriptor_from_tree.
(concatn_mem_loc_descriptor): Remove.
(mem_loc_descriptor): Handle CONCAT/CONCATN and VAR_LOCATION by
returning NULL.
(secname_for_decl): Move up.
(hidden_reference_p): New function; break out from ...
(loc_by_refernece): ... here; move up.
(dw_loc_list): New function.
(single_element_loc_list): New function.
(single_element_loc_list_p): New function.
(add_loc_descr_to_each): New function.
(add_loc_list): New function.
(loc_descr_from_tree): Make wraper of loc_list_from_tree.
(loc_list_from_tree): Reroganized from loc_descr_from_tree;
add diagnostics why expansion failed.
(add_location_or_const_value_attribute): Support location lists.
(add_bound_info): Likewise.
(descr_info_loc): Update call of loc_descriptor_from_tree.
(gen_variable_die): Work on location lists.
* final.c (pass_final): Add dump file.
* Makefile.in (dwarf2out.o): Add new dependencies.
From-SVN: r151807
Janis Johnson [Thu, 17 Sep 2009 17:07:24 +0000 (17:07 +0000)]
re PR c/41049 (conversion from integer to decimal float loses trailing zeros)
gcc/
PR c/41049
* real.c decimal_from_integer, decimal_integer_string): New.
(real_from_integer): Use them as special case for decimal float.
* config/dfp-bit.c (_si_to_sd, _usi_to_sd): Use default rounding.
(_di_to_sd, _di_to_dd, _di_to_td, _udi_to_sd, _udi_to_dd, _udi_to_td):
Do not append zero after the decimal point in string to convert.
gcc/testsuite/
PR c/41049
* dfp/pr41049.c: New test.
From-SVN: r151806
H.J. Lu [Thu, 17 Sep 2009 13:36:06 +0000 (13:36 +0000)]
re PR testsuite/41385 (Many regressions on trunk)
2009-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/41385
* gcc.dg/dfp/dfp.exp: Properly save DEFAULT_CFLAGS.
From-SVN: r151803
Alexander Monakov [Thu, 17 Sep 2009 13:33:37 +0000 (17:33 +0400)]
graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only for ARRAY_REFs.
2009-09-17 Alexander Monakov <amonakov@ispras.ru>
gcc:
* graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only
for ARRAY_REFs. Use array_ref_{low,up}_bound to determine bounds.
libgomp:
* testsuite/libgomp.graphite/bounds.c: New test.
From-SVN: r151802
Martin Jambor [Thu, 17 Sep 2009 11:35:38 +0000 (13:35 +0200)]
common.opt (fipa-sra): New switch.
2009-09-17 Martin Jambor <mjambor@suse.cz>
* common.opt (fipa-sra): New switch.
* opts.c (decode_options): Turn flag_ipa_sra on for opt2.
* timevar.def (TV_IPA_SRA): New timevar.
* params.def (ipa-sra-ptr-growth-factor): New parameter.
* doc/invoke.texi: Document -fipa-sra and ipa-sra-ptr-growth-factor.
* tree-sra.c: Include cgraph.c.
(enum sra_mode): Added SRA_MODE_EARLY_IPA.
(struct access): Added fields stmt, grp_maybe_modified, grp_scalar_ptr
and grp_not_necessarilly_dereferenced.
(func_param_count): New variable.
(encountered_apply_args): New variable.
(bb_dereferences): New variable.
(final_bbs): New variable.
(no_accesses_representant): New variable.
(no_accesses_p): New function.
(dump_access): Dump the new fields.
(sra_initialize): Set encountered_apply_args to false.
(get_ssa_base_param): New function.
(mark_parm_dereference): New function.
(create_access): Caring for INIDRECT_REFs and different handling of
varialble length accesses in early IPA SRA. Store the stmt - a new
parameter - to the new access.
(build_access_from_expr_1): New parameter stmt, passed to
create_access. Handle INDIRECT_REFs.
(build_access_from_expr): Pass the current statement to
build_access_from_expr_1.
(disqualify_ops_if_throwing_stmt): Trigger only in intraprocedural
passes.
(build_accesses_from_assign): Pass the current statement to
build_access_from_expr_1. Do not create assign links in IPA-SRA.
(scan_function): Call handle_ssa_defs on phi nodes. Set bits in
final_bbs when necessary. Check for calls to __builtin_apply_args.
Fixup EH info if anythng was changed.
(is_unused_scalar_param): New function.
(ptr_parm_has_direct_uses): New function.
(find_param_candidates): New function.
(mark_maybe_modified): New function.
(analyze_modified_params): New function.
(propagate_dereference_distances): New function.
(dump_dereferences_table): New function.
(analyze_caller_dereference_legality): New function.
(unmodified_by_ref_scalar_representative): New function.
(splice_param_accesses): New function.
(decide_one_param_reduction): New function.
(enum ipa_splicing_result): New type.
(splice_all_param_accesses): New function.
(get_param_index): New function.
(turn_representatives_into_adjustments): New function.
(analyze_all_param_acesses): New function.
(get_replaced_param_substitute): New function.
(get_adjustment_for_base): New function.
(replace_removed_params_ssa_names): New function.
(sra_ipa_reset_debug_stmts): New function.
(sra_ipa_modify_expr): New function.
(sra_ipa_modify_assign): New function.
(convert_callers): New function.
(modify_function): New function.
(ipa_sra_preliminary_function_checks): New function.
(ipa_early_sra): New function.
(ipa_early_sra_gate): New function.
(pass_early_ipa_sra): New variable.
* Makefile.in (tree-sra.o): Add cgraph.h to dependencies.
Testsuite:
* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Do not run IPA-SRA.
* gcc.dg/ipa/ipa-sra-1.c: New test.
* gcc.dg/ipa/ipa-sra-2.c: New test.
* gcc.dg/ipa/ipa-sra-3.c: New test.
* gcc.dg/ipa/ipa-sra-4.c: New test.
* gcc.dg/ipa/ipa-sra-5.c: New test.
* gcc.c-torture/execute/ipa-sra-1.c: New test.
* gcc.c-torture/execute/ipa-sra-2.c: New test.
From-SVN: r151800
Michael Matz [Thu, 17 Sep 2009 11:11:58 +0000 (11:11 +0000)]
re PR middle-end/41347 (ICE with -O3 or '-O2 -finline-functions')
PR middle-end/41347
* tree.c (build_type_attribute_qual_variant): Export.
* tree.h (build_type_attribute_qual_variant): Declare.
* tree-inline.c (remap_type_1): Use it to build variants with
the original qualifiers and attributes.
testsuite/
* gfortran.dg/pr41347.f90: New test.
From-SVN: r151799
Bob Duff [Thu, 17 Sep 2009 10:58:39 +0000 (12:58 +0200)]
g-socket.ads: Document the fact that Close_Selector has no effect on a closed selector.
2009-09-17 Bob Duff <duff@adacore.com>
* g-socket.ads: Document the fact that Close_Selector has no effect on
a closed selector.
* g-socket.adb: Raise an exception when a Selector that should be open
is closed.
(Check_Selector): Declare RSig as a constant rather than a renames,
less confusing.
From-SVN: r151798
Arnaud Charlet [Thu, 17 Sep 2009 10:54:32 +0000 (12:54 +0200)]
Minor reformatting.
From-SVN: r151797
Robert Dewar [Thu, 17 Sep 2009 10:54:01 +0000 (10:54 +0000)]
exp_ch9.adb, [...]: Minor reformatting
2009-09-17 Robert Dewar <dewar@adacore.com>
* exp_ch9.adb, exp_ch5.adb, exp_ch4.adb, prj-conf.adb, prj-env.ads,
prj-ext.adb: Minor reformatting
From-SVN: r151796
Arnaud Charlet [Thu, 17 Sep 2009 10:50:49 +0000 (12:50 +0200)]
[multiple changes]
2009-09-17 Emmanuel Briot <briot@adacore.com>
* prj-conf.adb, prj-env.adb, prj-env.ads (Create_Temp_File): Moved to
spec.
(Do_Autoconf): If the object directory does not exists, create auto.cgpr
in a temporary directory instead
2009-09-17 Bob Duff <duff@adacore.com>
* a-dynpri.adb (Set_Priority): Don't do anything if the task is already
terminated.
(Get_Priority): Correct message for "terminated" case -- it said "null".
2009-09-17 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb: Minor reformatting
From-SVN: r151795
Emmanuel Briot [Thu, 17 Sep 2009 10:46:35 +0000 (10:46 +0000)]
2009-09-17 Emmanuel Briot <briot@adacore.com>
* gnatcmd.adb, make.adb, prj-part.adb, prj-ext.adb, prj-ext.ads,
switch-m.adb, switch-m.ads, clean.adb, prj-tree.ads
(Project_Node_Tree_Data.Project_Path): New field.
* prj-conf.adb (Do_Autoconf): Remove "creating auto.cgpr" message
From-SVN: r151794
Emmanuel Briot [Thu, 17 Sep 2009 10:41:33 +0000 (10:41 +0000)]
prj-ext.adb, [...] (Is_External_Assignment): Remove duplicate code.
2009-09-17 Emmanuel Briot <briot@adacore.com>
* prj-ext.adb, prj-ext.ads, makeutl.adb (Is_External_Assignment):
Remove duplicate code.
(Prj.Ext): Fix memory leak
(Check): Now allow the syntax "-Xfoo=" to set an empty value to the
variable. This was previously allowed in the code in
Is_External_Assignment, and some tests rely on it
From-SVN: r151793
Arnaud Charlet [Thu, 17 Sep 2009 10:38:31 +0000 (12:38 +0200)]
[multiple changes]
2009-09-17 Bob Duff <duff@adacore.com>
* gnat_rm.texi, s-oscons-tmplt.c: Minor typo
2009-09-17 Emmanuel Briot <briot@adacore.com>
* gnatcmd.adb, prj-proc.adb, make.adb, prj-ext.adb, prj-ext.ads,
makeutl.adb, makeutl.ads, clean.adb, prj-pars.adb, prj-pars.ads,
prj-conf.adb, prj-conf.ads, prj-tree.adb, prj-tree.ads, prj-proc.ads,
prj-nmsc.ads (Add, Value_Of, Reset): new parameter Tree.
Scenario variables are now specific to each project tree loaded in
memory.
Code clean ups.
2009-09-17 Javier Miranda <miranda@adacore.com>
* exp_disp.adb (Make_DT): Remove wrong line of code that was
undocumented and probably added by mistake.
From-SVN: r151792
Johannes Singler [Thu, 17 Sep 2009 08:42:39 +0000 (08:42 +0000)]
algobase.h: Replace tabs by spaces; correct line breaks.
2009-09-17 Johannes Singler <singler@ira.uka.de>
* include/parallel/algobase.h: Replace tabs by spaces;
correct line breaks.
* include/parallel/algorithmfwd.h: Likewise.
* include/parallel/balanced_quicksort.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/checkers.h: Likewise.
* include/parallel/compatibility.h: Likewise.
* include/parallel/equally_split.h: Likewise.
* include/parallel/find.h: Likewise.
* include/parallel/for_each.h: Likewise.
* include/parallel/for_each_selectors.h: Likewise.
* include/parallel/iterator.h: Likewise.
* include/parallel/list_partition.h: Likewise.
* include/parallel/losertree.h: Likewise.
* include/parallel/merge.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/multiway_merge.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/numeric: Likewise.
* include/parallel/numericfwd.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/partition.h: Likewise.
* include/parallel/queue.h: Likewise.
* include/parallel/quicksort.h: Likewise.
* include/parallel/random_number.h: Likewise.
* include/parallel/random_shuffle.h: Likewise.
* include/parallel/search.h: Likewise.
* include/parallel/set_operations.h: Likewise.
* include/parallel/settings.h: Likewise.
* include/parallel/sort.h: Likewise.
* include/parallel/types.h: Likewise.
* include/parallel/unique_copy.h: Likewise.
* include/parallel/workstealing.h: Likewise.
* include/parallel/algo.h: Likewise;
shorten _ForwardIterator to _FIterator.
* include/parallel/find_selectors.h: Likewise.
From-SVN: r151791
Andreas Krebbel [Thu, 17 Sep 2009 07:52:40 +0000 (07:52 +0000)]
cfglayout.c (fixup_reorder_chain): Accept conditional jumps without a fallthrough edge.
2009-09-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* cfglayout.c (fixup_reorder_chain): Accept conditional jumps
without a fallthrough edge.
2009-09-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.c-torture/compile/
20090917-1.c: New testcase.
From-SVN: r151790
GCC Administrator [Thu, 17 Sep 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151785
DJ Delorie [Wed, 16 Sep 2009 22:18:30 +0000 (18:18 -0400)]
m32c.c (m32c_emit_epilogue): Check for R8C or M16C chip and ignore the "fast_interrupt" attribute if so.
* config/m32c/m32c.c (m32c_emit_epilogue): Check for R8C or M16C
chip and ignore the "fast_interrupt" attribute if so.
From-SVN: r151780
Jonathan Yong [Wed, 16 Sep 2009 21:38:46 +0000 (21:38 +0000)]
natVMSecureRandomWin32.cc: Correct UnsupportedOperationException namespace.
2009-09-16 Jonathan Yong <jon_y@users.sourceforge.net>
* gnu/java/security/jce/prng/natVMSecureRandomWin32.cc: Correct
UnsupportedOperationException namespace.
From-SVN: r151775
Richard Henderson [Wed, 16 Sep 2009 20:12:35 +0000 (13:12 -0700)]
re PR middle-end/41360 (Revision 151696 breaks gcc.c-torture/compile/builtin_unreachable-1.c)
PR middle-end/41360
* cfgbuild.c (find_bb_boundaries): Really re-instate 2009-09-02
barrier fix.
From-SVN: r151771
Uros Bizjak [Wed, 16 Sep 2009 17:42:01 +0000 (19:42 +0200)]
default_format_denormal_2.f90: Add ieee options.
* gfortran.dg/default_format_denormal_2.f90: Add ieee options.
* gfortran.dg/default_format_denormal_1.f90: Ditto. Remove
alpha*-*-* target from XFAIL list.
From-SVN: r151767
Richard Henderson [Wed, 16 Sep 2009 16:39:17 +0000 (09:39 -0700)]
Fix out-of-date comment.
From-SVN: r151765
Janis Johnson [Wed, 16 Sep 2009 16:38:49 +0000 (16:38 +0000)]
dfp.exp: Use appropriate default options.
* gcc.dg/dfp/dfp.exp: Use appropriate default options.
* gcc.dg/dfp/dfp-dbg.h: New; define FAILURE, FINISH.
* gcc.dg/dfp/cast-bad.c: Use default options.
* gcc.dg/dfp/compare-rel-const.c: Ditto.
* gcc.dg/dfp/composite-type.c: Ditto.
* gcc.dg/dfp/constants.c: Ditto.
* gcc.dg/dfp/constants-hex.c: Ditto.
* gcc.dg/dfp/constants-pedantic.c: Ditto.
* gcc.dg/dfp/convert-bfp-fold.c: Ditto.
* gcc.dg/dfp/convert-dfp-fold.c: Ditto.
* gcc.dg/dfp/convert-int-max-fold.c: Ditto.
* gcc.dg/dfp/ctypes.c: Ditto.
* gcc.dg/dfp/ddmode-ice.c: Ditto.
* gcc.dg/dfp/dec-eval-method-2.c: Ditto.
* gcc.dg/dfp/float-constant-double.c: Ditto.
* gcc.dg/dfp/keywords-pedantic.c: Ditto.
* gcc.dg/dfp/keywords-reserved.c: Ditto.
* gcc.dg/dfp/modes.c: Ditto.
* gcc.dg/dfp/operator-bitwise.c: Ditto.
* gcc.dg/dfp/pr31344.c: Ditto.
* gcc.dg/dfp/pr31385.c: Ditto.
* gcc.dg/dfp/pr33466.c: Ditto.
* gcc.dg/dfp/pr35620.c: Ditto.
* gcc.dg/dfp/pr37435.c: Ditto.
* gcc.dg/dfp/pr39986.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-1.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-2.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-3.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-4.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-7.c: Ditto.
* gcc.dg/dfp/pragma-float-const-decimal64-8.c: Ditto.
* gcc.dg/dfp/typespec.c: Ditto.
* gcc.dg/dfp/usual-arith-conv-bad.c: Ditto.
* gcc.dg/dfp/usual-arith-conv-bad-2.c: Ditto.
* gcc.dg/dfp/usual-arith-conv-const.c: Ditto.
* gcc.dg/dfp/Wbad-function-cast-1.c: Ditto.
* gcc.dg/dfp/Wtraditional-conversion-2.c: Ditto.
* gcc.dg/dfp/wtr-conversion-1.c: Ditto.
* gcc.dg/dfp/compare-eq.h: Define custom debug macros.
* gcc.dg/dfp/compare-rel.h: Ditto.
* gcc.dg/dfp/compare-special.h: Ditto.
* gcc.dg/dfp/convert.h: Ditto.
* gcc.dg/dfp/fe-check.h: Ditto.
* gcc.dg/dfp/call-by-value.c: Use default options and
debug macros.
* gcc.dg/dfp/cast.c: Ditto.
* gcc.dg/dfp/compare-eq-const.c: Ditto.
* gcc.dg/dfp/compare-eq-d32.c: Ditto.
* gcc.dg/dfp/compare-eq-d64.c: Ditto.
* gcc.dg/dfp/compare-eq-d128.c: Ditto.
* gcc.dg/dfp/compare-eq-dfp.c: Ditto.
* gcc.dg/dfp/compare-rel-d32.c: Ditto.
* gcc.dg/dfp/compare-rel-d64.c: Ditto.
* gcc.dg/dfp/compare-rel-d128.c: Ditto.
* gcc.dg/dfp/compare-rel-dfp.c: Ditto.
* gcc.dg/dfp/compare-special-d32.c: Ditto.
* gcc.dg/dfp/compare-special-d64.c: Ditto.
* gcc.dg/dfp/compare-special-d128.c: Ditto.
* gcc.dg/dfp/constants-zero.c: Ditto.
* gcc.dg/dfp/convert-bfp-2.c: Ditto.
* gcc.dg/dfp/convert-bfp-3.c: Ditto.
* gcc.dg/dfp/convert-bfp-4.c: Ditto.
* gcc.dg/dfp/convert-bfp-5.c: Ditto.
* gcc.dg/dfp/convert-bfp-6.c: Ditto.
* gcc.dg/dfp/convert-bfp-7.c: Ditto.
* gcc.dg/dfp/convert-bfp-8.c: Ditto.
* gcc.dg/dfp/convert-bfp-9.c: Ditto.
* gcc.dg/dfp/convert-bfp-10.c: Ditto.
* gcc.dg/dfp/convert-bfp-11.c: Ditto.
* gcc.dg/dfp/convert-bfp-12.c: Ditto.
* gcc.dg/dfp/convert-bfp-13.c: Ditto.
* gcc.dg/dfp/convert-bfp-14.c: Ditto.
* gcc.dg/dfp/convert-bfp.c: Ditto.
* gcc.dg/dfp/convert-complex.c: Ditto.
* gcc.dg/dfp/convert-dfp.c: Ditto.
* gcc.dg/dfp/convert-dfp-fold-2.c: Ditto.
* gcc.dg/dfp/convert-dfp-round.c: Ditto.
* gcc.dg/dfp/convert-int.c: Ditto.
* gcc.dg/dfp/convert-int-fold.c: Ditto.
* gcc.dg/dfp/convert-int-max.c: Ditto.
* gcc.dg/dfp/convert-int-saturate.c: Ditto.
* gcc.dg/dfp/decfloat-constants.c: Ditto.
* gcc.dg/dfp/fe-binop.c: Ditto.
* gcc.dg/dfp/fe-convert-1.c: Ditto.
* gcc.dg/dfp/fe-convert-2.c: Ditto.
* gcc.dg/dfp/fe-convert-3.c: Ditto.
* gcc.dg/dfp/func-array.c: Ditto.
* gcc.dg/dfp/func-deref.c: Ditto.
* gcc.dg/dfp/func-mixed.c: Ditto.
* gcc.dg/dfp/func-pointer.c: Ditto.
* gcc.dg/dfp/func-scalar.c: Ditto.
* gcc.dg/dfp/func-struct.c: Ditto.
* gcc.dg/dfp/func-vararg-alternate.h: Ditto.
* gcc.dg/dfp/func-vararg-alternate-d32.c: Ditto.
* gcc.dg/dfp/func-vararg-alternate-d64.c: Ditto.
* gcc.dg/dfp/func-vararg-alternate-d128.c: Ditto.
* gcc.dg/dfp/func-vararg-alternate-d128-2.c: Ditto.
* gcc.dg/dfp/func-vararg-dfp.c: Ditto.
* gcc.dg/dfp/func-vararg-mixed.c: Ditto.
* gcc.dg/dfp/func-vararg-mixed-2.c: Ditto.
* gcc.dg/dfp/func-vararg-size0.c: Ditto.
* gcc.dg/dfp/inf-1.c: Ditto.
* gcc.dg/dfp/loop-index.c: Ditto.
* gcc.dg/dfp/nan-1.c: Ditto.
* gcc.dg/dfp/nan-2.c: Ditto.
* gcc.dg/dfp/operator-arith-fold.c: Ditto.
* gcc.dg/dfp/operator-assignment.c: Ditto.
* gcc.dg/dfp/operator-comma.c: Ditto.
* gcc.dg/dfp/operator-cond.c: Ditto.
* gcc.dg/dfp/operator-logical.c: Ditto.
* gcc.dg/dfp/operator-unary.c: Ditto.
* gcc.dg/dfp/pr36800.c: Ditto.
* gcc.dg/dfp/pr39034.c: Ditto.
* gcc.dg/dfp/pr39035.c: Ditto.
* gcc.dg/dfp/pr39902.c: Ditto.
* gcc.dg/dfp/signbit-1.c: Ditto.
* gcc.dg/dfp/signbit-2.c: Ditto.
* gcc.dg/dfp/struct-layout-1.c: Ditto.
* gcc.dg/dfp/union-init.c: Ditto.
* gcc.dg/dfp/usual-arith-conv.c: Ditto.
From-SVN: r151764
Richard Henderson [Wed, 16 Sep 2009 16:26:55 +0000 (09:26 -0700)]
re PR target/41246 (should "sorry" when regparm=3 and nested functions are encountered)
PR target/41246
* tree-cfg.c (verify_gimple_call): Validate that
* gimple_call_chain
is set only if DECL_NO_STATIC_CHAIN is unset.
* tree-nested.c (iter_nestinfo_start, iter_nestinfo_next): New.
(FOR_EACH_NEST_INFO): New.
(walk_all_functions): Use it.
(finalize_nesting_tree): Likewise.
(unnest_nesting_tree): Likewise.
(free_nesting_tree): Use iter_nestinfo_start, iter_nestinfo_next.
(get_chain_decl, get_chain_field): Reset DECL_NO_STATIC_CHAIN.
(convert_gimple_call): Early out if gimple_call_chain already set.
(convert_all_function_calls): Iterate until no new functions
require a static chain.
(finalize_nesting_tree_1): Assert DECL_NO_STATIC_CHAIN is unset
when building a trampoline. Use dump_function_to_file instead
of dump_function.
(lower_nested_functions): Open dump_file. Validate that decls
that have DECL_NO_STATIC_CHAIN from the front end don't have that
bit reset by this pass.
From-SVN: r151762
Michael Matz [Wed, 16 Sep 2009 16:12:18 +0000 (16:12 +0000)]
re PR fortran/41212 (miscompilation at -O2)
PR fortran/41212
* tree.h (struct tree_decl_common): Add decl_restricted_flag,
shorten decl_common_unused.
(DECL_RESTRICTED_P): New accessor.
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Use it
to disambiguate marked decls and restrict pointers.
fortran/
* trans.h (struct lang_type): Remove nontarget_type member.
* trans.c (gfc_add_modify): Don't access it.
* trans-decl.c (gfc_finish_var_decl): Don't allocate and set it,
instead set DECL_RESTRICTED_P on affected decls.
testsuite/
* gfortran.dg/pr41212.f90: New test.
From-SVN: r151761