Nathan Froyd [Sat, 6 Nov 2010 18:41:57 +0000 (18:41 +0000)]
re PR c++/45332 (Generate clear diagnostics when a terminating semicolon is missing from a class member declaration.)
gcc/cp/
PR c++/45332
* parser.c (cp_lexer_previous_token): New function.
(cp_parser_member_declaration): Use previous token for error
messages. Assume semicolon presence rather than grovelling for
the next one.
gcc/testsuite/
PR c++/45332
* g++.dg/parse/semicolon2.C: New testcase.
* g++.dg/ext/asmspec1.C: Adjust.
* g++.dg/init/new13.C: Adjust.
* g++.dg/parse/ctor5.C: Adjust.
From-SVN: r166406
Janus Weil [Sat, 6 Nov 2010 17:58:11 +0000 (18:58 +0100)]
re PR fortran/46330 ([OOP] ICE after revision 166368)
2010-11-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/46330
* trans-expr.c (gfc_trans_class_assign): Find 'vtab' symbol in correct
namespace.
2010-11-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/46330
* gfortran.dg/class_27.f03: New.
From-SVN: r166405
Joern Rennecke [Sat, 6 Nov 2010 15:04:52 +0000 (15:04 +0000)]
re PR middle-end/46314 (frontends use ASM_GENERATE_INTERNAL_LABEL)
PR middle-end/46314
gcc:
* target.def (generate_internal_label): New asm_out hook.
* output.h (default_generate_internal_label): Declare.
* varasm.c (default_generate_internal_label): Define.
gcc/cp:
* method.c (make_alias_for_thunk):
Use targetm.asm_out.generate_internal_label.
gcc/java:
* class.c: Include target.h.
(make_local_function_alias):
Use targetm.asm_out.generate_internal_label.
* expr.c (lookup_label, generate_name): Likewise.
From-SVN: r166404
Nicola Pero [Sat, 6 Nov 2010 13:14:55 +0000 (13:14 +0000)]
In gcc/objc/: 2010-11-05 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-05 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 syntax with self and super.
* objc-act.c (OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS): New.
(maybe_make_artificial_property_decl): Added 'implementation'
argument. Use OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS when
looking up getters or setters for a class. If an implementation
is specified, search it as well for a getter or setter.
(objc_maybe_build_component_ref): Updated calls to
maybe_make_artificial_property_decl; added code to deal with
'self' and 'super' and with methods declared locally in the
implementation. Store the getter call expression in the
PROPERTY_REF instead of throwing it away.
(objc_build_class_component_ref): Updated calls to
maybe_make_artificial_property_decl, and store the getter call
expression in PROPERTY_REF instead of throwing it away.
(lookup_method_static): Implemented
OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS option.
(objc_gimplify_property_ref): Do not build the getter method call
here; instead use the one stored in the PROPERTY_REF. If it's not
there, produce helpful error messages.
* objc-tree.def (PROPERTY_REF): Increased the number of operands
from 2 to 3. Updated comments.
* objc-act.h (PROPERTY_REF_GETTER_CALL): New.
In gcc/testsuite/:
2010-11-05 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with self and super.
* objc.dg/property/dotsyntax-5.m: New.
* objc.dg/property/dotsyntax-6.m: New.
* objc.dg/property/dotsyntax-7.m: New.
* objc.dg/property/dotsyntax-8.m: New.
* objc.dg/property/dotsyntax-9.m: New.
* objc.dg/property/dotsyntax-10.m: New.
* objc.dg/property/dotsyntax-11.m: New.
* obj-c++.dg/property/dotsyntax-5.mm: New.
* obj-c++.dg/property/dotsyntax-6.mm: New.
* obj-c++.dg/property/dotsyntax-7.mm: New.
* obj-c++.dg/property/dotsyntax-8.mm: New.
* obj-c++.dg/property/dotsyntax-9.mm: New.
* obj-c++.dg/property/dotsyntax-10.mm: New.
* obj-c++.dg/property/dotsyntax-11.mm: New.
From-SVN: r166402
Iain Sandoe [Sat, 6 Nov 2010 11:06:59 +0000 (11:06 +0000)]
encode-3.mm: Provide a different string check for the NeXT runtime when the type is READONLY.
gcc/testsuite:
* obj-c++.dg/encode-3.mm: Provide a different string check for the
NeXT runtime when the type is READONLY.
From-SVN: r166401
Uros Bizjak [Sat, 6 Nov 2010 10:54:44 +0000 (11:54 +0100)]
387-2.c: Skip if -march= is specified.
* gcc.target/i386/387-2.c: Skip if -march= is specified.
* gcc.target/i386/387-6.c: Ditto.
* gcc.target/i386/387-2.c: Add -mfancy-math-387 to dg-options.
* gcc.target/i386/387-4.c: Ditto.
* gcc.target/i386/387-7.c: Ditto.
* gcc.target/i386/387-8.c: Ditto.
* gcc.target/i386/387-9.c: Ditto.
* gcc.target/i386/387-10.c: Ditto.
* gcc.target/i386/387-11.c: Ditto.
* gcc.target/i386/387-12.c: Ditto.
* gcc.target/i386/387-2.c: Add -mno-sse3 to dg-options.
From-SVN: r166400
Iain Sandoe [Sat, 6 Nov 2010 10:52:15 +0000 (10:52 +0000)]
revert unintended change to gcc-def.exp.
From-SVN: r166399
Iain Sandoe [Sat, 6 Nov 2010 10:48:18 +0000 (10:48 +0000)]
NS/CF String format syntax parsing.
gcc:
PR target/44981
* doc/extend.tex (format): Document NSString extension.
(format_arg): Likewise.
(Darwin Format Checks): New section.
* doc/tm.texi: Document string object hooks (generated).
* doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Rename.
(TARGET_STRING_OBJECT_REF_TYPE_P): New.
(TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
* target.def (objc_construct_string_object): Rename, amend
documentation.
(string_object_ref_type_p): New hook.
(check_string_object_format_arg): New hook.
* c-parser.c (c_parser_attributes): Allow objective-c class names as
attribute identifiers.
* config/darwin-c.c (darwin_cfstring_ref_p): New.
(darwin_check_cfstring_format_arg): New.
(darwin_additional_format_types): New.
* config/darwin-protos.h (darwin_cfstring_ref_p) New.
(darwin_check_cfstring_format_arg): New.
* config/darwin.h (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Renamed.
(TARGET_STRING_OBJECT_REF_TYPE_P): New.
(TARGET_N_FORMAT_TYPES): New.
(TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
gcc/c-family:
PR target/44981
* c-format.c (format_type): New type gcc_objc_string_format_type.
(valid_stringptr_type_p): New.
(handle_format_arg_attribute): Use valid_stringptr_type_p ().
(check_format_string): Pass expected type, use
valid_stringptr_type_p (), check that the format string types are
consistent with the format specification.
(decode_format_attr): Warn if NSString is used outside objective-c.
(format_types_orig): Add NSString.
(format_name): New.
(format_flags): New.
(check_format_arg): Handle format strings requiring an external parser.
first_target_format_type: New variable.
(handle_format_attribute): Set up first_target_format_type, pass the
expected format arg string type to check_format_string().
* c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
* stub-objc.c (objc_string_ref_type_p): New.
(objc_check_format_arg): New.
gcc/objc:
PR target/44981
* objc-act.c (objc_build_string_object): Amend for renamed hook.
(objc_string_ref_type_p): New.
(objc_check_format_arg): New.
gcc/testsuite:
PR target/44981
* gcc.dg/darwin-cfstring-format-1.c: New.
* gcc.dg/warn-nsstring.c: New.
* objc.dg/fsf-nsstring-format-1.m: New.
* obj-c++.dg/fsf-nsstring-format-1.mm: New.
* obj-c++.dg/torture/strings/const-cfstring-1.mm: Update for darwin10
linker warning.
From-SVN: r166398
Eric Botcazou [Sat, 6 Nov 2010 08:55:57 +0000 (08:55 +0000)]
cygming.h (DWARF_FRAME_REGISTERS): Redefine.
* config/i386/cygming.h (DWARF_FRAME_REGISTERS): Redefine. Use 33
in 64-bit mode and 17 otherwise.
Co-Authored-By: Pascal Obry <obry@adacore.com>
From-SVN: r166397
Andreas Krebbel [Sat, 6 Nov 2010 06:31:02 +0000 (06:31 +0000)]
re PR debug/45939 (Wrong debug info: Negative location range generated)
2010-11-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR debug/45939
* var-tracking.c (emit_note_insn_var_location): Make sure that
call related var location notes come before the normal ones.
From-SVN: r166396
H.J. Lu [Sat, 6 Nov 2010 04:08:34 +0000 (04:08 +0000)]
Fix a typo in ix86_delegitimize_address.
2010-11-05 H.J. Lu <hongjiu.lu@intel.com>
PR target/46326
* config/i386/i386.c (ix86_delegitimize_address): Fix a typo
in the last change.
From-SVN: r166394
Ian Lance Taylor [Sat, 6 Nov 2010 03:44:58 +0000 (03:44 +0000)]
explow.c (allocate_dynamic_stack_space): Check MALLOC_ABI_ALIGNMENT.
* explow.c (allocate_dynamic_stack_space): Check
MALLOC_ABI_ALIGNMENT.
From-SVN: r166393
Benjamin Kosnik [Sat, 6 Nov 2010 03:35:46 +0000 (03:35 +0000)]
user.cfg.in: Add typeindex.
2010-11-05 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Add typeindex.
* testsuite/util/testsuite_common_types.h (constexpr_comparison_eq_ne,
constexpr_comparison_operators): New.
* testsuite/20_util/duration/comparisons: Move...
* testsuite/20_util/duration/comparison_operators: ...here.
* testsuite/20_util/duration/comparison_operators/constexpr.cc: New.
* testsuite/20_util/time_point/comparison_operators/constexpr.cc: Add.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Adjust line
numbers.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
From-SVN: r166392
Jason Merrill [Sat, 6 Nov 2010 01:44:31 +0000 (21:44 -0400)]
re PR c++/45473 (ICE: in dfs_walk_once, at cp/search.c:1659)
PR c++/45473
* search.c (look_for_overrides): A constructor is never virtual.
From-SVN: r166391
GCC Administrator [Sat, 6 Nov 2010 00:17:56 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r166390
Paolo Carlini [Sat, 6 Nov 2010 00:11:57 +0000 (00:11 +0000)]
shared_ptr.h (shared_ptr<>::__shared_ptr(), [...]): Add constexpr specifier.
2010-11-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/shared_ptr.h (shared_ptr<>::__shared_ptr(),
shared_ptr<>::shared_ptr(nullptr_t), weak_ptr<>::weak_ptr(),
enable_shared_from_this::enable_shared_from_this()): Add constexpr
specifier.
* include/bits/shared_ptr_base.h (__shared_count::__shared_count(),
__shared_count::__shared_count(), __shared_ptr<>::__shared_ptr(),
__shared_ptr<>::__shared_ptr(nullptr_t), __weak_ptr<>::__weak_ptr(),
__enable_shared_from_this::__enable_shared_from_this()): Likewise.
* include/bits/unique_ptr.h (default_delete,
unique_ptr<>::unique_ptr(), unique_ptr<>::unique_ptr(nullptr_t)):
Likewise.
* testsuite/20_util/default_delete/cons/constexpr.cc: Do not xfail.
* testsuite/20_util/shared_ptr/cons/constexpr.cc: Remove, the test
cannot work for a non-literal type like std::shared_ptr.
* testsuite/20_util/weak_ptr/cons/constexpr.cc: Likewise.
* testsuite/util/testsuite_common_types.h: Add comments.
* testsuite/20_util/unique_ptr/cons/constexpr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error line
numbers.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
From-SVN: r166386
Jakub Jelinek [Sat, 6 Nov 2010 00:07:50 +0000 (01:07 +0100)]
re PR c/44772 (-Wc++-compat warns incorrectly for anonymous unions)
PR c/44772
* c-decl.c (warn_cxx_compat_finish_struct): Don't call
pointer_set_contains if DECL_NAME is NULL.
* gcc.dg/Wcxx-compat-21.c: New test.
From-SVN: r166384
Ian Lance Taylor [Fri, 5 Nov 2010 23:45:32 +0000 (23:45 +0000)]
re PR target/46084 (gcc.dg/split-4.c failed with -mavx -m32)
gcc/:
PR target/46084
* explow.c (allocate_dynamic_stack_space): If flag_split_stack,
request enough additional space for alignment, and force
alignment.
testsuite/:
* gcc.target/i386/pr46084.c: New test.
From-SVN: r166383
Kai Tietz [Fri, 5 Nov 2010 23:00:35 +0000 (23:00 +0000)]
i386.c (legitimate_pic_address_disp_p): Handle UNSPEC_PCREL.
2010-11-05 Kai Tietz <kai.tietz@onevision.com>
* config/i386/i386.c (legitimate_pic_address_disp_p):
Handle UNSPEC_PCREL.
(ix86_legitimate_address_p): Likewise.
(legitimize_pic_address): Likewise.
(output_pic_addr_const): Likewise.
(ix86_delegitimize_address): Likewise.
(ix86_find_base_term): Likewise.
(memory_address_length): Likewise.
(x86_output_mi_thunk): Handle special case x64
for non local binding.
* config/i386/i386.md (UNSPEC_PCREL): New.
* config/i386/winnt.c (i386_pe_binds_local_p):
Allow weak symbol for x64 windows with non-local binding.
From-SVN: r166382
Benjamin Kosnik [Fri, 5 Nov 2010 22:30:54 +0000 (22:30 +0000)]
user.cfg.in: Remove tr1_impl headers.
2010-11-05 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Remove tr1_impl headers.
* testsuite/tr1/4_metaprogramming/integral_constant/requirements/
constexpr_data.cc: New.
* testsuite/util/testsuite_tr1.h (LType, LTypeDerived, NLType): New.
* testsuite/20_util/is_literal_type/value.cc: New.
* testsuite/20_util/is_literal_type/requirements/typedefs.cc: Name.
* testsuite/20_util/is_literal_type/requirements/
explicit_instantiation.cc: New.
From-SVN: r166381
Steve Ellcey [Fri, 5 Nov 2010 21:07:53 +0000 (21:07 +0000)]
target-supports.exp (check_function_available): Use -fno-builtin.
2010-11-05 Steve Ellcey <sje@cup.hp.com>
* lib/target-supports.exp (check_function_available): Use -fno-builtin.
* (check_effective_target_mempcpy): New.
* gcc.c-torture/execute/pr45636.c: Move this...
* gcc.dg/torture/pr45636.c: to here. Add add dg- directives.
From-SVN: r166378
Rainer Orth [Fri, 5 Nov 2010 19:34:19 +0000 (19:34 +0000)]
i386.exp (FLAGS): Remove.
* gcc.target/i386/i386.exp (FLAGS): Remove.
Wrap gcc_target_compile with $clearcap_ldflags added to options.
From-SVN: r166377
Jakub Jelinek [Fri, 5 Nov 2010 19:02:46 +0000 (20:02 +0100)]
re PR c++/46160 (ICE with volatile structure and enum)
PR c++/46160
* cp-gimplify.c (cp_gimplify_expr): Drop volatile MEM_REFs
on the RHS to avoid infinite recursion with gimplify_expr.
* g++.dg/opt/empty2.C: New test.
From-SVN: r166372
Jakub Jelinek [Fri, 5 Nov 2010 19:00:27 +0000 (20:00 +0100)]
re PR target/45670 (Less efficient x86 addressing mode selection on 4.6, causes -Os size regression from 4.5)
PR target/45670
* expr.c (expand_expr_real_1) <case MEM_REF>: Use EXPAND_SUM
instead of EXPAND_NORMAL for base expansion.
* gcc.target/i386/pr45670.c: New test.
From-SVN: r166371
Joern Rennecke [Fri, 5 Nov 2010 18:46:22 +0000 (18:46 +0000)]
re PR target/44754 (m32c_pragma_memregs / m32c_pragma_address warnings)
PR target/44754
* config/m32c/m32c.c (m32_function_arg): Rename declaration to...
(m32c_function_arg). Add comma between arguments two and three.
(m32c_promote_prototypes): Remove declaration.
(current_function_special_page_vector): Likewise.
(m32c_regno_reg_class): Change return type to enum reg_class.
(m32c_pushm_popm): Use add_reg_note.
(m32c_push_rounding): Change return type to unsigned int.
(m32c_legitimize_reload_address): Cast argument 11 to push_reload to
enum reload_type.
(m32c_insert_attributes): Constify variable name.
(m32c_output_aligned_common): Add ATTRIBUTE_UNUSED to argument decl.
(m32c_prepare_shift): Remove variable lref.
(m32c_expand_movcc): Remove variable cmp.
(m32c_expand_insv): Fix check of op0 rtx_code to use GET_CODE.
(m32c_compare_redundant): Remove variable op2.
* config/m32c/m32c-pragma.c ("c-family/c-common.h"): Include.
(m32c_pragma_memregs): Assign the number to target_memregs.
(m32c_pragma_address): Remove variable var_str.
* config/m32c/m32c.h (REG_CLASS_FROM_CONSTRAINT): Case value to
enum reg_class.
(LIMIT_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
* config/m32c/bitops.md (andsi3): Add default case to switch.
(iorsi3, xorsi3): Likewise.
* config/m32c/addsub.md (addsi3_1, subsi3_1): Likewise.
* config/m32c/jump.md (call, call_value): Likewise.
* config/m32c/m32c-protos.h (m32c_push_rounding): Update prototype.
(m32c_regno_reg_class): Likewise.
(current_function_special_page_vector): Declare.
From-SVN: r166370
Uros Bizjak [Fri, 5 Nov 2010 18:33:19 +0000 (19:33 +0100)]
config.gcc: Support --with-fpmath=avx for x86.
* config.gcc: Support --with-fpmath=avx for x86.
* config/i386/avxmath.h: New.
* doc/install.texi (--with-fpmath=): Document --with-fpmath=avx.
From-SVN: r166369
Janus Weil [Fri, 5 Nov 2010 18:14:52 +0000 (19:14 +0100)]
re PR fortran/45451 ([OOP] Inconsistent status of ALLOCATABLE components inside CLASS variables.)
2010-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/45451
PR fortran/46174
* class.c (gfc_find_derived_vtab): Improved search for existing vtab.
Add component '$copy' to vtype symbol for polymorphic deep copying.
* expr.c (gfc_check_pointer_assign): Make sure the vtab is generated
during resolution stage.
* resolve.c (resolve_codes): Don't resolve code if namespace is already
resolved.
* trans-stmt.c (gfc_trans_allocate): Call '$copy' procedure for
polymorphic ALLOCATE statements with SOURCE.
2010-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/45451
PR fortran/46174
* gfortran.dg/class_19.f03: Modified.
* gfortran.dg/class_allocate_6.f03: New.
From-SVN: r166368
Ian Lance Taylor [Fri, 5 Nov 2010 17:56:58 +0000 (17:56 +0000)]
* dwarf2.h (enum dwarf_source_language): Add DW_LANG_Go.
From-SVN: r166367
Joern Rennecke [Fri, 5 Nov 2010 16:27:25 +0000 (16:27 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* expr.c (can_store_by_pieces): Add ATTRIBUTE_UNUSED to cst.
* haifa-sched.c (initiate_bb_reg_pressure_info): Add ATTRIBUTE_UNUSED
to i.
From-SVN: r166366
Ian Lance Taylor [Fri, 5 Nov 2010 15:53:25 +0000 (15:53 +0000)]
tree.h (struct tree_type): Don't use descbits in GTY annotation.
* tree.h (struct tree_type): Don't use descbits in GTY
annotation.
* gengtype.c (walk_type): Don't recognize descbits option.
From-SVN: r166365
Joern Rennecke [Fri, 5 Nov 2010 13:27:23 +0000 (13:27 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* expr.c (emit_push_insn): Cast value of PUSH_ROUNDING before
comparing it to a signed value.
From-SVN: r166360
Joseph Myers [Fri, 5 Nov 2010 13:06:27 +0000 (13:06 +0000)]
defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG, [...]): Remove.
* defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG,
WORD_SWITCH_TAKES_ARG): Remove.
* doc/options.texi (Args): Document.
* doc/tm.texi.in (WORD_SWITCH_TAKES_ARG): Remove.
* doc/tm.texi: Regenerate.
* opt-functions.awk (switch_flags): Handle Args.
* opts-common.c: Update comment on tm.h include.
(decode_cmdline_option): Handle options with multiple arguments.
Don't check WORD_SWITCH_TAKES_ARG for unknown options.
* opts.h (CL_SEPARATE_NARGS_SHIFT, CL_SEPARATE_NARGS_MASK):
Define.
(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
CL_COMMON): Update values.
* system.h (WORD_SWITCH_TAKES_ARG): Poison.
* config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove.
* config/darwin.opt (Zsegaddr, sectalign, sectcreate,
sectobjectsymbols, sectorder, segcreate, segprot): New.
From-SVN: r166359
H.J. Lu [Fri, 5 Nov 2010 12:53:39 +0000 (12:53 +0000)]
Check 256bit AVX register in move expanders.
gcc/
2010-11-05 H.J. Lu <hongjiu.lu@intel.com>
Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_expand_move): Set use_avx256_p if
256bit AVX register is used.
(ix86_expand_vector_move_misalign): Likewise.
(ix86_expand_vector_move): Replace use_avx256_p with
VALID_AVX256_REG_MODE.
gcc/testsuite/
2010-11-05 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/avx-vzeroupper-19.c: New.
Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r166358
Eric Botcazou [Fri, 5 Nov 2010 11:43:53 +0000 (11:43 +0000)]
Remove gcc/ prefixes
From-SVN: r166357
Joern Rennecke [Fri, 5 Nov 2010 11:27:16 +0000 (11:27 +0000)]
re PR target/44750 (pdp-11 fails to build)
PR target/44750
* config/pdp11/t-pdp11 (dwarf2out.o, java/constants.o): Undo last
change. Set $@-warn.o to -Wno-error.
From-SVN: r166356
Jakub Jelinek [Fri, 5 Nov 2010 11:15:28 +0000 (12:15 +0100)]
re PR tree-optimization/46099 (ICE: in replace_ssa_name, at tree-cfg.c:5643 with -ftree-parallelize-loops -g)
PR tree-optimization/46099
* tree-parloops.c (take_address_of): Add GSI argument. Return NULL
if it is NULL and uid wasn't found in the hash table. Just fold the
result if it is NULL otherwise. Insert other potentially needed
stmts right before current stmt instead of on the entry edge.
(struct elv_data): Add gsi and reset fields.
(eliminate_local_variables_1): Adjust caller. If take_address_of
failed for debug stmt, set dta->reset and return.
(eliminate_local_variables_stmt): Change STMT argument for GSI,
pass GSI through to the callback, handle resetting of debug stmts.
(eliminate_local_variables): Adjust caller. Process debug stmts
in second phase.
* gcc.dg/autopar/pr46099.c: New test.
From-SVN: r166355
Jakub Jelinek [Fri, 5 Nov 2010 11:11:50 +0000 (12:11 +0100)]
re PR middle-end/43690 (Internal compiler error detected by avr-gcc.)
PR middle-end/43690
* gimplify.c (gimplify_asm_expr): If a "m" input is a
{pre,post}{in,de}crement, fail.
* c-c++-common/pr43690.c: New test.
From-SVN: r166354
Jakub Jelinek [Fri, 5 Nov 2010 11:08:01 +0000 (12:08 +0100)]
cfgexpand.c (expand_debug_expr): Handle MEM_REF with non-zero offset.
* cfgexpand.c (expand_debug_expr): Handle MEM_REF
with non-zero offset.
From-SVN: r166353
Iain Sandoe [Fri, 5 Nov 2010 10:03:54 +0000 (10:03 +0000)]
NeXT runtime compatibility changes.
gcc/testsuite:
* objc.dg/torture/forward-1.m: Restore for m32 NeXT.
* objc.dg/demangle-1.m: Remove NeXT ifdef around +initialize
declaration and implementation.
* objc.dg/property/dotsyntax-3.m: XFAIL NeXT m64 run.
* obj-c++.dg/property/at-property-13.mm: Likewise.
* obj-c++.dg/property/fsf-property-method-access.mm: Likewise.
* obj-c++.dg/property/property-1.mm: Likewise.
* obj-c++.dg/property/at-property-7.mm: Likewise.
* obj-c++.dg/property/at-property-9.mm: Likewise.
* obj-c++.dg/property/dotsyntax-2.mm: Likewise.
* obj-c++.dg/property/at-property-10.mm: Likewise.
* obj-c++.dg/property/synthesize-2.mm: Likewise.
* obj-c++.dg/property/at-property-12.mm: Likewise.
* obj-c++.dg/property/fsf-property-basic.mm: Likewise.
* obj-c++.dg/property/fsf-property-named-ivar.mm: Likewise.
* obj-c++.dg/property/at-property-6.mm: Likewise.
* obj-c++.dg/property/at-property-8.mm: Likewise.
* obj-c++.dg/property/dotsyntax-1.mm: Likewise.
* obj-c++.dg/property/dotsyntax-3.mm: Likewise.
* obj-c++.dg/property/at-property-11.mm: Likewise.
* obj-c++.dg/template-8.mm: Likewise.
* obj-c++.dg/encode-3.mm: Use abort (), cast char types.
* obj-c++.dg/demangle-2.mm: Add +initialize:, XFAIL NeXT m64.
* obj-c++.dg/property/at-property-2.mm: Comment out a case that ICEs and
put a FIXME for this.
* obj-c++.dg/property/property-2.mm: Remove.
* obj-c++.dg/property/property-3.mm: Remove.
From-SVN: r166352
Jakub Jelinek [Fri, 5 Nov 2010 09:00:50 +0000 (10:00 +0100)]
re PR debug/46307 (ICE with FMA_EXPR in DEBUG stmts)
PR debug/46307
* tree-ssa-operands.c (get_expr_operands): Handle FMA_EXPR.
* tree-pretty-print.c (dump_generic_node): Likewise.
(op_code_prio): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* gcc.dg/pr46307.c: New test.
From-SVN: r166351
Jason Merrill [Fri, 5 Nov 2010 05:56:58 +0000 (01:56 -0400)]
re PR c++/46304 (g++ crashes with ICE in bitmap_first_set_bit, at bitmap.c:770)
PR c++/46304
* pt.c (tsubst_copy): Handle COMPLEX_CST.
From-SVN: r166350
Bud Davis [Fri, 5 Nov 2010 03:19:13 +0000 (03:19 +0000)]
intrinsic_numeric_arg.f: Add test to check error message.
2010-11-04 Bud Davis <jimmied@smu.edu>
* gfortran.dg/intrinsic_numeric_arg.f: Add test to check
error message.
From-SVN: r166347
Paul Koning [Fri, 5 Nov 2010 01:01:59 +0000 (21:01 -0400)]
md.texi (Machine Constraints): Correct formatting in PDP-11 constraints.
* doc/md.texi (Machine Constraints): Correct formatting in PDP-11
constraints.
From-SVN: r166346
Chao-ying Fu [Fri, 5 Nov 2010 00:28:54 +0000 (00:28 +0000)]
mips32-dsp.c: Add tests for madd, maddu, msub, msubu, mult, multu.
2010-11-04 Chao-ying Fu <fu@mips.com>
* gcc.target/mips/mips32-dsp.c: Add tests for madd, maddu, msub,
msubu, mult, multu.
* gcc.target/mips/mips32-dsp-run.c: Likewise.
From-SVN: r166345
Chao-ying Fu [Fri, 5 Nov 2010 00:26:14 +0000 (00:26 +0000)]
configure.ac: Test assembler support for DSP Rev1 mult.
2010-11-04 Chao-ying Fu <fu@mips.com>
* configure.ac: Test assembler support for DSP Rev1 mult.
* configure: Regenerate.
* config.in: Regenerate.
* config/mips/mips.h (ISA_HAS_DSP_MULT): New define.
* config/mips/mips.c (CODE_FOR_mips_mult): New define.
(CODE_FOR_mips_multu): New define.
(mips_builtins): Move madd, maddu, msub, msubu, mult, multu from
dspr2_32 to dsp_32.
(mips_mulsidi3_gen_fn): Test (TARGET_FIX_R4000 && !ISA_HAS_DSP).
Delete returns when ISA_HAS_DSPR2, because the old patterns are deleted.
* config/mips/mips-dsp.md (mips_madd<u>, mips_msub<u>):
New define_expand patterns.
* config/mips/constraints.md (ka): Update the constraint to test
ISA_HAS_DSP_MULT instead of ISA_HAS_DSPR2.
* config/mips/mips-dspr2.md (mips_madd<u>, mips_msub<u>, mips_mult,
mips_multu): Delete.
* config/mips/mips.md (<u>mulsidi3_32bit): Add comments.
Change target constraint to "ka".
Use (!TARGET_FIX_R4000 || ISA_HAS_DSP), instead of
(!TARGET_FIX_R4000 && !ISA_HAS_DSPR2).
Emit the accumulator destination when ISA_HAS_DSP_MULT.
(<u>msubsidi4): Add comments.
Test ISA_HAS_DSP.
Emit the accumulator destination when ISA_HAS_DSP_MULT.
(<u>maddsidi4): Likewise.
* doc/extend.texi (MIPS DSP Built-in Functions): Move madd, maddu,
msub, msubu, mult, multu built-in functions from DSP r2 to DSP r1.
From-SVN: r166344
GCC Administrator [Fri, 5 Nov 2010 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r166343
Richard Henderson [Thu, 4 Nov 2010 23:37:04 +0000 (16:37 -0700)]
Use spawnve on cygwin.
* configure.ac (AC_CHECK_HEADERS): Add process.h.
(checkfuncs): Add dup3, spawnve, spawnvpe; sort the list.
(AC_CHECK_FUNCS): Add dup3, spawnve, spawnvpe.
* configure, config.in: Rebuild.
* pex-unix.c [HAVE_SPAWNVE] (pex_unix_exec_child): New function.
[HAVE_SPAWNVE] (save_and_install_fd, restore_fd): New functions.
From-SVN: r166339
Joern Rennecke [Thu, 4 Nov 2010 21:51:30 +0000 (21:51 +0000)]
re PR target/44751 (h8300 get_attr_cc warnings)
PR target/44751
* config/h8300/h8300.c: Include df.h.
(push, pop): Use add_reg_note.
(compute_plussi_cc, compute_logical_op_cc): Return enum attr_c.
(compute_a_shift_cc): Likewise.
(expand_a_shift): Argument code has type enum rtx_code.
(struct shift_insn): Member cc_valid has type enum attr_cc.
(struct shift_info) <cc_inline, cc_special>: Likewise.
enum attr_cc.
* config/h8300/h8300-protos.h (compute_plussi_cc): Update prototype.
(compute_a_shift_cc, compute_logical_op_cc, expand_a_shift): Likewise.
From-SVN: r166336
Paul Koning [Thu, 4 Nov 2010 21:17:00 +0000 (17:17 -0400)]
* doc/md.texi (Machine Constraints): Add PDP-11 constraints.
From-SVN: r166335
Paul Koning [Thu, 4 Nov 2010 21:12:52 +0000 (17:12 -0400)]
* doc/invoke.texi (PDP-11 Options): Delete -msplit, -mno-split.
From-SVN: r166334
Nicola Pero [Thu, 4 Nov 2010 20:59:47 +0000 (20:59 +0000)]
In gcc/: 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with class names.
* c-parser.c (c_parser_next_token_starts_declspecs): In
Objective-C, detect Objective-C 2.0 dot-syntax with a class name.
(c_parser_next_token_starts_declaration): Same.
(c_parser_postfix_expression): Parse the Objective-C 2.0
dot-syntax with a class name.
In gcc/cp/:
2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with class names.
* parser.c (cp_parser_primary_expression): Recognize Objective-C
2.0 dot-syntax with class names and process it.
(cp_parser_nonclass_name): Recognize Objective-C 2.0 dot-syntax
with class names.
(cp_parser_class_name): Same change.
(cp_parser_simple_type_specifier): Tidied comments.
In gcc/c-family/:
2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with class names.
* c-common.h (objc_build_class_component_ref): New.
* stub-objc.c (objc_build_class_component_ref): New.
In gcc/objc/:
2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with class names.
* objc-act.c (objc_build_class_component_ref): New.
In gcc/testsuite/:
2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
Fixed using the Objective-C 2.0 dot-syntax with class names.
* objc.dg/property/dotsyntax-3.m: New.
* objc.dg/property/dotsyntax-4.m: New.
* obj-c++.dg/property/dotsyntax-3.mm: New.
* obj-c++.dg/property/dotsyntax-4.mm: New.
* objc.dg/fobjc-std-1.m: Added test for warnings when the
Objective-C 2.0 dot-syntax is used with class names.
* obj-c++.dg/fobjc-std-1.mm: Same change.
From-SVN: r166333
Joern Rennecke [Thu, 4 Nov 2010 20:51:43 +0000 (20:51 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* genopinit.c (main) [FIXUNS_TRUNC_LIKE_FIX_TRUNC]: Cast
iteration variables to enum machine_mode.
From-SVN: r166332
Joern Rennecke [Thu, 4 Nov 2010 20:44:03 +0000 (20:44 +0000)]
re PR target/44750 (pdp-11 fails to build)
PR target/44750
* config/pdp11/pdp11.c: (pdp11_secondary_reload): Now static.
(pdp11_preferred_reload_class): Rename class to rclass.
(pdp11_preferred_output_reload_class): Likewise.
* config/pdp11/t-pdp11 (dwarf2out.o): Add -Wno-error=type-limits to
ALL_COMPILERFLAGS .
(java/constants.o): Add -Wno-error to ALL_COMPILERFLAGS.
From-SVN: r166331
Jason Merrill [Thu, 4 Nov 2010 20:31:31 +0000 (16:31 -0400)]
re PR c++/46298 (constexpr ICE on ARM)
PR c++/46298
* semantics.c (build_constexpr_constructor_member_initializers):
Handle an enclosing STATEMENT_LIST.
From-SVN: r166330
Pat Haugen [Thu, 4 Nov 2010 20:25:27 +0000 (20:25 +0000)]
final.c (compute_alignments): Compute/free loop info all the time.
* final.c (compute_alignments): Compute/free loop info all the time.
* config/rs6000/rs6000.h (LOOP_ALIGN): Define.
* config/rs6000/rs6000-protos.h (rs6000_loop_align): Declare.
* config/rs6000/t-rs6000 (rs6000.o): Add cfgloop.h.
* config/rs6000/rs6000.c (cfgloop.h): Include.
(can_override_loop_align): New.
(rs6000_option_override_internal): Set it.
(TARGET_ASM_LOOP_ALIGN_MAX_SKIP): Define target hook.
(rs6000_loop_align): New function.
(rs6000_loop_align_max_skip): Likewise.
* gcc.target/powerpc/loop_align.c: New.
From-SVN: r166329
Joern Rennecke [Thu, 4 Nov 2010 19:58:40 +0000 (19:58 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* varasm.c (asm_output_bss): Add ATTRIBUTE_UNUSED to function.
From-SVN: r166328
Ralf Wildenhues [Thu, 4 Nov 2010 19:57:17 +0000 (19:57 +0000)]
Fix PR driver/45703: let --help -v show linker help.
gcc/:
PR driver/45703
* collect2.c (main): Print --help output to stdout. Do not
exit right away, so ld --help is appended. Add empty lines
to separate output suitably.
From-SVN: r166327
Iain Sandoe [Thu, 4 Nov 2010 19:34:02 +0000 (19:34 +0000)]
update Darwin ABI tests for m64
* gcc.target/powerpc/ppc64-abi-1.c: Skip for Darwin.
merge from FSF 'apple/trunk' branch.
* gcc.target/powerpc/darwin64-abi.c: New.
From-SVN: r166326
Janne Blomqvist [Thu, 4 Nov 2010 19:29:28 +0000 (21:29 +0200)]
PR 44931 Move struct unix_stream to unix.c
From-SVN: r166325
Jakub Jelinek [Thu, 4 Nov 2010 18:45:06 +0000 (19:45 +0100)]
re PR tree-optimization/46233 (ICE: verify_flow_info failed: control flow in the middle of basic block 3 with -foptimize-sibling-calls)
PR tree-optimization/46233
* ipa-pure-const.c (local_pure_const): Do noreturn discovery
after calling analyze_function, not before.
* gcc.dg/pr46233.c: New test.
From-SVN: r166324
Jakub Jelinek [Thu, 4 Nov 2010 18:43:00 +0000 (19:43 +0100)]
re PR target/46234 (ICE in expand_expr_real_2 for va-arg-XXX tescases)
PR target/46234
* config/rs6000/rs6000.c (rs6000_va_start): Use build_simple_mem_ref
instead of build_va_arg_indirect_ref.
* config/spu/spu.c (spu_va_start): Likewise.
* config/s390/s390.c (s390_va_start): Likewise.
From-SVN: r166323
Iain Sandoe [Thu, 4 Nov 2010 18:22:51 +0000 (18:22 +0000)]
Missed from previous commit.
testsuite:
* objc.dg/property/property-2.m: Deleted.
* objc.dg/property/property-3.m: Deleted.
From-SVN: r166322
Iain Sandoe [Thu, 4 Nov 2010 18:19:54 +0000 (18:19 +0000)]
next-mapping.h: Ensure a GNU-compatible nil is defined.
* objc-obj-c++-shared/next-mapping.h: Ensure a GNU-compatible nil is
defined.
* objc.dg/property/fsf-property-basic.m: XFAIL m64 NeXT run.
* objc.dg/property/fsf-property-named-ivar.m: Likewise.
* objc.dg/property/property-1.m: Likewise.
* objc.dg/property/at-property-6.m: Likewise.
* objc.dg/property/at-property-7.m: Likewise.
* objc.dg/property/dotsyntax-1.m: Likewise.
* objc.dg/property/at-property-8.m: Likewise.
* objc.dg/property/dotsyntax-2.m: Likewise.
* objc.dg/property/at-property-9.m: Likewise.
* objc.dg/property/synthesize-2.m: Likewise.
* objc.dg/property/at-property-10.m: Likewise.
* objc.dg/property/at-property-11.m: Likewise.
* objc.dg/property/at-property-12.m: Likewise.
* objc.dg/property/at-property-13.m: Likewise.
* objc.dg/property/fsf-property-method-access.m: Likewise.
* objc.dg/torture/strings/const-cfstring-1.m: Cater for bogus Darwin10
linker warning.
* objc.dg/encode-7-next.m: Use next-mapping.h, ignore deprecation
warnings.
* objc.dg/encode-7-next-64bit.m: Use next-mapping.h, ignore
deprecation warnings. Use Object1 implemenation.
* objc.dg/demangle-1.m: Provide +initialize. XFAIL m64 NeXT run.
* objc/execute/forward-1.m: Move to objc.dg/torture and reduce scope
to m32 NeXT.
* objc/execute/forward-1.x: Remove.
From-SVN: r166321
Joern Rennecke [Thu, 4 Nov 2010 18:01:45 +0000 (18:01 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* function.c (thread_prologue_and_epilogue_insns): Add
ATTRIBUTE_UNUSED to seq, epilogue_end and entry_edge.
From-SVN: r166320
Paolo Carlini [Thu, 4 Nov 2010 17:02:25 +0000 (17:02 +0000)]
re PR libstdc++/46303 ('mutex' is not a member of 'std' failures in 30_threads/call_once/constexpr.cc, 30_threads/mutex/cons/constexpr.cc, 30_threads/once_flag/cons/constexpr.cc)
2010-11-04 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46303
* testsuite/30_threads/call_once/constexpr.cc: Add missing dg-require
directives.
* testsuite/30_threads/mutex/cons/constexpr.cc: Likewise.
* testsuite/30_threads/once_flag/cons/constexpr.cc: Likewise.
2010-11-04 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/ratio (ratio_add, ratio_subtract, ratio_multiply,
ratio_divide): Declare the data members constexpr.
* testsuite/20_util/ratio/requirements/constexpr_data.cc: Extend.
From-SVN: r166319
Uros Bizjak [Thu, 4 Nov 2010 16:06:45 +0000 (17:06 +0100)]
re PR middle-end/46292 (FAIL: gcc.c-torture/execute/vector-shift2.c compilation, -O3 -g)
PR middle-end/46292
* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
if the innermode is not vector mode, determine the mode of a subreg
by using mode_for_size of inner_size.
From-SVN: r166318
Jason Merrill [Thu, 4 Nov 2010 15:52:18 +0000 (11:52 -0400)]
semantics.c (speculative_access_check): New.
* semantics.c (speculative_access_check): New.
* cp-tree.h: Declare it.
* call.c (build_over_call): Use it.
* class.c (type_has_constexpr_default_constructor): Use locate_ctor.
* method.c (locate_ctor): Use push/pop_deferring_access_checks.
From-SVN: r166317
Richard Guenther [Thu, 4 Nov 2010 15:19:19 +0000 (15:19 +0000)]
re PR tree-optimization/46183 (ICE: in calc_dfs_tree, at dominance.c:396 with -O -fno-dse -fgcse -ftree-pre)
2010-11-04 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/46183
* gcse.c (execute_rtl_cprop): Cleanup the CFG if something changed.
(execute_rtl_pre): Likewise.
(execute_rtl_hoist): Likewise.
* gcc.dg/torture/pr46183.c: New testcase.
From-SVN: r166316
Richard Guenther [Thu, 4 Nov 2010 15:17:24 +0000 (15:17 +0000)]
re PR tree-optimization/46068 (ICE: in consider_split, at ipa-split.c:313 with asm goto and __builtin_unreachable ())
2010-11-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46068
* ipa-split.c (consider_split): Remove gcc_unreachable.
* gcc.dg/torture/pr46068.c: New testcase.
From-SVN: r166315
Richard Guenther [Thu, 4 Nov 2010 15:15:39 +0000 (15:15 +0000)]
tree-nested.c (build_addr): Use build_fold_addr_expr.
2010-11-04 Richard Guenther <rguenther@suse.de>
* tree-nested.c (build_addr): Use build_fold_addr_expr.
From-SVN: r166314
Joern Rennecke [Thu, 4 Nov 2010 14:58:40 +0000 (14:58 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* ifcvt.c (noce_emit_cmove): Add ATTRIBUTE_UNUSED to target and
unsignedp.
* reload1.c (set_reload_reg): Add ATTRIBUTE_UNUSED to regno.
From-SVN: r166313
Richard Guenther [Thu, 4 Nov 2010 14:07:48 +0000 (14:07 +0000)]
re PR tree-optimization/45991 (ICE: verify_stmts failed: Invalid address operand in in TARGET_MEM_REF. with -fstrict-overflow)
2010-11-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45991
* gimplify.c (force_gimple_operand_1): Use the provded test
function in the initial test.
* gcc.dg/pr45991.c: New testcase.
From-SVN: r166312
Richard Guenther [Thu, 4 Nov 2010 13:55:44 +0000 (13:55 +0000)]
re PR tree-optimization/46154 (ICE: failed to reclaim unneeded function with -fipa-cp -fipa-cp-clone)
2010-11-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46154
* g++.dg/torture/pr46154.C: New testcase.
From-SVN: r166311
Joern Rennecke [Thu, 4 Nov 2010 13:50:46 +0000 (13:50 +0000)]
Fix date.
From-SVN: r166310
Jeff Law [Thu, 4 Nov 2010 13:15:33 +0000 (07:15 -0600)]
ira.c (validate_equiv_mem): Remove code to avoid invalidation of readonly memory equivalances for...
* ira.c (validate_equiv_mem): Remove code to avoid invalidation
of readonly memory equivalances for const/pure calls.
From-SVN: r166309
Richard Guenther [Thu, 4 Nov 2010 12:42:57 +0000 (12:42 +0000)]
re PR tree-optimization/45733 (ICE: verify_stmts failed: invalid conversion in gimple call with -fstrict-overflow -ftree-vectorize)
2010-11-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45733
* tree-vect-stmts.c (reverse_vec_elements): Honor the
permute builtins function return type.
* gcc.dg/pr45733.c: New testcase.
From-SVN: r166308
Joern Rennecke [Thu, 4 Nov 2010 12:41:07 +0000 (12:41 +0000)]
re PR middle-end/44765 (gen_rtx_REG can make out-of-bounds access for INVALID_REGNUM)
PR middle-end/44765
* emit-rtl.c (gen_rtx_REG): Before using PIC_OFFSET_TABLE_REGNUM
as an index, check it is not INVALID_REGNUM.
From-SVN: r166307
Ira Rosen [Thu, 4 Nov 2010 11:51:09 +0000 (11:51 +0000)]
re PR tree-optimization/46213 (gfortran.dg/aliasing_array_result_1.f90 ICE: in vectorizable_reduction, at tree-vect-loop.c:4046 with custom compiler flags)
PR tree-optimization/46213
* tree-vect-loop.c (vect_is_simple_reduction_1): Handle
MINUS_EXPR only if the first operand is reduction operand.
From-SVN: r166306
Richard Guenther [Thu, 4 Nov 2010 11:10:21 +0000 (11:10 +0000)]
re PR lto/45702 (New LTO test failures)
2010-11-04 Richard Guenther <rguenther@suse.de>
PR testsuite/45702
* gcc.dg/pr34989-1.c: Move ...
* gcc.dg/lto/pr34989-1_0.c: ... here.
* gcc.dg/pr34989-2.c: Move ...
* gcc.dg/lto/pr34989-1_1.c: ... here.
* gcc.dg/pr27898.c: Move ...
* gcc.dg/lto/pr27898_0.c: ... here and ...
* gcc.dg/lto/pr27898_1.c: ... split.
* gcc.dg/pr28712.c: Move ...
* gcc.dg/lto/pr28712_0.c: ... here and ...
* gcc.dg/lto/pr28712_1.c: ... split ...
* gcc.dg/lto/pr28712_2.c: ... twice.
* gcc.dg/pr28706.c: Move ...
* gcc.dg/lto/pr28706_0.c: ... here and ...
* gcc.dg/lto/pr28706_1.c: ... split.
From-SVN: r166305
Richard Guenther [Thu, 4 Nov 2010 10:56:22 +0000 (10:56 +0000)]
tree.def (FMA_EXPR): New tree code.
2010-11-04 Richard Guenther <rguenther@suse.de>
Richard Henderson <rth@redhat.com>
* tree.def (FMA_EXPR): New tree code.
* expr.c (expand_expr_real_2): Add FMA_EXPR expansion code.
* gimple.c (gimple_rhs_class_table): FMA_EXPR is a GIMPLE_TERNARY_RHS.
* tree-cfg.c (verify_gimple_assign_ternary): Verify FMA_EXPR types.
* tree-inline.c (estimate_operator_cost): Handle FMA_EXPR.
* gimple-pretty-print.c (dump_ternary_rhs): Likewise.
* tree-ssa-math-opts.c (convert_mult_to_fma): New function.
(execute_optimize_widening_mul): Call it. Reorganize to allow
dead stmt removal. Move TODO flags ...
(pass_optimize_widening_mul): ... here.
* flag-types.h (enum fp_contract_mode): New enum.
* common.opt (flag_fp_contract_mode): New variable.
(-ffp-contract): New option.
* opts.c (common_handle_option): Handle it.
* doc/invoke.texi (-ffp-contract): Document.
* tree.h (fold_fma): Declare.
* builtins.c (fold_fma): New function.
(fold_builtin_fma): Likewise.
(fold_builtin_3): Call it for fma.
* fold-const.c (fold_ternary_loc): Fold FMA_EXPR.
* optabs.c (optab_for_tree_code): Handle FMA_EXPR.
* config/i386/sse.md (fms<mode>4, fnma<mode>, fnms<mode>4):
New expanders.
* doc/md.texi (fms<mode>4, fnma<mode>, fnms<mode>4): Document new
named patterns.
* genopinit.c (optabs): Initialize fms_optab, fnma_optab and fnms_optab.
* optabs.h (enum optab_index): Add OTI_fms, OTI_fnma and OTI_fnms.
(fms_optab, fnma_optab, fnms_optab): New defines.
* gimplify.c (gimplify_expr): Handle binary truth expressions
explicitly. Handle FMA_EXPR.
* tree-vect-stmts.c (vectorizable_operation): Handle ternary
operations.
* gcc.target/i386/fma4-vector-2.c: New testcase.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r166304
Artjoms Sinkarovs [Thu, 4 Nov 2010 10:54:33 +0000 (10:54 +0000)]
passes.c (init_optimization_passes): Move veclower after SSA.
2010-11-04 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
Richard Guenther <rguenther@suse.de>
* passes.c (init_optimization_passes): Move veclower after SSA.
* tree-vect-generic.c (uniform_vector_p): New function.
(expand_vector_operations_1): Handle conversion.
(pass_lower_vector): Update SSA form.
testsuite/
* gcc.dg/vec-scal-opt.c: New testcase.
* gcc.dg/vec-scal-opt1.c: New testcase.
* gcc.dg/vec-scal-opt2.c: New testcase.
From-SVN: r166303
Iain Sandoe [Thu, 4 Nov 2010 10:43:47 +0000 (10:43 +0000)]
enable mdynamic-no-pic bootstrap for x86 Darwin
* configure.ac (*-*-darwin*): Use mh-darwin for all Darwin variants.
* configure: Regenerate.
* config/mh-ppc-darwin: Rename to mh-darwin.
gcc:
* gcc/configure.ac: Filter -mdynamic-no-pic from CFLAGS when testing for
plugin capabilities.
* gcc/configure: Regenerate.
gcc/testsuite:
* lib/plugin-support.exp (plugin-test-execute): Filter -mdynamic-no-pic from
plugin build flags on Darwin targets.
From-SVN: r166302
Benjamin Kosnik [Thu, 4 Nov 2010 05:53:05 +0000 (05:53 +0000)]
tuple (tuple): Make default constructors constexpr.
2010-11-03 Benjamin Kosnik <bkoz@redhat.com>
* include/std/tuple (tuple): Make default constructors constexpr.
* testsuite/20_util/tuple/cons/constexpr.cc: Add.
* testsuite/18_support/initializer_list/requirements/
constexpr_functions.cc: Add.
* testsuite/18_support/initializer_list/constexpr.cc: Add.
From-SVN: r166301
H.J. Lu [Thu, 4 Nov 2010 02:44:16 +0000 (02:44 +0000)]
Require split_stack target for gcc.target/i386/pr46285.c.
2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pr46285.c: Require split_stack target.
From-SVN: r166298
Jason Merrill [Thu, 4 Nov 2010 02:15:08 +0000 (22:15 -0400)]
re PR c++/46293 (constexpr vs. tuple, ice)
PR c++/46293
* semantics.c (build_data_member_initialization): Handle
value-init of aggregate empty base.
From-SVN: r166297
Jason Merrill [Thu, 4 Nov 2010 02:15:00 +0000 (22:15 -0400)]
re PR c++/46289 (ICE in build_constexpr_constructor_member_initializers, at cp/semantics.c:5513)
PR c++/46289
* call.c (can_convert_array): New fn.
(build_aggr_conv): Use it.
From-SVN: r166296
GCC Administrator [Thu, 4 Nov 2010 00:18:36 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r166292
Nicola Pero [Wed, 3 Nov 2010 23:52:18 +0000 (23:52 +0000)]
In gcc/c-family/: 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/c-family/:
2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
* c.opt (Wproperty-assign-default): New option.
In gcc/objc/:
2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_add_dynamic_declaration): Allow @dynamic in a
category.
(objc_type_valid_for_messaging): Added 'accept_classes' argument;
if set to 'true', return 'true' for Class objects. Do not remove
more than on pointer indirection.
(objc_add_property_declaration): Only warn about 'assign'
semantics for Objective-C objects if warn_property_assign_default;
and do not warn if the property is readonly or if the type is a Class.
(objc_finish_foreach_loop): Updated calls to
objc_type_valid_for_messaging.
In gcc/testsuite/:
2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/property/dynamic-2.m: Updated for the fact that @dynamic
is now allowed in categories.
* obj-c++.dg/property/dynamic-2.mm: Same change.
* objc.dg/property/dynamic-3.m: New.
* obj-c++.dg/property/dynamic-3.mm: New.
* objc.dg/property/at-property-14.m: New.
* objc.dg/property/at-property-15.m: New.
* obj-c++.dg/property/at-property-14.mm: New.
* obj-c++.dg/property/at-property-15.mm: New.
* objc.dg/foreach-6.m: Added a few more tests for valid and
invalid iterating variables and collections.
From-SVN: r166287
Dave Korn [Wed, 3 Nov 2010 23:13:51 +0000 (23:13 +0000)]
re PR lto/46291 (Failed to bootstrap-lto)
PR lto/46291
* lto-plugin.c (claim_file_handler): Don't close file descriptor.
From-SVN: r166285
Janne Blomqvist [Wed, 3 Nov 2010 23:07:11 +0000 (01:07 +0200)]
Remove prot from unix_stream
From-SVN: r166284
Xinliang David Li [Wed, 3 Nov 2010 22:25:53 +0000 (22:25 +0000)]
Fix PR/46200
From-SVN: r166280
Kaz Kojima [Wed, 3 Nov 2010 22:05:36 +0000 (22:05 +0000)]
config.gcc (sh64*): Add newlib-stdint.h for newlib targets.
* config.gcc (sh64*) <tm_file>: Add newlib-stdint.h for
newlib targets.
From-SVN: r166279
Kaz Kojima [Wed, 3 Nov 2010 22:03:30 +0000 (22:03 +0000)]
sh.c (sh_expand_prologue): Remove unnecessary comment.
* config/sh/sh.c (sh_expand_prologue): Remove unnecessary
comment. Pass true to the last argument of output_stack_adjust.
From-SVN: r166278
H.J. Lu [Wed, 3 Nov 2010 21:16:36 +0000 (21:16 +0000)]
Set use_avx256_p if 256bit AVX register is used in vector move.
gcc/
2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
PR target/46295
* config/i386/i386.c (ix86_expand_vector_move): Set use_avx256_p
if 256bit AVX register is used.
gcc/testsuite/
2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
PR target/46295
* gcc.target/i386/pr46295.c: New.
From-SVN: r166277
Janne Blomqvist [Wed, 3 Nov 2010 20:49:31 +0000 (22:49 +0200)]
Remove unused empty_internal_buffer function
From-SVN: r166276
Michael Meissner [Wed, 3 Nov 2010 20:35:34 +0000 (20:35 +0000)]
Add SF min/max under VSX, using the normal double operations
From-SVN: r166273
Jason Merrill [Wed, 3 Nov 2010 19:13:27 +0000 (15:13 -0400)]
re PR c++/46289 (ICE in build_constexpr_constructor_member_initializers, at cp/semantics.c:5513)
PR c++/46289
* semantics.c (build_constexpr_constructor_member_initializers):
Avoid ICE on error.
From-SVN: r166270
Eric Botcazou [Wed, 3 Nov 2010 17:53:51 +0000 (17:53 +0000)]
combine.c (try_combine): Fix formatting issues, improve comments and fix a pasto.
* combine.c (try_combine): Fix formatting issues, improve comments and
fix a pasto.
From-SVN: r166263
Thomas Koenig [Wed, 3 Nov 2010 17:49:05 +0000 (17:49 +0000)]
dump-parse-tree.c (code_indent): Take label into acount when calculating indent.
2010-11-03 Thomas Koenig <tkoenig@gcc.gnu.org>
Paul Thomas <pault@gcc.gnu.org>
* dump-parse-tree.c (code_indent): Take label into acount
when calculating indent.
(show_typespec): Also display class.
(show_attr): Add module name to argument.
Don't show UNKNOWN for flavor, access and save. Don't show
SAVE_NONE. Don't show INTENT_UNKNOWN. Show module for use
association. Show intent only for dummy arguments.
Set length of shown symbol names to minimum of 12.
Show attributes header.
(show_symbol): Adjust show_level.
(show_symtree): Clear up display for ambiguous. Show if symbol
was imported from namespace.
(show_code_node): Clear up indenting. Traverse symtree and
show code directly instead of calling show_namespace.
Co-Authored-By: Paul Thomas <pault@gcc.gnu.org>
From-SVN: r166262
Paolo Carlini [Wed, 3 Nov 2010 17:33:54 +0000 (17:33 +0000)]
limits (__glibcxx_digits10, [...]): Use 643L instead of 643 to avoid overflows on 16-bit machines.
2010-11-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/limits (__glibcxx_digits10, __glibcxx_max_digits10):
Use 643L instead of 643 to avoid overflows on 16-bit machines.
* include/ext/numeric_traits.h (__glibcxx_max_digits10): Likewise.
From-SVN: r166261