OSDN Git Service

pf3gnuchains/gcc-fork.git
14 years ago * unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning
bje [Tue, 19 May 2009 13:24:30 +0000 (13:24 +0000)]
* unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning
assignments with memcpy calls.
(add_fdes): Likewise.
(binary_search_unencoded_fdes): Likewise.
(linear_search_fdes): Eliminate type puns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147705 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-19 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 19 May 2009 11:51:54 +0000 (11:51 +0000)]
2009-05-19  Richard Guenther  <rguenther@suse.de>

* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do
not falsely claim to have propagated into all uses.

* gcc.c-torture/compile/20090519-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147702 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
bje [Tue, 19 May 2009 02:42:13 +0000 (02:42 +0000)]
* cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
(cplus_demangle_fill_dtor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147699 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoPR other/40159
aoliva [Tue, 19 May 2009 01:30:35 +0000 (01:30 +0000)]
PR other/40159
* Makefile.tpl (all): Don't assume gcc-bootstrap and
gcc-no-bootstrap are mutually exclusive.
* Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147695 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Tue, 19 May 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147688 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoPR other/40159
aoliva [Tue, 19 May 2009 00:01:17 +0000 (00:01 +0000)]
PR other/40159
* Makefile.tpl (all): Don't end with unconditional success.
* Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147683 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * doc/invoke.texi (C Dialect Options): Update OpenMP specification
bje [Mon, 18 May 2009 23:41:55 +0000 (23:41 +0000)]
* doc/invoke.texi (C Dialect Options): Update OpenMP specification
version to v3.0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147682 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 18 May 2009 23:16:20 +0000 (23:16 +0000)]
2009-05-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40192
* include/bits/stl_construct.h (struct _Destroy_aux): Add.
(_Destroy(_ForwardIterator, _ForwardIterator)): Use the latter.
* testsuite/23_containers/vector/40192.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147680 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/sh/sh-protos.h (sh_legitimate_address_p): Remove.
kkojima [Mon, 18 May 2009 22:31:46 +0000 (22:31 +0000)]
* config/sh/sh-protos.h (sh_legitimate_address_p): Remove.
* config/sh/sh.c (sh_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/sh/sh.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/sh/sh.md: Clean up references to GO_IF_LEGITIMATE_ADDRESS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147679 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Mon, 18 May 2009 22:15:56 +0000 (22:15 +0000)]
2009-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/bits/stl_pair.h (swap): Do not swap rvalues.
* include/bits/stl_deque.h (swap): Likewise.
* include/bits/stl_list.h (swap): Likewise.
* include/bits/stl_vector.h (swap): Likewise.
* include/bits/stl_bvector.h (swap): Likewise.
* include/bits/stl_queue.h (swap): Likewise.
* include/bits/stl_stack.h (swap): Likewise.
* include/bits/stl_tree.h (swap): Likewise.
* include/bits/stl_map.h (swap): Likewise.
* include/bits/stl_multimap.h (swap): Likewise.
* include/bits/stl_set.h (swap): Likewise.
* include/bits/stl_multiset.h (swap): Likewise.
* include/bits/forward_list.h (swap): Likewise.
* include/bits/unique_ptr.h (swap): Likewise.
* include/debug/deque (swap): Likewise.
* include/debug/list (swap): Likewise.
* include/debug/vector (swap): Likewise.
* include/debug/map.h (swap): Likewise.
* include/debug/multimap.h (swap): Likewise.
* include/debug/set.h (swap): Likewise.
* include/debug/multiset.h (swap): Likewise.
* include/debug/unordered_map (swap): Likewise.
* include/debug/unordered_set (swap): Likewise.
* include/ext/vstring.h (swap): Likewise.
* include/tr1_impl/unordered_map (swap): Likewise.
* include/tr1_impl/hashtable (swap): Likewise.
* include/tr1_impl/unordered_set (swap): Likewise.
* include/std/tuple (swap): Likewise.
* include/std/mutex (swap): Likewise.
* include/std/thread (swap): Likewise.
(operator<<): Only output to lvalue streams.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also
test non-member swap.
* testsuite/30_threads/thread/swap/2.cc: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147678 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago Implement explicit conversions ops as specified in N2437.
jason [Mon, 18 May 2009 21:48:02 +0000 (21:48 +0000)]
Implement explicit conversions ops as specified in N2437.
* decl.c (grokdeclarator): Handle explicit conversion ops.
(check_initializer): Pass flags to store_init_value.
* decl2.c (maybe_emit_vtables): Likewise.
* init.c (expand_aggr_init_1): Likewise.
* call.c (convert_class_to_reference): Take flags parm,
check DECL_NONCONVERTING_P.
(build_user_type_conversion_1): Check DECL_NONCONVERTING_P.
(add_builtin_candidates): Simplify getting type of conversion.
(build_object_call): Likewise.  Check DECL_NONCONVERTING_P.
(implicit_conversion): Pass through LOOKUP_ONLYCONVERTING.
(reference_binding): Take flags parm.  Direct-initialize copy parm.
(add_function_candidate): Direct-initialize the copy parm.
(add_conv_candidate): Use LOOKUP_IMPLICIT, not LOOKUP_NORMAL.
(build_builtin_candidate): Add LOOKUP_ONLYCONVERTING.
(conditional_conversion): Likewise.
(convert_like_real): Only complain about DECL_NONCONVERTING_P
constructors.
(perform_implicit_conversion_flags): Add flags parm to
perform_implicit_conversion.  Improve diagnostics.
* cp-tree.h (LOOKUP_IMPLICIT): New macro.
(LOOKUP_COPY_PARM): New bit macro.
* cvt.c (build_expr_type_conversion): Check DECL_NONCONVERTING_P.
* typeck.c (convert_for_assignment): Take flags parm, pass it to
perform_implicit_conversion_flags.
(cp_build_modify_expr): Pass flags to convert_for_assignment.
(convert_for_initialization): Likewise.
* typeck2.c (store_init_value): Take flags parm, pass to
digest_init_flags.
(digest_init_flags): Add flags parm to digest_init.
(digest_init_r): Take flags parm, pass to convert_for_initialization.
(process_init_constructor_array): Pass it.
(process_init_constructor_record): Likewise.
(process_init_constructor_union): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147677 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix for PR debug/40109
dodji [Mon, 18 May 2009 19:19:52 +0000 (19:19 +0000)]
Fix for PR debug/40109

gcc/ChangeLog:
PR debug/40109
* dwarf2out.c (gen_type_die_with_usage): Generate the DIE as a
child of the containing namespace's DIE.

gcc/testsuite/ChangeLog:
PR debug/40109
* g++.dg/debug/dwarf2/nested-1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147674 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/mips/mips.md (*zero_extend<GPR:mode>_trunc<SHORT:mode>,
nemet [Mon, 18 May 2009 18:43:25 +0000 (18:43 +0000)]
* config/mips/mips.md (*zero_extend<GPR:mode>_trunc<SHORT:mode>,
*zero_extendhi_truncqi):  Move after the zero_extend patterns.
(*extenddi_truncate<mode>, *extendsi_truncate<mode>): Move after the
extend patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147673 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
hjl [Mon, 18 May 2009 17:21:13 +0000 (17:21 +0000)]
2009-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR target/39942
* config/i386/i386.c (ix86_avoid_jump_misspredicts): Replace
gen_align with gen_pad.
(ix86_reorg): Check ASM_OUTPUT_MAX_SKIP_PAD instead of
#ifdef ASM_OUTPUT_MAX_SKIP_ALIGN.

* config/i386/i386.h (ASM_OUTPUT_MAX_SKIP_PAD): New.
* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_PAD): Likewise.

