aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-11-12extend.texi (dllimport): Document that pointers to dllimport'd functions can ↵Danny Smith2-3/+11
be used as constant. * doc/extend.texi (dllimport): Document that pointers to dllimport'd functions can be used as constant. From-SVN: r130124
2007-11-12* ChangeLog: Fix whitespace.Uros Bizjak1-25/+21
From-SVN: r130123
2007-11-12re PR rtl-optimization/34035 (ICE in calc_dfs_tree with -O2 ↵Eric Botcazou5-27/+102
-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
2007-11-12i386.md (sse5_setcc<mode>): Use <ssemodefsuffix> to get the appropriate ↵Dwarakanath Rajagopal3-12/+26
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
2007-11-12re PR target/34042 (Segfault in mips_cannot_change_mode_class)Richard Sandiford2-4/+45
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
2007-11-12* de.po, zh_CN.po: Update.Joseph Myers3-2427/+1126
From-SVN: r130104
2007-11-12stl_deque.h (deque<>::push_back<>(_Args...), [...]): Add.Chris Jefferson13-110/+365
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
2007-11-12re PR middle-end/34070 (Wrong code for (int)x%4)Richard Guenther5-2/+41
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
2007-11-12re PR tree-optimization/34027 (-Os code size nearly doubled)Richard Guenther5-0/+73
2007-11-12 Richard Guenther <rguenther@suse.de> PR middle-end/34027 * fold-const.c (fold_binary): Fold n - (n / m) * m to n % m. (fold_binary): Fold unsinged FLOOR_DIV_EXPR to TRUNC_DIV_EXPR. * gcc.dg/pr34027-1.c: New testcase. * gcc.dg/pr34027-2.c: Likewise. From-SVN: r130097
2007-11-12re PR tree-optimization/33953 (internal compiler error: vector ↵Ira Rosen4-11/+87
VEC(tree,base) index domain error, in vectorizable_operation at tree-vect-transform.c:4017) PR tree-optimization/33953 * tree-vect-transform.c (vectorizable_operation): In case of SLP, allocate vec_oprnds1 according to the number of created vector statements. In case of shift with scalar argument, store scalar operand for every vector statement to be created for the SLP node. Fix a comment. From-SVN: r130096
2007-11-12Fix erroneous ChangeLog changeTom Tromey1-5/+5
From-SVN: r130094
2007-11-12re PR c++/17577 (#pragma implementation no longer diagnoses use after file ↵Tom Tromey8-2/+60
to which it applies) gcc/cp PR c++/17577: * lex.c (handle_pragma_implementation): Use cpp_included_before. gcc/testsuite PR c++/17577: * g++.dg/ext/pr17577.h: New file. * g++.dg/ext/pr17577.C: New file. libcpp PR c++/17557: * include/cpplib.h (cpp_included_before): Declare. * files.c (struct file_hash_entry) <location>: New field. (_cpp_find_file): Initialize new field. (make_cpp_dir): Likewise. (cpp_included_before): New function. From-SVN: r130093
2007-11-12re PR c++/8570 (line number in error message is badly placed with illegal ↵Manuel López-Ibáñez6-10/+44
template friend declaration) 2007-11-12 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR c++/8570 cp/ * pt.c (redeclare_class_template): Update error message. Use a note to show the previous declaration. (tsubst_friend_class): Use the location of the friend template as the input location before calling redeclare_class_template. testsuite/ * g++.old-deja/g++.ns/template13.C: Update expected output. * g++.old-deja/g++.pt/friend23.C: Likewise. * g++.dg/warn/pr8570.C: New. From-SVN: r130092
2007-11-12Daily bump.GCC Administrator1-1/+1
From-SVN: r130090
2007-11-11re PR c++/34068 (ICE using pseudo-destructor for invalid expression)Jakub Jelinek4-1/+22
PR c++/34068 * semantics.c (finish_pseudo_destructor_expr): Handle object == error_mark_node. * g++.dg/template/pseudodtor4.C: New test. From-SVN: r130087
2007-11-11stl_pair.h (pair<>::pair<>(_U1&&, _Arg0&&, _Args&&...)): Add.Howard Hinnant2-0/+12
2007-11-11 Howard Hinnant <hhinnant@apple.com> * include/bits/stl_pair.h (pair<>::pair<>(_U1&&, _Arg0&&, _Args&&...)): Add. From-SVN: r130085
2007-11-11* de.po, zh_CN.po: Update.Joseph Myers3-31/+27
From-SVN: r130084
2007-11-11lwg-active.html: Update to Revision R52.Paolo Carlini1-0/+8
2007-11-08 Paolo Carlini <pcarlini@suse.de> * docs/html/ext/lwg-active.html: Update to Revision R52. * docs/html/ext/lwg-closed.html: Likewise. * docs/html/ext/lwg-defects.html: Likewise. * docs/html/ext/howto.html: Adjust. From-SVN: r130083
2007-11-11stl_list.h (list<>::_M_create_node<>(_Args&&...), [...]): Add.Paolo Carlini8-12/+208
2007-11-11 Paolo Carlini <pcarlini@suse.de> * include/bits/stl_list.h (list<>::_M_create_node<>(_Args&&...), _M_insert<>(iterator, _Args&&...), push_front<>(_Args&&...), push_back<>(_Args&&...)): Add. (list<>::emplace<>(iterator, _Args&&...), insert(iterator, value_type&&)): Declare. (splice(iterator, list&&), splice(iterator, list&&, iterator), splice(iterator, list&&, iterator, iterator), merge(list&&), merge(list&&, _StrictWeakOrdering)): Add C++0x signatures. * include/bits/list.tcc (list<>::emplace<>(iterator, _Args&&...), insert(iterator, value_type&&)): Define. * include/debug/list (list<>::emplace<>(iterator, _Args&&...), insert(iterator, value_type&&)): Add. (splice(iterator, list&&), splice(iterator, list&&, iterator), splice(iterator, list&&, iterator, iterator), merge(list&&), merge(list&&, _StrictWeakOrdering)): Add C++0x signatures, use _GLIBCXX_MOVE. From-SVN: r130082
2007-11-11Daily bump.GCC Administrator1-1/+1
From-SVN: r130080
2007-11-10a-tasatt.adb: Revert previous change for this file as it will generate an ↵Samuel Tardieu2-9/+17
error when... gcc/ada/ * a-tasatt.adb: Revert previous change for this file as it will generate an error when this package is instantiated from a local context. From-SVN: r130076
2007-11-10be.po, [...]: Update.Joseph Myers16-2544/+3024
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, sv.po, tr.po, uk,po, vi.po, zh_CN.po, zh_TW.po: Update. From-SVN: r130075
2007-11-10be.po, [...]: Update.Joseph Myers16-143928/+178657
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update. From-SVN: r130074
2007-11-10* trans-common.c: Remove prototype for gfc_get_common.Francois-Xavier Coudert2-6/+4
From-SVN: r130073
2007-11-10re PR fortran/33592 (FAIL: gfortran.dg/array_constructor_11.f90 -O1 ↵Francois-Xavier Coudert2-7/+13
execution test) PR fortran/33592 * trans.c (gfc_call_realloc): Fix the logic and rename variables. From-SVN: r130072
2007-11-10gcse.c (CUID_INSN): Remove.Steven Bosscher2-15/+7
2007-11-10 Steven Bosscher <stevenb.gcc@gmail.com> * gcse.c (CUID_INSN): Remove. (cuid_insn): Ditto. (alloc_gcse_mem): Don't allocate cuid_insn. (free_gcse_mem): Don't free cuid_insn. From-SVN: r130071
2007-11-10re PR fortran/34020 (Bogus codegen for openmp atomics w/ indirects operands ↵Jakub Jelinek4-2/+44
on IPF) PR fortran/34020 * gimplify.c (goa_lhs_expr_p): Inside INDIRECT_REF handle unshared nops. * testsuite/libgomp.fortran/pr34020.f90: New test. From-SVN: r130069
2007-11-10re PR middle-end/34018 (ICE: verify_stmts failed)Jakub Jelinek5-102/+174
PR middle-end/34018 * tree-inline.h (copy_body_data): Add regimplify field. * tree-inline.c (copy_body_r): Set id->regimplify to true if an TREE_INVARIANT ADDR_EXPR is no longer invariant after substitutions. (copy_bb): Clear id->regimplify before walk_tree, if it is set afterwards, regimplify the whole statement. * g++.dg/opt/inline14.C: New test. From-SVN: r130068
2007-11-10re PR tree-optimization/33680 (ICE when compilling elbg.c from ffmpeg ↵Jakub Jelinek4-30/+72
(vectorizer)) PR tree-optimization/33680 * tree-data-ref.c (split_constant_offset) <case ADDR_EXPR>: Punt if the added cast involves variable length types. * gcc.c-torture/compile/20071108-1.c: New test. From-SVN: r130067
2007-11-10re PR c++/32241 (ICE trying to call x.~X(); in a template)Jakub Jelinek4-9/+73
PR c++/32241 * pt.c (tsubst_copy_and_build) <case COMPONENT_REF>: If object_type is not scalar type, let finish_class_member_access_expr handle diagnostics. Pass BIT_NOT_EXPR argument to finish_pseudo_destructor_expr. Handle SCOPE_REF properly. * g++.dg/template/pseudodtor3.C: New test. From-SVN: r130066
2007-11-10re PR c++/33510 (Array size of array with size determined by the initializer ↵Douglas Gregor4-1/+83
wrong with packs) 2007-11-09 Douglas Gregor <doug.gregor@gmail.com> PR c++/33510 * decl.c (cp_complete_array_type): If any of the initializer elements are pack expansions, don't compute the array size yet. 2007-11-09 Douglas Gregor <doug.gregor@gmail.com> PR c++/33510 * g++.dg/cpp0x/variadic-init.C: New. From-SVN: r130065
2007-11-10Daily bump.GCC Administrator1-1/+1
From-SVN: r130063
2007-11-09Maxim Kuvyrkov <maxim@codesourcery.com>Alexander Monakov2-90/+96
* gcc/sched-deps.c (sched_analyze_insn): Use MOVE_BARRIER instead of TRUE_BARRIER for jumps. Add register dependencies even when reg_pending_barrier is set. Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com> From-SVN: r130052
2007-11-09stl_deque.h (deque<>::operator=(deque&&)): Implement resolution of DR 675, ↵Paolo Carlini33-19/+102
call clear first. 2007-11-09 Paolo Carlini <pcarlini@suse.de> * include/bits/stl_deque.h (deque<>::operator=(deque&&)): Implement resolution of DR 675, call clear first. * include/bits/stl_list.h (list<>::operator=(list&&)): Likewise. * include/bits/stl_bvector.h (vector<bool>::operator=(vector&&)): Likewise. * include/bits/stl_vector.h (vector<>::operator=(vector&&)): Likewise. * include/bits/stl_map.h (map<>::operator=(map&&)): Likewise. * include/bits/stl_multimap.h (multimap<>::operator=(multimap&&)): Likewise. * include/bits/stl_multiset.h (multiset<>::operator=(multiset&&)): Likewise. * include/bits/stl_set.h (set<>::operator=(set&&)): Likewise. * include/debug/map.h (map<>::operator=(map&&)): Likewise. * include/debug/set.h (set<>::operator=(set&&)): Likewise. * include/debug/multimap.h (multimap<>::operator=(multimap&&)): Likewise. * include/debug/multiset.h (multiset<>::operator=(multiset&&)): Likewise. * include/debug/deque (deque<>::operator=(deque&&)): Likewise. * include/debug/list (list<>::operator=(list&&)): Likewise. * include/debug/vector (vector<>::operator=(vector&&)): Likewise. * testsuite/23_containers/multimap/moveable.cc: Adjust. * testsuite/23_containers/multiset/moveable.cc: Likewise. * testsuite/23_containers/set/moveable.cc: Likewise. * testsuite/23_containers/map/moveable.cc: Likewise. * testsuite/20_util/pair/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. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/insert_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/vector/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/insert_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. From-SVN: r130051
2007-11-09haifa-sched.c (haifa_classify_insn): Rename to ...Alexander Monakov2-36/+32
* gcc/haifa-sched.c (haifa_classify_insn): Rename to ... (haifa_classify_rtx): ... this. Improve handling of COND_EXECs, handle PARALLELs by recursing. Use it ... (haifa_classify_insn): ... here. Reimplement. From-SVN: r130050
2007-11-09re PR libstdc++/34032 (-std=c++0x causes undeclared symbols errors on cygwin)Paolo Carlini3-5/+32
2007-11-09 Paolo Carlini <pcarlini@suse.de> PR libstdc++/34032 * acinclude.m4 ([GLIBCXX_ENABLE_C99], [GLIBCXX_CHECK_C99_TR1]): Use -std=c++98 instead of the default -std=gnu++98. * configure: Regenerate. From-SVN: r130047
2007-11-09bitmap.h (bitmap_single_bit_set_p): Declare.Richard Guenther4-2/+47
2007-11-09 Richard Guenther <rguenther@suse.de> * bitmap.h (bitmap_single_bit_set_p): Declare. * bitmap.c (bitmap_single_bit_set_p): New function. * tree-ssa-alias.c (add_may_alias_for_new_tag): Use it. (maybe_create_global_var): Use bitmap_empty_p. From-SVN: r130045
2007-11-09re PR rtl-optimization/34012 (Pessimization caused by fwprop)Paolo Bonzini4-8/+69
PR rtl-optimization/34012 * fwprop.c (try_fwprop_subst): Do not replace if the new SET_SRC has a higher cost than the old one. * gcc.target/i386/pr34012.c: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r130043
2007-11-09re PR rtl-optimization/33732 (gcc.c-torture/execute/longlong.c execution at -O3)Eric Botcazou2-34/+49
PR rtl-optimization/33732 * reload.c (push_reload): Check that the REG_DEAD note was referring to a hardreg or to a pseudo that has been assigned exactly one hardreg before considering it in order to select the reload register. (combine_reloads): Likewise. (find_dummy_reload): Likewise. From-SVN: r130042
2007-11-09tree-flow.h (struct ptr_info_def): Make escape_mask a ENUM_BITFIELD.Richard Guenther2-27/+34
2007-11-09 Richard Guenther <rguenther@suse.de> * tree-flow.h (struct ptr_info_def): Make escape_mask a ENUM_BITFIELD. (struct ptr_info_def): Likewise. (enum escape_type): Also use bit zero. From-SVN: r130041
2007-11-09re PR target/33604 (Revision 119502 causes significantly slower results with ↵Richard Guenther6-2/+75
4.3/4.4 compared to 4.2) 2007-11-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/33604 * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars): Disregard changes in CV qualifiers of pointed to types for forward propagating ADDR_EXPRs. * tree-ssa-ccp.c (fold_stmt_r): Preserve volatileness of the original expression. * g++.dg/tree-ssa/pr33604.C: New testcase. * gcc.dg/pr32721.c: Adjust pattern. From-SVN: r130040
2007-11-09dse.c (find_shift_sequence): Always choose an integer mode for new_mode.Richard Sandiford4-6/+21
gcc/ * dse.c (find_shift_sequence): Always choose an integer mode for new_mode. (replace_read): Require both the read and store mode to be integer ones. Remove a then-redundant FLOAT_P check. gcc/testsuite/ * gcc.target/mips/dse-1.c: Disable. From-SVN: r130039
2007-11-09Daily bump.GCC Administrator1-1/+1
From-SVN: r130033
2007-11-08tree-dfa.c (remove_referenced_var): If removing a variable which has subvars...Richard Guenther2-2/+20
2007-11-08 Richard Guenther <rguenther@suse.de> * tree-dfa.c (remove_referenced_var): If removing a variable which has subvars, also remove those from the referenced vars. Do not create a variable annotation. From-SVN: r130030
2007-11-08xtensa.c (xtensa_expand_prologue): Remove first argument for gen_entry calls.Bob Wilson3-7/+13
* config/xtensa/xtensa.c (xtensa_expand_prologue): Remove first argument for gen_entry calls. * config/xtensa/xtensa.md: Add new "entry" value to "type" attribute. (entry): Use the new attribute value. Remove unused first operand. From-SVN: r130029
2007-11-08* cpplib.pot: Regenerate.Joseph Myers2-150/+190
From-SVN: r130027
2007-11-08* gcc.pot: Regenerate.Joseph Myers2-6878/+9304
From-SVN: r130026
2007-11-08c-parser.c (c_parser_translation_unit): Use location in error.Tom Tromey8-58/+159
gcc * c-parser.c (c_parser_translation_unit): Use location in error. (c_parser_external_declaration): Likewise. (c_parser_declaration_or_fndef): Likewise. (c_parser_enum_specifier): Likewise. (c_parser_struct_or_union_specifier): Likewise. (c_parser_struct_declaration): Likewise. (c_parser_typeof_specifier): Likewise. (c_parser_parms_list_declarator): Likewise. (c_parser_asm_string_literal): Likewise. (c_parser_braced_init): Likewise. (c_parser_initelt): Likewise. (c_parser_compound_statement_nostart): Likewise. (c_parser_statement_after_labels): Likewise. (c_parser_do_statement): Likewise. (c_parser_asm_statement): Likewise. (c_parser_conditional_expression): Likewise. (c_parser_unary_expression): Likewise. (c_parser_sizeof_expression): Likewise. (c_parser_postfix_expression): Likewise. (c_parser_postfix_expression_after_paren_type): Likewise. (c_parser_objc_class_instance_variables): Likewise. (c_parser_objc_method_definition): Likewise. (c_parser_objc_methodprotolist): Likewise. (c_parser_pragma): Likewise. (c_parser_omp_clause_num_threads): Likewise. (c_parser_omp_clause_schedule): Likewise. (c_parser_omp_all_clauses): Likewise. (c_parser_omp_sections_scope): Likewise. (c_parser_label): Use location of label, not colon. gcc/testsuite * gcc.dg/empty-source-3.c: Update warning location. * gcc.dg/gomp/barrier-2.c: Likewise. * gcc.dg/label-decl-3.c: Likewise. * gcc.dg/label-decl-2.c: Likewise. * gcc.dg/empty-source-2.c: Likewise. From-SVN: r130025
2007-11-08re PR target/33774 (Cygwin/mingw do not support 16 byte alignment of ↵Danny Smith2-1/+11
struct/union fields) PR target/33774 * config/i386/cygming.h (BIGGEST_FIELD_ALIGNMENT): Define only if IN_TARGET_LIBS. From-SVN: r130024
2007-11-08re PR c++/30297 (ICE with extern "C" and inheritance)Tom Tromey4-0/+25
gcc/cp 2007-11-08 Andrew Pinski <pinskia@gmail.com> PR c++/30297: * tree.c (decl_linkage): Fields have no linkage. gcc/testsuite PR c++/30297: * g++.dg/inherit/pr30297.C: New file. From-SVN: r130018