Jakub Jelinek [Sun, 18 Nov 2007 19:18:39 +0000 (20:18 +0100)]
re PR middle-end/33335 (FAIL: 26_numerics/complex/inserters_extractors/wchar_t/1.cc)
PR middle-end/33335
* optabs.h (optab_table): Change type to struct optab from optab.
(convert_optab_table): Similarly.
Adjust all _optab macros to expand to addresses of optab_table
resp. convert_optab_table elements rather than the values of the
elements.
* optabs.c (optab_table): Change typype to struct optab from optab.
If compiled by recent GCC, initialize all the insn_code fields in
the array using designated range initializers.
(convert_optab_table): Similarly.
(convert_optab_libfunc, optab_libfunc, set_optab_libfunc,
set_conv_libfunc): Into libfunc_entry's optab field store index within
optab_table resp. convert_optab_table array instead of difference
between two separately malloced addresses.
(new_optab): Add op argument, don't return anything. Initialize
just the insn_code field in handlers array and only when needed.
(init_optab, init_optabv): Add op argument, don't return anything.
Adjust new_optab caller.
(new_convert_optab): Removed.
(init_convert_optab): Add op argument, don't return anything, don't
call new_convert_optab. If needed, initialize insn_code field in
handlers array.
(init_optabs): Adjust init_optab, init_optabv and init_convert_optab
callers.
(debug_optab_libfuncs): Adjust uses of optab_table and
convert_optab_table arrays.
From-SVN: r130274
Paolo Carlini [Sun, 18 Nov 2007 18:55:27 +0000 (18:55 +0000)]
type_traits (_DEFINE_SPEC_BODY): Remove.
2007-11-18 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (_DEFINE_SPEC_BODY): Remove.
(_DEFINE_SPEC_0_HELPER): Rename to _DEFINE_SPEC_HELPER.
(_DEFINE_SPEC): Simplify; adjust uses.
From-SVN: r130273
Paolo Carlini [Sun, 18 Nov 2007 18:05:42 +0000 (18:05 +0000)]
type_traits (is_reference, [...]): Declare.
2007-11-18 Paolo Carlini <pcarlini@suse.de>
* include/tr1_impl/type_traits (is_reference, is_function,
remove_cv, is_member_pointer, remove_reference): Declare.
* include/tr1_impl/type_traitsfwd.h: Remove.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
From-SVN: r130272
Paul Thomas [Sun, 18 Nov 2007 17:14:40 +0000 (17:14 +0000)]
re PR fortran/31608 (wrong types in character array/scalar binop)
2007-11-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31608
* trans-array.c (gfc_conv_expr_descriptor): Remove exception
for indirect references in the call to gfc_trans_scalar_assign.
* trans-expr.c (gfc_conv_string_parameter): Instead of asserting
that the expression is not an indirect reference, cast it to a
pointer type of the length given by se->string_length.
2007-11-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31608
* gfortran.dg/char_cast_2.f90: New test based on achar_4.f90.
From-SVN: r130271
Tobias Burnus [Sun, 18 Nov 2007 16:35:12 +0000 (17:35 +0100)]
re PR fortran/34137 (Module function with ENTRY rejected)
2007-11-18 Tobias Burnus <burnus@net-b.de>
PR fortran/34137
* primary.c (match_variable): Reject non-result entry symbols.
* resolve.c (resolve_contained_fntype): Do not check entry
* master functions.
2007-11-18 Tobias Burnus <burnus@net-b.de>
PR fortran/34137
* gfortran.dg/entry_14.f90: New.
* gfortran.dg/entry_15.f90: New.
From-SVN: r130270
Richard Guenther [Sun, 18 Nov 2007 15:49:57 +0000 (15:49 +0000)]
re PR tree-optimization/34127 (ICE: tree-ssa-operands.c:1688)
2007-11-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34127
* tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
Make code match up the comments, require compatibility of the
pointed-to types.
* gcc.c-torture/compile/pr34127.c: New testcase.
From-SVN: r130269
Ben Elliston [Sun, 18 Nov 2007 09:56:39 +0000 (09:56 +0000)]
altivec-23.c: Do not use a typedef name as a type specifier...
* gcc.target/powerpc/altivec-23.c: Do not use a typedef name as a
type specifier, as they are not permitted according to the AltiVec
Programming Interface Manual.
From-SVN: r130268
David Daney [Sun, 18 Nov 2007 05:23:59 +0000 (05:23 +0000)]
constants.c (build_constants_constructor): Use POINTER_SIZE insead of BITS_PER_WORD in big-endian work around.
2007-11-16 David Daney <ddaney@avtrex.com>
Andrew Haley <aph@redhat.com>
* constants.c (build_constants_constructor): Use POINTER_SIZE
insead of BITS_PER_WORD in big-endian work around.
From-SVN: r130267
GCC Administrator [Sun, 18 Nov 2007 00:17:07 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130265
Francois-Xavier Coudert [Sat, 17 Nov 2007 22:23:32 +0000 (22:23 +0000)]
* trans-types.c (gfc_init_types): Use wider buffer.
From-SVN: r130262
Francois-Xavier Coudert [Sat, 17 Nov 2007 20:07:21 +0000 (20:07 +0000)]
trans-types.c (gfc_init_types): Use Fortran-90-style type names, with kinds.
* trans-types.c (gfc_init_types): Use Fortran-90-style type
names, with kinds.
From-SVN: r130261
Tobias Burnus [Sat, 17 Nov 2007 18:19:16 +0000 (19:19 +0100)]
re PR fortran/34133 (Bind(c,name="") should be rejected for dummies; F2008: allow bind(c) for internal procs)
2007-11-17 Tobias Burnus <burnus@net-b.de>
PR fortran/34133
* decl.c (gfc_match_suffix,gfc_match_subroutine): Disallow
bind(c) attribute for internal procedures.
2007-11-17 Tobias Burnus <burnus@net-b.de>
PR fortran/34133
* gfortran.dg/bind_c_usage_9.f03: New.
* gfortran.dg/interface_abstract_1.f90: Fix testcase.
From-SVN: r130260
Francois-Xavier Coudert [Sat, 17 Nov 2007 17:49:45 +0000 (17:49 +0000)]
re PR fortran/25252 (ICE on invalid code)
PR fortran/25252
* interface.c (gfc_current_interface_head,
gfc_set_current_interface_head): New functions.
* decl.c (gfc_match_modproc): Move check for syntax error earlier.
On syntax error, restore previous state of the interface.
* gfortran.h (gfc_current_interface_head,
gfc_set_current_interface_head): New prototypes.
* gfortran.dg/interface_22.f90: New test.
From-SVN: r130259
Richard Guenther [Sat, 17 Nov 2007 14:22:42 +0000 (14:22 +0000)]
re PR middle-end/34130 (the builtin abs() gives wrong result when used in some expression)
2007-11-17 Richard Guenther <rguenther@suse.de>
PR middle-end/34130
* fold-const.c (extract_muldiv_1): Do not move negative
constants inside ABS_EXPR.
* gcc.c-torture/execute/pr34130.c: New testcase.
From-SVN: r130258
Francois-Xavier Coudert [Sat, 17 Nov 2007 13:46:53 +0000 (13:46 +0000)]
re PR fortran/30285 (gfortran excessive memory usage with COMMON blocks in modules)
PR fortran/30285
* module.c (struct written_common, written_commons): New structure.
(compare_written_commons, free_written_common, write_common_0):
New functions.
(write_common): Call recursive function write_common_0.
From-SVN: r130257
Jonathan Wakely [Sat, 17 Nov 2007 01:11:43 +0000 (01:11 +0000)]
howto.html, [...]: Fix typos and anachronisms.
2007-11-17 Jonathan Wakely <jwakely.gcc@gmail.com>
* docs/html/17_intro/howto.html, docs/html/21_strings/howto.html,
docs/html/22_locale/codecvt.html, docs/html/23_containers/howto.html,
docs/html/27_io/howto.html, docs/html/ext/howto.html,
docs/html/debug.html, docs/html/install.html,
docs/html/faq/index.html: Fix typos and anachronisms.
From-SVN: r130255
Paolo Carlini [Sat, 17 Nov 2007 00:32:29 +0000 (00:32 +0000)]
stl_algobase.h (struct __lexicographical_compare): Move to namespace std.
2007-11-16 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (struct __lexicographical_compare):
Move to namespace std.
(__lexicographical_compare_aux<>(_II1, _II1, _II2, _II2)): Add.
(lexicographical_compare<>(_II1, _II1, _II2, _II2)): Call the latter.
From-SVN: r130254
GCC Administrator [Sat, 17 Nov 2007 00:17:23 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130252
Francois-Xavier Coudert [Sat, 17 Nov 2007 00:10:00 +0000 (00:10 +0000)]
re PR fortran/34108 (ICE: Segmentation fault occurs by "write(*,0)" statement)
PR fortran/34108
* io.c (check_format_string): Only check character expressions.
(match_dt_format): Return MATCH_ERROR if that is what
gfc_match_st_label said.
* gfortran.dg/fmt_label_1.f90: New test.
From-SVN: r130249
Paolo Carlini [Fri, 16 Nov 2007 23:41:55 +0000 (23:41 +0000)]
stl_algobase.h (struct __lexicographical_compare): Add.
2007-11-16 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (struct __lexicographical_compare): Add.
(lexicographical_compare<>(_II1, _II1, _II2, _II2)): Use it.
(lexicographical_compare(const unsigned char*, const unsigned char*,
const unsigned char*, const unsigned char*),
lexicographical_compare(const char*, const char*, const char*,
const char*)): Remove.
* include/ext/numeric_traits.h (__numeric_traits_floating<>::
__is_signed): Add.
From-SVN: r130248
Andreas Tobler [Fri, 16 Nov 2007 23:24:53 +0000 (23:24 +0000)]
sysv.S: Load correct cr to compare if we have long double.
2007-11-17 Andreas Tobler <a.tobler@schweiz.org>
* src/powerpc/sysv.S: Load correct cr to compare if we have long double.
* src/powerpc/linux64.S: Likewise.
* src/powerpc/ffi.c: Add a comment to show which part goes into cr6.
* testsuite/libffi.call/return_ldl.c: New test.
From-SVN: r130247
Francois-Xavier Coudert [Fri, 16 Nov 2007 22:38:21 +0000 (22:38 +0000)]
re PR fortran/33957 (gfortran rejects valid initialization expression)
PR fortran/33957
* gfortran.dg/initialization_15.f90 : New test.
* expr.c (check_inquiry): Don't call gfc_error now.
From-SVN: r130246
Francois-Xavier Coudert [Fri, 16 Nov 2007 22:31:28 +0000 (22:31 +0000)]
re PR libfortran/33583 (FAIL: gfortran.dg/gamma_1.f90)
PR libfortran/33583
PR libfortran/33698
* intrinsics/c99_functions.c (tgamma, tgammaf, lgamma, lgammaf):
New fallback functions.
* c99_protos.h (tgamma, tgammaf, lgamma, lgammaf): New prototypes.
* configure.ac: Add checks for tgamma, tgammaf, tgammal, lgamma,
lgammaf and lgammal.
* config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r130245
Francois-Xavier Coudert [Fri, 16 Nov 2007 22:20:44 +0000 (22:20 +0000)]
re PR debug/33739 (Failure of gfortran.dg/literal_character_constant_1_*.F with -m64 -g on Darwin)
PR fortran/33739
PR fortran/34084
* scanner.c (start_source_file, end_source_file,
exit_remaining_files, gfc_advance_line): Revert rev. 130016.
From-SVN: r130244
Ian Lance Taylor [Fri, 16 Nov 2007 22:11:29 +0000 (22:11 +0000)]
collect2.c (dump_file): If a demangled symbol is followed by a space...
* collect2.c (dump_file): If a demangled symbol is followed by a
space, make sure we output at least one space.
From-SVN: r130243
Richard Guenther [Fri, 16 Nov 2007 21:34:39 +0000 (21:34 +0000)]
re PR middle-end/34030 (ICE in in compare_values_warnv, at tree-vrp.c:701)
2007-11-16 Richard Guenther <rguenther@suse.de>
PR middle-end/34030
* fold-const.c (fold_binary): Use correct types for folding
1 << X & Y to Y >> X & 1.
* gcc.c-torture/compile/pr34030.c: New testcase.
From-SVN: r130238
Paolo Carlini [Fri, 16 Nov 2007 17:50:50 +0000 (17:50 +0000)]
locale_facets.cc: Fix typo in Copyright.
2007-11-16 Paolo Carlini <pcarlini@suse.de>
* src/locale_facets.cc: Fix typo in Copyright.
From-SVN: r130234
Paolo Carlini [Fri, 16 Nov 2007 17:45:35 +0000 (17:45 +0000)]
locale_facets.tcc (__verify_grouping): Move...
2007-11-16 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (__verify_grouping): Move...
* src/locale_facets.cc: ... here.
* config/abi/pre/gnu.ver: Update exports.
From-SVN: r130233
Paul Thomas [Fri, 16 Nov 2007 14:47:31 +0000 (14:47 +0000)]
re PR fortran/34008 (ICE in gfc_trans_call, at fortran/trans-stmt.c:389 on elemental assignment)
2007-11-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34008
* trans-stmt.c (gfc_conv_elemental_dependencies): Add check for
INTENT_INOUT as well as INTENT_OUT.
(gfc_trans_call): Remove redundant gcc_asserts in dependency
check.
2007-11-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34008
* gfortran.dg/interface_assignment_3.f90.
From-SVN: r130232
Richard Guenther [Fri, 16 Nov 2007 14:40:04 +0000 (14:40 +0000)]
re PR tree-optimization/33870 (miscompiles sqlite)
2007-11-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/33870
* tree.h (struct tree_memory_tag): Add base_for_components flag.
(struct tree_struct_field_tag): Remove nesting_level field.
(SFT_NESTING_LEVEL): Remove.
(SFT_BASE_FOR_COMPONENTS_P): Add.
* tree-flow.h (struct fieldoff): Remove nesting_level field. Add
base_for_components flag.
(push_fields_onto_fieldstack): Remove nesting_level parameter.
* tree-ssa-alias.c (create_sft): Likewise. Add base_for_components
parameter.
(create_overlap_variables_for): Deal with it.
* tree-dfa.c (dump_subvars_for): Likewise.
(dump_variable): Likewise.
* tree-ssa-structalias.c (push_fields_onto_fieldstack): Likewise.
Set base_for_components for first elements of sub-structures.
(create_variable_info_for): Handle base_for_components.
(set_uids_in_ptset): Always set SFT_UNPARTITIONABLE_P for
pointed-to SFTs if SFT_BASE_FOR_COMPONENTS_P is set.
* tree-ssa-operands.c (ref_nesting_level): Remove.
(add_vars_for_offset): Remove full_ref parameter, always add
the offset of the pointed-to SFT.
(add_virtual_operand): Adjust for changed signature of
add_vars_for_offset.
* gcc.dg/torture/pr33870.c: New testcase.
From-SVN: r130231
Joseph Myers [Fri, 16 Nov 2007 14:06:44 +0000 (14:06 +0000)]
* de.po: Update.
From-SVN: r130230
Michael Matz [Fri, 16 Nov 2007 13:46:57 +0000 (13:46 +0000)]
* files.c (search_path_head): Fix check for absolute paths.
From-SVN: r130229
Paul Thomas [Fri, 16 Nov 2007 13:46:04 +0000 (13:46 +0000)]
re PR fortran/33986 (ICE on allocatable function result)
2007-11-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33986
* trans-array.c (gfc_conv_array_parameter ): Allow allocatable
function results.
2007-11-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33986
* gfortran.dg/allocatable_function_3.f90.
From-SVN: r130228
Sa Liu [Fri, 16 Nov 2007 13:33:47 +0000 (13:33 +0000)]
Add myself to Write After Approval.
From-SVN: r130227
Sa Liu [Fri, 16 Nov 2007 13:28:03 +0000 (13:28 +0000)]
Inlined floatunssidf2 and floatunsdidf2
From-SVN: r130226
Sa Liu [Fri, 16 Nov 2007 13:23:28 +0000 (13:23 +0000)]
Inlined floatunssidf2 and floatunsdidf2
From-SVN: r130225
Richard Guenther [Fri, 16 Nov 2007 13:14:03 +0000 (13:14 +0000)]
re PR tree-optimization/34113 (ICE in get_addr_dereference_operands, at tree-ssa-operands.c:1746)
2007-11-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34113
* tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
Use correct conversion direction for checking type compatibility.
* gcc.c-torture/compile/pr34113.c: New testcase.
From-SVN: r130223
Richard Guenther [Fri, 16 Nov 2007 10:10:05 +0000 (10:10 +0000)]
re PR tree-optimization/34099 (optimizer problem)
2007-11-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34099
* tree-ssa-ccp.c (likely_value): Use a whitelist for operators
that produce UNDEFINED result if at least one of its operands
is UNDEFINED. By default the result is only UNDEFINED if all
operands are UNDEFINED.
* g++.dg/torture/pr3499.C: New testcase.
* gcc.c-torture/execute/pr34099.c: Likewise.
From-SVN: r130222
Olivier Hainque [Fri, 16 Nov 2007 08:52:51 +0000 (08:52 +0000)]
utils2.c (build_call_alloc_dealloc): Move the code retrieving an allocator return value from a super-aligned address...
2007-11-16 Olivier Hainque <hainque@adacore.com>
ada/
* utils2.c (build_call_alloc_dealloc) <if gnu_obj>: Move the code
retrieving an allocator return value from a super-aligned address from
here to ...
* trans.c (gnat_to_gnu) <case N_Free_Statement>: ... here, and don't
expect a super-aligned address for a fat or thin pointer.
testsuite/
* gnat.dg/release_unc_maxalign.adb: New test.
From-SVN: r130221
Jakub Jelinek [Fri, 16 Nov 2007 07:06:25 +0000 (08:06 +0100)]
re PR c++/34100 (ICE with vector attribute)
PR c++/34100
* pt.c (apply_late_template_attributes): Do nothing if decl's type is
error_mark_node.
* g++.dg/template/crash73.C: New test.
From-SVN: r130220
Jakub Jelinek [Fri, 16 Nov 2007 07:02:49 +0000 (08:02 +0100)]
re PR driver/30460 (asm_debug is not initialized in gcc.c when using a "default" specs file)
PR driver/30460
* gcc.c (init_spec): Don't initialize asm_debug here...
(main): ... but here.
From-SVN: r130219
GCC Administrator [Fri, 16 Nov 2007 00:17:00 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130216
Tom Tromey [Fri, 16 Nov 2007 00:11:47 +0000 (00:11 +0000)]
tree-ssa-structalias.c (ipa_pta_execute): Rename 'cfun' to 'func'.
* tree-ssa-structalias.c (ipa_pta_execute): Rename 'cfun' to
'func'.
* tree-parloops.c (create_loop_fn): Use set_cfun.
* gengtype.c (open_base_files): Emit #undef cfun.
* ipa-struct-reorg.c (do_reorg_1): Use set_cfun.
* function.h (cfun): New define.
* function.c: Undefine cfun.
From-SVN: r130213
Paolo Carlini [Thu, 15 Nov 2007 23:32:10 +0000 (23:32 +0000)]
2007-11-16 Paolo Carlini <pcarlini@suse.de>
* Fix typo in ChangeLog entry.
From-SVN: r130212
Paolo Carlini [Thu, 15 Nov 2007 22:59:12 +0000 (22:59 +0000)]
istream.tcc (basic_istream<>::sentry:: sentry(basic_istream<>&, bool)): Explicitely convert to bool.
2007-11-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (basic_istream<>::sentry::
sentry(basic_istream<>&, bool)): Explicitely convert to bool.
* include/bits/locale_facets.tcc (num_put<>::_M_insert_int(_OutIter,
ios_base&, _CharT, _ValueT)): Likewise.
* include/std/ostream (basic_ostream<>::sentry::~sentry): Likewise.
From-SVN: r130211
Eric B. Weddington [Thu, 15 Nov 2007 19:32:26 +0000 (19:32 +0000)]
avr.c (avr_mcu_types): Add attiny88.
* config/avr/avr.c (avr_mcu_types): Add attiny88.
* config/avr/avr.h (LINK_SPEC): Likewise.
(CRT_BINUTILS_SPECS): Likewsie.
* config/avr/t-avr (MULTILIB_MATCHES): Likewise.
From-SVN: r130208
Paolo Carlini [Thu, 15 Nov 2007 19:05:17 +0000 (19:05 +0000)]
re PR libstdc++/34105 (Confusing error message with missing #include <algorithm>)
2007-11-15 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34105
* include/bits/stl_algobase.h: Do not include <bits/algorithmfwd.h>.
(lexicographical_compare(const unsigned char*, const unsigned char*,
const unsigned char*, const unsigned char*),
lexicographical_compare(const char*, const char*, const char*,
const char*)): Move to namespace (std, _GLIBCXX_STD_P).
* include/parallel/algobase.h: Do not include <bits/algorithmfwd.h>.
(equal): Move after mismatch.
* include/bits/stl_heap.h (is_heap, is_heap_until): Reorder.
* include/bits/char_traits.h: Include <bits/stl_algobase.h> instead
of <bits/algorithmfwd.h>.
* include/bits/stl_algo.h: Include first <bits/algorithmfwd.h>.
* include/bits/algorithmfwd.h (lexicographical_compare): Do not
declare overloads.
* include/parallel/partition.h: Include <parallel/random_number.h>.
* testsuite/util/testsuite_abi.cc: Include <algorithm>.
From-SVN: r130207
Jakub Jelinek [Thu, 15 Nov 2007 19:02:54 +0000 (20:02 +0100)]
re PR middle-end/23848 (stack deallocation can be more efficient)
PR middle-end/23848
* tree-ssa-ccp.c (optimize_stack_restore): New function.
(execute_fold_all_builtins): Call optimize_stack_restore for
BUILT_IN_STACK_RESTORE.
* gcc.dg/tree-ssa/pr23848-1.c: New test.
* gcc.dg/tree-ssa/pr23848-2.c: New test.
* gcc.dg/tree-ssa/pr23848-3.c: New test.
* gcc.dg/tree-ssa/pr23848-4.c: New test.
From-SVN: r130206
Joseph Myers [Thu, 15 Nov 2007 17:28:21 +0000 (17:28 +0000)]
* es.po: Update.
From-SVN: r130205
Joseph Myers [Thu, 15 Nov 2007 16:18:41 +0000 (16:18 +0000)]
* es.po: Update.
From-SVN: r130204
Joseph Myers [Thu, 15 Nov 2007 16:17:31 +0000 (16:17 +0000)]
* de.po: Update.
From-SVN: r130203
Tobias Burnus [Thu, 15 Nov 2007 15:12:03 +0000 (16:12 +0100)]
re PR fortran/33917 (Rejects valid PROCEDURE declarations)
2007-11-15 Tobias Burnus <burnus@net-b.de>
PR fortran/33917
* decl.c (match_procedure_decl): Pre-resolve interface.
* resolve.c (resolve_symbol): Reject interfaces later
declared in procedure statements.
2007-11-15 Tobias Burnus <burnus@net-b.de>
PR fortran/33917
* gfortran.dg/proc_decl_11.f90: New.
From-SVN: r130202
Paolo Bonzini [Thu, 15 Nov 2007 14:45:55 +0000 (14:45 +0000)]
fwprop.c (try_fwprop_subst): Skip profitability check for forward propagation into an address...
2007-11-15 Paolo Bonzini <bonzini@gnu.org>
* fwprop.c (try_fwprop_subst): Skip profitability check for forward
propagation into an address; that's done in should_replace_address.
From-SVN: r130201
Ulrich Weigand [Thu, 15 Nov 2007 14:30:58 +0000 (14:30 +0000)]
spu-protos.h (legitimate_const): Remove prototype.
* config/spu/spu-protos.h (legitimate_const): Remove prototype.
* config/spu/spu.c (legitimate_const): Remove.
(classify_immediate): Inline call to legitimate_const.
(spu_legitimate_address): Likewise. Allow SMBOL_REF + CONST_INT
for any constant, not just -512 .. 511.
From-SVN: r130200
Ben Elliston [Thu, 15 Nov 2007 12:22:04 +0000 (23:22 +1100)]
spu.c (spu_emit_branch_or_set): Remove PROCESSOR_CELL condition from HONOR_NANS test.
* config/spu/spu.c (spu_emit_branch_or_set): Remove PROCESSOR_CELL
condition from HONOR_NANS test.
* config/spu/spu.md (ceq_df): Always generate comparison code
inline, including checks for NaNs and infinities.
(cgt_df): Likewise.
(cgt_v2df): Likewise.
(cmpdf): Make this expander unconditional.
testsuite/
* gcc.target/spu/compare-dp.c: New test.
From-SVN: r130198
Richard Guenther [Thu, 15 Nov 2007 11:15:08 +0000 (11:15 +0000)]
tree-ssa-alias.c (create_overlap_variables_for): Make sure to only create SFTs if we also create variable infos for PTA.
2007-11-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (create_overlap_variables_for): Make sure
to only create SFTs if we also create variable infos for PTA.
* tree-ssa-structalias.c (set_uids_in_ptset): Add all overlapping
SFTs.
From-SVN: r130197
Richard Guenther [Thu, 15 Nov 2007 09:06:58 +0000 (09:06 +0000)]
tree-ssa-structalias.c (set_uids_in_ptset): Use the pointed-to type for TBAA pruning.
2007-11-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (set_uids_in_ptset): Use the pointed-to
type for TBAA pruning.
(find_what_p_points_to): Call set_uids_in_ptset with the original
pointer, not the decl of the solution we collapsed to.
From-SVN: r130195
David Daney [Thu, 15 Nov 2007 05:33:28 +0000 (05:33 +0000)]
linux-unwind.h (mips_fallback_frame_state): Use CFA to find sigcontext.
2007-11-14 David Daney <ddaney@avtrex.com>
* config/mips/linux-unwind.h (mips_fallback_frame_state): Use CFA
to find sigcontext.
From-SVN: r130194
GCC Administrator [Thu, 15 Nov 2007 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130191
Eric Botcazou [Wed, 14 Nov 2007 23:21:15 +0000 (00:21 +0100)]
re PR target/33923 (ICE in reload_cse_simplify_operands (insn does not satisfy its constraints))
PR target/33923
* config/ia64/ia64.h (CANNOT_CHANGE_MODE_CLASS): Forbid mode changes
for registers in BR_REGS class.
From-SVN: r130188
Jakub Jelinek [Wed, 14 Nov 2007 19:32:45 +0000 (20:32 +0100)]
re PR middle-end/34088 (ICE with uninitialized variable and -Werror)
PR middle-end/34088
* tree-ssa.c (delete_tree_ssa): Don't call fini_ssa_operands if
init_ssa_operands has not been called for cfun.
* gcc.dg/pr34088.c: New test.
From-SVN: r130187
Eric Botcazou [Wed, 14 Nov 2007 19:06:10 +0000 (20:06 +0100)]
re PR tree-optimization/34046 (verify_flow_info failed)
PR tree-optimization/34046
* cfg.c (update_bb_profile_for_threading): Avoid the division for the
scaling if the old probability is greater than the new base.
From-SVN: r130185
Eric Botcazou [Wed, 14 Nov 2007 18:31:57 +0000 (18:31 +0000)]
trans.c (call_to_gnu): Always set the source location on the call expression.
* trans.c (call_to_gnu): Always set the source location on the call
expression. If the function returns-by-target, also set it on the
address expression.
From-SVN: r130184
Johannes Singler [Wed, 14 Nov 2007 17:37:38 +0000 (17:37 +0000)]
multiway_merge.h: More robust finding of an arbitrary existing element inside the input sequences.
2007-11-14 Johannes Singler <singler@ira.uka.de>
* include/parallel/multiway_merge.h: More robust finding of an
arbitrary existing element inside the input sequences.
* include/bits/stl_algo.h: Fix typo to actually call appropriate
sequential version.
From-SVN: r130183
Sebastian Pop [Wed, 14 Nov 2007 17:36:01 +0000 (17:36 +0000)]
tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Remove unused edges after loop duplication.
2007-11-14 Sebastian Pop <sebastian.pop@amd.com>
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Remove
unused edges after loop duplication.
From-SVN: r130182
Samuel Tardieu [Wed, 14 Nov 2007 15:14:45 +0000 (15:14 +0000)]
i-cstrin.ads (chars_ptr): Make it a C convention type.
gcc/ada/
* i-cstrin.ads (chars_ptr): Make it a C convention type.
From-SVN: r130180
Uros Bizjak [Wed, 14 Nov 2007 14:14:13 +0000 (15:14 +0100)]
i386.h (TARGET_CPU_DEFAULT_*): Substitute with ...
* config/i386/i386.h (TARGET_CPU_DEFAULT_*): Substitute with ...
(enum target_cpu_default): ... this enum.
(TARGET_CPU_DEFAULT_NAMES): Remove macro. Move initializer to ...
* config/i386/i386.c (override_options): ... here.
* config/i386/i386-interix.h (TARGET_CPU_DEFAULT): Use
TARGET_CPU_DEFAULT_i486.
From-SVN: r130177
Rask Ingemann Lambertsen [Wed, 14 Nov 2007 12:28:41 +0000 (12:28 +0000)]
global.c (rest_of_handle_global_alloc): Fix comment typos.
* global.c (rest_of_handle_global_alloc): Fix comment typos.
* config/sh/sh.c (sh_rtx_costs): Likewise.
* ChangeLog: Likewise.
From-SVN: r130176
Samuel Tardieu [Wed, 14 Nov 2007 12:26:05 +0000 (12:26 +0000)]
adaint.c [...]: Remove system-specific sections of non-supported Interix target.
gcc/ada/
* adaint.c init.c initialize.c link.c: Remove system-specific
sections of non-supported Interix target.
* s-osinte-interix.ads: Removed.
From-SVN: r130175
Jerry DeLisle [Wed, 14 Nov 2007 01:35:09 +0000 (01:35 +0000)]
re PR fortran/31608 (wrong types in character array/scalar binop)
2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/31608
*gfortran.dg/char_cast_1.f90: Modify regex in scan-tree-dump-times
to match known variations in symbol format. Document in comments.
From-SVN: r130173
Jerry DeLisle [Wed, 14 Nov 2007 01:22:17 +0000 (01:22 +0000)]
re PR libfortran/33985 (access="stream",form="unformatted" doesn't buffer)
2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33985
*gfortran.dg/streamio_12.f90: New test to avoid future regression.
From-SVN: r130172
Jerry DeLisle [Wed, 14 Nov 2007 01:14:39 +0000 (01:14 +0000)]
list_read_7.f90: Fix test so that test file is deleted when done.
2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
*gfortran.dg/list_read_7.f90: Fix test so that test file is deleted when
done.
From-SVN: r130171
Jerry DeLisle [Wed, 14 Nov 2007 01:08:19 +0000 (01:08 +0000)]
2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Fix date of last entry.
From-SVN: r130170
Jerry DeLisle [Wed, 14 Nov 2007 01:06:13 +0000 (01:06 +0000)]
re PR fortran/33162 (INTRINSIC functions as ACTUAL argument)
2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33162
*gfortran.dg/proc_decl_1.f90: Update.
*gfortran.dg/proc_decl_7.f90: New test.
*gfortran.dg/proc_decl_8.f90: New test.
*gfortran.dg/proc_decl_9.f90: New test.
*gfortran.dg/proc_decl_10.f90: New test.
From-SVN: r130169
Jerry DeLisle [Wed, 14 Nov 2007 00:59:09 +0000 (00:59 +0000)]
re PR fortran/33162 (INTRINSIC functions as ACTUAL argument)
2007-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33162
* decl.c (match_procedure_decl): Remove TODO and allow intrinsics in
PROCEDURE declarations. Set attr.untyped to allow the interface to be
resolved later where the symbol type will be set.
* interface.c (compare_intr_interfaces): Remove static from pointer
declarations. Add type and kind checks for dummy function arguments.
(compare_actual_formal_intr): New function to compare an actual
argument with an intrinsic function. (gfc_procedures_use): Add check for
interface that points to an intrinsic function, use the new function.
* resolve.c (resolve_specific_f0): Resolve the intrinsic interface.
(resolve_specific_s0): Ditto.
From-SVN: r130168
Sebastian Pop [Wed, 14 Nov 2007 00:41:05 +0000 (00:41 +0000)]
tree-chrec.h (build_polynomial_chrec): RHS of a chrec should not be of pointer type.
2007-11-13 Sebastian Pop <sebastian.pop@amd.com>
* tree-chrec.h (build_polynomial_chrec): RHS of a chrec
should not be of pointer type.
From-SVN: r130167
GCC Administrator [Wed, 14 Nov 2007 00:17:16 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130165
Michael Meissner [Wed, 14 Nov 2007 00:16:45 +0000 (00:16 +0000)]
make ix86_sse5_valid_op_p adhere to GNU coding style
From-SVN: r130163
Sterling Augustine [Tue, 13 Nov 2007 22:41:50 +0000 (22:41 +0000)]
unwind-dw2-xtensa.c: New.
* config/xtensa/unwind-dw2-xtensa.c: New.
* config/xtensa/unwind-dw2-xtensa.h: New.
* config/xtensa/xtensa.h (MUST_USE_SJLJ_EXCEPTIONS): Remove.
(DWARF2_UNWIND_INFO): Remove.
(DWARF_FRAME_REGISTERS): Define.
(EH_RETURN_DATA_REGNO): Define.
* config/xtensa/xtensa.md (UNSPECV_EH_RETURN): Define.
(eh_return): New.
* config/xtensa/t-xtensa (LIB2ADDEH): Define.
Co-Authored-By: Bob Wilson <bob.wilson@acm.org>
From-SVN: r130160
Jakub Jelinek [Tue, 13 Nov 2007 20:37:16 +0000 (21:37 +0100)]
invoke.texi: Fix description of -fsched-stalled-insns=0, -fsched-stalled-insns.
* doc/invoke.texi: Fix description of -fsched-stalled-insns=0,
-fsched-stalled-insns.
From-SVN: r130159
Paul Thomas [Tue, 13 Nov 2007 20:33:21 +0000 (20:33 +0000)]
re PR fortran/34080 (Transfer was working, now broken)
2007-11-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34080
* iresolve.c (gfc_resolve_transfer): Do not try to convert
to a constant MOLD expression, if it is an assumed size
dummy.
2007-11-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34080
* gfortran.dg/transfer_assumed_size_1.f90: New test.
From-SVN: r130158
Samuel Tardieu [Tue, 13 Nov 2007 19:12:57 +0000 (19:12 +0000)]
sem_prag.adb (Process_Convention): Move the test for the entity on which the Convention pragma applies down to...
gcc/ada/
* sem_prag.adb (Process_Convention): Move the test for the
entity on which the Convention pragma applies down to also
forbid pragma Convention on enumeration literals reached
through renamings.
From-SVN: r130155
Jakub Jelinek [Tue, 13 Nov 2007 18:27:09 +0000 (19:27 +0100)]
re PR c++/34054 (ICE with parameter pack in return type)
PR c++/34054
PR c++/34056
PR c++/34057
PR c++/34058
PR c++/34060
* pt.c (find_parameter_packs_r): If ppd->set_packs_to_error,
set to error_mark_node the outermost POINTER_TYPE to the pack if
it is seen in a POINTER_TYPE.
(push_template_decl_real): If check_for_bare_parameter_packs
fails for function return type, set the return type to
integer_type_node. If check_for_bare_parameter_packs failed
for non-function, return error_mark_node.
* g++.dg/parse/crash36.C: Add another dg-error.
* g++.dg/cpp0x/pr34054.C: New test.
* g++.dg/cpp0x/pr34056.C: New test.
* g++.dg/cpp0x/pr34057.C: New test.
* g++.dg/cpp0x/pr34058.C: New test.
* g++.dg/cpp0x/pr34060.C: New test.
From-SVN: r130152
Jakub Jelinek [Tue, 13 Nov 2007 18:23:03 +0000 (19:23 +0100)]
re PR tree-optimization/34063 (ICE: build2_stat, at tree.c:3115)
PR tree-optimization/34063
* tree-chrec.c (chrec_evaluate): Put CHREC_LEFT based argument
as first chrec_fold_plus operand rather than second.
* g++.dg/tree-ssa/pr34063.C: New test.
From-SVN: r130151
Benjamin Kosnik [Tue, 13 Nov 2007 17:43:57 +0000 (17:43 +0000)]
documentation.html: First pass at unified table of contents.
2007-11-13 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/documentation.html: First pass at unified table of contents.
* docs/html/abi.html: Move...
* docs/html/17_intro/abi.html: ...here.
* docs/html/17_intro/porting-howto.html: Update, edit, put
resulting pieces into...
* docs/html/17_intro/api.html: New.
* docs/html/17_intro/c++0x_status.html: New.
* docs/html/17_intro/CHECKLIST: Move to...
* docs/html/17_intro/c++1998_status.html: ...here.
* docs/html/ext/tr1.html: Move ...
* docs/html/17_intro/tr1_status.html: ...here.
* docs/html/debug_mode.html: Move...
* docs/html/ext/debug_mode.html: ...here.
* docs/html/parallel_mode.html: Move...
* docs/html/ext/parallel_mode.html: ...here
* docs/html/17_intro/BUGS: Remove.
* docs/html/17_intro/concept_check.diff: Remove.
* docs/html/17_intro/HEADER_POLICY: Remove.
* docs/html/17_intro/headers_cc.txt: Remove.
* docs/html/17_intro/PROBLEMS: Remove.
* docs/html/17_intro/RELEASE-NOTES: Remove.
* docs/html/explanations.html: Remove.
* docs/html/makedoc.awk: Remove.
* docs/html/faq/index.txt: Remove. HTML only.
* /docs/html/Makefile: Remove.
* docs/html/17_intro/configury.html: Editing, updating,
consistency check with doxygen conventions. Change libstdc++-v3 to
libstdc++.
* docs/html/17_intro/howto.html: Same.
* docs/html/17_intro/license.html: Same.
* docs/html/17_intro/porting.html: Same.
* docs/html/18_support/howto.html: Same.
* docs/html/19_diagnostics/howto.html: Same.
* docs/html/20_util/allocator.html: Same.
* docs/html/20_util/howto.html: Same.
* docs/html/21_strings/howto.html: Same.
* docs/html/22_locale/codecvt.html: Same.
* docs/html/22_locale/ctype.html: Same.
* docs/html/22_locale/howto.html: Same.
* docs/html/22_locale/messages.html: Same.
* docs/html/23_containers/howto.html: Same.
* docs/html/24_iterators/howto.html: Same.
* docs/html/25_algorithms/howto.html: Same.
* docs/html/26_numerics/howto.html: Same.
* docs/html/27_io/howto.html: Same.
* docs/html/configopts.html: Same.
* docs/html/debug.html: Same.
* docs/html/ext/ballocator_doc.html: Same.
* docs/html/ext/howto.html: Same.
* docs/html/ext/mt_allocator.html: Same.
* docs/html/ext/sgiexts.html: Same.
* docs/html/faq/index.html: Same.
* docs/html/install.html: Same.
* docs/html/test.html: Same.
* include/bits/c++config: Change _GLIBCXX_DEPRECATED to
_GLIBCXX_DEPRECATED_ATTR, _GLIBCXX_VISIBILITY to
_GLIBCXX_VISIBILITY_ATTR.
* include/backward/auto_ptr.h: Same.
* include/backward/binders.h: Same.
* include/bits/stl_function.h: Same.
* include/std/memory: Same.
* include/std/streambuf: Same.
* include/tr1_impl/boost_shared_ptr.h: Same.
* src/globals_io.cc: Same.
* src/ios_init.cc: Same.
From-SVN: r130150
Diego Novillo [Tue, 13 Nov 2007 15:20:40 +0000 (10:20 -0500)]
pr 33870
pr 33870
* tree.h (strcut tree_memory_tag): add field unpartitionable.
remove field in_nested_struct.
(struct tree_struct_field_tag): add field nesting_level.
(sft_in_nested_struct): remove.
(sft_nesting_level): define.
(sft_unpartitionable_p): define.
* tree-ssa-alias.c (mem_sym_score): if mp->var is not
partitionable, return long_max.
(compute_memory_partitions): do not partition sfts marked
unpartitionable.
(create_sft): add argument nesting_level. set
sft_nesting_level with it. update all users.
(create_overlap_variables_for): show nesting level.
* tree-dfa.c (dump_subvars_for): likewise.
(dump_variable): likewise.
show whether the sft is partitionable or not.
* tree-flow.h (struct fieldoff): remove field
in_nested_struct.
add field nesting_level.
* tree-ssa-structalias.c (struct variable_info): remove
field in_nested_struct.
(push_fields_onto_fieldstack): add argument
nesting_level. update all users.
update documentation.
update pair->nesting_level with nesting_level.
make recursive calls with nesting_level + 1.
(set_uids_in_ptset): if an sft is added to the points-to
set, mark it as unpartitionable.
* tree-ssa-operands.c (ref_nesting_level): new.
(add_vars_for_offset): call it.
add argument full_ref. update
callers.
if var is inside a nested structure and the nesting level
of full_ref is lower than the nesting level of var,
adjust offset by the offset of var.
testsuite/ChangeLog
PR 33870
* gcc.c-torture/execute/pr33870-1.c: New test.
* gcc.dg/tree-ssa/alias-16.c: New test.
From-SVN: r130141
Samuel Tardieu [Tue, 13 Nov 2007 14:11:18 +0000 (14:11 +0000)]
a-tasatt.adb: Add a comment at the beginning of the package explaining why in general...
gcc/ada/
* a-tasatt.adb: Add a comment at the beginning of the package
explaining why in general 'Unchecked_Access must be used instead
of 'Access.
From-SVN: r130139
Victor Kaplansky [Tue, 13 Nov 2007 13:53:33 +0000 (13:53 +0000)]
re PR regression/32582 (Bootstrap with vectorization enabled fails with ICE on PPC)
2007-11-13 Victor Kaplansky <victork@il.ibm.com>
PR tree-optimization/32582
* Makefile.in (CRTSTUFF_CFLAGS): Add -fno-tree-vectorize
From-SVN: r130138
Paolo Carlini [Tue, 13 Nov 2007 11:35:56 +0000 (11:35 +0000)]
deque.tcc (deque<>::_M_push_back_aux, [...]): Do not copy unnecessarily to __t_copy.
2007-11-13 Paolo Carlini <pcarlini@suse.de>
* include/bits/deque.tcc (deque<>::_M_push_back_aux,
_M_push_front_aux): Do not copy unnecessarily to __t_copy.
From-SVN: r130136
Joseph Myers [Tue, 13 Nov 2007 00:37:43 +0000 (00:37 +0000)]
floatformat.c (floatformat_ibm_long_double_is_valid): Fix compiler warnings.
* floatformat.c (floatformat_ibm_long_double_is_valid): Fix
compiler warnings.
(floatformat_ibm_long_double): Use
floatformat_ibm_long_double_is_valid.
From-SVN: r130131
GCC Administrator [Tue, 13 Nov 2007 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130129
Jakub Jelinek [Mon, 12 Nov 2007 23:17:18 +0000 (00:17 +0100)]
re PR c++/29225 (ICE in gimplify_expr, at gimplify.c:4513)
PR c++/29225
* call.c (build_new_op): Call resolve_args before calling
build_over_call.
* g++.dg/template/crash72.C: New test.
From-SVN: r130126
Danny Smith [Mon, 12 Nov 2007 22:05:38 +0000 (22:05 +0000)]
extend.texi (dllimport): Document that pointers to dllimport'd functions can be used as constant.
* doc/extend.texi (dllimport): Document that pointers to dllimport'd
functions can be used as constant.
From-SVN: r130124
Uros Bizjak [Mon, 12 Nov 2007 21:48:57 +0000 (22:48 +0100)]
* ChangeLog: Fix whitespace.
From-SVN: r130123
Eric Botcazou [Mon, 12 Nov 2007 21:21:37 +0000 (22:21 +0100)]
re PR rtl-optimization/34035 (ICE in calc_dfs_tree with -O2 -fnon-call-exceptions -ffast-math -fno-gcse)
PR rtl-optimization/34035
* cse.c (cse_cfg_altered): New global variable.
(cse_jumps_altered): Make boolean.
(recorded_label_ref): Likewise.
(cse_insn): Adjust for above changes.
(cse_extended_basic_block): Likewise. Set cse_cfg_altered
if dead edges have been purged.
(cse_main): Change return value specification and adjust code.
(rest_of_handle_cse): Adjust for above change.
(rest_of_handle_cse2): Likewise.
* gcse.c (rest_of_handle_gcse): Likewise.
From-SVN: r130122
Dwarakanath Rajagopal [Mon, 12 Nov 2007 20:41:14 +0000 (20:41 +0000)]
i386.md (sse5_setcc<mode>): Use <ssemodefsuffix> to get the appropriate suffix for the coms* instruction.
2007-11-12 Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
Michael Meissner <michael.meissner@amd.com>
* config/i386/i386.md (sse5_setcc<mode>): Use <ssemodefsuffix>
to get the appropriate suffix for the coms* instruction.
(sse5_pcmov_<mode>): Restrict operands of pcmov
for scalar case to be only xmm registers and not memory.
* config/i386/sse.md (sse5_pcmov_<mode>): Correct the operand
constraints to follow the mnemonics for the pcmov instruction
Co-Authored-By: Michael Meissner <michael.meissner@amd.com>
From-SVN: r130120
Richard Sandiford [Mon, 12 Nov 2007 20:05:46 +0000 (20:05 +0000)]
re PR target/34042 (Segfault in mips_cannot_change_mode_class)
gcc/
PR target/34042
* config/mips/mips.c (mips_return_fpr_single): New function.
(mips_function_value): Use it when returning single-field
aggregates in FPRs.
(mips_expand_call): Handle the PARALLELs created by
mips_return_fpr_single.
From-SVN: r130119
Joseph Myers [Mon, 12 Nov 2007 16:37:32 +0000 (16:37 +0000)]
* de.po, zh_CN.po: Update.
From-SVN: r130104
Chris Jefferson [Mon, 12 Nov 2007 16:01:09 +0000 (16:01 +0000)]
stl_deque.h (deque<>::push_back<>(_Args...), [...]): Add.
2007-11-12 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_deque.h (deque<>::push_back<>(_Args...),
deque<>::push_front<>(_Args...), emplace<>(iterator, _Args...),
insert(iterator, _Tp&&), _M_push_back_aux<>(_Args&&...),
_M_push_front_aux<>(_Args&&...), _M_insert_aux<>(iterator,
_Args&&...)): Add.
* include/deque/deque.tcc (insert(iterator, value_type&&),
emplace<>(iterator, _Args...), _M_push_back_aux<>(_Args&&...),
_M_push_front_aux<>(_Args&&...), _M_insert_aux<>(iterator,
_Args&&...)): Define.
(_M_insert_aux(iterator, size_type, const value_type&),
_M_insert_aux<>(iterator, _ForwardIterator, _ForwardIterator,
size_type)): Use _GLIBCXX_MOVE3, _GLIBCXX_MOVE_BACKWARD3,
__uninitialized_move*, __uninitialized_fill_move,
__uninitialized_copy_move, when possible.
* include/bits/stl_uninitialized.h (__uninitialized_copy_copy,
__uninitialized_fill_copy, __uninitialized_copy_fill): Remove.
(__uninitialized_copy_move, __uninitialized_move_copy,
__uninitialized_move_fill, __uninitialized_fill_move): Add.
* include/debug/deque (deque<>::push_back<>(_Args...),
deque<>::push_front<>(_Args...), emplace<>(iterator, _Args...),
insert(iterator, _Tp&&)): Add.
* testsuite/23_containers/deque/modifiers/moveable.cc: Enable.
* testsuite/23_containers/deque/capacity/moveable.cc: Likewise.
* testsuite/23_containers/deque/cons/moveable.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line numbers.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* include/debug/vector (vector<>::insert(iterator, _Tp&&)): Minor
tweak, prefer std::move.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r130102
Richard Guenther [Mon, 12 Nov 2007 14:16:05 +0000 (14:16 +0000)]
re PR middle-end/34070 (Wrong code for (int)x%4)
2007-11-12 Richard Guenther <rguenther@suse.de>
PR middle-end/34070
* fold-const.c (fold_binary): If testing for non-negative
operands with tree_expr_nonnegative_warnv_p make sure to
use op0 which has all (sign) conversions retained.
* gcc.c-torture/execute/pr34070-1.c: New testcase.
* gcc.c-torture/execute/pr34070-2.c: Likewise.
From-SVN: r130098