* config/i386/i386.md (align): Renamed to ...
(pad): This.  Replace ASM_OUTPUT_MAX_SKIP_ALIGN with
ASM_OUTPUT_MAX_SKIP_PAD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147671 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
hjl [Mon, 18 May 2009 16:53:25 +0000 (16:53 +0000)]
2009-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/39907
* gcc.target/x86_64/abi/asm-support.S (snapshot_ret): Preserve
stack alignment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147667 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago* config.gcc: Fix variable syntax.
schwab [Mon, 18 May 2009 16:49:50 +0000 (16:49 +0000)]
* config.gcc: Fix variable syntax.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147666 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago* config.gcc: Fix variable syntax.
schwab [Mon, 18 May 2009 16:22:47 +0000 (16:22 +0000)]
* config.gcc: Fix variable syntax.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147665 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoPR target/39531
schwab [Mon, 18 May 2009 15:36:18 +0000 (15:36 +0000)]
PR target/39531
* config/m68k/m68k.c (output_andsi3): Mask off sign bit copies
before calling exact_log2.
(output_iorsi3): Likewise.
(output_xorsi3): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147664 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 14:44:55 +0000 (14:44 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40164
* primary.c (gfc_match_rvalue): Handle procedure pointer components in
arrays.
* resolve.c (resolve_ppc_call,resolve_expr_ppc): Resolve component and
array references.
(resolve_fl_derived): Procedure pointer components are not required to
have constant array bounds in their return value.

2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40164
* gfortran.dg/proc_ptr_comp_8.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147663 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 13:56:44 +0000 (13:56 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

* intrinsic.c (add_sym): Fix my last commit (r147655),
which broke bootstrap.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147662 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/sh/sh.c (expand_cbranchdi4): Use a scratch register
kkojima [Mon, 18 May 2009 12:53:22 +0000 (12:53 +0000)]
* config/sh/sh.c (expand_cbranchdi4): Use a scratch register
for the none zero constant operand except for EQ and NE
comprisons even when the first operand is R0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147661 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Andreas Krebbel <krebbel1@de.ibm.com>
krebbel [Mon, 18 May 2009 12:33:55 +0000 (12:33 +0000)]
2009-05-18  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/2064.md: Remove trailing whitespaces.
* config/s390/2084.md: Likewise.
* config/s390/constraints.md: Likewise.
* config/s390/fixdfdi.h: Likewise.
* config/s390/libgcc-glibc.ver: Likewise.
* config/s390/s390-modes.def: Likewise.
* config/s390/s390-protos.h: Likewise.
* config/s390/s390.c: Likewise.
* config/s390/s390.h: Likewise.
* config/s390/s390.md: Likewise.
* config/s390/tpf-unwind.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147660 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 May 2009 10:24:34 +0000 (10:24 +0000)]
2009-05-18  Richard Guenther  <rguenther@suse.de>

PR fortran/40168
* trans-expr.c (gfc_trans_zero_assign): For local array
destinations use an assignment from an empty constructor.

* gfortran.dg/array_memset_2.f90: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147659 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/m68k/m68k.c (m68k_legitimize_address): Fix typo in signature.
mkuvyrkov [Mon, 18 May 2009 10:12:44 +0000 (10:12 +0000)]
* config/m68k/m68k.c (m68k_legitimize_address): Fix typo in signature.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147656 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 09:19:20 +0000 (09:19 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36947
PR fortran/40039
* expr.c (gfc_check_pointer_assign): Check intents when comparing
interfaces.
* gfortran.h (typedef struct gfc_intrinsic_arg): Add 'intent' member.
(gfc_compare_interfaces): Additional argument.
* interface.c (operator_correspondence): Add check for equality of
intents, and new argument 'intent_check'.
(gfc_compare_interfaces): New argument 'intent_check', which is passed
on to operator_correspondence.
(check_interface1): Don't check intents when comparing interfaces.
(compare_parameter): Do check intents when comparing interfaces.
* intrinsic.c (add_sym): Add intents for arguments of intrinsic
procedures.
(add_sym_1,add_sym_1s,add_sym_1m,add_sym_2,add_sym_2s,add_sym_3,
add_sym_3ml,add_sym_3red,add_sym_3s,add_sym_4): Use INTENT_IN by
default.
(add_sym_1_intent,add_sym_1s_intent,add_sym_2s_intent,add_sym_3s_intent)
: New functions to add intrinsic symbols, specifying custom intents.
(add_sym_4s,add_sym_5s): Add new arguments to specify intents.
(add_functions,add_subroutines): Add intents for various intrinsics.
* resolve.c (check_generic_tbp_ambiguity): Don't check intents when
comparing interfaces.
* symbol.c (gfc_copy_formal_args_intr): Copy intent.

2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36947
PR fortran/40039
* gfortran.dg/interface_27.f90: New.
* gfortran.dg/interface_28.f90: New.
* gfortran.dg/proc_ptr_11.f90: Fixing invalid test case.
* gfortran.dg/proc_ptr_result_1.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147655 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago M68K TLS support.
mkuvyrkov [Mon, 18 May 2009 07:54:44 +0000 (07:54 +0000)]
M68K TLS support.
* configure.ac (m68k-*-*): Check if binutils support TLS.
* configure: Regenerate.
* config/m68k/predicates.md (symbolic_operand): Extend comment.
* config/m68k/constraints.md (Cu): New constraint.
* config/m68k/m68k.md (UNSPEC_GOTOFF): Remove.
(UNSPEC_RELOC16, UNSPEC_RELOC32): New constants.
(movsi): Handle TLS symbols.
(addsi3_5200): Handle XTLS symbols, indent.
* config/m68k/m68k-protos.h (m68k_legitimize_tls_address): Declare.
(m68k_tls_reference_p): Declare.
(m68k_legitimize_address): Declare.
(m68k_unwrap_symbol): Declare.
* config/m68k/m68k.opt (mxtls): New option.
* config/m68k/m68k.c (ggc.h): Include.
(m68k_output_dwarf_dtprel): Implement hook.
(TARGET_HAVE_TLS, TARGET_ASM_OUTPUT_DWARF_DTPREL): Define.
(m68k_expand_prologue): Load GOT pointer when function needs it.
(m68k_illegitimate_symbolic_constant_p): Handle TLS symbols.
(m68k_legitimate_constant_address_p): Same.
(m68k_decompose_address): Handle TLS references.
(m68k_get_gp): New static function.
(enum m68k_reloc): New contants.
(TLS_RELOC_P): New macro.
(m68k_wrap_symbol): New static function.
(m68k_unwrap_symbol): New function.
(m68k_final_prescan_insn_1): New static function.
(m68k_final_prescan_insn): New function.
(m68k_move_to_reg, m68k_wrap_symbol_into_got_ref): New static
functions.
(legitimize_pic_address): Handle TLS references..
(m68k_tls_get_addr, m68k_get_tls_get_addr)
(m68k_libcall_value_in_a0_p)
(m68k_call_tls_get_addr, m68k_read_tp, m68k_get_m68k_read_tp)
(m68k_call_m68k_read_tp): Helper variables and functions for ...
(m68k_legitimize_tls_address): Handle TLS references.
(m68k_tls_symbol_p, m68k_tls_reference_p_1, m68k_tls_reference_p):
New functions.
(m68k_legitimize_address): Handle TLS symbols.
(m68k_get_reloc_decoration): New static function.
(m68k_output_addr_const_extra): Handle UNSPEC_RELOC16 and
UNSPEC_RELOC32.
(m68k_output_dwarf_dtprel): Implement hook.
(print_operand_address): Handle UNSPEC_RELOC16 adn UNSPEC_RELOC32.
(m68k_libcall_value): Return result in A0 instead of D0 when asked by
m68k_call_* routines.
(sched_attr_op_type): Handle TLS symbols.
(gt-m68k.h): Include.
* config/m68k/m68k.h (FINAL_PRESCAN_INSN): Define.
(LEGITIMATE_PIC_OPERAND_P): Support TLS.

* gcc.target/m68k/tls-ie.c: New test.
* gcc.target/m68k/tls-le.c: New test.
* gcc.target/m68k/tls-gd.c: New test.
* gcc.target/m68k/tls-ld.c: New test.
* gcc.target/m68k/tls-ie-xgot.c: New test.
* gcc.target/m68k/tls-le-xtls.c: New test.
* gcc.target/m68k/tls-gd-xgot.c: New test.
* gcc.target/m68k/tls-ld-xgot.c: New test.
* gcc.target/m68k/tls-ld-xtls.c: New test.
* gcc.target/m68k/tls-ld-xgot-xtls.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147654 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR ada/40166
ebotcazou [Mon, 18 May 2009 07:40:56 +0000 (07:40 +0000)]
PR ada/40166
* Makefile.in (TOOLS_TARGET_PAIRS): Use the correct path to the
target specific sources.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147652 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Mon, 18 May 2009 00:16:37 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147649 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Martin Jambor <mjambor@suse.cz>
jamborm [Sun, 17 May 2009 23:33:35 +0000 (23:33 +0000)]
2009-05-18  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (ipa_check_stmt_modifications): Removed.
(visit_store_addr_for_mod_analysis): New function.
(ipa_detect_param_modifications): Use walk_stmt_load_store_addr_ops.
(determine_cst_member_ptr): Use gimple_assign_single_p.
(ipa_get_stmt_member_ptr_load_param): Use gimple_assign_single_p.
(ipa_analyze_call_uses): Use !gimple_assign_rhs2 rather than number of
operands.  Don't check number of operands of a NOP_EXPR.

* testsuite/gcc.dg/ipa/modif-1.c: Do not check for unmodified int
parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147645 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-18 Eric Fisher <joefoxreal@gmail.com>
bje [Sun, 17 May 2009 22:10:36 +0000 (22:10 +0000)]
2009-05-18  Eric Fisher  <joefoxreal@gmail.com>
* doc/tree-ssa.texi (SSA Operands): Fix a mistake.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147644 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * win32_threads.c (GC_get_thread_stack_base): Implement for Cygwin.
davek [Sun, 17 May 2009 20:07:18 +0000 (20:07 +0000)]
* win32_threads.c (GC_get_thread_stack_base):  Implement for Cygwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147641 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
hjl [Sun, 17 May 2009 18:36:44 +0000 (18:36 +0000)]
gcc/

2009-05-17  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/40172
* c-common.c (warn_logical_operator): Don't warn if one of
expression isn't always true or false.

gcc/testscase/

2009-05-17  H.J. Lu  <hongjiu.lu@intel.com>

PR c/40172
* gcc.dg/pr40172.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147639 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/40139
jason [Sun, 17 May 2009 18:01:33 +0000 (18:01 +0000)]
PR c++/40139
* pt.c (tsubst_qualified_id): Retain the type if we aren't dealing
with a dependent type.  Actually look up the destructor.
* semantics.c (finish_id_expression): Fix logic.
(finish_qualified_id_expr): Don't try to use 'this' if we aren't in
a function.
* typeck.c (build_x_unary_op): Diagnose taking the address of a
constructor or destructor.
* tree.c (get_first_fn): Handle OFFSET_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147638 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agocp:
jsm28 [Sun, 17 May 2009 16:09:02 +0000 (16:09 +0000)]
cp:
* tree.c (cxx_printable_name_internal): Allow consecutive
translated and untranslated cached copies of the name of the
current function.

testsuite:
* g++.dg/warn/translate-ice-1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147636 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * iso-fortran-env.def: Define INT8, INT16, INT32, INT64, REAL32,
fxcoudert [Sun, 17 May 2009 14:15:24 +0000 (14:15 +0000)]
* iso-fortran-env.def: Define INT8, INT16, INT32, INT64, REAL32,
REAL64 and REAL128.
* gfortran.h (gfc_get_int_kind_from_width_isofortranenv,
gfc_get_real_kind_from_width_isofortranenv): New prototypes.
* iso-c-binding.def: Update definitions for the INT*_T,
INT_LEAST*_T and INT_FAST*_T named parameters.
* trans-types.c (get_typenode_from_name, get_int_kind_from_name,
gfc_get_real_kind_from_width_isofortranenv): New functions.

* gfortran.dg/c_kind_int128_test1.f03: Also test C_INT_FAST128_T.
* gfortran.dg/c_kind_int128_test2.f03: Update comment.
* gfortran.dg/c_kind_params.f90: Also test int_fast*_t.
* gfortran.dg/c_kinds.c: Add int_fast*_t arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147635 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago libiberty/
jules [Sun, 17 May 2009 13:07:08 +0000 (13:07 +0000)]
libiberty/
* pex-win32.c (pex_win32_exec_child): Fix logic to avoid closing
standard handles (stdin, stdout, stderr) in parent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147634 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR fortran/36260
fxcoudert [Sun, 17 May 2009 12:47:00 +0000 (12:47 +0000)]
PR fortran/36260

* intrinsic.c (add_functions, add_subroutines): Fix argument
names and wrap long lines.
* intrinsic.texi: Fix documentation and argument names of
LOG_GAMMA, DATAN2, DBESJN, DTIME, ETIME, FSTAT, STAT, LSTAT,
GET_COMMAND, IDATE, LTIME, MOVE_ALLOC, NINT, OR, PRODUCT,
SUM, RAND, RANDOM_SEED, REAL, SELECTED_INT_KIND,
SELECTED_REAL_KIND and XOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147633 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-17 Kai Tietz <kai.tietz@onevision.com>
ktietz [Sun, 17 May 2009 09:45:39 +0000 (09:45 +0000)]
2009-05-17  Kai Tietz  <kai.tietz@onevision.com>

       * config/i386/biarch32.h: New file.
       * config.gcc: Add for target i386-w64-* the biarch32.h to tm_file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147631 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/mips/mips.md (*zero_extend<mode>_trunchi,
nemet [Sun, 17 May 2009 07:31:25 +0000 (07:31 +0000)]
* config/mips/mips.md (*zero_extend<mode>_trunchi,
*zero_extend<mode>_truncqi): Merge these into ...
(*zero_extend<GPR:mode>_trunc<SHORT:mode>): ... this new pattern.
Name the pattern following this as *zero_extendhi_truncqi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147630 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Sun, 17 May 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147629 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-16 Brad Lucier <lucier@math.purdue.edu>
hjl [Sat, 16 May 2009 22:42:15 +0000 (22:42 +0000)]
2009-05-16  Brad Lucier  <lucier@math.purdue.edu>

PR middle-end/39301
* hwint.h: Add macro HOST_WIDEST_INT_PRINT.
* bitmap.c (bitmap_descriptor): Make fields HOST_WIDEST_INT.
(output_info): Make field HOST_WIDEST_INT.
(print_statistics): Use HOST_WIDEST_INT_PRINT.
(dump_bitmat_statistics): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147624 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config.gcc (use_gcc_stdint): Set to wrap.
fxcoudert [Sat, 16 May 2009 21:46:53 +0000 (21:46 +0000)]
* config.gcc (use_gcc_stdint):  Set to wrap.
* config/darwin.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE,
INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE,
UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE,
UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE,
INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE,
UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147622 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR fortran/33197
fxcoudert [Sat, 16 May 2009 17:33:23 +0000 (17:33 +0000)]
PR fortran/33197

* intrinsic.c (add_functions): Use ERFC_SCALED simplification.
* intrinsic.h (gfc_simplify_erfc_scaled): New prototype.
* simplify.c (fullprec_erfc_scaled, asympt_erfc_scaled,
gfc_simplify_erfc_scaled): New functions.

* gfortran.dg/erf_2.F90: New test.
* gfortran.dg/erfc_scaled_2.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147621 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR fortran/31243
fxcoudert [Sat, 16 May 2009 16:53:02 +0000 (16:53 +0000)]
PR fortran/31243

* resolve.c (resolve_substring): Don't allow too large substring
indexes.
(gfc_resolve_substring_charlen): Fix typo.
(gfc_resolve_character_operator): Fix typo.
(resolve_charlen): Catch unreasonably large string lengths.
* simplify.c (gfc_simplify_len): Don't error out on LEN
range checks.

* gcc/testsuite/gfortran.dg/string_1.f90: New test.
* gcc/testsuite/gfortran.dg/string_2.f90: New test.
* gcc/testsuite/gfortran.dg/string_3.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147619 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config.gcc (mips*-*-*): Support arch_32, arch_64, tune_32 and
jsm28 [Sat, 16 May 2009 16:22:24 +0000 (16:22 +0000)]
* config.gcc (mips*-*-*): Support arch_32, arch_64, tune_32 and
tune_64.
* config/mips/mips.h (MIPS_ABI_DEFAULT, MULTILIB_ABI_DEFAULT):
Move definitions earlier.
(OPT_ARCH64, OPT_ARCH32): Define.
(OPTION_DEFAULT_SPECS): Add entries for arch_32, arch_64, tune_32
and tune_64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147617 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * ChangeLog: Forgotten in previous commit.
fxcoudert [Sat, 16 May 2009 16:11:42 +0000 (16:11 +0000)]
* ChangeLog: Forgotten in previous commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147616 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR fortran/36031
fxcoudert [Sat, 16 May 2009 16:11:11 +0000 (16:11 +0000)]
PR fortran/36031

* decl.c (set_enum_kind): Use global short-enums flag.
* gfortran.h (gfc_option_t): Remove short_enums flag.
* lang.opt (-fshort-enums): Refer to C documentation.
* options.c (gfc_init_options, gfc_handle_option): Use global
short-enums flag.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147615 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/40153
rearnsha [Sat, 16 May 2009 12:53:22 +0000 (12:53 +0000)]
PR target/40153
* arm.md (cstoresi_nltu_thumb1): Use a neg of ltu as the pattern name
implies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147613 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * arm.md (movdi2): Copy non-reg values to DImode registers.
rearnsha [Sat, 16 May 2009 11:50:33 +0000 (11:50 +0000)]
* arm.md (movdi2): Copy non-reg values to DImode registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147612 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-16 David Billinghurst <billingd@gcc.gnu.org>
billingd [Sat, 16 May 2009 10:39:53 +0000 (10:39 +0000)]
2009-05-16  David Billinghurst <billingd@gcc.gnu.org>

* gfortran.dg/default_format_denormal_1.f90: XFAIL on cygwin.
* gfortran.dg/default_format_1.f90: Revert change of 2009-05-12

Correct accidental commit of wrong file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147610 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-13 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Sat, 16 May 2009 10:09:02 +0000 (10:09 +0000)]
2009-05-13  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/std/mutex: Move std::lock_error to ...
* src/compatibility.cc: Here.
* src/mutex.cc: Likewise.
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
for lock types and remove std::lock_error check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147609 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/39942
jakub [Sat, 16 May 2009 07:12:02 +0000 (07:12 +0000)]
PR target/39942
* final.c (label_to_max_skip): New function.
(label_to_alignment): Only use LABEL_TO_ALIGNMENT if
CODE_LABEL_NUMBER <= max_labelno.
* output.h (label_to_max_skip): New prototype.
* config/i386/i386.c (ix86_avoid_jump_misspredicts): Renamed to...
(ix86_avoid_jump_mispredicts): ... this.  Don't define if
ASM_OUTPUT_MAX_SKIP_ALIGN isn't defined.  Update comment.
Handle CODE_LABELs with >= 16 byte alignment or with
max_skip == (1 << align) - 1.
(ix86_reorg): Don't call ix86_avoid_jump_mispredicts if
ASM_OUTPUT_MAX_SKIP_ALIGN isn't defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147607 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/39942
jakub [Sat, 16 May 2009 07:09:52 +0000 (07:09 +0000)]
PR target/39942
* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Don't emit second
.p2align 3 if MAX_SKIP is smaller than 7.
* config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147606 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/ChangeLog:
ian [Sat, 16 May 2009 06:54:11 +0000 (06:54 +0000)]
gcc/ChangeLog:
* alias.c (struct alias_set_entry_d): Rename from struct
alias_set_entry.  Change all uses.
* except.c (struct call_site_record_d): Rename from struct
call_site_record.  Change all uses.
* except.h (struct eh_region_d): Rename from struct eh_region.
Change all uses.
* gcse.c (struct hash_table_d): Rename from struct hash_table.
Change all uses.
* graphite.c (struct ivtype_map_elt_d): Rename fromstruct
ivtype_map_elt.  Change all uses.
(struct rename_map_elt_d): Rename fromstruct rename_map_elt.
Change all uses.
(struct ifsese_d): Rename fromstruct ifsese.  Change all uses.
* graphite.h (struct name_tree_d): Rename from struct name_tree.
Change all uses.
(struct sese_d): Rename from struct sese.  Change all uses.
* omega.h (struct eqn_d): Rename from struct eqn.  Change all
uses.
(struct omega_pb_d): Rename from struct omega_pb.  Change all
uses.
* optabs.h (struct optab_d): Rename from struct optab.  Change all
uses.
(struct convert_optab_d): Rename from struct convert_optab.
Change all uses.
* tree-pass.h (struct ipa_opt_pass_d): Rename fromstruct
ipa_opt_pass.  Change all uses.
* tree-predcom.c (struct dref_d): Rename from struct dref.  Change
all uses.

* c-decl.c (pushtag): If -Wc++-compat, warn if the tag is already
defined as a typedef.
(grokdeclarator): If -Wc++-compat, warn if a typedef is already
defined as a tag.
gcc/cp/ChangeLog:
* cp-tree.h (enum cp_lvalue_kind_flags): Rename from
cp_lvalue_kind.  Change all uses.
(enum base_access_flags): Rename from enum base_access.  Change
all uses.
* parser.c (enum cp_parser_flags): Remove enum tag.
gcc/testsuite/ChangeLog:
* gcc.dg/Wcxx-compat-10.c: New testcase.
libcpp/ChangeLog:
* include/cpplib.h (enum cpp_builtin_type): Rename from enum
builtin_type.  Change all uses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147605 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Sat, 16 May 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147604 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 15 May 2009 23:31:59 +0000 (23:31 +0000)]
2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/21_strings/basic_string/40160.cc: Remove spurious
double include.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147600 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 15 May 2009 22:25:24 +0000 (22:25 +0000)]
2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40160
* include/debug/formatter.h (_Parameter::_Parameter): Don't use
typeid when __GXX_RTTI is undefined.
* src/debug.cc (_Error_formatter::_Parameter::_M_print_field): Adjust
for null _M_variant._M_iterator._M_type,
_M_variant._M_iterator._M_seq_type, _M_variant._M_sequence._M_type.
* testsuite/21_strings/basic_string/40160.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147599 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Fri, 15 May 2009 20:08:21 +0000 (20:08 +0000)]
2009-05-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR 16302
* fold-const.c (make_range,build_range_check,merge_ranges): Move
declaration to...
(merge_ranges): Returns bool.
* tree.h (make_range): .. to here.
(build_range_check): Likewise.
(merge_ranges): Likewise. Renamed from merge_ranges.
* c-typeck.c (parser_build_binary_op): Update calls to
warn_logical_operator.
* c-common.c (warn_logical_operator): Add new warning.
* c-common.h (warn_logical_operator): Update declaration.
cp/
* call.c (build_new_op): Update calls to warn_logical_operator.

