Georg-Johann Lay [Mon, 26 Sep 2011 11:53:40 +0000 (11:53 +0000)]
re PR target/50465 ([avr] Use insn attribute to depict if and how instruction lengths have to be adjusted)
PR target/50465
* config/avr/avr-protos.h (output_reload_insisf): Don't pass insn.
* config/avr/avr.md (*reload_insi, *reload_insf): Change call to
output_reload_insisf.
(adjust_len): Set default to "no".
Remove alternative "yes". Add alternatives: "mov8", "mov16",
"mov32", "ashlqi", "ashrqi", "lshrqi", "ashlhi", "ashrhi",
"lshrhi", "ashlsi, "ashrsi", "lshrsi".
(*movqi, *movhi, *movsi, *ashlqi3, ashlhi3, ashlsi3,
*ashlhi3_const, *ashlsi3_const, ashrqi3, ashrhi3, ashrsi3,
*ashrhi3_const, *ashrsi3_const, *lshrqi3, lshrhi3, *lshrhi3_const,
*lshrsi3_const): Set attribute "adjust_len".
* config/avr/avr.c (output_reload_insisf): Remove parameter "insn".
(output_movsisf): Don't pass insn to output_reload_insisf.
(adjust_insn_length): Handle new alternatives to adjust_len.
Remove handling of ADJUST_LEN_YES. Clean-up code.
From-SVN: r179191
Eric Botcazou [Mon, 26 Sep 2011 11:43:08 +0000 (11:43 +0000)]
Fix oversight
From-SVN: r179190
Rainer Orth [Mon, 26 Sep 2011 10:54:33 +0000 (10:54 +0000)]
Restore Ada bootstrap on Solaris 8, 9/x86
From-SVN: r179189
Eric Botcazou [Mon, 26 Sep 2011 09:49:02 +0000 (09:49 +0000)]
ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of may_trap_p to detect loads that may trap of...
* ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of
may_trap_p to detect loads that may trap of fault.
From-SVN: r179188
Eric Botcazou [Mon, 26 Sep 2011 09:21:01 +0000 (09:21 +0000)]
utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the dereference of the pointer to the storage area.
* gcc-interface/utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the
dereference of the pointer to the storage area. Remove useless type
conversions and factor out common code.
From-SVN: r179187
Eric Botcazou [Mon, 26 Sep 2011 09:03:52 +0000 (09:03 +0000)]
utils.c (maybe_unconstrained_array): Declare TYPE local variable and use it throughout.
* gcc-interface/utils.c (maybe_unconstrained_array): Declare TYPE local
variable and use it throughout.
<UNCONSTRAINED_ARRAY_TYPE>: Add 'break' at the end.
<RECORD_TYPE>: Do not unconditionally convert to the unpadded type as a
first step. Also convert to the unpadded type as a last step.
From-SVN: r179186
Eric Botcazou [Mon, 26 Sep 2011 08:50:16 +0000 (08:50 +0000)]
gigi.h (create_subprog_decl): Replace TREE_CHAIN with DECL_CHAIN in comment.
* gcc-interface/gigi.h (create_subprog_decl): Replace TREE_CHAIN with
DECL_CHAIN in comment.
* gcc-interface/trans.c (gigi): Likewise.
(Attribute_to_gnu): Likewise.
(build_function_stub): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils.c (create_subprog_decl): Likewise.
(convert_vms_descriptor64): Likewise.
(convert_vms_descriptor32): Likewise.
From-SVN: r179185
Eric Botcazou [Mon, 26 Sep 2011 08:45:36 +0000 (08:45 +0000)]
trans.c (assoc_to_constructor): Minor tweaks.
* gcc-interface/trans.c (assoc_to_constructor): Minor tweaks.
* gcc-interface/utils2.c (build_simple_component_ref): Fix formatting
issues. Use COMPLETE_TYPE_P in assertion. Also set TREE_READONLY if
the type of the record is TYPE_READONLY.
From-SVN: r179184
Eric Botcazou [Mon, 26 Sep 2011 08:37:32 +0000 (08:37 +0000)]
sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN OUT formal parameter which is of an...
* sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN
OUT formal parameter which is of an null-exclusion access subtype.
Co-Authored-By: Robert Dewar <dewar@adacore.com>
From-SVN: r179183
Eric Botcazou [Mon, 26 Sep 2011 08:26:37 +0000 (08:26 +0000)]
ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
* gcc-interface/ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Set the flag.
(gnat_to_gnu_param): Likewise.
* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Invoke
maybe_unconstrained_array instead of doing the work manually.
(maybe_unconstrained_array): Propagate the TREE_THIS_NOTRAP flag.
* gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: If operand
is a DECL with the flag, set TREE_THIS_NOTRAP on the reference.
(gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag.
(gnat_stabilize_reference): Likewise.
From-SVN: r179182
Georg-Johann Lay [Mon, 26 Sep 2011 08:14:25 +0000 (08:14 +0000)]
avr-protos.h (output_reload_inhi): Change prototype.
* config/avr/avr-protos.h (output_reload_inhi): Change prototype.
* config/avr/avr.md (adjust_len): Add "reload_in16" alternative.
(*reload_inhi): Use it. Adapt call to output_reload_inhi to new
prototype.
(*movhi): Split constraint alternative "r,rL" into "r,r" and "r,L".
* config/avr/avr.c: Rename output_reload_insisf_1 to
output_reload_in_const.
(avr_popcount_each_byte): Handle SFmode, too.
(output_reload_in_const): Change so it can handle HI loads, too.
Use avr_popcount_each_byte to work out if scratch register must be
created on the fly.
(output_reload_inhi): Rewrite using output_reload_in_const and...
(output_movhi): ...use it to print constants' loads.
(adjust_insn_length): New case ADJUST_LEN_RELOAD_IN16. Cleanup code.
From-SVN: r179181
Eric Botcazou [Mon, 26 Sep 2011 07:52:58 +0000 (07:52 +0000)]
ada-tree.h (TYPE_NULL_BOUNDS): New macro.
* gcc-interface/ada-tree.h (TYPE_NULL_BOUNDS): New macro.
(SET_TYPE_NULL_BOUNDS): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set again
TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
* gcc-interface/trans.c (Identifier_to_gnu): Return initializers of fat
pointer types.
* gcc-interface/utils.c (create_var_decl_1): If the object is external,
check that the initializer is a valid constant expression for use in
initializing a static variable. Add missing guard.
(update_pointer_to): Adjust TYPE_NULL_BOUNDS if set.
(convert_to_fat_pointer): In the null fat pointer case, build a valid
pointer for the bounds.
* gcc-interface/utils2.c (compare_fat_pointers): New function.
(build_binary_op) <EQ_EXPR>: Call it to compare fat pointers.
From-SVN: r179180
Jason Merrill [Mon, 26 Sep 2011 03:56:10 +0000 (23:56 -0400)]
parser.c (inject_this_parameter): Split out from cp_parser_late_return_type_opt.
* parser.c (inject_this_parameter): Split out from
cp_parser_late_return_type_opt.
(cp_parser_class_specifier_1): Use it for NSDMIs.
* tree.c (bot_replace): Replace NSDMI 'this' with real 'this'.
From-SVN: r179179
GCC Administrator [Mon, 26 Sep 2011 00:19:12 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r179178
David S. Miller [Sun, 25 Sep 2011 21:28:51 +0000 (21:28 +0000)]
Add support for floating-point fused multiply-add on Sparc.
* configure.ac: Add feature check to make sure the assembler
supports the FMAF, HPC, and VIS 3.0 instructions found on
Niagara-3 and later cpus.
* configure: Rebuild.
* config.in: Likewise.
* config/sparc/sparc.opt: New option '-mfmaf'.
* config/sparc/sparc.md: Add float fused multiply-add patterns.
* config/sparc/sparc.h (AS_NIAGARA3_FLAG): New macro.
(ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Use it, as needed.
* config/sparc/sol2.h (ASM_CPU32_DEFAULT_SPEC,
ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Likewise.
* config/sparc/sparc.c (sparc_option_override): Turn MASK_FMAF on
by default for Niagara-3 and later. Turn it off if TARGET_FPU is
disabled.
(sparc_rtx_costs): Handle 'FMA'.
* doc/invoke.texi: Document -mfmaf.
From-SVN: r179174
David S. Miller [Sun, 25 Sep 2011 21:03:53 +0000 (21:03 +0000)]
Generate 'fone' and 'fones' sparc instructions when possible.
* config/sparc/constraints.md (C, P, Z): New constraints for
const_doube, const_int, and const_vector "all ones" values.
Make unused constraint letters comment match reality.
* config/sparc/predicates.md (const_all_ones_operand,
register_or_zero_or_all_ones_operand): New predicates.
* config/sparc/sparc.c (sparc_expand_move): Allow all ones
as well as zero constants when VIS.
(sparc_legitimate_constant_p): Likewise.
* config/sparc/sparc.md (movsi_insn): Add fones alternative.
(movsf_insn): Likewise
(movdi_insn_sp64): Add fone alternative.
(movdf_insn_sp32_v9): Likewise.
(movdf_insn_sp64): Likewise.
From-SVN: r179173
Paolo Carlini [Sun, 25 Sep 2011 20:58:46 +0000 (20:58 +0000)]
revert: testsuite_error.h: Add empty default constructor to __gnu_test::test_category and...
2011-09-25 Paolo Carlini <paolo.carlini@oracle.com>
Revert (no longer necessary post r179130):
2010-04-27 Fabien ChĂȘne <fabien.chene@gmail.com>
* testsuite/util/testsuite_error.h: Add empty default constructor
to __gnu_test::test_category and
__gnu_test::test_derived_category.
* src/future.cc: Add empty default constructor to
future_error_category.
* src/system_error.cc: Add default ctor to generic_error_category
and system_error_category.
From-SVN: r179172
Eric Botcazou [Sun, 25 Sep 2011 20:40:10 +0000 (20:40 +0000)]
ada-tree.h (TREE_THIS_NOTRAP): Redefine.
* gcc-interface/ada-tree.h (TREE_THIS_NOTRAP): Redefine.
* gcc-interface/trans.c (Identifier_to_gnu): Factor out common code in
the by-ref case. Do not set TREE_READONLY on a renamed object. Set
TREE_THIS_NOTRAP on UNCONSTRAINED_ARRAY_REF nodes.
(Attribute_to_gnu) <Attr_Length>: Expand the use of the parameter cache
to the indirect case.
* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Preserve
the TREE_THIS_NOTRAP flag.
From-SVN: r179171
Eric Botcazou [Sun, 25 Sep 2011 20:27:37 +0000 (20:27 +0000)]
trans.c (Loop_Statement_to_gnu): In the case of an iteration scheme...
* gcc-interface/trans.c (Loop_Statement_to_gnu): In the case of an
iteration scheme, always generate the do-while form if optimization
is enabled. Use more straightforward test at the end.
From-SVN: r179169
Eric Botcazou [Sun, 25 Sep 2011 20:15:10 +0000 (20:15 +0000)]
decl.c (gnat_to_gnu_entity): Use XNEW instead of xmalloc.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Subtype>: Use
XNEW instead of xmalloc. Do not build useless pointer type.
<E_Anonymous_Access_Subprogram_Type>: Use XNEW instead of xmalloc.
* gcc-interface/trans.c (gnat_to_gnu) <N_Raise_Constraint_Error>: Tidy.
* gcc-interface/utils2.c (build_unary_op): Remove local variable.
From-SVN: r179168
Eric Botcazou [Sun, 25 Sep 2011 15:42:00 +0000 (15:42 +0000)]
decl.c (gnat_to_gnu_entity): Do not promote the alignment if this doesn't prevent BLKmode access to the object.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not promote
the alignment if this doesn't prevent BLKmode access to the object.
From-SVN: r179167
Jakub Jelinek [Sun, 25 Sep 2011 15:03:56 +0000 (17:03 +0200)]
tree-ssa-structalias.c (intra_create_variable_infos): Treat TYPE_RESTRICT REFERENCE_TYPE parameters like restricted DECL_BY_REFERENCE...
* tree-ssa-structalias.c (intra_create_variable_infos): Treat
TYPE_RESTRICT REFERENCE_TYPE parameters like restricted
DECL_BY_REFERENCE parameters.
* g++.dg/tree-ssa/restrict2.C: New test.
From-SVN: r179166
Eric Botcazou [Sun, 25 Sep 2011 14:55:12 +0000 (14:55 +0000)]
tree-eh.c (cleanup_empty_eh): Allow a call to __builtin_stack_restore if there is no outgoing edge.
* tree-eh.c (cleanup_empty_eh): Allow a call to __builtin_stack_restore
if there is no outgoing edge.
* tree-scalar-evolution.c (simple_iv): Accept all kinds of pointer and
integral types.
From-SVN: r179165
Ira Rosen [Sun, 25 Sep 2011 12:33:03 +0000 (12:33 +0000)]
tree-vect-slp.c (vect_slp_analyze_bb_1): Split out core part of vect_analyze_bb here.
* tree-vect-slp.c (vect_slp_analyze_bb_1): Split out core part
of vect_analyze_bb here.
(vect_analyze_bb): Loop over vector sizes calling
vect_analyze_bb_1.
From-SVN: r179164
Paolo Carlini [Sun, 25 Sep 2011 10:43:00 +0000 (10:43 +0000)]
re PR c++/50280 (Incorrect type deduced for T& when passed a const bitfield)
2011-09-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50280
* g++.dg/template/bitfield1.C: New.
From-SVN: r179163
Ira Rosen [Sun, 25 Sep 2011 09:21:42 +0000 (09:21 +0000)]
tree-data-ref.c (dr_analyze_innermost): Add new argument.
* tree-data-ref.c (dr_analyze_innermost): Add new argument.
Allow not simple iv if analyzing basic block.
(create_data_ref): Update call to dr_analyze_innermost.
(stmt_with_adjacent_zero_store_dr_p, ref_base_address):
Likewise.
* tree-loop-distribution.c (generate_memset_zero): Likewise.
* tree-predcom.c (find_looparound_phi): Likewise.
* tree-data-ref.h (dr_analyze_innermost): Add new argument.
From-SVN: r179161
David S. Miller [Sun, 25 Sep 2011 02:29:23 +0000 (02:29 +0000)]
Teach sparc backend about %gsr register and add intrinsics to access it.
* config/sparc/sparc.h (FIRST_PSEUDO_REGISTER): Bump to 103.
(SPARC_GSR_REG): Define.
(FIXED_REGISTERS): Mark GSR as fixed.
(CALL_USED_REGISTERS): Mark GSR as call used.
(HARD_REGNO_NREGS): GSR is always 1 register.
(REG_CLASS_CONTENTS): Add GSR to ALL_REGS.
(REG_ALLOC_ORDER, REG_LEAF_ALLOC_ORDER): Add GSR to the end.
(REGISTER_NAMES): Add "%gsr".
* config/sparc/sparc.md (UNSPEC_ALIGNADDR, UNSPEC_ALIGNADDRL):
Delete.
(UNSPEC_WRGSR): New unspec.
(GSR_REG): New constant.
(type): Add new insn type 'gsr'.
(fpack16_vis, fpackfix_vis, fpack32_vis,
faligndata<V64I:MODE>_vis)): Add use of GSR_REG.
(wrgsr_vis, *wrgsr_sp64, wrgsr_v8plus, rdgsr_vis, *rdgsr_sp64,
rdgsr_v8plus): New expanders and insns.
(alignaddr<P:mode>_vis, alignaddrl<P:mode>_vis): Reimplement
using patterns which show that this is a plus in addition to a
modification of GSR_REG, instead of an unspec.
* config/sparc/ultra1_2.md: Handle 'gsr'.
* config/sparc/ultra3.md: Likewise.
* config/sparc/niagara.md: Likewise.
* config/sparc/niagara2.md: Likewise.
* config/sparc/sparc.c (leaf_reg_remap, sparc_leaf_regs): Fill out
end of table.
(sparc_option_override): Make -mvis imply -mv8plus.
(hard_32bit_mode_classes, hard_64bit_mode_classes): Add entries
for %gsr.
(sparc_vis_init_builtins): Build __builtin_vis_write_gsr and
__builtin_vis_read_gsr.
(sparc_expand_buildin): Handle builtins that take one argument and
return void.
(sparc_fold_builtin): Never fold writes to %gsr.
* config/sparc/visintrin.h (__vis_write_gsr, __vis_read_gsr): New.
* doc/extend.texi: Document new VIS intrinsics.
From-SVN: r179159
Jason Merrill [Sun, 25 Sep 2011 02:26:21 +0000 (22:26 -0400)]
except.c (expr_noexcept_p): Split out from finish_noexcept_expr.
* except.c (expr_noexcept_p): Split out from finish_noexcept_expr.
* cp-tree.h: Declare it.
* method.c (walk_field_subobs): Use it.
From-SVN: r179158
Jason Merrill [Sun, 25 Sep 2011 02:26:08 +0000 (22:26 -0400)]
init.c (perform_member_init): Instantiate NSDMI here.
* init.c (perform_member_init): Instantiate NSDMI here.
* pt.c (tsubst_decl) [FIELD_DECL]: Not here.
From-SVN: r179157
Jason Merrill [Sun, 25 Sep 2011 02:26:01 +0000 (22:26 -0400)]
Handle deferred parsing of NSDMIs.
* parser.h (cp_unparsed_functions_entry): Add nsdmis field.
* parser.c (unparsed_nsdmis, cp_parser_save_nsdmi): New.
(cp_parser_late_parse_one_default_arg): Split out from
cp_parser_late_parsing_default_args.
(cp_parser_late_parsing_nsdmi): New.
(push_unparsed_function_queues): Set it.
(cp_parser_parameter_declaration): Save the '=' token.
(cp_parser_template_parameter): Likewise.
(cp_parser_default_argument): Call cp_parser_initializer
rather than cp_parser_initializer_clause.
(cp_parser_class_specifier_1): Parse unparsed_nsdmis.
(cp_parser_member_declaration): Handle nsdmis.
* decl2.c (grokfield): Handle DEFAULT_ARG for a function.
From-SVN: r179156
Jason Merrill [Sun, 25 Sep 2011 02:25:52 +0000 (22:25 -0400)]
Implement C++11 non-static data member initializers.
* cp-tree.h (enum cpp_warn_str): Add CPP0X_NSDMI.
* error.c (maybe_warn_cpp0x): Handle it.
* call.c (convert_like_real) [ck_user]: Don't complain about
using an explicit constructor for direct-initialization.
* class.c (check_field_decl): Fix ancient typo.
(check_field_decls): NSDMIs make the default ctor non-trivial.
* decl.c (cp_finish_decl): Record NSDMI.
(grokdeclarator): Allow NSDMI.
* decl2.c (grokfield): Allow NSDMI. Correct LOOKUP flags.
* init.c (perform_member_init): Use NSDMI.
* method.c (walk_field_subobs): Check for NSDMI.
* parser.c (cp_parser_member_declaration): Parse { } init.
* semantics.c (register_constexpr_fundef): Don't talk about
a return statement in a constexpr constructor.
(cxx_eval_call_expression): Check DECL_INITIAL instead of
DECL_SAVED_TREE.
From-SVN: r179155
GCC Administrator [Sun, 25 Sep 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r179154
John Salmon [Sat, 24 Sep 2011 22:34:50 +0000 (22:34 +0000)]
re PR libstdc++/50510 ([C++0x] transposed variable names in std::seed_seq::generate)
2011-09-24 John Salmon <john.salmon@deshaw.com>
PR libstdc++/50510
* include/bits/random.tcc (seed_seq::generate): Fix computation.
From-SVN: r179149
Iain Sandoe [Sat, 24 Sep 2011 20:25:42 +0000 (20:25 +0000)]
ada, remove flat_namespace library option from darwin port build/defaults :
* gcc-interface/Makefile.in (darwin): Do not issue the
'-flat_namespace' linker flag during Ada build.
* mlib-tgt-specific-darwin.adb: Remove '-flat_namespace' flag from the
default shared library options.
From-SVN: r179148
Basile Starynkevitch [Sat, 24 Sep 2011 19:56:10 +0000 (19:56 +0000)]
trivial libiberty/ChangeLog update
From-SVN: r179147
Jason Merrill [Sat, 24 Sep 2011 19:05:36 +0000 (15:05 -0400)]
correct ChangeLog
From-SVN: r179146
John Salmon [Sat, 24 Sep 2011 18:28:36 +0000 (18:28 +0000)]
re PR libstdc++/50509 ([C++0x] incorrect code in std::seed_seq::generate)
2011-09-24 John Salmon <john.salmon@deshaw.com>
PR libstdc++/50509
* include/bits/random.tcc (seed_seq::generate): Fix computation.
From-SVN: r179144
Paolo Carlini [Sat, 24 Sep 2011 09:55:01 +0000 (09:55 +0000)]
re PR c++/44267 (SFINAE does not handle down static_cast over virtual inheritance)
/cp
2011-09-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44267
* class.c (build_base_path): Add a tsubst_flags_t parameter.
(convert_to_base): Adjust call.
* typeck.c (build_class_member_access_expr,
get_member_function_from_ptrfunc, build_static_cast_1): Likewise.
* init.c (dfs_initialize_vtbl_ptrs, emit_mem_initializers): Likewise.
* method.c (do_build_copy_constructor, do_build_copy_assign): Likewise.
* rtti.c (build_dynamic_cast_1): Likewise.
* typeck2.c (build_scoped_ref, build_m_component_ref): Likewise.
* call.c (build_over_call, build_special_member_call): Likewise.
* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
build_up_reference): Likewise.
* cp-tree.h (build_base_path): Adjust declaration.
/testsuite
2011-09-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44267
* g++.dg/template/sfinae28.C: New.
From-SVN: r179141
GCC Administrator [Sat, 24 Sep 2011 00:19:10 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r179138
Ian Lance Taylor [Fri, 23 Sep 2011 23:44:14 +0000 (23:44 +0000)]
go-test.exp (errchk): Handle more cases of getting correct Tcl backslash quoting in regular...
* go.test/go-test.exp (errchk): Handle more cases of getting
correct Tcl backslash quoting in regular expressions in test file.
Also fix some tests to match gccgo error messages.
From-SVN: r179134
Ian Lance Taylor [Fri, 23 Sep 2011 22:23:19 +0000 (22:23 +0000)]
Better parsing of erroneous expression on left of :=.
Better parsing of erroneous non-type in type switch.
From-SVN: r179133
Cary Coutant [Fri, 23 Sep 2011 21:39:10 +0000 (21:39 +0000)]
re PR c++/40831 (g++ generated symbols for cloned function that be demangled.)
include/ChangeLog:
PR 40831
* demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_CLONE.
libiberty/ChangeLog:
PR 40831
* cp-demangle.c (d_make_comp): Add new component type.
(cplus_demangle_mangled_name): Check for clone suffixes.
(d_parmlist): Don't error out if we see '.'.
(d_clone_suffix): New function.
(d_print_comp): Print info for clone suffixes.
* testsuite/demangle-expected: Add new testcases.
From-SVN: r179132
Jason Merrill [Fri, 23 Sep 2011 21:38:26 +0000 (17:38 -0400)]
correct ChangeLog
From-SVN: r179131
Jason Merrill [Fri, 23 Sep 2011 21:30:48 +0000 (17:30 -0400)]
Core 234 - allow const objects with no initializer or user-provided default...
Core 234 - allow const objects with no initializer or
user-provided default constructor if the defaulted constructor
initializes all the subobjects.
PR c++/20039
PR c++/42844
* class.c (default_init_uninitialized_part): New.
* cp-tree.h: Declare it.
* decl.c (check_for_uninitialized_const_var): Use it.
* init.c (perform_member_init): Likewise.
(build_new_1): Likewise.
* method.c (walk_field_subobs): Likewise.
From-SVN: r179130
Ian Lance Taylor [Fri, 23 Sep 2011 19:19:52 +0000 (19:19 +0000)]
md5.c (md5_process_bytes): Correct handling of unaligned buffer.
* md5.c (md5_process_bytes): Correct handling of unaligned
buffer.
From-SVN: r179128
Georg-Johann Lay [Fri, 23 Sep 2011 17:44:57 +0000 (17:44 +0000)]
* config/avr/avr.c: Fix some typos in comments.
From-SVN: r179127
Jan Hubicka [Fri, 23 Sep 2011 17:30:34 +0000 (19:30 +0200)]
inline-1.c: new testcase.
* gcc.dg/ipa/inline-1.c: new testcase.
* gcc.dg/ipa/inline-2.c: new testcase.
* gcc.dg/ipa/inline-3.c: new testcase.
* gcc.dg/ipa/inline-4.c: new testcase.
* ipa-inline-transform.c (inline_call): Add comment.
* ipa-inline.h (inline_param_summary): New structure and vector.
(struct inline_edge_summary): Add param field.
* ipa-inline-analysis.c (CHANGED): New constant.
(add_clause): Handle CHANGED and NOT_CONSTANT.
(predicate_probability): New function.
(dump_condition): Dump CHANGED predicate.
(evaluate_conditions_for_known_args): Handle ERROR_MARK as marker
of unknown function wide invariant.
(evaluate_conditions_for_edge): Handle change probabilities.
(inline_edge_duplication_hook): Copy param summaries.
(inline_edge_removal_hook): Free param summaries.
(dump_inline_edge_summary): Fix dumping of indirect edges and callee sizes;
dump param summaries.
(will_be_nonconstant_predicate): Use CHANGED predicate.
(record_modified_bb_info): New structure.
(record_modified): New function.
(param_change_prob): New function.
(estimate_function_body_sizes): Compute param summaries.
(estimate_edge_size_and_time): Add probability argument.
(estimate_node_size_and_time): Add inline_param_summary argument;
handle predicate probabilities.
(remap_predicate): Fix formating.
(remap_edge_change_prob): New function.
(remap_edge_summaries): Rename from ...; use remap_edge_change_prob.
(remap_edge_predicates): ... this one.
(inline_merge_summary): Remap edge summaries; handle predicate probabilities;
remove param summaries after we are done.
(do_estimate_edge_time): Update.
(do_estimate_edge_growth): Update.
(read_inline_edge_summary): Read param info.
(inline_read_summary): Fix formating.
(write_inline_edge_summary): Write param summaries.
From-SVN: r179126
Jakub Jelinek [Fri, 23 Sep 2011 17:10:39 +0000 (19:10 +0200)]
i386.c (ix86_print_operand): Handle %~.
* config/i386/i386.c (ix86_print_operand): Handle %~.
(ix86_print_operand_punct_valid_p): Return true also for '~'.
* config/i386/sse.md (i128): New mode_attr.
(vec_extract_hi_<mode>, vec_extract_hi_<mode>,
avx_vbroadcastf128_<mode>, *avx_vperm2f128<mode>_full,
*avx_vperm2f128<mode>_nozero, vec_set_lo_<mode>,
vec_set_hi_<mode>, *vec_concat<mode>_avx): Use <i128> in the
patterns, use "<sseinsnmode>" for "mode" attribute.
(vec_extract_hi_v16hi, vec_extract_hi_v32qi, vec_set_lo_v16hi,
vec_set_hi_v16hi, vec_set_lo_v32qi, vec_set_hi_v32qi): Use
%~128 in the patterns, use "OI" for "mode" attribute.
From-SVN: r179125
Georg-Johann Lay [Fri, 23 Sep 2011 17:06:44 +0000 (17:06 +0000)]
re PR target/50447 ([avr] Better support of AND, OR, XOR and PLUS with constant integers for 16- and 32-bit values)
* config/avr/avr.md (adjust_len): Add alternatives "tsthi",
"tstsi", "compare".
(*cmpqi_sign_extend): Use s8_operand.
(*cmphi, *cmpsi): Rewrite using avr_out_compare.
* config/avr/avr-protos.h (compare_diff_p, compare_eq_p): Remove
prototypes.
(out_tsthi, out_tstsi): Remove prototypes.
(avr_out_tsthi, avr_out_tstsi): New prototypes.
* config/avr/avr.c (out_tsthi, out_tstsi): Remove functions.
(avr_asm_len): Negative length now sets *plen to -length.
(compare_sign_p): Return bool instead of int.
(compare_diff_p, compare_eq_p): Ditto and make static.
(avr_out_tsthi): New function.
(avr_out_tstsi): New function.
(avr_out_compare): New function.
(adjust_insn_length): Handle ADJUST_LEN_TSTHI, ADJUST_LEN_TSTSI,
ADJUST_LEN_COMPARE.
PR target/50447
From-SVN: r179124
Georg-Johann Lay [Fri, 23 Sep 2011 17:02:10 +0000 (17:02 +0000)]
re PR target/50447 ([avr] Better support of AND, OR, XOR and PLUS with constant integers for 16- and 32-bit values)
PR target/50447
* config/avr/avr.md: (adjust_len): Add alternative "out_plus".
(addsi3): Rewrite using QI scratch register. Adjust text
peepholes using plus:SI.
(*addsi3_zero_extend.hi): New insn.
(*subsi3_zero_extend.hi): New insn.
(*subhi3_zero_extend1): Set attribute "cc" to "set_czn".
(*subsi3_zero_extend): Ditto.
(subsi3): Change predicate #2 to register_operand.
* config/avr/avr-protos.h (avr_out_plus): New prototype.
(avr_out_plus_1): New static function.
(avr_out_plus): New function.
(adjust_insn_length): Handle ADJUST_LEN_OUT_PLUS.
From-SVN: r179123
Paolo Carlini [Fri, 23 Sep 2011 16:19:52 +0000 (16:19 +0000)]
re PR c++/50258 ([C++0x] -std=gnu++0x should allow in-class initialization of static const floating types without constexpr)
/cp
2011-09-23 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50258
* decl.c (check_static_variable_definition): Allow in-class
initialization of static data member of non-integral type in
permissive mode.
/testsuite
2011-09-23 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50258
* g++.dg/cpp0x/constexpr-static8.C: New.
From-SVN: r179121
Ian Lance Taylor [Fri, 23 Sep 2011 15:29:17 +0000 (15:29 +0000)]
Include <termios.h> in mksysinfo.sh.
From Rainer Orth.
From-SVN: r179120
Jakub Jelinek [Fri, 23 Sep 2011 14:35:05 +0000 (16:35 +0200)]
i386.c (ix86_prepare_sse_fp_compare_args): For GE/GT/UNLE/UNLT swap arguments and condition even for TARGET_AVX.
* config/i386/i386.c (ix86_prepare_sse_fp_compare_args): For
GE/GT/UNLE/UNLT swap arguments and condition even for TARGET_AVX.
* gcc.target/i386/avxfp-1.c: New test.
* gcc.target/i386/avxfp-2.c: New test.
From-SVN: r179119
Ian Lance Taylor [Fri, 23 Sep 2011 14:28:13 +0000 (14:28 +0000)]
godump.c (go_define): Treat a single character in single quotes, or a string, as an operand.
* godump.c (go_define): Treat a single character in single quotes,
or a string, as an operand.
From-SVN: r179118
Martin Jambor [Fri, 23 Sep 2011 13:22:43 +0000 (15:22 +0200)]
ipa-prop.h (jump_func_type): Updated comments.
2011-09-23 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (jump_func_type): Updated comments.
(ipa_known_type_data): New type.
(ipa_jump_func): Use it to describe known type jump functions.
* ipa-prop.c (ipa_print_node_jump_functions_for_edge): Updated to
reflect the new known type jump function contents.
(compute_known_type_jump_func): Likewise.
(combine_known_type_and_ancestor_jfs): Likewise.
(try_make_edge_direct_virtual_call): Likewise.
(ipa_write_jump_function): Likewise.
(ipa_read_jump_function): Likewise.
* ipa-cp.c (ipa_value_from_known_type_jfunc): New function.
(ipa_value_from_jfunc): Use ipa_value_from_known_type_jfunc.
(propagate_accross_jump_function): Likewise.
From-SVN: r179117
Georg-Johann Lay [Fri, 23 Sep 2011 10:14:23 +0000 (10:14 +0000)]
re PR target/50446 ([avr] Implement rotate patterns with offset 1)
PR target/50446
* config/avr/avr.md (rotlqi3): Support all offsets 0..7.
(rotlqi3_4): Turn insn into expander.
(*rotlqi3): New insn.
(rotlhi3, rotlsi3): Support rotate left/right by 1.
(*rotlhi2.1, *rotlhi2.15): New insns.
(*rotlsi2.1, *rotlsi2.31): New insns.
* config/avr/constraints.md (C03, C05, C06, C07): New constraints.
From-SVN: r179116
Bin Cheng [Fri, 23 Sep 2011 09:42:13 +0000 (09:42 +0000)]
bpabi.h (BE8_LINK_SPEC): Add cortex-m arch and processors.
2011-09-23 Bin Cheng <bin.cheng@arm.com>
* config/arm/bpabi.h (BE8_LINK_SPEC): Add cortex-m arch
and processors.
From-SVN: r179115
Terry Guo [Fri, 23 Sep 2011 08:41:24 +0000 (08:41 +0000)]
* gcc.c-torture/execute/941014-1.x: Deleted.
From-SVN: r179112
Paolo Carlini [Fri, 23 Sep 2011 00:54:32 +0000 (00:54 +0000)]
re PR c++/50491 ([C++0x] [4.6/4.7 Regression] "unexpected ast of kind using_decl" on call to using'ed grandparent member function)
/cp
2011-09-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50491
* semantics.c (potential_constant_expression_1): Handle USING_DECL.
/testsuite
2011-09-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50491
* g++.dg/cpp0x/pr50491.C: New.
From-SVN: r179109
GCC Administrator [Fri, 23 Sep 2011 00:18:19 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r179108
David S. Miller [Thu, 22 Sep 2011 20:15:18 +0000 (20:15 +0000)]
sparc.md (G[0-7]_REG, [...]): New constants.
* config/sparc/sparc.md (G[0-7]_REG, O[0-7]_REG, L[0-7]_REG,
I[0-7]_REG, F[0-62]_REG, FCC[0-3]_REG, CC_REG, SFP_REG): New
constants. Use them everywhere.
From-SVN: r179103
Maxim Kuvyrkov [Thu, 22 Sep 2011 20:12:49 +0000 (20:12 +0000)]
* ipa-prop.c (ipa_print_node_jump_functions): Fix typos.
From-SVN: r179102
Andreas Krebbel [Thu, 22 Sep 2011 18:54:34 +0000 (18:54 +0000)]
reload.c (find_reloads): Set operand_mode to Pmode for address operands consisting of just a CONST_INT.
2011-09-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* reload.c (find_reloads): Set operand_mode to Pmode for address
operands consisting of just a CONST_INT.
From-SVN: r179099
Steven G. Kargl [Thu, 22 Sep 2011 18:28:14 +0000 (18:28 +0000)]
re PR testsuite/50487 (FAIL: gfortran.dg/bessel_6.f90)
2011-09-22 Steven G. Kargl <kargl@gcc.gnu.org>
PR testsuite/50487
* gfortran.dg/bessel_6.f90: Fix tolerance test.
From-SVN: r179097
Paolo Carlini [Thu, 22 Sep 2011 18:20:53 +0000 (18:20 +0000)]
re PR c++/50371 ([C++0x] std::nullptr_t rejected as non-type template-parameter)
/cp
2011-09-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50371
* pt.c (invalid_nontype_parm_type_p): Handle NULLPTR_TYPE.
/testsuite
2011-09-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50371
* g++.dg/cpp0x/nullptr24.C: New.
From-SVN: r179096
Uros Bizjak [Thu, 22 Sep 2011 17:35:00 +0000 (19:35 +0200)]
re PR target/50482 (internal compiler error at recog.c:2137)
PR target/50482
* config/i386/i386.c (ix86_expand_sse_movcc): When generating
blendv, force op_true to register if it doesn't satisfy
nonimmediate_operand predicate.
testsuite/ChangeLog:
PR target/50482
* gcc.target/i386/pr50482.c: New test.
From-SVN: r179094
Joseph Myers [Thu, 22 Sep 2011 14:59:07 +0000 (15:59 +0100)]
pad-2.c, [...]: Skip if multilib options contain different -march= from dg-options.
* gcc.target/i386/pad-2.c, gcc.target/i386/pad-3.c,
gcc.target/i386/pad-4.c, gcc.target/i386/pad-5a.c,
gcc.target/i386/pad-5b.c, gcc.target/i386/pad-6a.c,
gcc.target/i386/pad-6b.c, gcc.target/i386/pad-7.c,
gcc.target/i386/pad-8.c, gcc.target/i386/pad-9.c,
gcc.target/i386/pad-10.cm gcc.target/i386/vect-double-1.c: Skip if
multilib options contain different -march= from dg-options.
From-SVN: r179091
Jonathan Wakely [Thu, 22 Sep 2011 14:16:27 +0000 (14:16 +0000)]
re PR c++/50344 (friend declaration confused by const qualifier)
/cp
2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50344
* friend.c (make_friend_class): cv-qualification is ok in a
friend declaration.
/testsuite
2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50344
* g++.dg/template/friend52.C: New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r179088
Tristan Gingold [Thu, 22 Sep 2011 14:00:17 +0000 (14:00 +0000)]
mkfixinc.sh (target): Remove alpha-vms from particular targets.
2011-09-22 Tristan Gingold <gingold@adacore.com>
* mkfixinc.sh (target): Remove alpha-vms from particular targets.
From-SVN: r179087
Richard Sandiford [Thu, 22 Sep 2011 12:26:41 +0000 (12:26 +0000)]
re PR middle-end/50113 (soft-float MIPS64 compiler is miscompiling ggc-page.c)
gcc/
PR middle-end/50113
PR middle-end/50061
* calls.c (emit_library_call_value_1): Use BLOCK_REG_PADDING to
get the locate.where_pad value for register-only arguments.
* config/arm/arm.c (arm_pad_arg_upward): Remove HFmode handling.
(arm_pad_reg_upward): Handle null types.
From-SVN: r179085
Jan Hubicka [Thu, 22 Sep 2011 12:20:22 +0000 (14:20 +0200)]
* ipa-inline-analysis.c: Fix overly long lines.
From-SVN: r179084
Jan Hubicka [Thu, 22 Sep 2011 11:57:43 +0000 (13:57 +0200)]
ipa-inline-transform.c (inline_call): Always update jump functions after inlining.
* ipa-inline-transform.c (inline_call): Always update jump functions
after inlining.
* ipa-inline.c (ipa_inline): Likewise; do not call
ipa_create_all_structures_for_iinln.
(ipa_inline): Always free jump functions.
* ipa-inline-analysis.c (evaluate_conditions_for_edge): Remove
hack.
(remap_edge_predicates): Fix pasto.
(inline_merge_summary): Remove nlined edge predicate; remove hack.
(inline_analyze_function): Always initialize jump functions.
(inline_generate_summary): Likewise.
(inline_write_summary): Always write jump functions when ipa-cp
is not doing that.
(inline_read_summary): Always read jump functions when ipa-cp
is not doing that.
* ipa-prop.c (iinlining_processed_edges): Remove.
(update_indirect_edges_after_inlining): Do not use
iinlining_processed_edges; instead set param_index to -1.
(propagate_info_to_inlined_callees): Only try to indirect inlining
when asked to do so; update jump functions of indirect calls, too;
remove jump functions of the inlined edge.
(ipa_edge_duplication_hook): Do not copy iinlining_processed_edges.
(ipa_create_all_structures_for_iinln): Remove.
(ipa_free_all_structures_after_iinln): Do not free
iinlining_processed_edges.
* ipa-prop.h (ipa_create_all_structures_for_iinln): Remove.
From-SVN: r179083
Richard Sandiford [Thu, 22 Sep 2011 10:33:24 +0000 (10:33 +0000)]
predicates.md (expandable_comparison_operator): New predicate, extracted from...
gcc/
* config/arm/predicates.md (expandable_comparison_operator): New
predicate, extracted from...
(arm_comparison_operator): ...here.
* config/arm/arm.md (cbranchsi4, cbranchsf4, cbranchdf4, cbranchdi4)
(cstoresi4, cstoresf4, cstoredf4, cstoredi4, movsicc, movsfcc)
(movdfcc): Use expandable_comparison_operator.
gcc/testsuite/
* gcc.target/arm/cmp-1.c: New test.
* gcc.target/arm/cmp-2.c: Likewise.
From-SVN: r179082
Georg-Johann Lay [Thu, 22 Sep 2011 09:55:13 +0000 (09:55 +0000)]
re PR target/50447 ([avr] Better support of AND, OR, XOR and PLUS with constant integers for 16- and 32-bit values)
PR target/50447
PR target/50465
* config/avr/avr-protos.h (avr_out_bitop): New prototype.
(avr_popcount_each_byte): New prototype.
* config/avr/avr.c (avr_popcount): New static function.
(avr_popcount_each_byte): New function.
(avr_out_bitop): New function.
(adjust_insn_length): ADJUST_LEN_OUT_BITOP dispatches to
avr_out_bitop. Cleanup code.
* config/avr/constraints.md (Ca2, Co2, Cx2): New constraints.
(Ca4, Co4, Cx4): New constraints.
* config/avr/avr.md (adjust_len): Add "out_bitop" insn attribute
alternative.
(andhi3, iorhi3, xorhi3): Rewrite insns using avr_out_bitop.
(andsi3, iorsi3, xorsi3): Ditto.
(*iorhi3_clobber, *iorsi3_clobber): Remove insns.
From-SVN: r179081
Janus Weil [Thu, 22 Sep 2011 09:32:11 +0000 (11:32 +0200)]
re PR fortran/41733 (Proc-pointer conformance checks: Elemental-proc-ptr => non-elemental-proc)
2011-09-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/41733
* expr.c (gfc_check_pointer_assign): Check for nonintrinsic elemental
procedures.
* interface.c (gfc_compare_interfaces): Rename 'intent_flag'. Check
for PURE and ELEMENTAL attributes.
(compare_actual_formal): Remove pureness check here.
2011-09-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/41733
* gfortran.dg/impure_actual_1.f90: Modified error message.
* gfortran.dg/proc_ptr_32.f90: New.
* gfortran.dg/proc_ptr_33.f90: New.
From-SVN: r179080
Ira Rosen [Thu, 22 Sep 2011 07:21:07 +0000 (07:21 +0000)]
re PR middle-end/50451 (internal compiler error at tree-vect-loop.c:3557)
PR tree-optimization/50451
* tree-vect-slp.c (vect_get_constant_vectors): Don't fail for
constant operands in reduction.
(vect_get_slp_defs): Don't create vector operand for NULL scalar
operand.
From-SVN: r179079
David S. Miller [Thu, 22 Sep 2011 07:09:38 +0000 (07:09 +0000)]
sparc.c (sparc_vis_init_builtins): Do not mark fpack16, fpack32, fpackfix as const.
* config/sparc/sparc.c (sparc_vis_init_builtins): Do not mark
fpack16, fpack32, fpackfix as const.
From-SVN: r179078
Ian Lance Taylor [Thu, 22 Sep 2011 04:47:32 +0000 (04:47 +0000)]
Update Go library to release r60.1.
From-SVN: r179076
Ian Lance Taylor [Thu, 22 Sep 2011 04:02:11 +0000 (04:02 +0000)]
Add html/testdata files accidentally omitted.
From-SVN: r179075
Oleg Endo [Thu, 22 Sep 2011 00:41:38 +0000 (00:41 +0000)]
sh.c (andcosts): Renamed to and_xor_ior_costs.
* config/sh/sh.c (andcosts): Renamed to and_xor_ior_costs.
Added AND special case. Adapted comments.
(sh_rtx_costs): Added XOR and IOR case.
From-SVN: r179073
David S. Miller [Thu, 22 Sep 2011 00:22:41 +0000 (00:22 +0000)]
Add pixel compare VIS intrinsics.
* config/sparc/sparc.md (UNSPEC_FCMPLE, UNSPEC_FCMPNE, UNSPEC_FCMPGT,
UNSPEC_FCMPEQ): New unspec codes.
(fcmple16_vis, fcmple32_vis, fcmpne16_vis, fcmpne32_vis, fcmpgt16_vis,
fcmpgt32_vis, fcmpeq16_vis, fcmpeq32_vis): New patterns.
* config/sparc/sparc.c (sparc_vis_init_builtins): Create builtins for
new pixel compare VIS patterns.
* config/sparc/visintrin.h (__vis_fcmple16, __vis_fcmple32,
__vis_fcmpne16, __vis_fcmpne32, __vis_fcmpgt16, __vis_fcmpgt32,
__vis_fcmpeq16, __vis_fcmpeq32): New.
* doc/extend.texi: Document new pixel compare VIS intrinsics.
From-SVN: r179072
GCC Administrator [Thu, 22 Sep 2011 00:19:02 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r179071
Benjamin Kosnik [Wed, 21 Sep 2011 23:46:36 +0000 (23:46 +0000)]
Makefile.am (stamp-epub-docbook): Fix image directory location.
2011-09-21 Benjamin Kosnik <bkoz@redhat.com
* doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
* doc/Makefile.in: Regenerate.
From-SVN: r179066
Jan Hubicka [Wed, 21 Sep 2011 23:11:08 +0000 (01:11 +0200)]
ipa-inline-analsis.c (compute_inline_parameters): Set cfun and current_function_decl.
* ipa-inline-analsis.c (compute_inline_parameters): Set
cfun and current_function_decl.
From-SVN: r179065
Jan Hubicka [Wed, 21 Sep 2011 23:10:07 +0000 (01:10 +0200)]
ipa-inline.c (relative_time_benefit): Fix wrong bracketting.
* ipa-inline.c (relative_time_benefit): Fix wrong bracketting.
* ipa-inline.h (estimate_edge_time): Fix pasto.
* ipa-inline-analysis.c (do_estiamte_edge_time): Remove capping.
From-SVN: r179064
Ian Lance Taylor [Wed, 21 Sep 2011 23:05:39 +0000 (23:05 +0000)]
Update Go testsuite to release r60.
* go.test/go-test.exp (errchk): Add special case for bug332.
(go-gc-tests): Add special cases for bug347 and bug348. Recognize
some more test lines.
From-SVN: r179063
Ian Lance Taylor [Wed, 21 Sep 2011 23:02:31 +0000 (23:02 +0000)]
Increase default libgo test timeout.
From-SVN: r179062
Ian Lance Taylor [Wed, 21 Sep 2011 21:06:42 +0000 (21:06 +0000)]
Better handling of unexpected EOF in parser.
From-SVN: r179060
Uros Bizjak [Wed, 21 Sep 2011 21:02:48 +0000 (23:02 +0200)]
i386-3.C: Remove duplicated dg-options.
* g++.dg/other/i386-3.C: Remove duplicated dg-options.
* g++.dg/other/i386-4.C: Remove dg-requre-effective-target directive.
* g++.dg/other/i386-8.C: Ditto.
* g++.dg/other/pr34435.C: Ditto.
* g++.dg/other/pr39496.C: Ditto.
* g++.dg/other/mmintrin.C: Ditto.
From-SVN: r179059
Ian Lance Taylor [Wed, 21 Sep 2011 20:24:17 +0000 (20:24 +0000)]
Better error message for shift context types.
Fix shift of floating point constant to generate constant.
From-SVN: r179057
Jakub Jelinek [Wed, 21 Sep 2011 18:24:18 +0000 (20:24 +0200)]
i386.c (ix86_expand_sse_movcc): Use blendvps, blendvpd and pblendvb if possible.
* config/i386/i386.c (ix86_expand_sse_movcc): Use
blendvps, blendvpd and pblendvb if possible.
* gcc.dg/vect/vect-cond-7.c: New test.
* gcc.target/i386/sse4_1-cond-1.c: New test.
* gcc.target/i386/avx-cond-1.c: New test.
From-SVN: r179055
Ian Lance Taylor [Wed, 21 Sep 2011 17:37:50 +0000 (17:37 +0000)]
Support nil maps.
From-SVN: r179054
Uros Bizjak [Wed, 21 Sep 2011 17:37:00 +0000 (19:37 +0200)]
re PR target/50464 (Using -Ofast -march=bdver1 results in internal compiler error: in extract_insn, at recog.c:2109)
PR target/50464
* config/i386/sse.md (xop_pcmov_<mode><avxsizesuffix>): Change
operand 1 predicate to register_operand and operand 2 predicate
to nonimmediate_operand.
* config/i386/i386.c (ix86_expand_sse_movcc): When generating
xop_pcmov, force op_true to register. Also, force op_false to
register if it doesn't satisfy nonimmediate_operand predicate.
testsuite/ChangeLog:
PR target/50464
* g++.dg/other/pr50464.C: New test.
From-SVN: r179053
Kirill Yukhin [Wed, 21 Sep 2011 15:57:04 +0000 (15:57 +0000)]
Add MULX intrinsics.
gcc/
2011-09-21 Kirill Yukhin <kirill.yukhin@intel.com>
* config/i386/bmi2intrin.h (_mulx_u64): New.
(_mulx_u32): Ditto.
gcc/testsuite/
2011-09-21 Kirill Yukhin <kirill.yukhin@intel.com>
* gcc.target/i386/bmi2-mulx32-2.c: New test.
* gcc.target/i386/bmi2-mulx32-2a.c: Ditto.
* gcc.target/i386/bmi2-mulx64-2.c: Ditto.
* gcc.target/i386/bmi2-mulx64-2a.c: Ditto.
From-SVN: r179050
Joseph Myers [Wed, 21 Sep 2011 14:36:03 +0000 (15:36 +0100)]
Makefile.am (FLAGS_TO_PASS): Define.
* Makefile.am (FLAGS_TO_PASS): Define.
* Makefile.in: Regenerate.
From-SVN: r179048
Eric Botcazou [Wed, 21 Sep 2011 13:47:25 +0000 (13:47 +0000)]
* gnat.dg/opt19.adb: New test.
From-SVN: r179047
Jan Hubicka [Wed, 21 Sep 2011 13:10:31 +0000 (15:10 +0200)]
re PR tree-optimization/50433 (ACATS
c460010 fails to compile)
PR tree-optimization/50433
* ipa-inline-analysis.c (eliminated_by_inlining_prob): Use get_base_address.
From-SVN: r179046
Jakub Jelinek [Wed, 21 Sep 2011 11:39:23 +0000 (13:39 +0200)]
sse.md (<code><mode>3 smaxmin:VI124_128 expander): Use nonimmediate_operand instead of register_operand predicate for operands 1...
* config/i386/sse.md (<code><mode>3 smaxmin:VI124_128 expander): Use
nonimmediate_operand instead of register_operand predicate for operands
1 and 2, force them into registers if expanding them as comparison.
(<code><mode>3 umaxmin:VI124_128 expander): Similarly. For UMAX
V8HImode force into register just operand 1.
From-SVN: r179045
Paolo Carlini [Wed, 21 Sep 2011 11:23:11 +0000 (11:23 +0000)]
limits.cc: Replace everywhere __int128_t -> __int128, and __uint128_t -> unsigned __int128.
2011-09-21 Paolo Carlini <paolo.carlini@oracle.com>
* src/limits.cc: Replace everywhere __int128_t -> __int128, and
__uint128_t -> unsigned __int128.
* include/std/type_traits: Likewise.
* include/std/limits: Likewise.
* testsuite/18_support/numeric_limits/dr559.cc: Likewise.
* testsuite/18_support/numeric_limits/lowest.cc: Likewise.
* testsuite/18_support/numeric_limits/40856.cc: Likewise.
* testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
* testsuite/util/testsuite_common_types.h: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/is_floating_point/value.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/is_signed/value.cc: Likewise.
* testsuite/20_util/is_unsigned/value.cc: Likewise.
* testsuite/20_util/is_integral/value.cc: Likewise.
* config/abi/pre/gnu.ver: Likewise.
* acinclude.m4: Likewise.
* configure: Regenerate.
* config.h.in: Likewise.
From-SVN: r179044
Terry Guo [Wed, 21 Sep 2011 10:06:29 +0000 (10:06 +0000)]
neon-thumb2-move.c: Skip the warning message on arch conflict when...
* gcc.target/arm/neon-thumb2-move.c: Skip the warning message
on arch conflict when testing case on targets other than armv7-a.
From-SVN: r179043