1. 22 May, 2015 3 commits
    • * doc/extend.texi: Use @pxref instead of @xref. · b7f016cb
      From-SVN: r223530
      Marek Polacek committed
    • re PR c/47043 (allow deprecating enum values) · fd5c817a
      	PR c/47043
      	* c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
      
      	* c-parser.c (c_parser_enum_specifier): Parse and apply enumerator
      	attributes.
      
      	* cp-tree.h (build_enumerator): Update declaration.
      	* decl.c (build_enumerator): Add attributes parameter.  Call
      	cplus_decl_attributes.
      	* init.c (constant_value_1): Pass tf_none to mark_used.
      	* parser.c (cp_parser_enumerator_definition): Parse attributes and
      	pass them down to build_enumerator.
      	* pt.c (tsubst_enum): Pass decl attributes to build_enumerator.
      	* semantics.c (finish_id_expression): Don't warn_deprecated_use here.
      
      	* doc/extend.texi (Enumerator Attributes): New section.
      	Document syntax of enumerator attributes.
      
      	* c-c++-common/attributes-enum-1.c: New test.
      	* c-c++-common/attributes-enum-2.c: New test.
      	* g++.dg/cpp0x/attributes-enum-1.C: New test.
      	* g++.dg/cpp1y/attributes-enum-1.C: New test.
      
      Co-Authored-By: Edward Smith-Rowland <3dw4rd@verizon.net>
      
      From-SVN: r223527
      Marek Polacek committed
    • always define STACK_GROWS_DOWNWARD · 62f9f30b
      gcc/c-family/ChangeLog:
      
      2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* c-cppbuiltin.c (c_cpp_builtins): Check the value of
      	STACK_GROWS_DOWNWARD rather than if it is defined.
      
      gcc/ChangeLog:
      
      2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it
      	is defined.
      	* config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer.
      	* defaults.h: Provide default for STACK_GROWS_DOWNWARD.
      	* doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD.
      	* doc/tm.texi: Regenerate.
      
      From-SVN: r223513
      Trevor Saunders committed
  2. 21 May, 2015 1 commit
  3. 19 May, 2015 1 commit
    • S/390 Add -march/-mtune=z13 option. · 55ac540c
      gcc/
      	* common/config/s390/s390-common.c (processor_flags_table): Add
      	z13.
      	* config.gcc: Add z13.
      	* config/s390/s390-opts.h (enum processor_type): Add
      	PROCESSOR_2964_Z13.
      	* config/s390/s390.c (s390_adjust_priority): Check for
      	PROCESSOR_2964_Z13.
      	(s390_reorg): Likewise.
      	(s390_sched_reorder): Likewise.
      	(s390_sched_variable_issue): Likewise.
      	(s390_loop_unroll_adjust): Likewise.
      	(s390_option_override): Likewise. Default to -mvx when available.
      	* config/s390/s390.h (enum processor_flags): Add PF_Z13 and PF_VX.
      	(TARGET_CPU_Z13, TARGET_CPU_VX, TARGET_Z13, TARGET_VX)
      	(TARGET_VX_ABI): Define macros.
      	macros.
      	(TARGET_DEFAULT): Add MASK_OPT_VX.
      	* config/s390/s390.md ("cpu" attribute): Add z13.
      	("cpu_facility" attribute): Add vec.
      	* config/s390/s390.opt (processor_type): Add z13.
      	(mvx): New options.
      	* doc/invoke.texi: Add z13 option for -march.
      
      From-SVN: r223393
      Andreas Krebbel committed
  4. 18 May, 2015 1 commit
  5. 16 May, 2015 2 commits
    • ipa-utils.h (warn_types_mismatch, [...]): Declare. · 259d29e3
      	* ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
      	odr_types_equivalent_p): Declare.
      	(odr_type_p): Use gcc_checking_assert.
      	(type_in_anonymous_namespace_p) Declare.
      	(type_with_linkage_p): Declare.
      	* common.opt (Wlto-type-mismatch): New warning.
      	* ipa-devirt.c (compound_type_base): New function.
      	(odr_or_derived_type_p): New function.
      	(odr_types_equivalent_p): New function.
      	(add_type_duplicate): Simplify.
      	(type_with_linkage_p): Add hack to prevent false positives on C types
      	(type_in_anonymous_namespace_p): Likewise.
      	* tree.c (need_assembler_name_p): Use type_with_linkage.
      	* tree.h (type_in_anonymous_namespace_p): Remove.
      	* doc/invoke.texi (-Wlto-type-mismatch): Document
      
      	* lto-symtab.c (warn_type_compatibility_p): Break out from ...;
      	compare ODR types (if available) and function types.
      	(lto_symtab_merge): ... here; output ODR violation warnings
      	and call warn_types_mismatch.
      
      	* gfortran.dg/lto/20091028-2_1.c: Fix return value.
      	* gfortran.dg/lto/pr41576_1.f90: Add interface.
      	* gfortran.dg/lto/pr41521_0.f90: Disable lto-type-mismatch
      	* gfortran.dg/lto/pr60635_0.f90: Disable lto-type-mismatch.
      	* gfortran.dg/lto/20091028-1_1.c: Fix return type.
      	* gcc.dg/lto/20120723_0.c: Disbale lto-type-mismatch.
      
      From-SVN: r223258
      Jan Hubicka committed
  6. 14 May, 2015 1 commit
  7. 13 May, 2015 1 commit
  8. 12 May, 2015 2 commits
    • Implement -Wmisleading-indentation · c3388e62
      gcc/ChangeLog:
      	* doc/invoke.texi (Warning Options): Add -Wmisleading-indentation.
      	(-Wmisleading-indentation): New option.
      	* Makefile.in (C_COMMON_OBJS): Add c-family/c-indentation.o.
      
      gcc/c-family/ChangeLog:
      	* c-common.h (warn_for_misleading_indentation): New prototype.
      	* c-indentation.c: New file.
      	* c.opt (Wmisleading-indentation): New option.
      
      gcc/c/ChangeLog:
      	* c-parser.c (c_parser_if_body): Add param "if_loc", use it
      	to add a call to warn_for_misleading_indentation.
      	(c_parser_else_body): Likewise, adding param "else_loc".
      	(c_parser_if_statement): Check for misleading indentation.
      	(c_parser_while_statement): Likewise.
      	(c_parser_for_statement): Likewise.
      
      gcc/cp/ChangeLog:
      	* parser.c (cp_parser_selection_statement): Add location and
      	guard_kind arguments to calls to
      	cp_parser_implicitly_scoped_statement.
      	(cp_parser_iteration_statement): Likewise for calls to
      	cp_parser_already_scoped_statement.
      	(cp_parser_implicitly_scoped_statement): Add "guard_loc" and
      	"guard_kind" params; use them to warn for misleading
      	indentation.
      	(cp_parser_already_scoped_statement): Likewise.
      
      gcc/testsuite/ChangeLog:
      	* c-c++-common/Wmisleading-indentation.c: New testcase.
      	* c-c++-common/Wmisleading-indentation-2.c: New testcase.
      	* c-c++-common/Wmisleading-indentation-2.md: New file.
      
      libcpp/ChangeLog:
      	* directives.c (do_line): Set seen_line_directive on line_table.
      	(do_linemarker): Likewise.
      	* include/line-map.h (struct line_maps): Add new field
      	"seen_line_directive".
      
      From-SVN: r223098
      David Malcolm committed
    • re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins) · 46b35980
      2015-05-12  Andrew MacLeod  <amacleod@redhat.com>
      
      	PR target/65697
      	* coretypes.h (MEMMODEL_SYNC, MEMMODEL_BASE_MASK): New macros.
      	(enum memmodel): Add SYNC_{ACQUIRE,RELEASE,SEQ_CST}.
      	* tree.h (memmodel_from_int, memmodel_base, is_mm_relaxed,
      	is_mm_consume,is_mm_acquire, is_mm_release, is_mm_acq_rel,
      	is_mm_seq_cst, is_mm_sync): New accessor functions.
      	* builtins.c (expand_builtin_sync_operation,
      	expand_builtin_compare_and_swap): Use MEMMODEL_SYNC_SEQ_CST.
      	(expand_builtin_sync_lock_release): Use MEMMODEL_SYNC_RELEASE.
      	(get_memmodel,  expand_builtin_atomic_compare_exchange,
      	expand_builtin_atomic_load, expand_builtin_atomic_store,
      	expand_builtin_atomic_clear): Use new accessor routines.
      	(expand_builtin_sync_synchronize): Use MEMMODEL_SYNC_SEQ_CST.
      	* optabs.c (expand_compare_and_swap_loop): Use MEMMODEL_SYNC_SEQ_CST.
      	(maybe_emit_sync_lock_test_and_set): Use new accessors and
      	MEMMODEL_SYNC_ACQUIRE.
      	(expand_sync_lock_test_and_set): Use MEMMODEL_SYNC_ACQUIRE.
      	(expand_mem_thread_fence, expand_mem_signal_fence, expand_atomic_load,
      	expand_atomic_store): Use new accessors.
      	* emit-rtl.c (need_atomic_barrier_p): Add additional enum cases.
      	* tsan.c (instrument_builtin_call): Update check for memory model beyond
      	final enum to use MEMMODEL_LAST.
      	* c-family/c-common.c: Use new accessor for memmodel_base.
      	* config/aarch64/aarch64.c (aarch64_expand_compare_and_swap): Use new
      	accessors.
      	* config/aarch64/atomics.md (atomic_load<mode>,atomic_store<mode>,
      	arch64_load_exclusive<mode>, aarch64_store_exclusive<mode>,
      	mem_thread_fence, *dmb): Likewise.
      	* config/alpha/alpha.c (alpha_split_compare_and_swap,
      	alpha_split_compare_and_swap_12): Likewise.
      	* config/arm/arm.c (arm_expand_compare_and_swap,
      	arm_split_compare_and_swap, arm_split_atomic_op): Likewise.
      	* config/arm/sync.md (atomic_load<mode>, atomic_store<mode>,
      	atomic_loaddi): Likewise.
      	* config/i386/i386.c (ix86_destroy_cost_data, ix86_memmodel_check):
      	Likewise.
      	* config/i386/sync.md (mem_thread_fence, atomic_store<mode>): Likewise.
      	* config/ia64/ia64.c (ia64_expand_atomic_op): Add new memmodel cases and
      	use new accessors.
      	* config/ia64/sync.md (mem_thread_fence, atomic_load<mode>,
      	atomic_store<mode>, atomic_compare_and_swap<mode>,
      	atomic_exchange<mode>): Use new accessors.
      	* config/mips/mips.c (mips_process_sync_loop): Likewise.
      	* config/pa/pa.md (atomic_loaddi, atomic_storedi): Likewise.
      	* config/rs6000/rs6000.c (rs6000_pre_atomic_barrier,
      	rs6000_post_atomic_barrier): Add new cases.
      	(rs6000_expand_atomic_compare_and_swap): Use new accessors.
      	* config/rs6000/sync.md (mem_thread_fence): Add new cases.
      	(atomic_load<mode>): Add new cases and use new accessors.
      	(store_quadpti): Add new cases.
      	* config/s390/s390.md (mem_thread_fence, atomic_store<mode>): Use new
      	accessors.
      	* config/sparc/sparc.c (sparc_emit_membar_for_model): Use new accessors.
      	* doc/extend.texi: Update docs to indicate 16 bits are used for memory
      	model, not 8.
      
      From-SVN: r223096
      Andrew MacLeod committed
  9. 11 May, 2015 2 commits
  10. 09 May, 2015 1 commit
    • bitmap.c, [...]: Add space between string literal and macro name. · 16998094
      	* bitmap.c, c/c-aux-info.c, cfg.c, cfghooks.c, cgraph.c,
      	config/aarch64/aarch64.md config/alpha/vms.h, config/darwin.c,
      	config/darwin.h, config/darwin9.h, config/elfos.h,
      	config/i386/bsd.h, config/ia64/ia64.c, config/lm32/lm32.h,
      	config/microblaze/microblaze.h, config/mips/mips.h,
      	config/mmix/mmix.c, config/msp430/msp430.c, config/nios2/nios2.h,
      	config/nvptx/nvptx.c, config/nvptx/nvptx.h, config/pa/pa.c,
      	config/pa/pa.h, config/rs6000/rs6000.c, config/rs6000/sysv4.h,
      	config/rs6000/xcoff.h, config/rx/rx.h, config/s390/s390.h,
      	config/sparc/sol2.h, config/sparc/sparc.h, config/visium/visium.h,
      	cppbuiltin.c, defaults.h, doc/invoke.texi, dwarf2cfi.c,
      	dwarf2out.c, final.c, gcc.c, gcov-dump.c, gcov.c, ipa-cp.c,
      	ipa-inline.c, ipa-polymorphic-call.c, ipa-profile.c, ipa-prop.c,
      	ira-color.c, ira.c, loop-doloop.c, loop-iv.c, mcf.c,
      	modulo-sched.c, predict.c, profile.c, stor-layout.c, toplev.c,
      	tree-ssa-reassoc.c, value-prof.c, wide-int-print.cc: Add space
      	between string literal and macro name.
      
      From-SVN: r222960
      Jason Merrill committed
  11. 08 May, 2015 2 commits
    • install.texi (--enable-languages): Add missing jit and lto info. · 6fedd529
      * doc/install.texi (--enable-languages): Add missing jit and lto info.
      Add ^ to grep command.
      * doc/match-and-simplify.texi (GIMPLE API): Add missing fourth tree
      arg to last gimple_simplify declaration.  Add missing gimple_build
      declaration for built-in function case with four tree args.
      
      From-SVN: r222923
      Jim Wilson committed
    • [PATCH 2/13] musl libc config · 755658a5
      2015-05-08  Gregor Richards  <gregor.richards@uwaterloo.ca>
      	    Szabolcs Nagy  <szabolcs.nagy@arm.com>
      
      	* config.gcc (LIBC_MUSL): New tm_defines macro.
      	* config/linux.h (OPTION_MUSL): Define.
      	(MUSL_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER32,)
      	(MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32,)
      	(INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,)
      	(INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,)
      	(INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define.
      	* config/linux.opt (mmusl): New option.
      	* doc/invoke.texi (GNU/Linux Options): Document -mmusl.
      	* configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*.
      	(gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*.
      	* configure: Regenerate.
      
      Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
      
      From-SVN: r222904
      Gregor Richards committed
  12. 07 May, 2015 3 commits
    • re PR c/64918 (invalid (?) warning when initializing structure) · 755e528f
      	PR c/64918
      	* c.opt (Woverride-init-side-effects): New option.
      
      	* c-typeck.c (add_pending_init): Use OPT_Woverride_init_side_effects.
      	(output_init_element): Likewise.
      
      	* doc/invoke.texi: Document -Woverride-init-side-effects.
      
      	* gcc.dg/Woverride-init-side-effects-1.c: New test.
      	* gcc.dg/Woverride-init-side-effects-2.c: New test.
      
      From-SVN: r222894
      Marek Polacek committed
    • re PR c/65179 (Introduce new C warning: -Wshift-negative-value) · 0173bd2a
      	PR c/65179
      	* c-common.c (c_fully_fold_internal): Warn when left shifting a
      	negative value.
      	* c.opt (Wshift-negative-value): New option.
      	* c-opts.c (c_common_post_options): Set warn_shift_negative_value
      	when -Wextra and C99/C++11 mode.
      
      	* c-typeck.c (build_binary_op): Warn when left shifting a negative
      	value.
      
      	* typeck.c (cp_build_binary_op): Warn when left shifting a negative
      	value.
      
      	* doc/invoke.texi: Document -Wshift-negative-value.
      
      	* c-c++-common/Wshift-negative-value-1.c: New test.
      	* testsuite/c-c++-common/Wshift-negative-value-2.c: New test.
      	* testsuite/c-c++-common/Wshift-negative-value-3.c: New test.
      	* testsuite/c-c++-common/Wshift-negative-value-4.c: New test.
      	* testsuite/c-c++-common/Wshift-negative-value-5.c: New test.
      	* testsuite/c-c++-common/Wshift-negative-value-6.c: New test.
      	* testsuite/gcc.dg/c90-left-shift-1.c: New test.
      	* testsuite/gcc.dg/c99-const-expr-7.c: Add dg-error.
      	* testsuite/gcc.dg/c99-left-shift-1.c: New test.
      
      From-SVN: r222889
      Marek Polacek committed
    • c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member… · e0f0d3b9
      c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member array-like members if...
      
      	* c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
      	flexible member array-like members if SANITIZE_BOUNDS_STRICT.
      
      	* doc/invoke.texi: Document -fsanitize=bounds-strict.
      	* flag-types.h (enum sanitize_code): Add SANITIZE_BOUNDS_STRICT, or it
      	into SANITIZE_NONDEFAULT.
      	* opts.c (common_handle_option): Handle -fsanitize=bounds-strict.
      
      	* c-c++-common/ubsan/bounds-10.c: New test.
      
      From-SVN: r222871
      Marek Polacek committed
  13. 06 May, 2015 1 commit
    • c.opt (Wterminate): New. · 8243e2a9
      gcc/c-family/
      	* c.opt (Wterminate): New.
      gcc/cp/
      	* cp-gimplify.c (cp_genericize_r): Track TRY_BLOCK and
      	MUST_NOT_THROW_EXPR, warn about a THROW_EXPR directly within a
      	MUST_NOT_THROW_EXPR.
      	(cp_genericize_data): Add try_block field.
      	(cp_genericize_tree): Initialize it.
      	* except.c (expand_end_catch_block): Set TREE_NO_WARNING on
      	implicit rethrow.
      
      From-SVN: r222842
      Jason Merrill committed
  14. 05 May, 2015 4 commits
    • extend.texi (C Extensions): Update menu for moved Variable Attributes and Type Attributes sections. · 3836ac7c
              * doc/extend.texi (C Extensions): Update menu for moved Variable
              Attributes and Type Attributes sections.
      
      From-SVN: r222819
      Uros Bizjak committed
    • msp430-opts.h (enum msp430_regions): New. · d7edde11
      	* config/msp430/msp430-opts.h (enum msp430_regions): New.
      	* config/msp430/msp430.c (msp430_override_options): Complain if
      	-mcode-region or -mdata-region is used on a non MSP430X.
      	(msp430_section_attr): New function.  Checks lower, upper and
      	either attributes.
      	(msp430_attribute_table): Add lower, upper and either.
      	(gen_prefix): New function.  Generates a prefix for a section
      	name.
      	(msp430_select_section): New function - handles the choice of
      	section for an object.  Takes into account memory region
      	attributes and options.
      	(msp430_function_section): Use gen_prefix.
      	(TARGET_SECTION_TYPE_FLAGS): Define.
      	(msp430_section_type_flags): New function.
      	(TARGET_ASM_UNIQUE_SECTION): Define.
      	(msp430_unique_section): New function.
      	(msp430_output_aligned_decl_common): New function.
      	(msp430_do_not_relax_short_jumps): New function.
      	* config/msp430/msp430.h (USE_SELECT_SECTION_FOR_FUNCTIONS):
      	Define.
      	(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
      	* config/msp430/msp430-protos.h
      	(msp430_do_not_relax_short_jumps): New prototype.
      	(msp430_output_aligned_decl_common): New prototype.
      	* config/msp430/msp430.md (length): New attribute.
      	(cbranchhi4_real): If msp430_do_not_relax_short_jumps is true
      	then use a long code sequence for short jumps.
      	* config/msp430/msp430.opt (mcode-region): New.
      	(mdata-region): New.
      	* doc/invoke.texi: Document new options.
      	* doc/extend.texi: Document new attributes.
      
      From-SVN: r222810
      Nick Clifton committed
    • [docs] Update __atomic builtins documentation. · 78b1add9
      	* doc/extend.texi (__atomic Builtins): Move implementation details
      	to the end of the description, rewrite opening paragraphs, state
      	difference with __sync builtins, state C11/C++11 assumptions,
      	weaken itemized descriptions, add explanation of memory model
      	behaviour, expand description of compare-exchange, simplify text.
      
      From-SVN: r222803
      Matthew Wahab committed
    • aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define. · bf05ef76
      2015-05-05  Yvan Roux  <yvan.roux@linaro.org>
      
      	* config/aarch64/aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define.
      	(LINK_SPEC): Include CA53_ERR_843419_SPEC.
      	* config/aarch64/aarch64-linux.h (CA53_ERR_843419_SPEC): Define.
      	(LINK_SPEC): Include CA53_ERR_843419_SPEC.
      	* config/aarch64/aarch64.opt (mfix-cortex-a53-843419): New option.
      	* configure: Regenerate.
      	* configure.ac: Add --enable-fix-cortex-a53-843419 option.
      	* doc/install.texi (aarch64*-*-*): Document new
      	--enable-fix-cortex-a53-843419 option.
      	* doc/invoke.texi (AArch64 Options): Document -mfix-cortex-a53-843419
      	and -mno-fix-cortex-a53-843419 options.
      
      From-SVN: r222797
      Yvan Roux committed
  15. 04 May, 2015 2 commits
    • common.opt (fdelete-null-pointer-checks): Init to -1. · 467d8d51
      2015-05-04  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* common.opt (fdelete-null-pointer-checks): Init to -1.
      	* config/nios2/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define to
      	override flag_delete_null_pointer_checks default.
      	* doc/invoke.texi (-fdelete-null-pointer-checks): Clarify
      	behavior re address zero.  Better document target-specific behavior.
      	(-fisolate-errneous-paths-dereference): Mention relationship to
      	-fdelete-null-pointer-checks.
      
      	gcc/testsuite/
      	* lib/target-supports.exp
      	(check_effective_target_keeps_null_pointer_checks): Clarify that
      	this is for targets that disable -fdelete-null-pointer-checks,
      	not default it to off.
      	* gcc.dg/ipa/ipa-pta-14.c: Make dependence on
      	-fdelete-null-pointer-checks explicit.
      	* gcc.dg/tree-ssa/20030730-1.c: Likewise.
      	* gcc.dg/tree-ssa/20030730-2.c: Likewise.
      	* gcc.dg/tree-ssa/isolate-1.c: Likewise.
      	* gcc.dg/tree-ssa/isolate-2.c: Likewise.
      	* gcc.dg/tree-ssa/isolate-3.c: Likewise.
      	* gcc.dg/tree-ssa/isolate-4.c: Likewise.
      	* gcc.dg/tree-ssa/isolate-5.c: Likewise.
      	* gcc.dg/tree-ssa/nonzero-1.c: Likewise.
      	* gcc.dg/tree-ssa/pr20318.c: Likewise.
      	* gcc.dg/tree-ssa/pr20701.c: Likewise.
      	* gcc.dg/tree-ssa/pr20702.c: Likewise.
      	* gcc.dg/tree-ssa/pr21086.c: Likewise.
      	* gcc.dg/tree-ssa/pr21090.c: Likewise.
      	* gcc.dg/tree-ssa/pr58480.c: Likewise.
      	* gcc.dg/tree-ssa/pta-escape-1.c: Likewise.
      	* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
      	* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Likewise.
      	* gcc.dg/tree-ssa/unreachable.c: Likewise.
      	* gcc.dg/tree-ssa/vrp02.c: Likewise.
      	* gcc.dg/tree-ssa/vrp07.c: Likewise.
      	* gcc.dg/tree-ssa/vrp08.c: Likewise.
      	* gcc.dg/tree-ssa/vrp55.c: Likewise.
      	* g++.dg/cpp0x/static_assert9.C: Likewise.
      	* g++.dg/tree-ssa/nonzero-1.C: Likewise.
      	* g++.dg/tree-ssa/pr19476-1.C: Likewise.
      	* g++.dg/tree-ssa/pr19476-2.C: Likewise.
      	* g++.dg/tree-ssa/pr19476-5.C: Likewise.
      	* g++.dg/tree-ssa/pr26406.C: Likewise.
      
      From-SVN: r222777
      Sandra Loosemore committed
    • extend.texi (Variable Attributes, [...]): Move sections up in file, to… · 6cefc504
      extend.texi (Variable Attributes, [...]): Move sections up in file, to immediately after the Function Attributes section.
      
      2015-05-03  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* doc/extend.texi (Variable Attributes, Type Attributes):  Move
      	sections up in file, to immediately after the Function Attributes
      	section.
      
      From-SVN: r222758
      Sandra Loosemore committed
  16. 02 May, 2015 1 commit
  17. 01 May, 2015 1 commit
  18. 30 Apr, 2015 2 commits
    • tm.texi: Regenerate. · 81ccb752
      	* doc/tm.texi: Regenerate.
      
      From-SVN: r222655
      Caroline Tice committed
    • Define & use special macros to record the name & size of cold partitions. · 11c3d071
      Define & use special macros to record the name & size of cold
      partitions.  (Fix PR 65929).
      
      gcc/ChangeLog
      
      PR 65929
      * config/elfos.h (ASM_DECLARE_COLD_FUNCTION_NAME): New macro definition.
      (ASM_DECLARE_COLD_FUNCTION_SIZE): New macro definition.
      * doc/tm.texi.in (ASM_DECLARE_COLD_FUNCTION_NAME): Document new macro.
      (ASM_DECLARE_COLD_FUNCTION_SIZE): Document new macro.
      * final.c (final_scan_insn):  Use ASM_DECLARE_COLD_FUNCTION_NAME
      instead of ASM_DECLARE_FUNCTION_NAME for cold partition name.
      * varasm.c (assemble_end_function):  Use ASM_DECLARE_COLD_FUNCTION_SIZE
      instead of ASM_DECLARE_FUNCTION_SIZE for cold partition size.
      
      gcc/testsuite/ChangeLog:
      
      PR  65929
      * gcc.dg/tree-prof/cold_partition_label.c:  Only check for cold
      partition size on certain targets.
      
      From-SVN: r222643
      Caroline Tice committed
  19. 28 Apr, 2015 2 commits
    • extend.texi (Declaring Attributes of Functions): Split into subsections by target. · 2a26eef8
      2015-04-28  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* doc/extend.texi (Declaring Attributes of Functions): Split into
      	subsections by target.  Alphabetize the table of common attributes.
      	Rewrite some of the introductory text to reflect the new structure.
      	Update some cross-references to point to the new subsections.
      	(Attribute Syntax): Put paragraph about "__" naming here.  Remove
      	duplicate copies in the discussion of function, label, and type
      	attributes.
      
      From-SVN: r222543
      Sandra Loosemore committed
    • add default for NO_FUNCTION_CSE · 1e8552c2
      gcc/ChangeLog:
      
      2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* calls.c (prepare_call_address): Remove ifdef NO_FUNCTION_CSE.
      	* cse.c (fold_rtx): Likewise.
      	* config/alpha/alpha.h (NO_FUNCTION_CSE): Define to 1.
      	* config/arc/arc.h (NO_FUNCTION_CSE): Likewise.
      	* config/avr/avr.h (NO_FUNCTION_CSE): Likewise.
      	* config/cr16/cr16.h (NO_FUNCTION_CSE): Likewise.
      	* config/epiphany/epiphany.h (NO_FUNCTION_CSE): Likewise.
      	* config/frv/frv.h (NO_FUNCTION_CSE): Likewise.
      	* config/h8300/h8300.h (NO_FUNCTION_CSE): Likewise.
      	* config/i386/i386.h (NO_FUNCTION_CSE): Likewise.
      	* config/ia64/ia64.h (NO_FUNCTION_CSE): Likewise.
      	* config/lm32/lm32.h (enum reg_class) (NO_FUNCTION_CSE):
      	* Likewise.
      	* config/m32r/m32r.h (NO_FUNCTION_CSE): Likewise.
      	* config/mep/mep.h (NO_FUNCTION_CSE): Likewise.
      	* config/mn10300/mn10300.h (NO_FUNCTION_CSE): Likewise.
      	* config/nds32/nds32.h (NO_FUNCTION_CSE): Likewise.
      	* config/nios2/nios2.h (NO_FUNCTION_CSE): Likewise.
      	* config/pa/pa.h (NO_FUNCTION_CSE): Likewise.
      	* config/rs6000/rs6000.h (NO_FUNCTION_CSE): Likewise.
      	* config/s390/s390.h (NO_FUNCTION_CSE): Likewise.
      	* config/sparc/sparc.h (NO_FUNCTION_CSE): Likewise.
      	* config/spu/spu.h (NO_FUNCTION_CSE): Likewise.
      	* config/stormy16/stormy16.h (NO_FUNCTION_CSE): Likewise.
      	* config/v850/v850.h (NO_FUNCTION_CSE): Likewise.
      	* defaults.h (NO_FUNCTION_CSE): Provide default definition to 0.
      	* doc/tm.texi: Regenerate.
      	* doc/tm.texi.in: Document NO_FUNCTION_CSE is always defined to
      	either true or false.
      
      From-SVN: r222501
      Trevor Saunders committed
  20. 27 Apr, 2015 1 commit
    • re PR target/64579 (__TM_end __builtin_tend failed to return transactional state) · 01f61a78
      gcc/
      	PR target/64579
      	* config/rs6000/htm.md: Remove all define_expands.
      	(UNSPECV_HTM_TABORTDC, UNSPECV_HTM_TABORTDCI, UNSPECV_HTM_TABORTWC,
      	UNSPECV_HTM_TABORTWCI): Remove.
      	(UNSPECV_HTM_TABORTXC, UNSPECV_HTM_TABORTXCI, UNSPECV_HTM_TTEST): New.
      	(tabort_internal, tbegin_internal, tcheck_internal, tend_internal,
      	trechkpt_internal, treclaim_internal, tsr_internal): Rename from this...
      	(tabort, tbegin, tcheck, tend, trechkpt, treclaim, tsr): ...to this.
      	(tabortdc_internal, tabortdci_internal, tabortwc_internal,
      	tabortwci_internal): Remove define_insns.
      	(tabort<wd>c, tabort<wd>ci): New define_insns.
      	(tabort): Use gpc_reg_operand.
      	(tcheck): Remove operand.
      	(htm_mfspr_<mode>, htm_mtspr_<mode>): Use GPR mode macro.
      	* config/rs6000/htmxlintrin.h (__TM_end): Use _HTM_TRANSACTIONAL as
      	expected value.
      	* config/rs6000/rs6000-builtin.def (BU_HTM_SPR0): Remove.
      	(BU_HTM_SPR1): Rename to BU_HTM_V1.  Remove use of RS6000_BTC_SPR.
      	(tabort, tabortdc, tabortdci, tabortwc, tabortwci, tbegin,
      	tcheck, tend, tendall, trechkpt, treclaim, tresume, tsuspend,
      	tsr, ttest): Pass in the RS6000_BTC_CR attribute.
      	(get_tfhar, set_tfhar, get_tfiar, set_tfiar, get_texasr, set_texasr,
      	get_texasru, set_texasru): Pass in the RS6000_BTC_SPR attribute.
      	(tcheck): Remove builtin argument.
      	* config/rs6000/rs6000.c (rs6000_htm_spr_icode): Use TARGET_POWERPC64
      	not TARGET_64BIT.
      	(htm_expand_builtin): Fix usage of expandedp.  Disallow usage of the
      	tabortdc and tabortdci builtins when not in 64-bit mode.
      	Modify code to handle the loss of the HTM define_expands.
      	Emit code to copy the CR register to TARGET.
      	(htm_init_builtins): Modify code to handle the loss of the HTM
      	define_expands.
      	* config/rs6000/rs6000.h (RS6000_BTC_32BIT): Delete.
      	(RS6000_BTC_64BIT): Likewise.
      	(RS6000_BTC_CR): New macro.
      	* doc/extend.texi: Update documentation for htm builtins.
      
      gcc/testsuite/
      
      	PR target/64579
      	* gcc.target/powerpc/htm-1.c: New test.
      	* gcc.target/powerpc/htm-builtin-1.c (__builtin_tabortdc): Only test
      	on 64-bit compiles.
      	(__builtin_tabortdci): Likewise.
      	(__builtin_tcheck): Remove operand.
      	* lib/target-supports.exp (check_htm_hw_available): New function.
      
      From-SVN: r222467
      Peter Bergner committed
  21. 24 Apr, 2015 2 commits
    • [AArch64] Implement -m{cpu,tune,arch}=native using only /proc/cpuinfo · 7e1bcce3
      	* config.host (case ${host}): Add aarch64*-*-linux case.
      	* config/aarch64/aarch64-cores.def: Add IMPLEMENTER_ID and PART_NUMBER
      	fields to all the cores.
      	* config/aarch64/aarch64-elf.h (DRIVER_SELF_SPECS):
      	Add MCPU_MTUNE_NATIVE_SPECS.
      	* config/aarch64/aarch64-option-extensions.def: Add FEATURE_STRING
      	field to all extensions.
      	* config/aarch64/aarch64-opts.h: Adjust definition of AARCH64_CORE.
      	* config/aarch64/aarch64.c: Adjust definition of AARCH64_CORE.
      	Adjust definition of AARCH64_OPT_EXTENSION.
      	* config/aarch64/aarch64.h: Adjust definition of AARCH64_CORE.
      	(MCPU_MTUNE_NATIVE_SPECS): Define.
      	* config/aarch64/driver-aarch64.c: New file.
      	* config/aarch64/x-arch64: New file.
      	* doc/invoke.texi (AArch64 Options): Document native value for -mcpu,
      	-mtune and -march.
      
      From-SVN: r222415
      Kyrylo Tkachov committed
    • re PR c/63357 (Warn for P && P and P || P (same expression used multiple times in a condition)) · 8c2b7f79
      	PR c/63357
      	* c-common.c (warn_logical_operator): Warn if the operands have the
      	same expressions.
      
      	* doc/invoke.texi: Update description of -Wlogical-op.
      
      	* c-c++-common/Wlogical-op-1.c: New test.
      
      From-SVN: r222408
      Marek Polacek committed
  22. 22 Apr, 2015 1 commit
    • Allow wildcards in -fsanitize-sections. · 860503d8
      2015-04-22  Yury Gribov  <y.gribov@samsung.com>
      
      	Allow wildcards in -fsanitize-sections.
      
      	gcc/
      	* asan.c (set_sanitized_sections): Parse incoming arg.
      	(section_sanitized_p): Support wildcards.
      	* doc/invoke.texi (-fsanitize-sections): Update description.
      
      	gcc/testsuite/
      	* c-c++-common/asan/user-section-1.c: New test.
      	* c-c++-common/asan/user-section-2.c: New test.
      	* c-c++-common/asan/user-section-3.c: New test.
      
      From-SVN: r222322
      Yury Gribov committed
  23. 20 Apr, 2015 1 commit
  24. 17 Apr, 2015 1 commit
    • asan.c (set_sanitized_sections): New function. · 18af8d16
      2015-04-17  Yury Gribov  <y.gribov@samsung.com>
      
      gcc/
      	* asan.c (set_sanitized_sections): New function.
      	(section_sanitized_p): Ditto.
      	(asan_protect_global): Optionally sanitize user-defined
      	sections.
      	* asan.h (set_sanitized_sections): Declare new function.
      	* common.opt (fsanitize-sections): New option.
      	* doc/invoke.texi (-fsanitize-sections): Document new option.
      	* opts-global.c (handle_common_deferred_options): Handle new
      	option.
      
      gcc/testsuite/
      	* c-c++-common/asan/user-section-1.c: New test.
      
      From-SVN: r222168
      Yury Gribov committed
  25. 16 Apr, 2015 1 commit
    • rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and MUL_UNINIT. · 72ed1126
       	* config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and
       	MUL_UNINIT.
       	(enum rl78_cpu_type): New.
       	* config/rl78/rl78-virt.md (attr valloc): Add divhi and divsi.
       	(umulhi3_shift_virt): Remove m constraint from operand 1.
       	(umulqihi3_virt): Likewise.
       	* config/rl78/rl78.c (rl78_option_override): Add code to process
       	-mcpu and -mmul options.
       	(rl78_alloc_physical_registers): Add code to handle divhi and
       	divsi valloc attributes.
       	(set_origin): Likewise.
       	* config/rl78/rl78.h (RL78_MUL_G14): Define.
       	(TARGET_G10, TARGET_G13, TARGET_G14): Define.
       	(TARGET_CPU_CPP_BUILTINS): Define __RL78_MUL_xxx__ and
       	__RL78_Gxx__.
       	(ASM_SPEC): Pass -mcpu on to assembler.
       	* config/rl78/rl78.md (mulqi3): Add a clobber of AX.
       	(mulqi3_rl78): Likewise.
       	(mulhi3_g13): Likewise.
       	(mulhi3): Generate the G13 or G14 versions of the insn directly.
       	(mulsi3): Likewise.
       	(mulhi3_g14): Add clobbers of AX and BC.
       	(mulsi3_g14): Likewise.
       	(mulsi3_g13): Likewise.
       	(udivmodhi4, udivmodhi4_g14, udivmodsi4): New patterns.
       	(udivmodsi4_g14, udivmodsi4_g13): New patterns.
       	* config/rl78/rl78.opt (mmul): Initialise value to
       	RL78_MUL_UNINIT.
       	(mcpu): New option.
       	(m13, m14, mrl78): New option aliases.
       	* config/rl78/t-rl78 (MULTILIB_OPTIONS): Add mg13 and mg14.
       	(MULTILIB_DIRNAMES): Add g13 and g14.
       	* doc/invoke.texi: Document -mcpu and -mmul options.
      
       	* config/rl78/divmodhi.S: Add G14 and G13 versions of the __divhi3
       	and __modhi3 functions.
      	* config/rl78/divmodso.S: Add G14 and G13 versions of the
       	__divsi3, __udivsi3, __modsi3 and __umodsi3 functions.
      
      From-SVN: r222142
      Nick Clifton committed