testsuite/
* gcc.dg/pr16302.c: New.
* g++.dg/warn/pr16302.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147596 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Fri, 15 May 2009 20:05:36 +0000 (20:05 +0000)]
2009-05-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* ira-conflicts.c (add_insn_allocno_copies): Fix wrong
conditional.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147595 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.dg/torture/builtin-math-5.c: New.
ghazi [Fri, 15 May 2009 18:15:14 +0000 (18:15 +0000)]
* gcc.dg/torture/builtin-math-5.c: New.
* gcc.dg/torture/builtin-math-6.c: New.
* lib/target-supports.exp (check_effective_target_mpc): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147593 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * doc/install.texi: Document MPC requirements, flags etc.
ghazi [Fri, 15 May 2009 18:12:44 +0000 (18:12 +0000)]
* doc/install.texi: Document MPC requirements, flags etc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147592 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * builtins.c (do_mpc_arg1, fold_builtin_ccos): New.
ghazi [Fri, 15 May 2009 18:08:10 +0000 (18:08 +0000)]
* builtins.c (do_mpc_arg1, fold_builtin_ccos): New.
(fold_builtin_cexp): Ensure we get a complex REAL_TYPE.
Evaluate constant arguments.
(fold_builtin_carg): Ensure we get a complex REAL_TYPE.
(fold_builtin_1): Likewise, also evaluate constant arguments.
Remove superfluous break.
(do_mpc_ckconv): New.
* real.h: Include mpc.h.
* toplev.c (print_version): Output MPC version info if available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147591 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Sandra Loosemore <sandra@codesourcery.com>
sandra [Fri, 15 May 2009 17:28:47 +0000 (17:28 +0000)]
2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* fold-const.c (fold_convert_const_real_from_real): Check for
overflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147589 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 H.J. Lu <hongjiu.lu@intel.com>
hjl [Fri, 15 May 2009 17:12:00 +0000 (17:12 +0000)]
2009-05-15  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_reorg): Call optimize_function_for_speed_p
only once.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147588 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * doc/invoke.texi (max-early-inliner-iterations): New flag.
hubicka [Fri, 15 May 2009 17:11:00 +0000 (17:11 +0000)]
* doc/invoke.texi (max-early-inliner-iterations): New flag.
* ipa-inline.c (enum inlining_mode): New INLINE_SIZE_NORECURSIVE.
(try_inline): Fix return value.
(cgraph_decide_inlining_incrementally): Honor new value.
(cgraph_early_inlining): Handle indirect inlining.
* params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): New.

