Paul Thomas [Thu, 26 May 2011 18:19:36 +0000 (18:19 +0000)]
[multiple changes]
2011-05-26 Paul Thomas <pault@gcc.gnu.org>
Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48955
* trans-expr.c (gfc_trans_assignment_1): GFC_REVERSE_NOT_SET
changed to GFC_ENABLE_REVERSE.
* trans-array.c (gfc_init_loopinfo): GFC_CANNOT_REVERSE changed
to GFC_INHIBIT_REVERSE.
* gfortran.h : Enum gfc_reverse is now GFC_ENABLE_REVERSE,
GFC_FORWARD_SET, GFC_REVERSE_SET and GFC_INHIBIT_REVERSE.
* dependency.c (gfc_dep_resolver): Change names for elements of
gfc_reverse as necessary. Change the logic so that forward
dependences are remembered as well as backward ones. When both
have appeared, force a temporary.
2011-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48955
* gfortran.dg/dependency_40.f90 : New test.
From-SVN: r174302
Tobias Burnus [Thu, 26 May 2011 17:41:34 +0000 (19:41 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-26 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* trans-array.c (gfc_conv_array_ref): Handle pointer coarrays.
* trans-decl.c (has_coarray_vars, caf_init_block,
gfor_fndecl_caf_register): New file-global variables.
(gfc_finish_var_decl): Make sure that coarrays in main are static.
(gfc_build_qualified_array): Generate coarray token variable.
(gfc_get_symbol_decl): Don't use a static initializer for coarrays.
(gfc_build_builtin_function_decls): Set gfor_fndecl_caf_register.
(gfc_trans_deferred_vars, gfc_emit_parameter_debug_info): Skip for
static coarrays.
(generate_local_decl): Check for local coarrays.
(create_main_function): SYNC ALL before calling MAIN.
(generate_coarray_sym_init): Register static coarray.
(generate_coarray_init): Generate CAF registering constructor
function.
(gfc_generate_function_code): Call it, if needed, do not create
cgraph twice.
(gfc_generate_module_vars, gfc_process_block_locals): Call
generate_coarray_init.
* trans-types.c (gfc_get_nodesc_array_type): Generate pointers
* for
-fcoarray=lib.
* trans.h (gfor_fndecl_caf_register): New variable.
(lang_type): New element caf_token.
(GFC_TYPE_ARRAY_CAF_TOKEN): New macro.
2011-05-26 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray/registering_1.f90: New.
From-SVN: r174301
Nathan Froyd [Thu, 26 May 2011 17:38:51 +0000 (17:38 +0000)]
make TS_BLOCK a substructure of TS_BASE
make TS_BLOCK a substructure of TS_BASE
gcc/
* tree.c (initialize_tree_contains_struct): Mark TS_BLOCK as
TS_BASE instead of TS_COMMON.
(find_decls_types_r): Check for TS_TYPED structure before looking at
TREE_TYPE.
* tree.h (struct tree_block): Inherit from tree_base, not tree_common.
Add chain field.
(BLOCK_CHAIN): Use new chain field.
gcc/c-family/
* c-common.c (warning_candidate_p): Check for BLOCKs.
gcc/java/
* decl.c (poplevel): Don't access TREE_TYPE of BLOCKs.
* expr.c (build_jni_stub): Likewise.
From-SVN: r174300
Richard Guenther [Thu, 26 May 2011 15:53:23 +0000 (15:53 +0000)]
lto.c (uniquify_nodes): Fix bug in one of the previous changes.
2011-05-26 Richard Guenther <rguenther@suse.de>
lto/
* lto.c (uniquify_nodes): Fix bug in one of the previous changes.
From-SVN: r174296
Paolo Carlini [Thu, 26 May 2011 15:35:02 +0000 (15:35 +0000)]
list.cc: Use noexcept per the FDIS.
2011-05-26 Paolo Carlini <paolo.carlini@oracle.com>
* src/list.cc: Use noexcept per the FDIS.
* src/compatibility-list-2.cc: Likewise.
* include/debug/set.h: Likewise.
* include/debug/unordered_map: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/forward_list: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/vector: Likewise.
* include/debug/map.h: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* include/debug/multimap.h: Likewise.
* include/profile/set.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/multiset.h: Likewise.
* include/profile/forward_list: Likewise.
* include/profile/vector: Likewise.
* include/profile/unordered_set: Likewise.
* include/profile/map.h: Likewise.
* include/profile/deque: Likewise.
* include/profile/list: Likewise.
* include/profile/multimap.h: Likewise.
* include/bits/hashtable.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/hashtable_policy.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_tree.h: Likewise.
From-SVN: r174295
Pat Haugen [Thu, 26 May 2011 15:09:31 +0000 (15:09 +0000)]
rs6000.c (rs6000_register_move_cost): Make LR/CTR moves expensive on Power7 also.
* config/rs6000/rs6000.c (rs6000_register_move_cost): Make LR/CTR
moves expensive on Power7 also.
From-SVN: r174292
Richard Guenther [Thu, 26 May 2011 13:54:23 +0000 (13:54 +0000)]
fold-const.c (fold_unary_loc): Remove bogus code.
2011-05-26 Richard Guenther <rguenther@suse.de>
* fold-const.c (fold_unary_loc): Remove bogus code.
From-SVN: r174290
Jason Merrill [Thu, 26 May 2011 13:46:13 +0000 (09:46 -0400)]
fix pr marker
From-SVN: r174288
Nathan Froyd [Thu, 26 May 2011 13:29:42 +0000 (13:29 +0000)]
make TS_IDENTIFIER be a substructure of TS_TYPED
make TS_IDENTIFIER be a substructure of TS_TYPED
gcc/
* tree.h (struct tree_identifier): Inherit from tree_typed, not
tree_common.
(HT_IDENT_TO_GCC_IDENT): Adjust for said change.
* tree.c (initialize_tree_contains_struct): Mark TS_IDENTIFIER as
TS_BASE instead of TS_COMMON.
* varasm.c (assemble_name): Remove assert.
gcc/c-family/
* c-common.h (struct c_common_identifier): Inherit from tree_typed,
not tree_common.
From-SVN: r174286
Jason Merrill [Thu, 26 May 2011 13:22:51 +0000 (09:22 -0400)]
re PR c++/48424 (C++0x parameter packs expansion problem)
PR c++/48424
* decl.c (grokparms): Function parameter packs don't need to
go at the end.
* pt.c (type_unification_real): But they aren't deduced otherwise.
From-SVN: r174285
Bernd Schmidt [Thu, 26 May 2011 13:12:11 +0000 (13:12 +0000)]
Makefile.in (srcdirify): Change order so that libgcc_objdir is substituted first.
* Makefile.in (srcdirify): Change order so that libgcc_objdir is
substituted first.
* libgcc-std.ver: Delete file.
From-SVN: r174284
Richard Guenther [Thu, 26 May 2011 13:01:48 +0000 (13:01 +0000)]
re PR tree-optimization/48702 (optimization regression with gcc-4.6 on x86_64-unknown-linux-gnu)
2011-05-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48702
* tree-ssa-address.c (create_mem_ref_raw): Create MEM_REFs
only when we know the base address is within bounds.
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Do not
assume the base address of TARGET_MEM_REFs is in bounds.
* gcc.dg/torture/pr48702.c: New testcase.
From-SVN: r174282
Rainer Orth [Thu, 26 May 2011 12:44:16 +0000 (12:44 +0000)]
re PR target/49099 (sparc.c:‘sparc_solaris_elf_asm_named_section’ declared ‘static’ but never defined)
PR target/49099
* config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Wrap
declaration in TARGET_SOLARIS.
From-SVN: r174279
Hariharan Sandanagobalane [Thu, 26 May 2011 12:21:11 +0000 (12:21 +0000)]
picochip.md (cbranchhi4): No :CC for match_operator.
* config/picochip/picochip.md (cbranchhi4): No :CC for match_operator.
The instruction is then expanded explicitly.
(supported_compare): Callable instruction.
(compare): Likewise.
From-SVN: r174277
Nicola Pero [Thu, 26 May 2011 10:51:43 +0000 (10:51 +0000)]
Fixed one of my last ChangeLog entries
From-SVN: r174276
Rainer Orth [Thu, 26 May 2011 10:33:06 +0000 (10:33 +0000)]
tree-prof.exp: Check for -fprofile-generate support.
gcov-profile/48845
* g++.dg/tree-prof/tree-prof.exp: Check for -fprofile-generate
support.
* gcc.dg/matrix/matrix.exp: Likewise.
* gcc.dg/tree-prof/tree-prof.exp: Likewise.
* lib/target-supports-dg.exp (dg-require-profiling): Don't pass
line number to check_profiling_available.
* lib/target-supports.exp (check_profiling_available): Account for
this.
Require TLS runtime support with -fprofile-generate.
* lib/profopt.exp (profopt-execute): Add TLS options for
-fprofile-generate.
* gcc.dg/pr47793.c: Add dg-require-profiling "-fprofile-generate".
From-SVN: r174275
Jakub Jelinek [Thu, 26 May 2011 10:25:21 +0000 (12:25 +0200)]
re PR c++/49165 (ICE on for-loop/throw combination)
PR c++/49165
* gimplify.c (shortcut_cond_r): Don't special case
COND_EXPRs if they have void type on one of their arms.
* g++.dg/eh/cond5.C: New test.
From-SVN: r174273
Bernd Schmidt [Thu, 26 May 2011 10:16:03 +0000 (10:16 +0000)]
haifa-sched.c (schedule-block): Reorder the inner scheduling loop to reduce duplication...
* haifa-sched.c (schedule-block): Reorder the inner scheduling loop
to reduce duplication, and to achieve a slightly more logical order
of operations.
From-SVN: r174271
Jakub Jelinek [Thu, 26 May 2011 10:05:05 +0000 (12:05 +0200)]
re PR tree-optimization/49161 (Fix VRP on switch stmts)
PR tree-optimization/49161
* tree-vrp.c (struct case_info): New type.
(compare_case_labels): Sort case_info structs instead of
trees, and not primarily by CASE_LABEL uids but by
label_for_block indexes.
(find_switch_asserts): Put case labels into struct case_info
array instead of TREE_VEC, adjust sorting, compare label_for_block
values instead of CASE_LABELs.
* gcc.c-torture/execute/pr49161.c: New test.
From-SVN: r174270
Nicola Pero [Thu, 26 May 2011 09:31:30 +0000 (09:31 +0000)]
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
* sendmsg.c: Reindented part of the file. No non-trivial changes
in code.
From-SVN: r174269
Nicola Pero [Thu, 26 May 2011 09:13:59 +0000 (09:13 +0000)]
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
* sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass,
not objc_lookupClass.
From-SVN: r174268
Eric Botcazou [Thu, 26 May 2011 08:53:05 +0000 (08:53 +0000)]
Remove conflict marker
From-SVN: r174267
Ramana Radhakrishnan [Thu, 26 May 2011 08:07:45 +0000 (08:07 +0000)]
Fix generation of vorn and vbic for Neon.
From-SVN: r174266
Ira Rosen [Thu, 26 May 2011 07:50:09 +0000 (07:50 +0000)]
re PR tree-optimization/49038 (-ftree-vectorise introduces reads past end of array)
PR tree-optimization/49038
* tree-vect-loop-manip.c (vect_generate_tmps_on_preheader):
Ensure at least one epilogue iteration if required by data
accesses with gaps.
* tree-vectorizer.h (struct _loop_vec_info): Add new field
to mark loops that require peeling for gaps.
* tree-vect-loop.c (new_loop_vec_info): Initialize new field.
(vect_get_known_peeling_cost): Take peeling for gaps into
account.
(vect_transform_loop): Generate epilogue if required by data
access with gaps.
* tree-vect-data-refs.c (vect_analyze_group_access): Mark the
loop as requiring an epilogue if there are gaps in the end of
the strided group.
From-SVN: r174265
Fabien Chêne [Thu, 26 May 2011 06:09:16 +0000 (08:09 +0200)]
Adjust gcc/testsuite/ChangeLog
From-SVN: r174264
Fabien Chêne [Thu, 26 May 2011 05:54:08 +0000 (07:54 +0200)]
pr25811-2.C: New.
2011-05-26 Fabien Chene <fabien@gcc.gnu.org>
* g++.dg/init/pr25811-2.C: New.
* g++.dg/init/pr25811-3.C: New.
* g++.dg/init/pr25811-4.C: New.
From-SVN: r174263
Ian Lance Taylor [Thu, 26 May 2011 04:41:19 +0000 (04:41 +0000)]
godump.c (go_format_type): Output the first field with a usable Go type, if any.
* godump.c (go_format_type): Output the first field with a usable
Go type, if any.
From-SVN: r174262
Jason Merrill [Thu, 26 May 2011 02:28:59 +0000 (22:28 -0400)]
fix pr marker
From-SVN: r174259
Jason Merrill [Thu, 26 May 2011 02:23:02 +0000 (22:23 -0400)]
re PR c++/48536 ([C++0x] Automatic Enumerator Incrementation is not compliant with Clause 7.2/5)
PR c++/48536
* decl.c (build_enumerator): If incremented enumerator won't fit in
previous integral type, find one it will fit in.
From-SVN: r174258
Jason Merrill [Thu, 26 May 2011 02:22:54 +0000 (22:22 -0400)]
re PR c++/48599 ([C++0x] no diagnostic for invalid use of auto with array declarator)
PR c++/48599
* decl.c (create_array_type_for_decl): Complain about array of auto.
From-SVN: r174257
Jason Merrill [Thu, 26 May 2011 02:22:46 +0000 (22:22 -0400)]
re PR c++/49156 ([C++0x] Error reporting routines re-entered)
PR c++/49156
* error.c (dump_template_bindings): Set processing_template_decl
for a partial instantiation.
From-SVN: r174256
Jason Merrill [Thu, 26 May 2011 02:22:39 +0000 (22:22 -0400)]
re PR c++/45401 ([C++0x] reference collapsing and reference qualifiers)
PR c++/45401
* decl.c (grokdeclarator): Don't change type when adding rvalue ref
to another reference type.
From-SVN: r174255
Paolo Carlini [Thu, 26 May 2011 00:36:35 +0000 (00:36 +0000)]
stl_queue.h: Use noexcept per the FDIS.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_queue.h: Use noexcept per the FDIS.
* include/bits/stl_stack.h: Likewise.
From-SVN: r174254
Ian Lance Taylor [Thu, 26 May 2011 00:31:54 +0000 (00:31 +0000)]
godump.c (go_format_type): Check for invalid type names, pointer target types, and struct field types.
* godump.c (go_format_type): Check for invalid type names, pointer
target types, and struct field types.
From-SVN: r174253
GCC Administrator [Thu, 26 May 2011 00:19:16 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r174252
Paolo Carlini [Thu, 26 May 2011 00:15:22 +0000 (00:15 +0000)]
gnu.ver: Correct last change, export instead at the existing @3.4.16.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* config/abi/pre/gnu.ver: Correct last change, export instead
at the existing @3.4.16.
* configure.ac: Revert last change.
* testsuite/util/testsuite_abi.cc: Likewise.
* configure: Regenerate.
From-SVN: r174246
Jonathan Wakely [Wed, 25 May 2011 23:56:07 +0000 (23:56 +0000)]
documentation_hacking.xml: Minor corrections.
2011-05-26 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/documentation_hacking.xml: Minor corrections.
From-SVN: r174245
Jonathan Wakely [Wed, 25 May 2011 23:49:11 +0000 (23:49 +0000)]
mutex: Add doxygen comments.
2011-05-26 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex: Add doxygen comments.
From-SVN: r174244
Paolo Carlini [Wed, 25 May 2011 23:45:58 +0000 (23:45 +0000)]
gnu.ver: Export recently added basic_streambuf and basic_stringbuf symbols @3.4.17.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* config/abi/pre/gnu.ver: Export recently added basic_streambuf
and basic_stringbuf symbols @3.4.17.
* configure.ac: Update.
* testsuite/util/testsuite_abi.cc: Likewise.
* configure: Regenerate.
From-SVN: r174242
Jonathan Wakely [Wed, 25 May 2011 23:43:32 +0000 (23:43 +0000)]
guard.cc: Fix comments.
2011-05-26 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/guard.cc: Fix comments.
From-SVN: r174241
Ian Lance Taylor [Wed, 25 May 2011 23:09:14 +0000 (23:09 +0000)]
re PR libstdc++/49060 (use of deleted memory in __gnu_cxx::hashtable::erase)
PR libstdc++/49060
* include/backward/hashtable.h (hashtable::erase): Don't crash if
erasing first and another element with a reference to the other
element.
* testsuite/backward/hash_set/49060.cc: New.
From-SVN: r174240
Nicola Pero [Wed, 25 May 2011 20:33:06 +0000 (20:33 +0000)]
Fixed typo in last ChangeLog entry
From-SVN: r174238
Jason Merrill [Wed, 25 May 2011 20:02:41 +0000 (16:02 -0400)]
re PR c++/44311 ([C++0x] no error with switch over enum class and integer case)
PR c++/44311
* decl.c (case_conversion): New.
(finish_case_label): Use it.
From-SVN: r174231
Jason Merrill [Wed, 25 May 2011 19:52:18 +0000 (15:52 -0400)]
print-tree.c (print_node): Only look at TREE_TYPE if TS_TYPED.
* print-tree.c (print_node): Only look at TREE_TYPE if TS_TYPED.
* cp/ptree.c (cxx_print_xnode): Handle ARGUMENT_PACK_SELECT.
From-SVN: r174230
Jason Merrill [Wed, 25 May 2011 19:52:10 +0000 (15:52 -0400)]
re PR c++/45698 (C++0x Variadic Templates: Infinite template recursion rather than an error message)
PR c++/45698
* pt.c (dependent_template_arg_p): See through ARGUMENT_PACK_SELECT.
From-SVN: r174229
Jason Merrill [Wed, 25 May 2011 19:52:02 +0000 (15:52 -0400)]
re PR c++/46005 ([C++0x] Don't allow "auto" as the simple-type-specifier of a typedef)
PR c++/46145
* decl.c (grokdeclarator): Complain about auto typedef.
From-SVN: r174228
Jason Merrill [Wed, 25 May 2011 19:51:54 +0000 (15:51 -0400)]
re PR c++/46245 ([C++0x] rejects function with late-specified return type as a non-type template parameter)
PR c++/46245
* decl.c (grokdeclarator): Complain later for auto parameter.
* pt.c (splice_late_return_type): Handle use in a template
type-parameter.
From-SVN: r174227
Jason Merrill [Wed, 25 May 2011 19:51:44 +0000 (15:51 -0400)]
re PR c++/46696 ([C++0x] Implicit copy constructor can't construct array of subtype with user-defined copy constructor.)
PR c++/46696
* typeck.c (cp_build_modify_expr): Check DECL_DEFAULTED_FN.
From-SVN: r174226
Jason Merrill [Wed, 25 May 2011 19:50:49 +0000 (15:50 -0400)]
re PR c++/47184 ([C++0x] initialization construct interpreted as function declaration)
PR c++/47184
* parser.c (cp_parser_parameter_declaration): Recognize
list-initialization.
(cp_parser_direct_declarator): Check for the closing
paren before parsing definitely.
From-SVN: r174225
Uros Bizjak [Wed, 25 May 2011 19:48:44 +0000 (21:48 +0200)]
sse.md (*<sse>_maskcmp<mode>3_comm): New pattern.
* config/i386/sse.md (*<sse>_maskcmp<mode>3_comm): New pattern.
From-SVN: r174224
H.J. Lu [Wed, 25 May 2011 19:27:56 +0000 (19:27 +0000)]
Put back "register_operand" check in 32bit QI ext patterns.
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md (*movqi_extv_1)): Put back
"register_operand" check in "type" calculation.
(*movqi_extzv_2): Likewise.
From-SVN: r174223
Richard Frith-Macdonald [Wed, 25 May 2011 18:54:40 +0000 (18:54 +0000)]
In libobjc/: 2011-05-25 Richard Frith-Macdonald <rfm@gnu.org> David Ayers <ayers@fsfe.org>
In libobjc/:
2011-05-25 Richard Frith-Macdonald <rfm@gnu.org>
David Ayers <ayers@fsfe.org>
PR libobjc/38037
* sendmsg.c: Include objc/hash.h.
(get_implementation): New function, mostly with code from get_imp
updated to support the new +initialize dispatch table logic.
(get_imp): Use get_implementation.
(__objc_responds_to): Updated to support the new +initialize
dispatch table logic.
(class_respondsToSelector): Likewise.
(objc_msg_lookup): Use get_implementation.
(__objc_init_install_dtable): Removed.
(__objc_install_methods_in_dtable): Updated arguments.
(__objc_install_dispatch_table_for_class): Renamed to
__objc_install_dtable_for_class and updated to support the new
+initialize dispatch table logic.
(__objc_update_dispatch_table_for_class): Updated to support the
new +initialize dispatch table logic.
(__objc_forward): Call get_implementation instead of get_imp.
(prepared_dtable_table): New.
(__objc_prepare_dtable_for_class): New.
(__objc_prepared_dtable_for_class): New.
(__objc_get_prepared_imp): New.
(__objc_install_prepared_dtable_for_class): New.
Co-Authored-By: David Ayers <ayers@fsfe.org>
From-SVN: r174221
Paolo Carlini [Wed, 25 May 2011 17:55:40 +0000 (17:55 +0000)]
random.h (random_device::min, max): Specify constexpr.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (random_device::min, max): Specify constexpr.
From-SVN: r174219
Jakub Jelinek [Wed, 25 May 2011 17:26:23 +0000 (19:26 +0200)]
c-common.c (def_fn_type): Remove extra va_end.
* c-common.c (def_fn_type): Remove extra va_end.
* gcc-interface/utils.c (def_fn_type): Remove extra va_end.
From-SVN: r174218
H.J. Lu [Wed, 25 May 2011 17:18:29 +0000 (17:18 +0000)]
Update pause intrinsic.
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* doc/extend.texi (X86 Built-in Functions): Update pause
intrinsic.
From-SVN: r174217
Bernd Schmidt [Wed, 25 May 2011 16:42:23 +0000 (16:42 +0000)]
re PR bootstrap/49160 (Bootstrap failure)
PR bootstrap/49160
* libgcc2.h (__powisf2, __powidf2, __powitf2, __powixf2,
__mulsc3, __muldc3, __mulxc3, __multc3, __divsc3, __divdc3,
__divxc3, __divtc3): Wrap definitions in #ifndef.
From-SVN: r174216
Janis Johnson [Wed, 25 May 2011 16:30:27 +0000 (16:30 +0000)]
fp16-compile-none-1.c: Update expected error.
* gcc.target/arm/fp16-compile-none-1.c: Update expected error.
* g++.dg/abi/packed1.C: Suppress warning.
* g++.dg/warn/Wunused-parm-3.C: Likewise.
* g++.dg/template/stdarg1.C: Likewise.
* g++.dg/other/packed1.C: Remove arm from xfail list.
From-SVN: r174213
H.J. Lu [Wed, 25 May 2011 16:19:36 +0000 (16:19 +0000)]
Replace q_regs_operand with QIreg_operand in QI ext patterns.
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
PR target/49142
* config/i386/i386.md (*movqi_extv_1_rex64): Remove
"register_operand" check and replace q_regs_operand with
QIreg_operand in "type" calculation.
(*movqi_extv_1): Likewise.
(*movqi_extzv_2_rex64): Likewise.
(*movqi_extzv_2): Likewise.
* config/i386/predicates.md (QIreg_operand): New.
From-SVN: r174211
Richard Guenther [Wed, 25 May 2011 15:20:36 +0000 (15:20 +0000)]
tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Fix type-based offset disambiguation...
2011-05-25 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Fix
type-based offset disambiguation, streamline MEM_REF and
TARGET_MEM_REF handling.
From-SVN: r174206
Jason Merrill [Wed, 25 May 2011 14:35:17 +0000 (10:35 -0400)]
re PR c++/48935 ([C++0x] Name lookup error at enum class)
PR c++/48935
* parser.c (cp_parser_constructor_declarator_p): Don't check
constructor_name_p for enums.
(cp_parser_diagnose_invalid_type_name): Correct error message.
From-SVN: r174205
Jason Merrill [Wed, 25 May 2011 14:35:09 +0000 (10:35 -0400)]
re PR c++/45418 ([C++0x] can't initialize array of non-trivial type with brace-init)
PR c++/45418
* init.c (perform_member_init): Handle list-initialization
of array of non-trivial class type.
From-SVN: r174204
Jason Merrill [Wed, 25 May 2011 14:35:00 +0000 (10:35 -0400)]
re PR c++/45080 ([C++0x] Rejects lambda to function pointer conversion inside function template)
PR c++/45080
* pt.c (instantiate_class_template_1): Call maybe_add_lambda_conv_op.
* semantics.c (lambda_function): Check COMPLETE_OR_OPEN_TYPE_P.
From-SVN: r174203
Paolo Carlini [Wed, 25 May 2011 14:32:06 +0000 (14:32 +0000)]
thread: Use noexcept throughout per the FDIS.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/thread: Use noexcept throughout per the FDIS.
* include/std/mutex: Likewise.
From-SVN: r174202
Jason Merrill [Wed, 25 May 2011 14:32:06 +0000 (10:32 -0400)]
re PR c++/48292 ([C++0x] "sorry, unimplemented: use of 'type_pack_expansion' in template")
PR c++/48292
* pt.c (tsubst_decl) [PARM_DECL]: Handle partial instantiation of
function parameter pack.
(tsubst_pack_expansion): Likewise.
From-SVN: r174201
Jason Merrill [Wed, 25 May 2011 14:31:56 +0000 (10:31 -0400)]
cp-objcp-common.c (cp_common_init_ts): TYPE_ARGUMENT_PACK has TS_COMMON.
* cp-objcp-common.c (cp_common_init_ts): TYPE_ARGUMENT_PACK has
TS_COMMON.
From-SVN: r174200
William Schmidt [Wed, 25 May 2011 13:49:29 +0000 (13:49 +0000)]
Remove spurious ChangeLog entry
From-SVN: r174198
H.J. Lu [Wed, 25 May 2011 13:42:58 +0000 (13:42 +0000)]
Implement x86 pause intrinsic.
gcc/
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_PAUSE.
(bdesc_special_args): Add pause intrinsic.
* config/i386/i386.md (UNSPEC_PAUSE): New.
(pause): Likewise.
(*pause): Likewise.
* config/i386/ia32intrin.h (__pause): Likewise.
* doc/extend.texi (X86 Built-in Functions): Add documentation for
pause intrinsic.
gcc/testsuite/
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pause-1.c: New.
From-SVN: r174197
Bill Schmidt [Wed, 25 May 2011 13:35:53 +0000 (13:35 +0000)]
re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, 0.75)+y on powerpc)
2011-05-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/46728
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): New.
(execute_cse_sincos): Add switch case for BUILT_IN_POW.
From-SVN: r174196
Nathan Froyd [Wed, 25 May 2011 12:52:10 +0000 (12:52 +0000)]
move TS_EXP to be a substructure of TS_TYPED
move TS_EXP to be a substructure of TS_TYPED
gcc/
* tree.h (struct tree_exp): Inherit from struct tree_typed.
* tree.c (initialize_tree_contains_struct): Mark TS_EXP as TS_TYPED
instead of TS_COMMON.
gcc/lto/
* lto.c (lto_ft_typed): New function.
(lto_ft_common): Call it.
(lto_ft_constructor): Likewise.
(lto_ft_expr): Likewise.
(lto_fixup_prevailing_decls): Check for TS_COMMON before accessing
TREE_CHAIN.
From-SVN: r174192
Bernd Schmidt [Wed, 25 May 2011 12:11:42 +0000 (12:11 +0000)]
libgcc2.h (__NW, __NDW): Define using a __gnu_ prefix if LIBGCC2_GNU_PREFIX is defined.
gcc/
* libgcc2.h (__NW, __NDW): Define using a __gnu_ prefix if
LIBGCC2_GNU_PREFIX is defined.
(__N): New macro.
(__powisf2, __powidf2, __powitf2, __powixf2, __bswapsi2, __bswapdi2,
__mulsc3, __muldc3, __mulxc3, __multc3, __divsc3, __divdc3, __divxc3,
__divtc3, __udiv_w_sdiv, __clear_cache, __enable_execute_stack,
__clz_tab): Define using __N.
(__absvsi2, __negvsi2, __addvsi3, __subvsi3, __mulvsi3): Likewise if
COMPAT_SIMODE_TRAPPING_ARITHMETIC.
* target.def (libfunc_gnu_prefix): New hook.
* doc/tm.texi.in (LIBGCC2_GNU_PREFIX): Document.
(TARGET_LIBFUNC_GNU_PREFIX): Add hook.
* doc/tm.texi: Regenerate.
* system.h (LIBGCC2_GNU_PREFIX): Poison.
* optabs.c (gen_libfunc): Take the libfunc_gnu_prefix hook into
account.
(gen_interclass_conv_libfunc, gen_intraclass_conv_libfunc): Likewise.
(init_optabs): Likewise for the bswap libfuncs.
* tree.c (build_common_builtin_nodes): Likewise for complex multiply
and divide.
* config/t-slibgcc-elf-ver (SHLIB_MAPFILES): Use $$(libgcc_objdir).
* config/t-slibgcc-sld (SHLIB_MAPFILES): Likewise.
* libgcc-std.ver: Remove.
* Makefile.in (srcdirify): Handle $$(libgcc_objdir).
* config/frv/t-linux (SHLIB_MAPFILES): Use $$(libgcc_objdir) for
libgcc-std.ver.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/mips/t-slibgcc-irix (SHLIB_MAPFILES): Likewise.
* config/rs6000/t-aix43 (SHLIB_MAPFILES): Likewise.
* config/rs6000/t-aix52 (SHLIB_MAPFILES): Likewise.
* config/sparc/t-linux (SHLIB_MAPFILES): Likewise.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/fixed-bit.h (FIXED_OP): Define differently depending on
LIBGCC2_GNU_PREFIX. All uses changed not to pass leading underscores.
(FIXED_CONVERT_OP, FIXED_CONVERT_OP2): Likewise.
libgcc/
* libgcc-std.ver.in: New file.
* Makefile.in (LIBGCC_VER_GNU_PREFIX, LIBGCC_VER_SYMBOLS_PREFIX): New
variables.
(libgcc-std.ver): New rule.
* config/t-gnu-prefix: New file.
From-SVN: r174187
Jan Hubicka [Wed, 25 May 2011 12:07:38 +0000 (14:07 +0200)]
lto-streamer-out.c (output_record_start): Use lto_output_enum
* lto-streamer-out.c (output_record_start): Use lto_output_enum
(lto_output_tree): Use output_record_start.
* lto-streamer-in.c (input_record_start): Use lto_input_enum
(lto_get_pickled_tree): Use input_record_start.
* lto-section-in.c (lto_section_overrun): Turn into fatal error.
(lto_value_range_error): New function.
* lto-streamer.h (lto_value_range_error): Declare.
(lto_output_int_in_range, lto_input_int_in_range): New functions.
(lto_output_enum, lto_input_enum): New macros.
From-SVN: r174186
Kai Tietz [Wed, 25 May 2011 11:59:49 +0000 (13:59 +0200)]
adaint.c (__gnat_to_canonical_file_list_next): Use array initialization instead of const/none-const pointer assignment.
2011-05-25 Kai Tietz <ktietz@redhat.com>
* adaint.c (__gnat_to_canonical_file_list_next): Use array
initialization instead of const/none-const pointer assignment.
From-SVN: r174185
Eric Botcazou [Wed, 25 May 2011 11:00:14 +0000 (11:00 +0000)]
common.opt (flag_stack_usage_info): New variable.
* common.opt (flag_stack_usage_info): New variable.
(-Wstack-usage): New option.
* doc/invoke.texi (Warning options): Document -Wstack-usage.
* opts.c (common_handle_option) <OPT_Wstack_usage_>: New case.
<OPT_fstack_usage>: Likewise.
* toplev.c (output_stack_usage): Handle -Wstack-usage.
* calls.c (expand_call): Test flag_stack_usage_info variable instead
of flag_stack_usage.
(emit_library_call_value_1): Likewise.
* explow.c (allocate_dynamic_stack_space): Likewise.
* function.c (instantiate_virtual_regs ): Likewise.
(prepare_function_start): Likewise.
(rest_of_handle_thread_prologue_and_epilogue): Likewise.
* config/alpha/alpha.c (alpha_expand_prologue): Likewise.
* config/arm/arm.c (arm_expand_prologue): Likewise.
(thumb1_expand_prologue): Likewise.
* config/avr/avr.c (expand_prologue): Likewise.
* config/i386/i386.c (ix86_expand_prologue): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/m68k/m68k.c (m68k_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/pa/pa.c (hppa_expand_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
* config/s390/s390.c (s390_emit_prologue): Likewise.
* config/sh/sh.c (sh_expand_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
* config/spu/spu.c (spu_expand_prologue): Likewise.
From-SVN: r174182
Richard Guenther [Wed, 25 May 2011 10:32:29 +0000 (10:32 +0000)]
gimple.c (iterative_hash_canonical_type): Skip non-FIELD_DECLs.
2011-05-25 Richard Guenther <rguenther@suse.de>
* gimple.c (iterative_hash_canonical_type): Skip non-FIELD_DECLs.
(gimple_canonical_types_compatible_p): Likewise.
From-SVN: r174181
Jan Hubicka [Wed, 25 May 2011 10:20:12 +0000 (12:20 +0200)]
re PR middle-end/49062 (Many C++ tests ICE on Tru64 UNIX: non-DECL_ONE_ONLY node in a same_comdat_group list)
2011-05-25 Jan Hubicka <jh@suse.cz>
PR middle-end/49062
* ipa.c (function_and_variable_visibility): Only add to same
comdat group list if DECL_ONE_ONLY.
From-SVN: r174180
Andrey Belevantsev [Wed, 25 May 2011 07:59:06 +0000 (11:59 +0400)]
re PR rtl-optimization/49014 (ICE: in reset_sched_cycles_in_current_ebb, at sel-sched.c:7132 with even more insane set of flags)
PR rtl-optimization/49014
* config/i386/athlon.md (athlon_ssecomi): Change type to ssecomi.
From-SVN: r174172
Jakub Jelinek [Wed, 25 May 2011 07:12:17 +0000 (09:12 +0200)]
re PR c/49128 (-march=native generates unsupported instructions)
PR target/49128
* config/i386/driver-i386.c (host_detect_local_cpu): Fix a typo.
From-SVN: r174171
Jakub Jelinek [Wed, 25 May 2011 07:10:05 +0000 (09:10 +0200)]
cp-objcp-common.c (cp_common_init_ts): Mark CTOR_INITIALIZER as TS_TYPED.
* cp-objcp-common.c (cp_common_init_ts): Mark CTOR_INITIALIZER
as TS_TYPED.
From-SVN: r174170
Jakub Jelinek [Wed, 25 May 2011 07:00:01 +0000 (09:00 +0200)]
re PR c++/49136 ([C++0x][constexpr] Incorrect constexpr c'tor evaluation with bitfields)
PR c++/49136
* semantics.c (cxx_eval_bit_field_ref): Handle the
case when BIT_FIELD_REF doesn't cover only a single field.
* g++.dg/cpp0x/constexpr-bitfield2.C: New test.
* g++.dg/cpp0x/constexpr-bitfield3.C: New test.
From-SVN: r174168
Ian Lance Taylor [Wed, 25 May 2011 05:57:54 +0000 (05:57 +0000)]
re PR go/48502 (os_test.TestStartProcess FAILs on Solaris 2)
PR go/48502
libgo/os: Fix test to run on Solaris.
Patch brought over from upstream library.
From-SVN: r174167
Vladimir Makarov [Wed, 25 May 2011 02:15:58 +0000 (02:15 +0000)]
re PR rtl-optimization/48757 (internal compiler error: in compensate_edge, at reg-stack.c:2788)
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48757
* ira-build.c (loop_with_eh_edge_p): Rename to
loop_with_complex_edge_p, check edges on complexity, make function
conditional.
(mark_loops_for_removal): Make call of loop_with_complex_edge_p
conditional.
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48757
* gfortran.dg/pr48757.f: New test case.
From-SVN: r174165
GCC Administrator [Wed, 25 May 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r174157
Paolo Carlini [Wed, 25 May 2011 00:13:18 +0000 (00:13 +0000)]
dr2020.cc: Fix typo.
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
From-SVN: r174152
Jason Merrill [Tue, 24 May 2011 23:44:59 +0000 (19:44 -0400)]
re PR c++/49042 ([C++0x] wrong "protected" when using template and decltype)
PR c++/49042
* pt.c (get_mostly_instantiated_function_type): Use
push_deferring_access_checks rather than set flag_access_control.
From-SVN: r174151
Paolo Carlini [Tue, 24 May 2011 23:29:19 +0000 (23:29 +0000)]
re PR libstdc++/49151 ([C++0x][constexpr] chrono::duration has incorrect non-member operator semantics)
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49151
* include/std/chrono (operator+, operator-, operator*, operator/,
operator&): Implement LWG 2020 [WP]; specify constexpr.
* testsuite/20_util/duration/arithmetic/dr2020.cc: New.
From-SVN: r174150
Eric Botcazou [Tue, 24 May 2011 22:28:48 +0000 (22:28 +0000)]
sparc.c (sparc_option_override): If not set by the user, force flag_ira_share_save_slots to 0.
* config/sparc/sparc.c (sparc_option_override): If not set by the user,
force flag_ira_share_save_slots to 0.
From-SVN: r174148
Ian Lance Taylor [Tue, 24 May 2011 22:21:34 +0000 (22:21 +0000)]
libgo: Make os.setenv_c work on systems without setenv.
From-SVN: r174147
Eric Botcazou [Tue, 24 May 2011 21:52:12 +0000 (21:52 +0000)]
var-tracking.c (compute_cfa_pointer): Adjust head comment.
* var-tracking.c (compute_cfa_pointer): Adjust head comment.
(vt_initialize): Set PROLOGUE_BB unconditionally.
Add block comment about CFA_BASE_RTX machinery.
Reset FP_CFA_OFFSET to -1 on all invalid paths.
Call vt_init_cfa_base only if FP_CFA_OFFSET isn't equal to -1.
From-SVN: r174146
Ian Lance Taylor [Tue, 24 May 2011 21:45:17 +0000 (21:45 +0000)]
libgo: Irix portability fixes (no declaration for getaddrinfo).
From Rainer Orth.
From-SVN: r174145
Ian Lance Taylor [Tue, 24 May 2011 21:43:12 +0000 (21:43 +0000)]
libgo: Solaris/Irix portability fixes.
From Rainer Orth.
From-SVN: r174144
Nicola Pero [Tue, 24 May 2011 21:39:24 +0000 (21:39 +0000)]
In libobjc/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/48177
* selector.c (__sel_register_typed_name): Use sel_types_match()
instead of strcmp() to compare selector types (Suggestion by
Richard Frith-Macdonald <rfm@gnu.org>).
In gcc/testsuite/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/48177
* objc.dg/pr48177.m: New testcase.
From-SVN: r174143
Nicola Pero [Tue, 24 May 2011 21:29:35 +0000 (21:29 +0000)]
In gcc/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/48187
* c-parser.c (c_parser_objc_class_instance_variables): More robust
parsing of syntax error in ObjC instance variable lists. In
particular, avoid an infinite loop if there is a stray ']'.
Updated error message.
In gcc/cp/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>,
* parser.c (cp_parser_objc_class_ivars): Deal gracefully with a
syntax error in declaring an ObjC instance variable.
In gcc/testsuite/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/48187
* objc.dg/pr48187.m: New testcase.
* obj-c++.dg/pr48187.mm: New testcase.
* objc.dg/ivar-extra-semicolon.m: New testcase.
From-SVN: r174142
Ian Lance Taylor [Tue, 24 May 2011 21:07:15 +0000 (21:07 +0000)]
godump.c (go_define): Don't accept a string immediately after another operand.
* godump.c (go_define): Don't accept a string immediately after
another operand.
From-SVN: r174141
Ian Lance Taylor [Tue, 24 May 2011 20:34:47 +0000 (20:34 +0000)]
godump.c (struct godump_container): Add invalid_hash field.
* godump.c (struct godump_container): Add invalid_hash field.
(go_format_type): Return false if type is found in invalid_hash.
(go_output_typedef): Add invalid type to invalid_hash.
(go_finish): Create and delete invalid_hash.
From-SVN: r174140
Jason Merrill [Tue, 24 May 2011 20:26:47 +0000 (16:26 -0400)]
re PR c++/48884 (decltype's operand doesn't consider friend declaration)
PR c++/48884
* class.c (pushclass): Accept NULL argument.
(popclass): Deal with popping null class.
* pt.c (push_access_scope, pop_access_scope): Use them rather than
push_to_top_level/pop_from_top_level.
(push_deduction_access_scope, pop_defarg_context): New.
(fn_type_unification): Use them.
* name-lookup.c (lookup_name_real_1): Check current_class_type.
From-SVN: r174139
Bill Schmidt [Tue, 24 May 2011 18:02:22 +0000 (18:02 +0000)]
re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, 0.75)+y on powerpc)
2011-05-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/46728
* tree-ssa-math-opts.c (powi_table): New.
(powi_lookup_cost): New.
(powi_cost): New.
(powi_as_mults_1): New.
(powi_as_mults): New.
(gimple_expand_builtin_powi): New.
(execute_cse_sincos): Add switch case for BUILT_IN_POWI.
(gate_cse_sincos): Remove sincos/cexp restriction.
From-SVN: r174129
Rainer Orth [Tue, 24 May 2011 17:51:51 +0000 (17:51 +0000)]
re PR target/3746 (compilation of mips-tfile missing mips/a.out.h)
PR target/3746
* config.gcc (alpha*-dec-osf5.1*): Only build mips-tfile,
mips-tdump native.
* mips-tfile.c: Remove CROSS_DIRECTORY_STRUCTURE handling.
* mips-tdump.c: Likewise.
From-SVN: r174128
H.J. Lu [Tue, 24 May 2011 17:38:34 +0000 (17:38 +0000)]
Always add -mno-XXX for -march=native.
2011-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/49128
* config/i386/driver-i386.c (host_detect_local_cpu): Always
add -mno-XXX. Handle FMA.
From-SVN: r174126
Paolo Carlini [Tue, 24 May 2011 17:33:22 +0000 (17:33 +0000)]
decl.c (grokdeclarator): Use current_class_name.
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokdeclarator): Use current_class_name.
From-SVN: r174125
Vladimir Makarov [Tue, 24 May 2011 16:28:38 +0000 (16:28 +0000)]
[multiple changes]
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48633
* ira-build.c (loop_with_eh_edge_p): New function.
(mark_loops_for_removal): Use it.
2011-05-24 Michael Matz <matz@gcc.gnu.org>
PR rtl-optimization/48633
* g++.dg/pr48633.C: New test.
From-SVN: r174124