1. 04 Oct, 2011 6 commits
  2. 03 Oct, 2011 19 commits
  3. 02 Oct, 2011 15 commits
    • re PR c++/35722 ([C++0x] Variadic templates expansion into non-variadic class template) · d6027563
      	PR c++/35722
      	Implement N2555 (expanding pack expansion to fixed parm list)
      	* pt.c (coerce_template_parms): Allow expanding a pack expansion
      	to a fixed-length argument list.
      	(unify_pack_expansion): Handle explicit args properly.
      	(unify) [TREE_VEC]: Handle pack expansions here.
      	[TYPE_ARGUMENT_PACK]: Not here.
      	(tsubst_pack_expansion): Don't try to do partial substitution.
      	(pack_deducible_p): New.
      	(fn_type_unification): Use it.
      	(find_parameter_packs_r): Take the TYPE_MAIN_VARIANT
      	of a type parameter.
      	(check_non_deducible_conversion): Split from type_unification_real.
      	(unify_one_argument): Split from type_unification_real...
      	(unify_pack_expansion): ...and here.  Drop call_args_p parm.
      	(type_unification_real, unify, more_specialized_fn): Adjust.
      
      From-SVN: r179436
      Jason Merrill committed
    • class.c (fixed_type_or_null): Handle NSDMI. · f10eaa2d
      	* class.c (fixed_type_or_null): Handle NSDMI.
      	* method.c (walk_field_subobs): Disable NSDMI noexcept checking
      	for now.
      
      From-SVN: r179435
      Jason Merrill committed
    • * invoke.texi (SPARC Options): Refer to GNU/Linux. · 3bf10857
      From-SVN: r179434
      Gerald Pfeifer committed
    • re PR target/50579 (gcc.target/mips/20020620-1.c FAILs on IRIX 6.5) · e4c07ade
      gcc/testsuite/
      	PR target/50579
      	* gcc.target/mips/mips.exp (mips_long32_abi_p, mips_long64_abi_p):
      	New procedures.
      	(mips-dg-options): Force an ABI option if the current ABI is
      	incompatible with the required -mlong setting.  Likewise force
      	a long setting if the current one is incompatible with the
      	chosen ABI.  Keep abi_test_option_p, abi and eabi_p updated
      	throughout procedure.
      	* gcc.target/mips/abi-o64-long64.c: Require -mno-abicalls
      	instead of addressing=absolute.
      
      From-SVN: r179433
      Richard Sandiford committed
    • mips.c (mips_frame_barrier): New function. · d9b59f56
      gcc/
      	* config/mips/mips.c (mips_frame_barrier): New function.
      	(mips_expand_prologue): Call it after allocating stack space.
      	(mips_deallocate_stack): New function.
      	(mips_expand_epilogue): Call mips_frame_barrier and
      	mips_deallocate_stack.
      
      gcc/testsuite/
      	* gcc.target/mips/stack-1.c: New test.
      
      From-SVN: r179432
      Richard Sandiford committed
    • re PR target/49696 (ICE on mips when compiling drizzle) · 31045a25
      gcc/
      	PR target/49696
      	* config/mips/sync.md (sync_<optab>_12): Allow zero operands.
      	(sync_old_<optab>_12, sync_new_<optab>_12, sync_nand_12): Likewise.
      	(sync_old_nand_12, sync_new_nand_12, test_and_set_12): Likewise.
      
      gcc/testsuite/
      	* gcc.dg/pr49696.c: New test.
      
      From-SVN: r179431
      Richard Sandiford committed
    • cgraphunit.c (ipa_passes): Remove unrechable nodes. · 467a8db0
      
      	* cgraphunit.c (ipa_passes): Remove unrechable nodes.
      	* lto-streamer-out.c (produce_symtab): Skip unused extern declarations.
      	* ipa.c (cgraph_remove_unreachable_nodes): Do not assume that external
      	functions are reachable when address is taken.
      	* ipa-inline-analysis.c (reset_inline_edge_summary): New
      
      	* gcc.dg/ipa/ctor-empty-1.c: Update dump file.
      
      From-SVN: r179429
      Jan Hubicka committed
    • * ipa-inline-analysis.c (inline_summary_alloc): Bounds check. · 78e5ce9f
      From-SVN: r179428
      Jan Hubicka committed
    • ipa-inline-analysis.c (reset_inline_edge_summary): New function. · 1c52c601
      	* ipa-inline-analysis.c (reset_inline_edge_summary): New function.
      	(reset_inline_summary): New function.
      	(compute_inline_parameters, inline_node_removal_hook,
      	inline_edge_removal_hook): Use it.
      	(inline_free_summary): Reset holders correctly.
      	(inline_generate_summary): Free summary before computing it.
      
      From-SVN: r179427
      Jan Hubicka committed
    • re PR preprocessor/36819 (memleak in split_quote_chain) · 61e0e2f8
      2011-10-02  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR preprocessor/36819
      	* incpath.c (merge_include_chains): Call free_path on
      	heads[QUOTE] and tails[QUOTE].
      
      From-SVN: r179426
      Paolo Carlini committed
    • Fix r179381: add missing period in testsuite/Changelog. · e8775f25
      From-SVN: r179425
      Revital Eres committed
    • re PR lto/47247 (Linker plugin specification makes it difficult to handle COMDATs) · ed0d2da0
      	PR lto/47247
      	* lto-plugin.c (get_symbols_v2): New variable.
      	(write_resolution): Use V2 API when available.
      	(onload): Handle LDPT_GET_SYMBOLS_V2.
      
      	* lto-symtab.c (lto_symtab_resolve_symbols): Do not resolve
      	when resolution is already availbale from plugin.
      	(lto_symtab_merge_decls_1): Handle LDPR_PREVAILING_DEF_IRONLY_EXP.
      	* cgraph.c (ld_plugin_symbol_resolution): Add prevailing_def_ironly_exp.
      	* lto-cgraph.c (LDPR_NUM_KNOWN): Update.
      	* ipa.c (varpool_externally_visible_p): IRONLY variables are never
      	externally visible.
      	* varasm.c (resolution_to_local_definition_p): Add
      	LDPR_PREVAILING_DEF_IRONLY_EXP.
      	(resolution_local_p): Likewise.
      
      	* common.c (lto_resolution_str): Add new resolution.
      	* common.h (lto_resolution_str): Likewise.
      
      From-SVN: r179424
      Jan Hubicka committed
    • Start adding support for VIS 3.0 instructions. · 96d7b15f
      gcc/
      
      	* config/sparc/sparc.opt (VIS3): New option.
      	* doc/invoke.texi: Document it.
      	* config/sparc/sparc.h: Force TARGET_VIS3 to zero if assembler is
      	not capable of such instructions.
      	* config/sparc/sparc-c.c (sparc_target_macros): Define __VIS__
      	to 0x300 when TARGET_VIS3.
      	* config/sparc/sparc-modes.def: Create 16-byte vector modes.
      	* config/sparc/sparc.md (UNSPEC_CMASK8, UNSPEC_CMASK16, UNSPEC_CMASK32,
      	UNSPEC_FCHKSM16, UNSPEC_PDISTN, UNSPC_FUCMP): New unspecs.
      	(V64N8, VASS): New mode iterators.
      	(vis3_shift, vis3_addsub_ss): New code iterators.
      	(vbits, vconstr): New mode attributes.
      	(vis3_shift_insn, vis3_addsub_ss_insn): New code attributes.
      	(cmask8<P:mode>_vis, cmask16<P:mode>_vis, cmask32<P:mode>_vis,
      	fchksm16_vis, <vis3_shift_insn><vbits>_vis, pdistn<mode>_vis,
      	fmean16_vis, fpadd64_vis, fpsub64_vis, <vis3_addsub_ss_insn><vbits>_vis,
      	fucmp<code>8<P:mode>_vis): New VIS 3.0 instruction patterns.
      	* config/sparc/sparc.c (sparc_option_override): Set MASK_VIS3 by
      	default when targetting capable cpus.  TARGET_VIS3 implies
      	TARGET_VIS2 and TARGET_VIS, and clear them when TARGET_FPU is
      	disabled.
      	(sparc_vis_init_builtins): Emit new VIS 3.0 builtins.
      	(sparc_fold_builtin): Do not eliminate cmask{8,16,32} when result
      	is ignored.
      	* config/sparc/visintrin.h (__vis_cmask8, __vis_cmask16,
      	__vis_cmask32, __vis_fchksm16, __vis_fsll16, __vis_fslas16,
      	__vis_fsrl16, __vis_fsra16, __vis_fsll32, __vis_fslas32,
      	__vis_fsrl32, __vis_fsra32, __vis_pdistn, __vis_fmean16,
      	__vis_fpadd64, __vis_fpsub64, __vis_fpadds16, __vis_fpadds16s,
      	__vis_fpsubs16, __vis_fpsubs16s, __vis_fpadds32, __vis_fpadds32s,
      	__vis_fpsubs32, __vis_fpsubs32s, __vis_fucmple8, __vis_fucmpne8,
      	__vis_fucmpgt8, __vis_fucmpeq8): New VIS 3.0 interfaces.
      	* doc/extend.texi: Document new VIS 3.0 builtins.
      
      gcc/testsuite/
      
      	* gcc.target/sparc/cmask.c: New test.
      	* gcc.target/sparc/fpadds.c: New test.
      	* gcc.target/sparc/fshift.c: New test.
      	* gcc.target/sparc/fucmp.c: New test.
      	* gcc.target/sparc/vis3misc.c: New test.
      
      From-SVN: r179421
      David S. Miller committed
    • Daily bump. · 6a5edb85
      From-SVN: r179420
      GCC Administrator committed