* testsuite/gcc.dg/tree-ssa/inline-3.c: New testcase

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147587 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Jan Hubicka <jh@suse.cz>
hubicka [Fri, 15 May 2009 17:09:13 +0000 (17:09 +0000)]
2009-05-15  Jan Hubicka  <jh@suse.cz>

* cgraph.h (struct cgraph_node): Add finalized_by_frotnend flag.
* cgraphunit.c (cgraph_finalize_function): Set it.
(cgraph_expand_function): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147586 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.target/i386/align-main-1.c (check): Mark noinline.
hubicka [Fri, 15 May 2009 17:02:28 +0000 (17:02 +0000)]
* gcc.target/i386/align-main-1.c (check): Mark noinline.
* gcc.target/i386/align-main-2.c (check): Mark noinline.
* gcc.dg/ipa/ipa-4.c: Disable early inlining.
* gcc.dg/vect/vect-iv-10.c (main1): Mark noinline.
* gcc.dg/vect/costmodel/i386/costmodel-vect-33.c (main1): Mark noinline.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c (main1): Mark noinline.
* gcc.dg/vect/pr31699.c (foo): Mark noinline.
* gcc.dg/vect/pr18400.c (main1): Mark noinline.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147585 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * sibcall-6.c: Add no-ipa-cp argument and mark the function to be
hubicka [Fri, 15 May 2009 16:43:38 +0000 (16:43 +0000)]
* sibcall-6.c: Add no-ipa-cp argument and mark the function to be
optimized by sibcall noinline.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147584 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * sibcall-1.c (track): Mark noinline.
hubicka [Fri, 15 May 2009 16:05:50 +0000 (16:05 +0000)]
* sibcall-1.c (track): Mark noinline.
* sibcall-2.c (track): Mark noinline.
* sibcall-3.c (track): Mark noinline.
* sibcall-4.c (track): Mark noinline.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147583 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * flatten-2.c: Disable early inlining; add comment.
hubicka [Fri, 15 May 2009 15:23:06 +0000 (15:23 +0000)]
* flatten-2.c: Disable early inlining; add comment.
* flatten-3.c: New test based on flatten-2.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147582 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * inclhack.def (glibc_tgmath): Correct bypass.
jsm28 [Fri, 15 May 2009 14:28:42 +0000 (14:28 +0000)]
* inclhack.def (glibc_tgmath): Correct bypass.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147580 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Sandra Loosemore <sandra@codesourcery.com>
sandra [Fri, 15 May 2009 14:22:58 +0000 (14:22 +0000)]
2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* real.c (encode_ieee_half): Define.
(decode_ieee_half): Define.
(ieee_half_format): Define.
(arm_half_format): Define.
* real.h (ieee_half_format): Declare.
(arm_half_format): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147579 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Sandra Loosemore <sandra@codesourcery.com>
sandra [Fri, 15 May 2009 14:20:55 +0000 (14:20 +0000)]
2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* optabs.c (prepare_float_lib_cmp):  Test that the comparison,
swapped, and reversed optabs exist before trying to use them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147578 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Paul Brook <paul@codesourcery.com>
sandra [Fri, 15 May 2009 14:19:19 +0000 (14:19 +0000)]
2009-05-15  Paul Brook  <paul@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/arm/arm.c (neon_vector_mem_operand): Handle element/structure
loads.  Allow PRE_DEC.
(output_move_neon): Handle PRE_DEC.
(arm_print_operand): Add 'A' for neon structure loads.
* config/arm/arm-protos.h (neon_vector_mem_operand): Update prototype.
* config/arm/neon.md (neon_mov): Update comment.
* config/arm/constraints.md (Un, Us): Update neon_vector_mem_operand
calls.
(Um): New constraint.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147577 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago Revert the following patch until testsuite fallout is fixed:
hubicka [Fri, 15 May 2009 13:22:49 +0000 (13:22 +0000)]
Revert the following patch until testsuite fallout is fixed:
* cgraph.c (dump_cgraph_node): Dump size/time/benefit.
* cgraph.h (struct inline_summary): New filed self_wize,
size_inlining_benefit, self_time and time_inlining_benefit.
(struct cgraph_global_info): Replace insns by time ans size fields.
* ipa-cp (ipcp_cloning_candidate_p): Base estimate on size
(ipcp_estimate_growth, ipcp_insert_stage): Likewise.
(ipcp_update_callgraph): Do not touch function bodies.
* ipa-inline.c: Include except.h
MAX_TIME: New constant.
(overall_insns): Remove
(overall_size, max_benefit): New static variables.
(cgraph_estimate_time_after_inlining): New function.
(cgraph_estimate_size_after_inlining): Rewrite using benefits.
(cgraph_clone_inlined_nodes): Update size.
(cgraph_mark_inline_edge): Update size.
(cgraph_estimate_growth): Use size info.
(cgraph_check_inline_limits): Check size.
(cgraph_default_inline_p): Likewise.
(cgraph_edge_badness): Compute badness based on benefit and size cost.
(cgraph_decide_recursive_inlining): Check size.
(cgraph_decide_inlining_of_small_function): Update size; dump sizes and times.
(cgraph_decide_inlining): Likewise.
(cgraph_decide_inlining_incrementally): Likewise; honor PARAM_EARLY_INLINING_INSNS.
(likely_eliminated_by_inlining_p): New predicate.
(estimate_function_body_sizes): New function.
(compute_inline_parameters): Use it.
* except.c (must_not_throw_labels): New function.
* except.h (must_not_throw_labels): Declare.
* tree-inline.c (init_inline_once): Kill inlining_weigths
* tree-ssa-structalias.c: Avoid uninitialized warning.
* params.def (PARAM_MAX_INLINE_INSNS_SINGLE): Reduce to 300.
(PARAM_MAX_INLINE_INSNS_AUTO): Reduce to 60.
(PARAM_INLINE_CALL_COST): Remove.
(PARAM_EARLY_INLINING_INSNS): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147575 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 15 May 2009 13:16:12 +0000 (13:16 +0000)]
2009-05-15  Richard Guenther  <rguenther@suse.de>

