Paul Thomas [Sun, 5 Jul 2009 19:13:59 +0000 (19:13 +0000)]
re PR fortran/40646 ([F03] array-valued procedure pointer components)
2009-07-05 Paul Thomas <pault@gcc.gnu.org>
and Tobias Burnus <burnus@gcc.gnu.org>
PR fortran/40646
* gfortran.h : Change the compcall member of the 'value' union
in the gfc_expr structure so that its fields overlap with the
'function' member.
* resolve.c (resolve_compcall): Set the function.esym.
* trans-expr.c (gfc_trans_arrayfunc_assign): Use
is_proc_ptr_comp in the condition.
* dependency.c (gfc_full_array_ref_p): Ensure that 'contiguous'
retunrs a value if non-NULL.
2009-07-05 Paul Thomas <pault@gcc.gnu.org>
and Tobias Burnus <burnus@gcc.gnu.org>
PR fortran/40646
* gfortran.dg/func_assign_3.f90 : New test.
From-SVN: r149262
Joseph Myers [Sun, 5 Jul 2009 17:59:29 +0000 (18:59 +0100)]
*
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/to_wstring.cc,
testsuite/ext/vstring/element_access/char/front_back.cc,
testsuite/ext/vstring/element_access/wchar_t/front_back.cc,
testsuite/ext/vstring/init-list.cc,
testsuite/ext/vstring/moveable.cc,
testsuite/ext/vstring/requirements/citerators.cc,
testsuite/ext/vstring/requirements/explicit_instantiation/char16_t/1.cc,
testsuite/ext/vstring/requirements/explicit_instantiation/char32_t/1.cc:
Use dg-require-string-conversions.
From-SVN: r149260
Jason Merrill [Sun, 5 Jul 2009 02:09:15 +0000 (22:09 -0400)]
pt.c (retrieve_specialization): Don't get confused by a using-declaration that brings in another instance of...
* pt.c (retrieve_specialization): Don't get confused by a
using-declaration that brings in another instance of this template
from a base class.
* ptree.c (cxx_print_type): Fix logic.
From-SVN: r149247
GCC Administrator [Sun, 5 Jul 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r149246
Ian Lance Taylor [Sat, 4 Jul 2009 22:52:57 +0000 (22:52 +0000)]
re PR target/40636 (Build failed with --enable-build-with-cxx (mingw32 target))
PR target/40636
* config/i386/msformat-c.c (mingw_format_attributes): Declare as
EXPORTED_CONST.
(mingw_format_attribute_overrides): Likewise.
From-SVN: r149243
Francois-Xavier Coudert [Sat, 4 Jul 2009 21:31:17 +0000 (21:31 +0000)]
inclhack.def (darwin_stdint_5, [...]): New fixes.
* inclhack.def (darwin_stdint_5, darwin_stdint_6,
darwin_stdint_7): New fixes.
* fixincl.x: Regenerate.
* tests/base/stdint.h: Adjust test for new fixes.
From-SVN: r149242
Eric Botcazou [Sat, 4 Jul 2009 20:22:39 +0000 (20:22 +0000)]
Fix nits
From-SVN: r149241
Jason Merrill [Sat, 4 Jul 2009 17:48:02 +0000 (13:48 -0400)]
* cp-tree.h (LANG_DECL_FN_CHECK): Fix non-checking version.
From-SVN: r149239
Francois-Xavier Coudert [Sat, 4 Jul 2009 17:28:32 +0000 (17:28 +0000)]
re PR ada/40608 (Ada build fails)
PR ada/40608
* init.c (APPLE): Include <mach/mach_init.h>.
(__gnat_is_stack_guard, APPLE): Add ATTRIBUTE_UNUSED marker.
From-SVN: r149238
Jakub Jelinek [Sat, 4 Jul 2009 17:20:46 +0000 (19:20 +0200)]
trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): For integer maxloc initialize limit to -huge-1 rather than just -huge.
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): For integer
maxloc initialize limit to -huge-1 rather than just -huge.
* gfortran.dg/maxloc_1.f90: New test.
From-SVN: r149236
Jakub Jelinek [Sat, 4 Jul 2009 17:19:26 +0000 (19:19 +0200)]
re PR debug/40596 (Bad debug info for local variables on i386.)
PR debug/40596
* dwarf2out.c (based_loc_descr): For crtl->stack_realign_tried
don't check cfa.reg. Instead of cfa.indirect use
fde && fde->drap_reg != INVALID_REGNUM test.
From-SVN: r149235
Eric Botcazou [Sat, 4 Jul 2009 17:04:03 +0000 (17:04 +0000)]
* postreload.c (reload_combine): Replace CONST_REG with INDEX_REG.
From-SVN: r149234
Vladimir Makarov [Sat, 4 Jul 2009 13:57:11 +0000 (13:57 +0000)]
Move testsuite log into testsuite/ChangeLog
From-SVN: r149228
Janus Weil [Sat, 4 Jul 2009 12:28:43 +0000 (14:28 +0200)]
re PR fortran/40593 (Proc-pointer returning function as actual argument)
2009-07-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/40593
* interface.c (compare_actual_formal): Take care of proc-pointer-valued
functions as actual arguments.
* trans-expr.c (gfc_conv_procedure_call): Ditto.
* resolve.c (resolve_specific_f0): Use the correct ts.
2009-07-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/40593
* gfortran.dg/proc_ptr_result_6.f90: New.
From-SVN: r149227
Francois-Xavier Coudert [Sat, 4 Jul 2009 11:33:17 +0000 (11:33 +0000)]
* gcc.dg/framework-2.c: Adjust testcase to pass.
From-SVN: r149226
Eric Botcazou [Sat, 4 Jul 2009 10:51:31 +0000 (10:51 +0000)]
ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
* ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
(SET_DECL_LANG_SPECIFIC): Likewise.
(TYPE_RM_VALUE): New macro.
(SET_TYPE_RM_VALUE): Likewise.
(TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
(TYPE_RM_MIN_VALUE): Likewise.
(TYPE_RM_MAX_VALUE): Likewise.
(SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
(SET_TYPE_RM_MIN_VALUE): Likewise.
(SET_TYPE_RM_MAX_VALUE): Likewise.
* decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
From-SVN: r149225
Laurent GUERBY [Sat, 4 Jul 2009 10:11:57 +0000 (10:11 +0000)]
re PR ada/40631 (bootstrap with Ada fails on __gnat_backtrace warning on mips-linux)
2009-07-04 Laurent GUERBY <laurent@guerby.net>
PR ada/40631
* tracebak.c (__gnat_backtrace): Fix old-style definition.
From-SVN: r149224
Jason Merrill [Sat, 4 Jul 2009 04:34:03 +0000 (00:34 -0400)]
re PR c++/40619 ([c++0x] ICE on repeated decltype expression in auto functions)
PR c++/40619
* cp-tree.h (struct lang_decl_parm): New.
(struct lang_decl): Add it.
(LANG_DECL_PARM_CHECK): New.
(DECL_PARM_INDEX): New.
* decl2.c (parm_index): Remove.
* lex.c (retrofit_lang_decl): Handle parms.
(cxx_dup_lang_specific_decl): Likewise.
* mangle.c (write_expression): Adjust.
* tree.c (cp_tree_equal): Adjust.
(decl_linkage): Only check DECL_COMDAT for functions and variables.
* parser.c (cp_parser_parameter_declaration_list): Set
DECL_PARM_INDEX.
* pt.c (iterative_hash_template_arg): Hash it.
From-SVN: r149223
Jerry DeLisle [Sat, 4 Jul 2009 04:25:20 +0000 (04:25 +0000)]
re PR fortran/40638 (RTE: "Unit number in I/O statement too large" -- fails with any low value)
2009-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/40638
* gfortran.dg/unit_1.f90: New test.
From-SVN: r149222
Jason Merrill [Sat, 4 Jul 2009 00:43:26 +0000 (20:43 -0400)]
cp-tree.h (struct lang_decl): Overhaul.
* cp-tree.h (struct lang_decl): Overhaul.
(struct lang_decl_flags): Remove.
(struct lang_decl_base): New.
(struct lang_decl_min): New.
(struct lang_decl_fn): New.
(struct lang_decl_ns): New.
(CAN_HAVE_FULL_LANG_DECL_P): Replace with LANG_DECL_HAS_MIN.
(LANG_DECL_MIN_CHECK): New.
(LANG_DECL_FN_CHECK): New.
(LANG_DECL_NS_CHECK): New.
(STRIP_TEMPLATE): New.
(NON_THUNK_FUNCTION_CHECK): Remove.
(DECL_DECLARES_FUNCTION_P): New.
(lots): Adjust.
* lex.c (retrofit_lang_decl, cxx_dup_lang_specific_decl): Adjust.
* decl.c (push_local_name, duplicate_decls): Adjust.
* decl2.c (start_objects): Don't set u2sel.
* semantics.c (finish_omp_threadprivate): Adjust.
* class.c (build_clone): Don't do much on TEMPLATE_DECLs.
(decl_cloned_function_p): Out-of-line implementation of macros.
(clone_function_decl, adjust_clone_args): Use DECL_CLONED_FUNCTION_P.
* mangle.c (write_unqualified_name): Don't check function flags
on non-functions.
* method.c (make_alias_for): Don't set DECL_CLONED_FUNCTION.
* pt.c (build_template_decl): Don't set function flags.
(check_default_tmpl_args): Check that it's a function.
(instantiate_template): Use DECL_ABSTRACT_ORIGIN to find the
cloned template.
* pt.c (tsubst_decl) [FUNCTION_DECL]: Don't tsubst
DECL_CLONED_FUNCTION.
* cp-tree.h (struct lang_type_class): Move sorted_fields here.
* class.c (finish_struct_1): Adjust.
* ptree.c (cxx_print_decl, cxx_print_type): Adjust.
* search.c (lookup_field_1): Adjust.
* cp-tree.h (CLASSTYPE_INLINE_FRIENDS): Remove.
* decl.c (finish_method): Don't add to it.
* class.c (fixup_pending_inline): Remove.
(fixup_inline_methods): Remove.
(finish_struct_1): Don't call it.
* error.c (dump_function_name): Handle null name.
From-SVN: r149217
GCC Administrator [Sat, 4 Jul 2009 00:16:32 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r149216
Vladimir Makarov [Fri, 3 Jul 2009 22:36:31 +0000 (22:36 +0000)]
re PR target/40587 (Revision 139590 caused ICE in emit_swap_insn at reg-stack.c:827)
2009-07-03 Vladimir Makarov <vmakarov@redhat.com>
PR target/40587
* ira.c (build_insn_chain): Use DF_LR_OUT instead of
df_get_live_out.
* testsuite/gfortran.dg/pr40587.f: New test.
From-SVN: r149212
Richard Guenther [Fri, 3 Jul 2009 22:09:12 +0000 (22:09 +0000)]
re PR tree-optimization/40640 (ICE in set_value_range, at tree-vrp.c:383)
2009-07-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40640
* tree-switch-conversion.c (build_arrays): Perform arithmetic
in original type.
* gcc.c-torture/compile/pr40640.c: New testcase.
From-SVN: r149211
Jan Hubicka [Fri, 3 Jul 2009 20:28:14 +0000 (22:28 +0200)]
ipa-inline.c (cgraph_decide_inlining_incrementally): When optimizing for size, reduce amount of inlining.
* ipa-inline.c (cgraph_decide_inlining_incrementally): When optimizing
for size, reduce amount of inlining.
From-SVN: r149210
Eric Botcazou [Fri, 3 Jul 2009 20:27:05 +0000 (20:27 +0000)]
inclhack.def (solaris_int_types): New fix.
* inclhack.def (solaris_int_types): New fix.
* fixincl.x: Regenerate.
* tests/base/sys/int_types.h: New file.
From-SVN: r149209
Richard Guenther [Fri, 3 Jul 2009 14:11:14 +0000 (14:11 +0000)]
re PR middle-end/34163 (10% performance regression since Nov 1 on Polyhedron's "NF" on AMD64)
2009-07-03 Richard Guenther <rguenther@suse.de>
PR middle-end/34163
* tree-chrec.c (chrec_convert_1): Fold (T2)(t +- x) to
(T2)t +- (T2)x if t +- x is known to not overflow and
the conversion widens the operation.
* Makefile.in (tree-chrec.o): Add $(FLAGS_H) dependency.
* gfortran.dg/pr34163.f90: New testcase.
From-SVN: r149207
Jan Hubicka [Fri, 3 Jul 2009 13:18:28 +0000 (15:18 +0200)]
loop-24.c: Update dump file matching; enable -O2.
* gcc.dg/tree-ssa/loop-24.c: Update dump file matching; enable -O2.
* gcc.dg/tree-ssa/loop-25.c: Likewise.
* gcc.dg/tree-ssa/loop-26.c: Likewise.
* gcc.dg/tree-ssa/pr32044.c: Likewise.
* gcc.dg/tree-ssa/loop-29.c: Likewise.
* gcc.dg/tree-ssa/loop-10.c: Likewise.
* gnat.dg/loop_optimization6.adb: Enable -O2.
* ipa-pure-const.c (analyze): Update loop optimizer init.
* tree-ssa-loop-iv-canon.c (empty_loop_p, remove_empty_loop,
try_remove_empty_loop, remove_empty_loops): Remove.
* tree-ssa-loop.c (tree_ssa_empty_loop, pass_empty_loop): Remove.
* tree-ssa-dce.c (find_obviously_necessary_stmts): Use finiteness info
to mark regular loops as neccesary.
(degenerate_phi_p): New function.
(propagate_necessity, remove_dead_phis): Use it.
(forward_edge_to_pdom): Likewise.
(eliminate_unnecessary_stmts): Take care to remove uses of results of
virtual PHI nodes that became unreachable.
(perform_tree_ssa_dce): Initialize/deinitialize loop optimizer.
* tree-flow.h (remove_empty_loops): Remove.
* passes.c (init_optimization_passes): Remove.
From-SVN: r149206
Uros Bizjak [Fri, 3 Jul 2009 11:30:51 +0000 (13:30 +0200)]
i386.md (fix_trunc<mode>_fisttp_i387_1): Use can_create_pseudo_p.
* config/i386/i386.md (fix_trunc<mode>_fisttp_i387_1): Use
can_create_pseudo_p.
(*fix_trunc<mode>_i387_1): Ditto.
(*floathi<mode>2_1): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Ditto.
(*fistdi2_1): Ditto.
(*fist<mode>2_1): Ditto.
(frndintxf2_floor): Ditto.
(*fist<mode>2_floor_1): Ditto.
(frndintxf2_ceil): Ditto.
(*fist<mode>2_ceil_1): Ditto.
(frndintxf2_trunc): Ditto.
(frndintxf2_mask_pm): Ditto.
(fxam<mode>2_i387_with_temp): Ditto.
* config/i386/sse.md (mulv16qi3): Ditto.
(*sse2_mulv4si3): Ditto.
(mulv2di3): Ditto.
(sse4_2_pcmpestr): Ditto.
(sse4_2_pcmpistr): Ditto.
From-SVN: r149205
GCC Administrator [Fri, 3 Jul 2009 00:16:38 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r149204
Jan Hubicka [Thu, 2 Jul 2009 22:56:21 +0000 (00:56 +0200)]
tree-ssa-dce.c (bb_contains_live_stmts): New bitmap.
* tree-ssa-dce.c (bb_contains_live_stmts): New bitmap.
(mark_stmt_necessary): Set it.
(mark_operand_necessary): Set it.
(mark_control_dependent_edges_necessary): Set it.
(mark_virtual_phi_result_for_renaming): New function.
(get_live_post_dom): New function.
(forward_edge_to_pdom): New function.
(remove_dead_stmt): Fix handling of control dependences.
(tree_dce_init): Init new bitmap.
(tree_dce_done): Free it.
From-SVN: r149199
Richard Sandiford [Thu, 2 Jul 2009 20:55:23 +0000 (20:55 +0000)]
libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS options when choosing a multilib.
libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
options when choosing a multilib.
From-SVN: r149195
Mark Mitchell [Thu, 2 Jul 2009 17:52:37 +0000 (17:52 +0000)]
typeck.c (cp_build_binary_op): Move warnings about use of NULL in arithmetic earlier and allow comparisions of...
2009-07-02 Mark Mitchell <mark@codesourcery.com>
* typeck.c (cp_build_binary_op): Move warnings about use of NULL
in arithmetic earlier and allow comparisions of NULL with
pointers-to-members.
2009-07-02 Mark Mitchell <mark@codesourcery.com>
* g++.dg/warn/null4.C: Extend.
From-SVN: r149190
Jason Merrill [Thu, 2 Jul 2009 17:28:07 +0000 (13:28 -0400)]
Use hash tables for template specialization lookup.
* pt.c (struct spec_entry): New type.
(decl_specializations, type_specializations): New hash tables.
(register_specialization, retrieve_specialization): Use them.
(reregister_specialization, lookup_template_class): Use them.
(eq_specializations, hash_tmpl_and_args, hash_specialization): New.
(iterative_hash_template_arg): New.
(init_template_processing): New
(process_partial_specialization): Don't look to see if we already
have this partial specialization.
(maybe_process_partial_specialization): Handle reassigning
full specializations when we get an explicit specialization
of the partial instantiation.
(tsubst_friend_function): Adjust specialization reassignment code.
(instantiate_template): Only do one lookup.
(instantiate_decl): Don't do any lookup.
* cp-tree.h: Declare init_template_processing.
* decl.c (duplicate_decls): Pass args to reregister_specialization.
From-SVN: r149188
Rainer Orth [Thu, 2 Jul 2009 16:10:25 +0000 (16:10 +0000)]
* tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
From-SVN: r149182
Richard Guenther [Thu, 2 Jul 2009 15:50:26 +0000 (15:50 +0000)]
re PR bootstrap/40617 (Revision 149170 breaks bootstrap)
2009-07-02 Richard Guenther <rguenther@suse.de>
PR bootstrap/40617
* tree-ssa-structalias.c (new_var_info): Initialize
is_restrict_var.
From-SVN: r149179
Michael Matz [Thu, 2 Jul 2009 15:31:28 +0000 (15:31 +0000)]
re PR fortran/32131 (knowing that stride==1 when using allocated arrays and escaping allocatable arrays)
fortran/
PR fortran/32131
* trans-array.c (gfc_conv_descriptor_stride_get): Return
constant one for strides in the first dimension of ALLOCATABLE
arrays.
testsuite/
PR fortran/32131
* gfortran.dg/pr32921.f: Adjust.
From-SVN: r149178
Jan Hubicka [Thu, 2 Jul 2009 15:16:08 +0000 (17:16 +0200)]
local-pure-const.c: New testcase.
* gcc.dg/tree-ssa/local-pure-const.c: New testcase.
* ipa-pure-const.c (check_op): Use PTA info to see if indirect_ref is
local.
From-SVN: r149176
Paolo Bonzini [Thu, 2 Jul 2009 11:23:23 +0000 (11:23 +0000)]
expmed.c (emit_cstore, [...]): Accept target_mode instead of recomputing it.
2009-07-02 Paolo Bonzini <bonzini@gnu.org>
* expmed.c (emit_cstore, emit_store_flag_1): Accept target_mode
instead of recomputing it. Adjust calls.
(emit_store_flag): Adjust recursive calls.
From-SVN: r149171
Richard Guenther [Thu, 2 Jul 2009 10:18:24 +0000 (10:18 +0000)]
tree-ssa-live.c (remove_unused_locals): Do not remove heap variables.
2009-07-02 Richard Guenther <rguenther@suse.de>
* tree-ssa-live.c (remove_unused_locals): Do not remove
heap variables.
* tree-ssa-structalias.c (handle_lhs_call): Delay setting
of DECL_EXTERNAL for HEAP variables.
(compute_points_to_sets): Set DECL_EXTERNAL for escaped
HEAP variables. Do not adjust RESTRICT vars.
(find_what_var_points_to): Nobody cares if something
points to READONLY.
From-SVN: r149170
Nick Clifton [Thu, 2 Jul 2009 07:20:22 +0000 (07:20 +0000)]
remove sanitzation leakage
From-SVN: r149169
Ben Elliston [Thu, 2 Jul 2009 04:50:20 +0000 (04:50 +0000)]
unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move pc_low and pc_high declarations to the top of the function.
* unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move
pc_low and pc_high declarations to the top of the function.
From-SVN: r149167
Jason Merrill [Thu, 2 Jul 2009 03:51:04 +0000 (23:51 -0400)]
* cp-tree.h (DECL_CLASS_TEMPLATE_P): Use DECL_IMPLICIT_TYPEDEF_P.
From-SVN: r149166
Jason Merrill [Thu, 2 Jul 2009 03:50:57 +0000 (23:50 -0400)]
pt.c (register_specialization): Use duplicate_decls to merge the argument with a previous specialization.
* pt.c (register_specialization): Use duplicate_decls to merge
the argument with a previous specialization.
(check_explicit_specialization): Call register_specialization to
merge the TEMPLATE_DECL with a previous version.
(determine_specialization): Return the args even if fn is a template.
From-SVN: r149165
DJ Delorie [Thu, 2 Jul 2009 02:16:32 +0000 (22:16 -0400)]
mep.c (mep_handle_option): Leave IVC2 control registers as fixed.
* config/mep/mep.c (mep_handle_option): Leave IVC2 control
registers as fixed.
(mep_interrupt_saved_reg): Save appropriate IVC2 control
registers.
* config/mep/mep-ivc2.cpu: Add VOLATILE to insns that make
unspecified accesses to control registers.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.
From-SVN: r149164
Anthony Green [Thu, 2 Jul 2009 01:18:42 +0000 (01:18 +0000)]
Tweak moxie prologue and epilogue code.
From-SVN: r149163
GCC Administrator [Thu, 2 Jul 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r149162
Richard Henderson [Wed, 1 Jul 2009 23:21:17 +0000 (16:21 -0700)]
re PR bootstrap/40347 (i386-darwin ICEs while building libgcc during stage2)
PR bootstrap/40347
* function.c (reposition_prologue_and_epilogue_notes): If epilogue
contained no insns, reposition note before last insn.
From-SVN: r149158
Richard Henderson [Wed, 1 Jul 2009 23:16:06 +0000 (16:16 -0700)]
re PR debug/40431 (ICE in div_data_align, at dwarf2out.c:533 while configuring sparcv9 libgcc)
PR debug/40431
* dwarf2out.c (def_cfa_1): Revert 2009-06-11 change for
DW_CFA_def_cfa_offset and DW_CFA_def_cfa.
From-SVN: r149157
Michael Meissner [Wed, 1 Jul 2009 22:34:26 +0000 (22:34 +0000)]
Fix PR 40558, undo part of June 25th patch
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Revital Eres <eres@il.ibm.com>
From-SVN: r149155
Adam Nemet [Wed, 1 Jul 2009 21:34:58 +0000 (21:34 +0000)]
combine.c (force_to_mode): Handle TRUNCATE.
* combine.c (force_to_mode): Handle TRUNCATE. Factor out
truncation from operands in binary operations.
testsuite/
* gcc.target/mips/truncate-4.c: New testcase.
From-SVN: r149154
Adam Nemet [Wed, 1 Jul 2009 21:22:28 +0000 (21:22 +0000)]
revert: expmed.c (store_bit_field_1): Properly truncate the paradoxical subreg of op0 to the original op0.
Revert:
2009-01-11 Adam Nemet <anemet@caviumnetworks.com>
* expmed.c (store_bit_field_1): Properly truncate the paradoxical
subreg of op0 to the original op0.
* expmed.c (store_bit_field_1): Use a temporary as the destination
instead of a paradoxical subreg when we need to truncate the result.
From-SVN: r149153
Eric Botcazou [Wed, 1 Jul 2009 20:20:25 +0000 (20:20 +0000)]
Fix nits
From-SVN: r149152
DJ Delorie [Wed, 1 Jul 2009 20:07:41 +0000 (16:07 -0400)]
mep-ivc2.cpu (cmov, [...]): Add intrinsic names to VLIW variants.
* config/mep/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic names to VLIW variants.
(ivc2rm, ivc2crn): Make data type consistent with non-VLIW variants.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.
From-SVN: r149151
Jakub Jelinek [Wed, 1 Jul 2009 19:25:52 +0000 (21:25 +0200)]
re PR debug/40462 (ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2773 while compiling mlib-tgt.adb)
PR debug/40462
* jump.c (returnjump_p): Revert last patch.
* dwarf2out.c (dwarf2out_begin_epilogue): Handle SEQUENCEs.
From-SVN: r149150
Richard Sandiford [Wed, 1 Jul 2009 19:15:33 +0000 (19:15 +0000)]
libffi-dg.exp (libffi-init): Set ld_library_path to "" before adding paths.
libffi/
* testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path
to "" before adding paths. (This reinstates an assignment that
was removed by my 2009-06-30 commit, but changes the initial
value from "." to "".)
From-SVN: r149149
Jakub Jelinek [Wed, 1 Jul 2009 19:13:03 +0000 (21:13 +0200)]
HTML_401F.java (defineElements): Split this huge method into...
* gnu/javax/swing/text/html/parser/HTML_401F.java (defineElements):
Split this huge method into...
(defineElements1, defineElements2, defineElements3, defineElements4,
defineElements5, defineElements6): ... these smaller methods.
From-SVN: r149148
Ian Lance Taylor [Wed, 1 Jul 2009 18:46:09 +0000 (18:46 +0000)]
* g++spec.c (lang_specific_driver): Bump num_args by 1.
From-SVN: r149147
John David Anglin [Wed, 1 Jul 2009 18:10:45 +0000 (18:10 +0000)]
re PR ada/40609 (Ada build fails)
PR ada/40609
init.c (__gnat_error_handler): Add ATTRIBUTE_UNUSED to ucontext
argument.
From-SVN: r149146
H.J. Lu [Wed, 1 Jul 2009 17:07:31 +0000 (17:07 +0000)]
re PR testsuite/40601 (Errors in "make check")
2009-07-01 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/40601
* testsuite/lib/libffi-dg.exp (libffi-init): Properly set
gccdir. Adjust ld_library_path for gcc only if gccdir isn't
empty.
From-SVN: r149145
John David Anglin [Wed, 1 Jul 2009 16:53:26 +0000 (16:53 +0000)]
re PR target/40575 (FAIL: gcc.dg/falign-labels-1.c execution test)
PR target/40575
* pa.md (casesi32p): Use jump table label to determine the offset
of the jump table.
(casesi64p): Likewise.
From-SVN: r149144
John David Anglin [Wed, 1 Jul 2009 15:47:33 +0000 (15:47 +0000)]
pa.c (forward_branch_p): Return bool type.
* pa.c (forward_branch_p): Return bool type. Use instruction addresses
when available. Assert that INSN has a jump label.
(pa_adjust_insn_length): Don't call forward_branch_p if INSN doesn't
have a jump label.
From-SVN: r149141
Richard Guenther [Wed, 1 Jul 2009 12:27:33 +0000 (12:27 +0000)]
re PR tree-optimization/19831 (Missing DSE/malloc/free optimization)
2009-07-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/19831
* tree-ssa-dce.c (propagate_necessity): Calls to functions
that only act as barriers do not make any previous stores
necessary.
* tree-ssa-structalias.c (handle_lhs_call): Delay making
HEAP variables global, do not add a constraint from nonlocal.
(find_func_aliases): Handle escapes through return statements.
(compute_points_to_sets): Make escaped HEAP variables global.
* gcc.dg/tree-ssa/
20041122-1.c: Enable TBAA, scan FRE dump,
make allocated memory escape. Un-XFAIL.
* gcc.dg/vect/pr21591.c: Make allocated memory escape.
* gcc.dg/vect/pr31699.c: Likewise.
* gcc.dg/tree-ssa/ssa-dce-7.c: New testcase.
libmudflap/
* testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
escape.
* testsuite/libmudflap.c/fail12-frag.c: Likewise.
* testsuite/libmudflap.c/fail16-frag.c: Likewise.
* testsuite/libmudflap.c/fail31-frag.c: Likewise.
From-SVN: r149140
Tobias Grosser [Wed, 1 Jul 2009 12:13:57 +0000 (12:13 +0000)]
MAINTAINERS: Move myself to the Graphite Reviewers.
2009-07-01 Tobias Grosser <grosser@fim.uni-passau.de>
* MAINTAINERS: Move myself to the Graphite Reviewers.
From-SVN: r149138
Paolo Bonzini [Wed, 1 Jul 2009 12:05:56 +0000 (12:05 +0000)]
re PR bootstrap/40597 (Powerpc bootstrap is broken due to changes in expmed.c)
2009-07-01 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/40597
* expmed.c (emit_store_flag): Perform a conversion if necessary,
after reducing a DImode cstore to SImode.
From-SVN: r149137
Paolo Bonzini [Wed, 1 Jul 2009 11:50:12 +0000 (11:50 +0000)]
expr.c (expand_expr_real_1): Reinstate fallthrough to TRUTH_ANDIF_EXPR if do_store_flag returns NULL.
2009-07-01 Paolo Bonzini <bonzini@gnu.org>
* expr.c (expand_expr_real_1): Reinstate fallthrough to
TRUTH_ANDIF_EXPR if do_store_flag returns NULL.
From-SVN: r149136
Eric Botcazou [Wed, 1 Jul 2009 09:08:27 +0000 (09:08 +0000)]
* init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
From-SVN: r149135
Maciej W. Rozycki [Wed, 1 Jul 2009 01:23:54 +0000 (01:23 +0000)]
vax.h (TARGET_BSD_DIVMOD): New macro.
* config/vax/vax.h (TARGET_BSD_DIVMOD): New macro. Set to 1.
* config/vax/linux.h (TARGET_BSD_DIVMOD): New macro. Redefine the
to 0.
* config/vax/vax.c (vax_init_libfuncs): Only redefine udiv_optab
and umod_optab if TARGET_BSD_DIVMOD.
* config/vax/lib1funcs.asm: New file.
* config/vax/t-linux: New file.
* config.gcc (vax-*-linux*): Set tmake_file to vax/t-linux.
From-SVN: r149128
GCC Administrator [Wed, 1 Jul 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r149126
Jakub Jelinek [Tue, 30 Jun 2009 22:04:36 +0000 (00:04 +0200)]
re PR c++/40566 (rejects promoted throw)
PR c++/40566
* convert.c (convert_to_integer) <case COND_EXPR>: Don't convert
to type arguments that have void type.
* g++.dg/parse/cond5.C: New test.
From-SVN: r149121
Jakub Jelinek [Tue, 30 Jun 2009 22:03:27 +0000 (00:03 +0200)]
re PR debug/40573 (DWARF for inlined subroutines refers to the outlined copy)
PR debug/40573
* dwarf2out.c (gen_formal_parameter_die): Call
equate_decl_number_to_die if node is different from origin.
From-SVN: r149120
Nathan Froyd [Tue, 30 Jun 2009 21:10:14 +0000 (21:10 +0000)]
gen-vect-25.c (n): New variable.
* gcc.dg/tree-ssa/gen-vect-25.c (n): New variable.
(main): Pass n to main_1 instead.
* gcc.dg/tree-ssa/gen-vect-28.c (off): New variable.
(main_1): New function, split off from...
(main): ...here. Pass `off' to main_1 instead.
From-SVN: r149119
Jason Merrill [Tue, 30 Jun 2009 19:36:36 +0000 (15:36 -0400)]
re PR c++/40595 ([C++0x] ICE trying to use sfinae with variadic template pack expansion)
PR c++/40595
* pt.c (tsubst_pack_expansion): Handle unexpanded packs in an
EXPR_PACK_EXPANSION.
From-SVN: r149117
Eric Botcazou [Tue, 30 Jun 2009 19:20:24 +0000 (19:20 +0000)]
utils2.c (build_binary_op): Do not use the type of the left operand if...
* gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
the type of the left operand if it pads a self-referential type when
the right operand is a constructor.
* gcc-interface/lang-specs.h: Fix copyright date.
From-SVN: r149115
Anthony Green [Tue, 30 Jun 2009 18:59:41 +0000 (18:59 +0000)]
Enable building with g++.
From-SVN: r149114
Richard Sandiford [Tue, 30 Jun 2009 18:37:57 +0000 (18:37 +0000)]
gcc-defs.exp (gcc-set-multilib-library-path): Delete.
gcc/testsuite/
* lib/gcc-defs.exp (gcc-set-multilib-library-path): Delete.
* lib/target-libpath.exp (ld_library_path_vars): New variable.
(init_ld_library_path_env_vars): New function, replacing the
orig_*_saved assignments. Call it after defining it.
(set_ld_library_path_env_vars): Rewrite to use ld_library_path_vars.
(restore_ld_library_path_env_vars): Likewise.
(add_path, find_libgcc_s): New functions.
* lib/objc.exp (objc_init): Use find_libgcc_s instead of
gcc-set-multilib-library-path.
(objc_target_compile): Don't add "." to ld_library_path.
Use add_path.
* lib/gfortran.exp (gfortran_link_flags): Don't add "." to
ld_library_path. Use add_path. Use find_libgcc_s instead of
gcc-set-multilib-library-path.
* lib/g++.exp (g++_link_flags): Likewise.
* lib/obj-c++.exp (obj-c++_link_flags): Likewise.
* lib/c-torture.exp: Do not manipulate ld_library_path at the
top level; do it...
(c-torture-execute): ...here instead. Use $ld_library_path_multilib
to tell when this needs to happen. Use find_libgcc_s instead of
gcc-set-multilib-library-path.
* lib/gcc-dg.exp: Likewise.
* lib/gnat.exp (gnat_target_compile): Don't add "." to ld_library_path.
* g++.dg/compat/compat.exp (alt_ld_library_path): Don't add "."
unless it is in $ALT_LD_LIBRARY_PATH.
* g++.dg/compat/struct-layout-1.exp (alt_ld_library_path): Likewise.
libffi/
* testsuite/lib/libffi-dg.exp (libffi-init): Don't add "."
to ld_library_path. Use add_path. Add just find_libgcc_s
to ld_library_path, not every libgcc multilib directory.
libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
ld_library_path. Use add_path. Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.
* testsuite/libgomp.c/c.exp (ld_library_path): Don't call
gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
* testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
Use add_path.
* testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
libjava/
* testsuite/lib/libjava.exp (libjava_init): Just add
find_libgcc_s to libjava_libgcc_s_path, rather than every
libgcc multilib directory.
(libjava_arguments): Explain why we add "." to ld_library_path.
(gcj_invoke, exec_gij, libjava_invoke): Use add_path.
libmudflap/
* testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
to ld_library_path. Use add_path. Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.
libstdc++-v3/
* testsuite/lib/libstdc++.exp (libstdc++_init): Don't add "."
to ld_library_path. Use add_path. Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.
From-SVN: r149113
Eric Botcazou [Tue, 30 Jun 2009 17:26:32 +0000 (17:26 +0000)]
cgraphunit.c (cgraph_finalize_compilation_unit): Call finalize_size_functions before further processing.
* cgraphunit.c (cgraph_finalize_compilation_unit): Call
finalize_size_functions before further processing.
* stor-layout.c: Include cgraph.h, tree-inline.h and tree-dump.h.
(variable_size): Call self_referential_size on size expressions
that contain a PLACEHOLDER_EXPR.
(size_functions): New static variable.
(copy_self_referential_tree_r): New static function.
(self_referential_size): Likewise.
(finalize_size_functions): New global function.
* tree.c: Include tree-inline.h.
(push_without_duplicates): New static function.
(find_placeholder_in_expr): New global function.
(substitute_in_expr) <tcc_declaration>: Return the replacement object
on equality.
<tcc_expression>: Likewise.
<tcc_vl_exp>: If the replacement object is a constant, try to inline
the call in the expression.
* tree.h (finalize_size_functions): Declare.
(find_placeholder_in_expr): Likewise.
(FIND_PLACEHOLDER_IN_EXPR): New macro.
(substitute_placeholder_in_expr): Update comment.
* tree-inline.c (remap_decl): Do not unshare trees if do_not_unshare
is true.
(copy_tree_body_r): Likewise.
(copy_tree_body): New static function.
(maybe_inline_call_in_expr): New global function.
* tree-inline.h (struct copy_body_data): Add do_not_unshare field.
(maybe_inline_call_in_expr): Declare.
* Makefile.in (tree.o): Depend on TREE_INLINE_H.
(stor-layout.o): Depend on CGRAPH_H, TREE_INLINE_H, TREE_DUMP_H and
GIMPLE_H.
ada/
* gcc-interface/decl.c: Include tree-inline.h.
(annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
* gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
* gcc-interface/utils2.c: Include tree-inline.
(known_alignment) <CALL_EXPR>: Likewise.
From-SVN: r149112
Thomas Koenig [Tue, 30 Jun 2009 17:10:06 +0000 (17:10 +0000)]
re PR fortran/40576 (Endless loop in internal write)
2009-06-30 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/40576
* gfortran.dg/internal_write_1.f90: New testcase.
From-SVN: r149109
Janus Weil [Tue, 30 Jun 2009 17:06:27 +0000 (19:06 +0200)]
re PR fortran/40594 (wrong-code)
2009-06-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/40594
* trans-types.c (gfc_get_derived_type): Bugfix, reverting one hunk from
r147206.
2009-06-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/40594
* gfortran.dg/derived_pointer_recursion_2.f90: New.
From-SVN: r149108
Richard Guenther [Tue, 30 Jun 2009 15:23:39 +0000 (15:23 +0000)]
tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always continue walking.
2009-06-30 Richard Guenther <rguenther@suse.de>
* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always
continue walking.
(propagate_necessity): Do not mark reaching defs of stores
as necessary.
* gcc.dg/tree-ssa/ssa-dce-6.c: New testcase.
From-SVN: r149103
Jan Hubicka [Tue, 30 Jun 2009 14:57:54 +0000 (14:57 +0000)]
Revert accidental commit.
From-SVN: r149102
Jan Hubicka [Tue, 30 Jun 2009 14:56:37 +0000 (16:56 +0200)]
cfgloopanal.c (check_irred): Move into ...
* cfgloopanal.c (check_irred): Move into ...
(mark_irreducible_loops): ... here; return true if ireducible
loops was found.
* ipa-pure-const.c: Include cfgloop.h and tree-scalar-evolution.h
(analyze_function): Try to prove loop finiteness.
* cfgloop.h (mark_irreducible_loops): Update prototype.
* Makefile.in (ipa-pure-const.o): Add dependency on SCEV and CFGLOOP.
From-SVN: r149101
Basile Starynkevitch [Tue, 30 Jun 2009 14:36:55 +0000 (14:36 +0000)]
Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.
2009-06-30 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.
From-SVN: r149100
H.J. Lu [Tue, 30 Jun 2009 13:58:43 +0000 (06:58 -0700)]
Remove testsuite in filenames.
From-SVN: r149098
Paolo Carlini [Tue, 30 Jun 2009 12:09:57 +0000 (12:09 +0000)]
re PR libstdc++/40600 (pair& operator=(pair&& __p) doesn't work without inlining)
2009-06-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40600
* testsuite/25_algorithms/minmax/2.cc: Fix consistently with
std::minmax return type.
* testsuite/25_algorithms/minmax/3.cc: Likewise.
From-SVN: r149094
Wei Guozhi [Tue, 30 Jun 2009 12:01:40 +0000 (12:01 +0000)]
ssa-sink-5.c: Change the compiler option "-O2 -Os" to "-Os".
* gcc.dg/tree-ssa/ssa-sink-5.c: Change the compiler option "-O2 -Os"
to "-Os".
From-SVN: r149093
Ira Rosen [Tue, 30 Jun 2009 11:33:27 +0000 (11:33 +0000)]
re PR tree-optimization/40542 (vectorizes access to volatile array)
PR tree-optimization/40542
* tree-vect-stmts.c (vect_analyze_stmt): Don't vectorize volatile
types.
From-SVN: r149090
Paolo Carlini [Tue, 30 Jun 2009 10:45:54 +0000 (10:45 +0000)]
re PR libstdc++/40511 (Bootstrap Failure in stage3: c++locale - Recent SVN)
2009-06-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40511
* config/locale/gnu/c_locale.cc: Don't use LC_CTYPE_MASK together
with glibc2.2.x.
From-SVN: r149089
Martin Jambor [Tue, 30 Jun 2009 10:10:29 +0000 (12:10 +0200)]
re PR tree-optimization/40582 (ice for non-trivial conversion at assignment with -O2)
2009-06-30 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/40582
* tree-sra.c (build_ref_for_offset_1): Use types_compatible_p rather
than useless_type_conversion_p.
(generate_subtree_copies): Increment sra_stats.subtree_copies at a
proper place.
* testsuite/gcc.c-torture/compile/pr40582.c: New test.
From-SVN: r149088
Martin Jambor [Tue, 30 Jun 2009 10:03:26 +0000 (12:03 +0200)]
re PR middle-end/40554 (Revision 148941 miscompiled 447.dealII in SPEC CPU 2006)
2009-06-30 Martin Jambor <mjambor@suse.cz>
PR middle-end/40554
* tree-sra.c (sra_modify_expr): Add access->offset to start_offset.
From-SVN: r149087
Richard Guenther [Tue, 30 Jun 2009 09:55:34 +0000 (09:55 +0000)]
tree-ssa-alias.c (walk_aliased_vdefs_1): Change interface to use ao_ref references.
2009-06-30 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (walk_aliased_vdefs_1): Change interface to
use ao_ref references.
(walk_aliased_vdefs): Likewise.
* tree-ssa-alias.h (walk_aliased_vdefs): Adjust prototype.
* tree-ssa-dce.c (struct ref_data): Remove.
(mark_aliased_reaching_defs_necessary_1): Use the ao_ref argument.
(mark_aliased_reaching_defs_necessary): Adjust.
(mark_all_reaching_defs_necessary_1): Likewise.
From-SVN: r149086
Eric Botcazou [Tue, 30 Jun 2009 09:52:48 +0000 (09:52 +0000)]
Fix typo
From-SVN: r149085
Eric Botcazou [Tue, 30 Jun 2009 09:50:52 +0000 (09:50 +0000)]
* raise-gcc: Include dwarf2.h conditionally.
From-SVN: r149084
Paolo Bonzini [Tue, 30 Jun 2009 07:59:01 +0000 (07:59 +0000)]
re PR bootstrap/40597 (Powerpc bootstrap is broken due to changes in expmed.c)
2009-06-30 Paolo Bonzini <bonzini@gnu.org>
PR boostrap/40597
* expmed.c (emit_cstore): New name of emit_store_flag_1.
(emit_store_flag_1): Extract from emit_store_flag, adjust
calls to (what now is) emit_cstore.
(emit_store_flag): Call emit_store_flag_1 and also use it
for what used to be recursive calls.
From-SVN: r149083
Wei Guozhi [Tue, 30 Jun 2009 06:51:29 +0000 (06:51 +0000)]
tree-ssa-sink.c (statement_sink_location): Stop sinking expression if the target bb post dominates from bb.
* tree-ssa-sink.c (statement_sink_location): Stop sinking expression
if the target bb post dominates from bb.
* config/i386/i386.c (memory_address_length): Check existence of base
register before using it.
* gcc.dg/tree-ssa/ssa-sink-5.c: New testcase.
From-SVN: r149082
Wei Guozhi [Tue, 30 Jun 2009 03:42:16 +0000 (03:42 +0000)]
MAINTAINERS: Add my name to Write After Approval list.
* MAINTAINERS: Add my name to Write After Approval list.
From-SVN: r149080
DJ Delorie [Tue, 30 Jun 2009 01:36:27 +0000 (21:36 -0400)]
* doc/install.texi (mep-x-elf): Correct chip's full name.
From-SVN: r149079
Paolo Carlini [Tue, 30 Jun 2009 01:25:52 +0000 (01:25 +0000)]
2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc
(linear_congruential_engine<>::seed(seed_seq&)): Use uint_least32_t
as array type.
From-SVN: r149078
H.J. Lu [Tue, 30 Jun 2009 00:48:50 +0000 (00:48 +0000)]
extend.texi: Fix typo.
2009-06-29 H.J. Lu <hongjiu.lu@intel.com>
* doc/extend.texi: Fix typo.
From-SVN: r149076
Jerry DeLisle [Tue, 30 Jun 2009 00:46:35 +0000 (00:46 +0000)]
re PR fortran/40576 (Endless loop in internal write)
2009-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/40576
* io/transfer.c (sset): Adjust exit condition for loop.
From-SVN: r149075
Paolo Carlini [Tue, 30 Jun 2009 00:43:21 +0000 (00:43 +0000)]
random.h (__mod(_Tp)): Use defaults.
2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (__mod(_Tp)): Use defaults.
(struct _Mod): Adjust template parameters.
(linear_congruential_engine<>::operator()()): Adjust.
(typedef _UInt32Type): Remove.
(mersenne_twister_engine<>::initialization_multiplier): Fix type.
* include/bits/random.tcc (struct _Mod): Adjust template parameters.
(linear_congruential_engine<>::seed(result_type)): Adjust __mod
calls.
(mersenne_twister_engine<>::seed(result_type)): Likewise.
(mersenne_twister_engine<>::seed(seed_seq&)): Likewise.
(subtract_with_carry_engine<>::seed(result_type)): Likewise.
(subtract_with_carry_engine<>::seed(seed_seq&)): Likewise.
(seed_seq::seed_seq(std::initializer_list<>)): Likewise.
(seed_seq::seed_seq(_InputIterator, _InputIterator)): Likewise.
(seed_seq::generate(_RandomAccessIterator, _RandomAccessIterator)):
Likewise.
* include/bits/random.tcc
(mersenne_twister_engine<>::seed(result_type)): Fix i usage in the
formula (i mod n).
(mersenne_twister_engine<>::seed(seed_seq&)): Use uint_least32_t
as array type.
(subtract_with_carry_engine<>::seed(seed_seq&)): Likewise; fix array
size.
(subtract_with_carry_engine<>::seed(result_type)): Fix; also use
uint_least32_t.
From-SVN: r149074