* tree-ssa-pre.c (eliminate): Use TODO_update_ssa_only_virtuals,
not TODO_update_ssa.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147574 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 15 May 2009 13:09:53 +0000 (13:09 +0000)]
2009-05-15  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/39999
* gimple.h (gimple_expr_type): Use the expression type looking
through useless conversions.
* tree-ssa-sccvn.c (vn_nary_op_lookup_stmt): Use gimple_expr_type.
(vn_nary_op_insert_stmt): Likewise.
(simplify_binary_expression): Likewise.

* gcc.c-torture/compile/pr39999.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147573 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 15 May 2009 12:26:48 +0000 (12:26 +0000)]
2009-05-15  Richard Guenther  <rguenther@suse.de>

* common.opt (-ftree-forwprop, -ftree-phiprop, -ftree-pta):
New options, enabled by default.
* doc/invoke.texi (-ftree-forwprop, -ftree-phiprop, -ftree-pta):
Document.
* tree-ssa-forwprop.c (gate_forwprop): Use flag_tree_forwprop.
* tree-ssa-phiprop.c (gate_phiprop): Use flag_tree_phiprop.
* tree-ssa-structalias.c (gate_tree_pta): New function.
(pass_build_alias): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147571 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also
jsm28 [Fri, 15 May 2009 12:13:02 +0000 (12:13 +0000)]
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also
recurse on an invariant address if a conversion from a pointer
type to a wider integer type is involved.

testsuite:
* gcc.c-torture/compile/ptr-conv-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147570 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 15 May 2009 10:02:38 +0000 (10:02 +0000)]
2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/26_numerics/random/discrete_distribution/cons/
num_xbound_fun.cc: Minor tweaks.
* testsuite/26_numerics/random/piecewise_constant_distribution/
cons/initlist_fun.cc: Likewise
* testsuite/26_numerics/random/piecewise_constant_distribution/
cons/num_xbound_fun.cc: Likewise
* testsuite/26_numerics/random/piecewise_linear_distribution/
cons/initlist_fun.cc: Likewise
* testsuite/26_numerics/random/piecewise_linear_distribution/
cons/num_xbound_fun.cc: Likewise

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147567 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * cgraph.c (dump_cgraph_node): Dump size/time/benefit.
hubicka [Fri, 15 May 2009 09:53:18 +0000 (09:53 +0000)]
* cgraph.c (dump_cgraph_node): Dump size/time/benefit.
* cgraph.h (struct inline_summary): New filed self_wize,
size_inlining_benefit, self_time and time_inlining_benefit.
(struct cgraph_global_info): Replace insns by time ans size fields.
* ipa-cp (ipcp_cloning_candidate_p): Base estimate on size
(ipcp_estimate_growth, ipcp_insert_stage): Likewise.
(ipcp_update_callgraph): Do not touch function bodies.
* ipa-inline.c: Include except.h
MAX_TIME: New constant.
(overall_insns): Remove
(overall_size, max_benefit): New static variables.
(cgraph_estimate_time_after_inlining): New function.
(cgraph_estimate_size_after_inlining): Rewrite using benefits.
(cgraph_clone_inlined_nodes): Update size.
(cgraph_mark_inline_edge): Update size.
(cgraph_estimate_growth): Use size info.
(cgraph_check_inline_limits): Check size.
(cgraph_default_inline_p): Likewise.
(cgraph_edge_badness): Compute badness based on benefit and size cost.
(cgraph_decide_recursive_inlining): Check size.
(cgraph_decide_inlining_of_small_function): Update size; dump sizes and times.
(cgraph_decide_inlining): Likewise.
(cgraph_decide_inlining_incrementally): Likewise; honor PARAM_EARLY_INLINING_INSNS.
(likely_eliminated_by_inlining_p): New predicate.
(estimate_function_body_sizes): New function.
(compute_inline_parameters): Use it.
* except.c (must_not_throw_labels): New function.
* except.h (must_not_throw_labels): Declare.
* tree-inline.c (init_inline_once): Kill inlining_weigths
* tree-ssa-structalias.c: Avoid uninitialized warning.
* params.def (PARAM_MAX_INLINE_INSNS_SINGLE): Reduce to 300.
(PARAM_MAX_INLINE_INSNS_AUTO): Reduce to 60.
(PARAM_INLINE_CALL_COST): Remove.
(PARAM_EARLY_INLINING_INSNS): New.
doc/invoke.texi (max-inline-insns-auto, early-inlining-insns): Update.
(inline-call-cost): Remove.
(early-inlining-insns): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147566 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 David Billinghurst <billingd@gcc.gnu.org>
billingd [Fri, 15 May 2009 09:23:58 +0000 (09:23 +0000)]
2009-05-15  David Billinghurst <billingd@gcc.gnu.org>

PR libstdc++/36211
* testsuite/lib/libstdc++.exp(v3_target_compile):  Add
cxxldflags to additional_flags rather than cxx_final.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147565 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 David Billinghurst <billingd@gcc.gnu.org>
billingd [Fri, 15 May 2009 09:20:01 +0000 (09:20 +0000)]
2009-05-15  David Billinghurst <billingd@gcc.gnu.org>

* testsuite/26_numerics/random/discrete_distribution/cons/num_xbound_fun.cc:
Replace non-standard macro M_PI with constant pi.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/initlist_fun.cc:
Likewise
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/num_xbound_fun.cc:
Likewise
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/initlist_fun.cc:
Likewise
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/num_xbound_fun.cc:
Likewise

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147564 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. Use them
ebotcazou [Fri, 15 May 2009 09:11:40 +0000 (09:11 +0000)]
* dbxout.c (dbxout_range_type): Add LOW and HIGH parameters.  Use them
for bounds.
(print_int_cst_bounds_in_octal_p): Likewise.
(dbxout_type): Adjust calls to above functions.  Be prepared to deal
with subtypes.
* dwarf2out.c (base_type_die): Likewise.
(is_subrange_type): Delete.
(subrange_type_die): Add LOW and HIGH parameters.  Use them for bounds.
(modified_type_die): Call subrange_type_for_debug_p on subtypes.
* fold-const.c (fold_truth_not_expr) <CONVERT_EXPR>: Do not strip it if
the destination type is boolean.
(build_range_check): Do not special-case subtypes.
(fold_sign_changed_comparison): Likewise.
(fold_unary): Likewise.
* langhooks-def.h (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add LANG_HOOKS_GET_SUBRANGE_BOUNDS.
* langhooks.h (lang_hooks_for_types): Add get_subrange_bounds.
* tree.c (subrange_type_for_debug_p): New predicate based on the former
is_subrange_type.
* tree.h (subrange_type_for_debug_p): Declare.
* tree-chrec.c (avoid_arithmetics_in_type_p): Delete.
(convert_affine_scev): Remove call to above function.
(chrec_convert_aggressive): Likewise.
* tree-ssa.c (useless_type_conversion_p_1): Do not specifically return
false for conversions involving subtypes.
* tree-vrp.c (vrp_val_max): Do not special-case subtypes.
(vrp_val_min): Likewise.
(needs_overflow_infinity): Likewise.
(extract_range_from_unary_expr): Likewise.
ada/
* gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
New macros.
(TYPE_RM_VALUES): Likewise.
(TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
(SET_TYPE_RM_SIZE): New macro.
(TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
(SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
(TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
* gcc-interface/gigi.h (create_range_type): Declare.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
<E_Signed_Integer_Subtype>: Build a regular integer type first and
then set the RM bounds.  Use SET_TYPE_RM_SIZE to set the RM size.
<E_Floating_Point_Subtype>: Build a regular floating-point type first
and then set the RM bounds.
<E_Array_Type>: Use create_range_type instead of build_range_type.
<E_Array_Subtype>: Build a regular integer type first and then set
the RM bounds for the extra subtype.
<E_String_Literal_Subtype>: Use create_range_type instead of
build_range_type.
<all>: Set the RM bounds for enumeration types and the GCC bounds for
floating-point types.
(set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
(make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
to set the bounds.  Use SET_TYPE_RM_SIZE to set the RM size.
(substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
types and with RM bounds for subtypes.
* gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
(gnat_print_type) <REAL_TYPE>: New case.
<ENUMERAL_TYPE>: Fall through to above case.
(gnat_get_subrange_bounds): New function.
* gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
* gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
for booleans.  Adjust and use SET_TYPE_RM_SIZE to set the RM size.
(create_range_type): New function.
(create_param_decl): Build a regular integer type first and then set
the RM bounds for the extra subtype.
(unchecked_convert): Remove kludge for 'Valid.
* gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
the index to sizetype instead of TYPE_DOMAIN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147563 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agodelete dummy empty svn:mergeinfo properties
bonzini [Fri, 15 May 2009 07:14:45 +0000 (07:14 +0000)]
delete dummy empty svn:mergeinfo properties

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147561 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Paolo Bonzini <bonzini@gnu.org>
bonzini [Fri, 15 May 2009 07:12:03 +0000 (07:12 +0000)]
2009-05-15  Paolo Bonzini  <bonzini@gnu.org>

        * config/frv/frv.h: Clean up references to GO_IF_LEGITIMATE_ADDRESS.
        * config/frv/frv.c: Likewise.
        * config/s390/s390.c: Likewise.
        * config/sparc/sparc.h: Likewise.
        * config/i386/i386.h: Likewise.
        * config/i386/i386.c: Likewise.
        * config/crx/crx.c: Likewise.
        * config/m68hc11/m68hc11.h: Likewise.
        * config/iq2000/iq2000.c: Likewise.
        * config/mn10300/mn10300.h: Likewise.
        * config/mn10300/mn10300.c: Likewise.
        * config/m68k/m68k.c: Likewise.
        * config/rs6000/rs6000.c: Likewise.
        * config/rs6000/xcoff.h: Likewise.
        * config/rs6000/linux64.h: Likewise.
        * config/rs6000/sysv4.h: Likewise.
        * config/score/score3.c: Likewise.
        * config/score/score7.c: Likewise.
        * config/score/score.c: Likewise.
        * config/arm/arm.md: Likewise.
        * config/mips/mips.c: Likewise.
        * config/mips/mips.md: Likewise.
        * config/bfin/bfin.h: Likewise.
        * config/pa/pa.c: Likewise.
        * config/pa/constraints.md: Likewise.

        * config/pdp11/pdp11-protos.h (legitimate_address_p): Delete.
        * config/pdp11/pdp11.c (legitimate_address_p): Delete.
        * config/pdp11/pdp11.h: Use memory_address_p instead.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147560 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-15 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 15 May 2009 06:52:41 +0000 (06:52 +0000)]
2009-05-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39352
        * f95-lang.c: Add gfc_maybe_initialize_eh.
        * gfortran.h: Add gfc_maybe_initialize_eh prototype.
        * Make-lang.in: Add new .h dendencies for f95-lang.c
        * openmp.c (resolve_omp_do): Call gfc_maybe_initialize_eh.
        * misc.c (gfc_free): Avoid #define trickery for free.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147559 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Fri, 15 May 2009 00:16:55 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147550 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoCorrect formatting errors commited in rev 147516
tglek [Thu, 14 May 2009 23:10:50 +0000 (23:10 +0000)]
Correct formatting errors commited in rev 147516

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147547 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 14 May 2009 22:21:40 +0000 (22:21 +0000)]
2009-05-14  Steven G. Kargl  <kargl@gcc.gnu.org>

    * dump-parse-tree.c (show_code_node): Add ERRMSG to the dumping
    of allocate and deallocate statements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147545 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago./:
ian [Thu, 14 May 2009 21:29:48 +0000 (21:29 +0000)]
./:
* passes.c (finish_optimization_passes): Change i to int.
* plugin.c (plugins_active_p): Change event to int.
(dump_active_plugins): Likewise.
* reginfo.c (invalid_mode_change_p): Change to to unsigned int.
Add cast.
* tree.c (tree_range_check_failed): Change c to unsigned int.
(omp_clause_range_check_failed): Likewise.
(build_common_builtin_nodes): Change mode to int.  Add cast.
* config/ia64/ia64.c (is_emitted): Change r to unsigned int.
(ia64_hard_regno_rename_ok, ia64_eh_uses): Likewise.

* c-typeck.c (build_unary_op): If -Wc++-compat, warn about using
++ or -- with a variable of enum type.
cp/:
* class.c (layout_class_type): Change itk to unsigned int.
* decl.c (finish_enum): Change itk to unsigned int.
* parser.c (cp_parser_check_decl_spec): Change ds to int.  Remove
casts.
fortran/:
* decl.c (match_attr_spec): Change d to unsigned int.
* dump-parse-tree.c (show_namespace): Change op to int.  Add cast.
* interface.c (gfc_check_interfaces): Change i to int.  Add casts.
* module.c (read_module): Change i to int.  Add cast.
(write_module): Change i to int.
* symbol.c (gfc_get_namespace): Change in to int.
(gfc_free_namespace): Change i to int.
* trans-io.c (gfc_build_io_library_fndecls): Change ptype to
unsigned int.  Add cast.
* trans-types.c (gfc_init_kinds): Change mode to unsigned int.
Add casts.
testsuite/:
* gcc.dg/Wcxx-compat-9.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147544 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR driver/40144
steven [Thu, 14 May 2009 20:56:54 +0000 (20:56 +0000)]
PR driver/40144
* opts.c (common_handle_option): Add OPT_fcse_skip_blocks as a no-op.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147543 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * store-motion.c Do not include params.h
steven [Thu, 14 May 2009 20:14:18 +0000 (20:14 +0000)]
* store-motion.c Do not include params.h
* Makefile.in: Fix dependencies for various files.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147542 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * auto-inc-dec.c: Fix pass description, remove apparent
steven [Thu, 14 May 2009 20:12:09 +0000 (20:12 +0000)]
* auto-inc-dec.c: Fix pass description, remove apparent
accidental duplication.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147541 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 Daniel Kraft <d@domob.eu>
domob [Thu, 14 May 2009 20:02:46 +0000 (20:02 +0000)]
2009-05-14  Daniel Kraft  <d@domob.eu>

PR fortran/40045
* dump-parse-tree.c (show_typebound): Fix missing adaption to new
type-bound procedure storage structure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147540 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 14 May 2009 17:56:17 +0000 (17:56 +0000)]
2009-05-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40123
* random.tcc (independent_bits_engine<>::operator()()): Use
result_type(1), not 1UL.

* random.tcc (independent_bits_engine<>::operator()()): Use _M_b.max()
and _M_b.min(), instead of this->max() and this->min().

* random.h (_ShiftMin1): Remove, adjust everywhere.

* random.tcc: Minor cosmetic changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147538 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 H.J. Lu <hongjiu.lu@intel.com>
hjl [Thu, 14 May 2009 15:45:32 +0000 (15:45 +0000)]
2009-05-14  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/40147
* ipa-utils.h (memory_identifier_string): Moved to ...
* tree.h (memory_identifier_string): Here.  Add GTY(()).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147535 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 14 May 2009 13:42:45 +0000 (13:42 +0000)]
2009-05-14  Paolo Bonzini  <bonzini@gnu.org>

* doc/tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this
in the former documentation of...
(GO_IF_LEGITIMATE_ADDRESS): ... this.
* ira-conflicts.c (get_dup_num): Use address_operand.
* targhooks.c (default_legitimate_address_p): New.
* targhooks.h (default_legitimate_address_p): New.
* reload.c (strict_memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]:
Call hook.
* recog.c (memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]: Call hook.
* target.h (struct target): Add legitimate_address_p.
* target-def.h (TARGET_LEGITIMATE_ADDRESS_P): New.
(TARGET_INITIALIZER): Include it.

* config/alpha/alpha.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/alpha/alpha-protos.h (alpha_legitimate_address_p): Remove.
* config/alpha/alpha.c (alpha_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
(REG_OK_STRICT_P): Delete.
* config/frv/frv-protos.h (frv_legitimate_address_p): Rename to...
(frv_legitimate_address_p_1): ... this.
* config/frv/frv.c (frv_legitimate_address_p): Forward to...
(frv_legitimate_address_p_1): ... the renamed old
frv_legitimate_address_p.
* config/frv/predicates.md: Adjust calls to frv_legitimate_address_p.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/s390/s390.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/s390/s390-protos.h (legitimate_address_p): Remove.
* config/s390/s390.c (legitimate_address_p): Rename to...
(s390_legitimate_address_p): ... this, make static.
(legitimize_address): Adjust call.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/s390/constraints.md ("e"): Call strict_memory_address_p.

* config/m32c/m32c.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/m32c/m32c-protos.h (m32c_legitimate_address_p): Remove.
* config/m32c/m32c.c (m32c_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/spu/spu.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/spu/spu-protos.h (spu_legitimate_address): Remove.
* config/spu/spu.c (spu_legitimate_address): Rename to...
(spu_legitimate_address_p): ... this, make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/sparc/sparc-protos.h (legitimate_address_p): Remove.
* config/sparc/sparc.c (legitimate_address_p): Rename to...
(sparc_legitimate_address_p): ... this, make static and return bool.
(legitimize_address): Adjust call.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/i386/i386.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/i386/i386-protos.h (legitimate_address_p): Remove.
* config/i386/i386.c (legitimate_address_p): Rename to...
(ix86_legitimate_address_p): ... this, make static.
(constant_address_p): Move after it, adjust call.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/avr/avr.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/avr/avr-protos.h (legitimate_address_p): Remove.
* config/avr/avr.c (legitimate_address_p): Rename to...
(avr_legitimate_address_p): ... this, make static.
(legitimize_address): Adjust call.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/crx/crx.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/crx/crx-protos.h (crx_legitimate_address_p): Remove.
* config/crx/crx.c (crx_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/xtensa/xtensa.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/xtensa/xtensa-protos.h (xtensa_legitimate_address_p): Remove.
* config/xtensa/xtensa.c (xtensa_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/stormy16/stormy16.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/stormy16/stormy16-protos.h (xstormy16_legitimate_address_p):
Remove.
* config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/m68hc11/m68hc11.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/m68hc11/m68hc11-protos.h (m68hc11_go_if_legitimate_address):
Remove.
* config/m68hc11/m68hc11.c (m68hc11_go_if_legitimate_address):
Rename to...
(m68hc11_legitimate_address_p): ... this, make static.
(go_if_legitimate_address_internal): Rename to...
(m68hc11_legitimate_address_p_1): ... this.
(legitimize_address): Adjust call.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/iq2000/iq2000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/iq2000/iq2000-protos.h (iq2000_legitimate_address_p):
Remove.
* config/iq2000/iq2000.c (iq2000_legitimate_address_p):
Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/mn10300/mn10300-protos.h (legitimate_address_p): Remove.
* config/mn10300/mn10300.c (legitimate_address_p): Rename to...
(mn10300_legitimate_address_p): ... this, make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/m68k/m68k.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/m68k/m68k-protos.h (m68k_legitimate_address_p): Remove.
* config/m68k/m68k.c (m68k_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
(REG_OK_STRICT_FLAG, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Delete.
(INT_REG_OK_FOR_BASE_P, INT_REG_OK_FOR_INDEX_P): Move above.
* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/rs6000/rs6000-protos.h (rs6000_legitimate_address): Remove.
* config/rs6000/rs6000.c (rs6000_legitimate_address): Rename to...
(rs6000_legitimate_address_p): ... this, make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.
(REG_MODE_OK_FOR_BASE_P): Delete.
(rs6000_legitimize_reload_address): Use INT_REG_OK_FOR_BASE_P.

* config/picochip/picochip.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/picochip/picochip-protos.h (picochip_legitimate_address_p):
Delete.
* config/picochip/picochip.c (picochip_legitimate_address_p): Make
static, adjust types.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/score/score.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/score/score.c (score_address_p): Rename to...
(score_legitimate_address_p): ... this.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/score/score3.c (score3_address_p): Rename to...
(score3_legitimate_address_p): ... this.
* config/score/score7.c (score7_address_p): Rename to...
(score7_legitimate_address_p): ... this.

* config/arm/arm.h (ARM_GO_IF_LEGITIMATE_ADDRESS,
THUMB2_GO_IF_LEGITIMATE_ADDRESS, THUMB1_GO_IF_LEGITIMATE_ADDRESS,
GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/arm/arm-protos.h (thumb1_legitimate_address_p,
thumb2_legitimate_address_p): Delete.
(arm_legitimate_address_p): Rename to...
(arm_legitimate_address_outer_p): ... this.
* config/arm/constraints.md ("Uq"): Adjust call.
* config/arm/predicates.md (arm_extendqisi_mem_op): Likewise.
* config/arm/arm.c (arm_legitimate_address_p): New, rename old one to...
(arm_legitimate_address_outer_p): ... this.
(thumb1_legitimate_address_p, thumb2_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/mips/mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/mips/mips-protos.h (mips_legitimate_address_p): Remove.
* config/mips/mips.c (mips_legitimate_address_p): ... Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/vax/vax.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/vax/vax-protos.h (legitimate_address_p): Remove.
* config/vax/vax.c (legitimate_address_p): Rename to...
(vax_legitimate_address_p): ... this, make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/h8300/h8300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/h8300/h8300-protos.h (h8300_legitimate_address_p): Remove.
* config/h8300/h8300.c (h8300_legitimate_address_p): ... Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/mmix/mmix.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/mmix/mmix-protos.h (mmix_legitimize_address): Remove.
* config/mmix/mmix.c (mmix_legitimate_address): Rename to...
(mmix_legitimate_address_p): ... this, make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

* config/bfin/bfin.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/bfin/bfin-protos.h (bfin_legitimate_address_p): Remove.
* config/bfin/bfin.c (bfin_legitimate_address_p): ... Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147534 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agodelete dummy empty svn:mergeinfo properties
bonzini [Thu, 14 May 2009 13:39:43 +0000 (13:39 +0000)]
delete dummy empty svn:mergeinfo properties

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147533 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-05-14 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 14 May 2009 13:12:04 +0000 (13:12 +0000)]
2009-05-14  Paolo Bonzini  <bonzini@gnu.org>

* config/arm/arm.h (PROMOTE_FUNCTION_MODE): Remove handling
of MODE_COMPLEX_INT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147531 138bc75d-0d04-0410-961f-82ee72b054a4