Commit Graph

2097 Commits

Author SHA1 Message Date
James Bowman fef939d6a9 FT32 target added. Approved by Jeff Law [law@redhat.com]
From-SVN: r223261
2015-05-16 23:49:08 +00:00
Jan Hubicka 259d29e396 ipa-utils.h (warn_types_mismatch, [...]): Declare.
* 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
2015-05-16 23:18:29 +00:00
David Malcolm c3388e6249 Implement -Wmisleading-indentation
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
2015-05-12 20:57:38 +00:00
Alexander Monakov b91fd3c76a calls.c (prepare_call_address): Transform PLT call to GOT lookup and indirect call by forcing address into a...
* calls.c (prepare_call_address): Transform PLT call to GOT lookup and
	indirect call by forcing address into a pseudo with -fno-plt.
	* common.opt (flag_plt): New option.
	* doc/invoke.texi (Code Generation Options): Add -fno-plt.
	([-fno-plt]): Document.

From-SVN: r223003
2015-05-11 16:20:57 +03:00
Jason Merrill 1699809426 bitmap.c, [...]: Add space between string literal and macro name.
* 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
2015-05-09 00:50:05 -04:00
Gregor Richards 755658a56b [PATCH 2/13] musl libc config
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
2015-05-08 08:25:47 +00:00
Marek Polacek 755e528f96 re PR c/64918 (invalid (?) warning when initializing structure)
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
2015-05-07 22:14:27 +00:00
Marek Polacek 0173bd2a03 re PR c/65179 (Introduce new C warning: -Wshift-negative-value)
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
2015-05-07 19:36:31 +00:00
Marek Polacek e0f0d3b9d2 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
2015-05-07 08:08:57 +00:00
Jason Merrill 8243e2a9d0 c.opt (Wterminate): New.
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
2015-05-05 22:25:01 -04:00
Nick Clifton d7edde11e0 msp430-opts.h (enum msp430_regions): New.
* 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
2015-05-05 15:15:13 +00:00
Yvan Roux bf05ef76d9 aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define.
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
2015-05-05 09:31:11 +00:00
Sandra Loosemore 467d8d51f1 common.opt (fdelete-null-pointer-checks): Init to -1.
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
2015-05-04 15:55:06 -04:00
Kyrylo Tkachov 7e1bcce371 [AArch64] Implement -m{cpu,tune,arch}=native using only /proc/cpuinfo
* 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
2015-04-24 14:52:47 +00:00
Marek Polacek 8c2b7f7972 re PR c/63357 (Warn for P && P and P || P (same expression used multiple times in a condition))
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
2015-04-24 12:10:52 +00:00
Yury Gribov 860503d8cc Allow wildcards in -fsanitize-sections.
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
2015-04-22 11:44:26 +00:00
Paolo Carlini 2821fc6b76 re PR c++/65801 (Allow -Wno-narrowing to silence stricter C++11 narrowing rules)
/cp
2015-04-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65801
	* typeck2.c (check_narrowing): In C++11 mode too, -Wno-narrowing
	suppresses the diagnostic.

2015-04-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65801
	* doc/invoke.texi ([-Wnarrowing]): Update.

/testsuite
2015-04-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65801
	* g++.dg/cpp0x/Wnarrowing2.C: New.

From-SVN: r222249
2015-04-20 21:46:59 +00:00
Yury Gribov 18af8d16cf asan.c (set_sanitized_sections): New function.
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
2015-04-17 07:51:02 +00:00
Nick Clifton 72ed112686 rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and MUL_UNINIT.
* 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
2015-04-16 07:57:56 +00:00
Nick Clifton e4614c187b rx.opt (mallow-string-insns): New option.
* config/rx/rx.opt (mallow-string-insns): New option.
	* config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this
	builtin if string instructions are denied.
	* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define
	__RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as
	appropriate.
	(ASM_SPEC): Pass -mno-allow-string-insns on to the assembler.
	* config/rx/rx.md (movstr): Enable pattern only if string
	instructions are allowed.
	(rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise.
	(cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise.
	* config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns.
	(MULTILIB_DIRNAMES): Add no-strings.
	* doc/invoke.texi: Document -mno-allow-string-insns.

	* gcc.target/rx/builtins.c: Disable RMPA test if string
	instructions are not allowed.

From-SVN: r222116
2015-04-15 07:41:07 +00:00
Gerald Pfeifer 7d9ea335a2 invoke.texi (-Wmemset-transposed-args): Break a long sentence.
* doc/invoke.texi (-Wmemset-transposed-args): Break a long
	sentence.  Improve grammar.

From-SVN: r222023
2015-04-12 19:29:44 +00:00
Evandro Menezes 85bb7f7f02 add option for the Samsung Exynos M1 core for AArch64
* doc/invoke.texi (AARCH64/mtune): Add exynos-m1 as an option.
	* config/aarch64/aarch64-cores.def (exynos-m1): New core.
	* config/aarch64/aarch64-tune.md: Regenerate.

From-SVN: r221884
2015-04-06 19:19:43 +00:00
Evandro Menezes e278ae6fdc add option for the Samsung Exynos M1 core
* doc/invoke.texi (ARM/mtune): Add "exynos-m1" as an option.
	* config/arm/arm.c (arm_issue_rate): Specify "3" for "exynosm1".
	* config/arm/arm-cores.def (exynos-m1): New core.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/arm-tables.opt: Add entry for "exynos-m1".
	* config/arm/bpabi.h: Likewise.

From-SVN: r221883
2015-04-06 19:19:34 +00:00
Jan Hubicka 9a820e8446 invoke.texi (inline-unit-growth): Increase growth to 20%
* invoke.texi (inline-unit-growth): Increase growth to 20%
	* params.def (PARAM_INLINE_UNIT_GROWTH): Likewise.

From-SVN: r221868
2015-04-04 21:07:46 +00:00
Ilya Enkovich 512470bb90 re PR driver/65444 (-z bndplt isn't passed to linker for -mmpx when building dynamic objects)
gcc/
	PR driver/65444
	* config/i386/linux-common.h (MPX_SPEC): New.
	(CHKP_SPEC): Add MPX_SPEC.
	* doc/invoke.texi (-fcheck-pointer-boudns): Document
	possible issues with '-z bndplt' support in linker.

libmpx/

	PR driver/65444
	* configure.ac: Add check for '-z bndplt' support
	by linker. Add link_mpx output variable.
	* libmpx.spec.in (link_mpx): New.
	* configure: Regenerate.

From-SVN: r221831
2015-04-02 08:15:49 +00:00
Martin Jambor af21714c7b re PR ipa/65478 (crafty performance regression)
PR ipa/65478
	* params.def (PARAM_IPA_CP_RECURSION_PENALTY) : New.
	(PARAM_IPA_CP_SINGLE_CALL_PENALTY): Likewise.
	* ipa-prop.h (ipa_node_params): New flags node_within_scc and
	node_calling_single_call.
	* ipa-cp.c (count_callers): New function.
	(set_single_call_flag): Likewise.
	(initialize_node_lattices): Count callers and set single_flag_call if
	necessary.
	(incorporate_penalties): New function.
	(good_cloning_opportunity_p): Use it, dump new flags.
	(propagate_constants_topo): Set node_within_scc flag if appropriate.
	* doc/invoke.texi (ipa-cp-recursion-penalty,
	ipa-cp-single-call-pentalty): Document.

From-SVN: r221763
2015-03-29 15:38:52 +00:00
Bin Cheng 2301ca745e arm.opt (print_tune_info): New option.
* config/arm/arm.opt (print_tune_info): New option.
	* config/arm/arm.c (arm_print_tune_info): New function.
	(arm_file_start): Call arm_print_tune_info.
	* config/arm/arm-protos.h (struct tune_params): Add comment.
	* doc/invoke.texi (@item -mprint-tune-info): New item.
	(-mtune): mention it in ARM Option Summary.

From-SVN: r221650
2015-03-25 05:53:55 +00:00
Sandra Loosemore 4460b2dc61 cpp.texi (Search Path): Hyphenate "command-line" when used as an adjective.
2015-03-22  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/cpp.texi (Search Path): Hyphenate "command-line" when used
	as an adjective.
	(System Headers): Likewise.
	(Ifdef): Likewise.
	(Traditional macros): Likewise.
	(Invocation): Likewise.
	(Option Index): Likewise.
	* doc/cppopts.texi (-M): Likewise.
	(-finput-charset): Likewise.
	(--help): Likewise.
	* doc.invoke.texi (AVR Options): Likewise.
	(V850 Options): Likewise.

From-SVN: r221583
2015-03-22 21:12:06 -04:00
Sandra Loosemore 6d5c05f0eb invoke.texi (-fno-diagnostics-show-caret): Fix usage of "the @option{...}".
2015-03-21  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (-fno-diagnostics-show-caret): Fix
	usage of "the @option{...}".
	(-Wopenmp-simd): Likewise.
	(-fsanitize-recover): Likewise.
	(-fsanitize-undefined-trap-on-error): Likewise.
	(-flto): Likewise.
	(tracer-dynamic-coverage-feedback): Likewise.
	(reorder-block-duplicate-feedback): Likewise.
	(loop-unroll-jam-size): Likewise.
	(-B): Likewise.
	(-I-): Likewise.
	(-mabs=legacy): Likewise.
	(-mupper-regs-df): Likewise.
	(-mupper-regs-sf): Likewise.
	(-mpointers-to-nested-functions): Likewise.

From-SVN: r221564
2015-03-21 19:30:54 -04:00
Sandra Loosemore 7651042ec6 invoke.texi (-fcheck-pointer-bounds): Copy-edit, add additional index entries and cross-references.
2015-03-21  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (-fcheck-pointer-bounds): Copy-edit, add
	additional index entries and cross-references.
	(-fchkp-check-incomplete-type): Likewise.
	(-fchkp-first-field-has-own-bounds): Likewise.
	(-fchkp-narrow-to-innermost-array): Likewise.
	(-fchkp-use-fast-string-functions): Likewise.
	(-fchkp-use-nochk-string-functions): Likewise.
	(-fchkp-use-static-const-bounds): Likewise.
	(-fchkp-treat-zero-dynamic-size-as-infinite): Likewise.
	(-fchkp-instrument-marked-only): Likewise.
	(-fchkp-use-wrappers): Likewise.
	(-static-libmpx): Likewise.
	(-static-libmpxwrappers): Likewise.
	* doc/extend.texi (bnd_legacy): Likewise.
	(bnd_instrument): Likewise.
	(bnd_variable_size): Likewise.
	(Pointer Bounds Checker builtins): Likewise.

From-SVN: r221558
2015-03-21 14:40:55 -04:00
Jason Merrill 7cb7357360 re PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)
PR c++/65046
	Automatically propagate ABI tags to variables and functions
	from their (return) type.
	* class.c (check_tag): Handle variables and functions.
	(mark_or_check_attr_tags): Split out from find_abi_tags_r.
	(mark_or_check_tags): Likewise.
	(mark_abi_tags): Use it.  Rename from mark_type_abi_tags.
	(check_abi_tags): Add single argument overload for decls.
	Handle inheriting tags for decls.
	* mangle.c (write_mangled_name): Call it.
	(mangle_return_type_p): Split out from write_encoding.
	(unmangled_name_p): Split out from write_mangled_name.
	(write_mangled_name): Ignore abi_tag on namespace.
	* cp-tree.h (NAMESPACE_IS_INLINE): Replace NAMESPACE_ABI_TAG.
	* parser.c (cp_parser_namespace_definition): Set it.
	* name-lookup.c (handle_namespace_attrs): Use arguments. Warn
	about abi_tag attribute on non-inline namespace.
	* tree.c (check_abi_tag_args): Split out from handle_abi_tag_attribute.
	(handle_abi_tag_attribute): Allow tags on variables.

From-SVN: r221521
2015-03-19 15:31:48 -04:00
Jakub Jelinek 43939937e8 re PR target/65222 (-mtune= or -march=: Not all options not documented: slm, knl, shanghai, istanbul)
PR target/65222
	* doc/invoke.texi: Add knl as x86 -march=/-mtune= CPU type.

From-SVN: r221489
2015-03-18 14:47:47 +01:00
Georg-Johann Lay 076d86f3d2 re PR target/65296 ([avr] fix various issues with specs file generation)
PR target/65296
	* config/avr/avr.opt (-nodevicelib): New option.
	* doc/invoke.texi (AVR Options): Document it.
	* config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC) [avr1]: Don't link
	libgcc.a, libc.a, libm.a.
	* config/avr/specs.h: Same.
	* config/avr/gen-avr-mmcu-specs.c (print_mcu): Don't print specs
	which don't (directly) depend on the device.  Print more help.
	(*avrlibc_devicelib) [-nodevicelib]: Don't link libdev.a.
	(*cpp): Don't define __AVR_DEV_LIB_NAME__.
	* config/avr/driver-avr.c: Remove -nodevicelib from option list in
	case of an error.
	(avr_devicespecs_file): Use suffix "%s" instead of absolute path
	for specs file name.
	* config/avr/avr-arch.h (avr_mcu_t) [.library_name]: Remove.
	* config/avr/avr-mcus.def: Adjust initializers and comments.

From-SVN: r221475
2015-03-17 10:34:11 +00:00
Dominik Vogt f8af0e3050 S/390: Hotpatching fixes.
2015-03-02  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	    * config/s390/s390.c (s390_reorg): Move code to output nops after label
	    to s390_reorg ().
	    (s390_asm_output_function_label): Likewise.
	    * config/s390/s390.c (s390_asm_output_function_label):
	    Fix function label alignment with -mhtopatch.
	    * config/s390/s390.md ("unspecv"): New values UNSPECV_NOP_2_BYTE,
	    UNSPECV_NOP_4_BYTE and UNSPECV_NOP_6_BYTE
	    ("nop_2_byte"): New define_insn.
	    ("nop_4_byte"): Likewise.
	    ("nop_6_byte"): Likewise.
	    * doc/extend.texi (hotpatch): hotpatch attribute doc fixes.
	    * doc/invoke.texi (-mhotpatch): -mhotpatch doc fixes.

2015-03-02  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	    * gcc.target/s390/hotpatch-21.c: New test for hotpatch alignment.
	    * gcc.target/s390/hotpatch-22.c: Likewise.
	    * gcc.target/s390/hotpatch-23.c: Likewise.
	    * gcc.target/s390/hotpatch-24.c: Likewise.
	    * gcc.target/s390/hotpatch-2.c: Also check hotpatch alignment.
	    * gcc.target/s390/hotpatch-1.c: Update expected output.
	    * gcc.target/s390/hotpatch-2.c: Likewise.
	    * gcc.target/s390/hotpatch-3.c: Likewise.
	    * gcc.target/s390/hotpatch-4.c: Likewise.
	    * gcc.target/s390/hotpatch-5.c: Likewise.
	    * gcc.target/s390/hotpatch-6.c: Likewise.
	    * gcc.target/s390/hotpatch-7.c: Likewise.
	    * gcc.target/s390/hotpatch-8.c: Likewise.
	    * gcc.target/s390/hotpatch-9.c: Likewise.
	    * gcc.target/s390/hotpatch-10.c: Likewise.
	    * gcc.target/s390/hotpatch-11.c: Likewise.
	    * gcc.target/s390/hotpatch-12.c: Likewise.
	    * gcc.target/s390/hotpatch-13.c: Likewise.
	    * gcc.target/s390/hotpatch-14.c: Likewise.
	    * gcc.target/s390/hotpatch-15.c: Likewise.
	    * gcc.target/s390/hotpatch-16.c: Likewise.
	    * gcc.target/s390/hotpatch-17.c: Likewise.
	    * gcc.target/s390/hotpatch-18.c: Likewise.
	    * gcc.target/s390/hotpatch-19.c: Likewise.

From-SVN: r221381
2015-03-12 11:13:40 +00:00
Sandra Loosemore 8648c55f3b invoke.texi (-fgnu89-inline): Remove discussion about old GCC versions.
2015-03-11  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (-fgnu89-inline): Remove discussion about 
	old GCC versions.
	(-fabi-compat-version): Likewise.
	(-ffriend-injection): Likewise.
	(-Wdeclaration-after-statement): Likewise.
	(-fomit-frame-pointer): Likewise.
	(-ftree-coalesce-inlined-vars): Likewise.
	(-fvisibility=): Likewise.
	* doc/extend.texi (Typeof): Likewise.
	(Zero Length): Likewise.
	(Escaped Newlines): Likewise.
	(Compound Literals): Likewise.
	(Function Attributes): Likewise.
	(Label Attributes): Likewise.
	(Type Attributes): Likewise.
	(Function Names): Likewise.
	(Other Builtins): Likewise.
	(Function Specific Option Pragmas): Likewise.
	(C++ Interface): Likewise.

From-SVN: r221364
2015-03-11 19:11:19 -04:00
Georg-Johann Lay 0c9dc4ae59 re PR target/65296 ([avr] fix various issues with specs file generation)
gcc/
	PR target/65296
	* configure.ac [avr]: Check as for options -mrmw, --mlink-relax.
	* configure: Regenerate.
	* config.in: Regenerate.
	* doc/invoke.texi (AVR Options) [-mrmw]: Document it.
	[-mn-flash]: Document it.
	[__AVR_ARCH__]: Document avrtiny.
	* config/avr/gen-avr-mmcu-specs.c (config.h): Include it.
	(*asm_relax): Only define spec if HAVE_AS_AVR_MLINK_RELAX_OPTION.
	(*asm_rmw): Only define spec if HAVE_AS_AVR_MRMW_OPTION.
gcc/testsuite/
	PR target/65296
	* gcc.target/avr/tiny-memx: Use -mmcu instead of -march.
	* gcc.target/avr/tiny-caller-save.c: Same.

From-SVN: r221355
2015-03-11 18:51:09 +00:00
Andreas Krebbel 91d4a5ea68 S/390: Doc: Add missing cpu values z196, zEC12.
* doc/invoke.texi: Add missing cpu values (z196, zEC12).

From-SVN: r221353
2015-03-11 18:35:44 +00:00
Ilya Enkovich 226d62d2d1 c.opt (fchkp-use-wrappers): New.
* c-family/c.opt (fchkp-use-wrappers): New.
	* ipa-chkp.c (CHKP_WRAPPER_SYMBOL_PREFIX): New.
	(chkp_wrap_function): New.
	(chkp_build_instrumented_fndecl): Support wrapped
	functions.
	* doc/invoke.texi (-fcheck-pointer-bounds): New.
	(-fchkp-check-incomplete-type): New.
	(-fchkp-first-field-has-own-bounds): New.
	(-fchkp-narrow-bounds): New.
	(-fchkp-narrow-to-innermost-array): New.
	(-fchkp-optimize): New.
	(-fchkp-use-fast-string-functions): New.
	(-fchkp-use-nochk-string-functions): New.
	(-fchkp-use-static-bounds): New.
	(-fchkp-use-static-const-bounds): New.
	(-fchkp-treat-zero-dynamic-size-as-infinite): New.
	(-fchkp-check-read): New.
	(-fchkp-check-write): New.
	(-fchkp-store-bounds): New.
	(-fchkp-instrument-calls): New.
	(-fchkp-instrument-marked-only): New.
	(-fchkp-use-wrappers): New.
	(-static-libmpx): New.
	(-static-libmpxwrappers): New.

From-SVN: r221314
2015-03-10 09:46:11 +00:00
Marek Polacek 04fd785e38 re PR sanitizer/65280 (-fsanitize=bounds does not detect out-of-bounds access)
PR sanitizer/65280
	* doc/invoke.texi: Update description of -fsanitize=bounds.

	* c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
	before trying to figure out whether we have a flexible array member.

	* c-c++-common/ubsan/bounds-1.c: Add testing of flexible array
	member-like arrays.
	* c-c++-common/ubsan/bounds-8.c: New test.
	* c-c++-common/ubsan/bounds-9.c: New test.
	* gcc.dg/ubsan/bounds-2.c: New test.

Co-Authored-By: Martin Uecker <uecker@eecs.berkeley.edu>

From-SVN: r221250
2015-03-06 23:44:56 +00:00
Michael Meissner 0eef284e88 PR 65138/target
2015-03-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR 65138/target
	* config/rs6000/rs6000-cpus.def (powerpc64le): Add new generic
	processor type for 64-bit little endian PowerPC.

	* config/rs6000/rs6000.c (rs6000_option_override_internal): If
	-mdebug=reg, print TARGET_DEFAULT.  Fix logic to use
	TARGET_DEFAULT if there is no default cpu.  Fix -mdebug=reg
	printing built-in mask so it does not pass NULL pointers.

	* doc/invoke.texi (IBM RS/6000 and PowerPC options): Document
	-mcpu=powerpc64le.

From-SVN: r221132
2015-03-03 00:59:56 +00:00
Ulrich Drepper 0ce039659d invoke.texi (Options for Code Generation Conventions): Fix URL of DSO paper.
* doc/invoke.texi (Options for Code Generation Conventions):
        Fix URL of DSO paper.

From-SVN: r221125
2015-03-02 20:44:41 +00:00
Vladimir Makarov fb8a0e4094 re PR rtl-optimization/64317 (Ineffective allocation of PIC base register)
2015-02-27  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/64317
	* params.def (PARAM_LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New.
	* params.h (LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New.
	* lra-constraints.c: Include "params.h".
	(EBB_PROBABILITY_CUTOFF): Use
	LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF.
	(lra_inheritance): Use '<' instead of '<=' for
	EBB_PROBABILITY_CUTOFF.
	* doc/invoke.texi (lra-inheritance-ebb-probability-cutoff):
	Document change.

From-SVN: r221070
2015-02-27 22:02:05 +00:00
Marek Polacek 7631f0e27c re PR c/65040 (gcc-5 -Wformat broken)
PR c/65040
	* doc/invoke.texi: Update to reflect that -Wformat=2 doesn't enable
	-Wformat-signedness anymore.

	* c.opt (Wformat-signedness): Don't enable by -Wformat=2.

	* gcc.dg/pr65066.c: Use -Wformat -Wformat-signedness and not
	-Wformat=2.

From-SVN: r221061
2015-02-27 14:11:53 +00:00
Tom de Vries 98ce9490b0 Add fstdarg-opt
2015-02-18  Tom de Vries  <tom@codesourcery.com>

	* common.opt (fstdarg-opt): New option.
	* tree-stdarg.c (pass_stdarg::gate): Use flag_stdarg_opt.
	* doc/invoke.texi (@item Optimization Options): Add -fstdarg-opt.
	(@item -fstdarg-opt): New item.

From-SVN: r220800
2015-02-18 21:16:20 +00:00
Thomas Schwinge d77052881b Begin documenting the nvptx backend.
gcc/
	* doc/install.texi (nvptx-*-none): New section.
	* doc/invoke.texi (Nvidia PTX Options): Likewise.
	* config/nvptx/nvptx.opt: Update.

From-SVN: r220783
2015-02-18 09:31:18 +01:00
Oleg Endo f05911fb07 sh.opt (mcbranch-force-delay-slot): New option.
gcc/
	* config/sh/sh.opt (mcbranch-force-delay-slot): New option.
	* doc/invoke.texi (SH options): Document it.
	* config/sh/sh.c (sh_insn_length_adjustment): Check
	TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E.

gcc/testsuite/
	* gcc.target/sh/sh.exp (check_effective_target_sh1): New.
	* gcc.target/sh/force-cbranch-delay-slot.c: New.

From-SVN: r220774
2015-02-17 21:38:12 +00:00
H.J. Lu 3c99176a7f Add -fipa-cp-alignment
This patch adds -fipa-cp-alignment to provide a way to enable/disable
alignment discovery and propagation in IPA-CP.

gcc/

	* common.opt (fipa-cp-alignment): New.
	* ipa-cp.c (ipcp_store_alignment_results): Check
	flag_ipa_cp_alignment.
	* opts.c (default_options_table): Enable -fipa-cp-alignment for
	-O2.
	(enable_fdo_optimizations): Set x_flag_ipa_cp_alignment.
	* doc/invoke.texi: Document -fipa-cp-alignment.

gcc/testsuite/

	* gcc.dg/ipa/propalign-3.c: New test.

From-SVN: r220773
2015-02-17 13:25:56 -08:00
Sandra Loosemore e6f3f526b1 bugreport.texi: Adjust section titles throughout the file to use "Title Case".
2015-02-15  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/bugreport.texi: Adjust section titles throughout the file
	to use "Title Case".
	* doc/extend.texi: Likewise.
	* doc/gcov.texi: Likewise.
	* doc/implement-c.texi: Likewise.
	* doc/implement-cxx.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/objc.texi: Likewise.
	* doc/standards.texi: Likewise.
	* doc/trouble.texi: Likewise.

From-SVN: r220722
2015-02-15 22:47:54 -05:00
Jason Merrill f522930c8f common.opt (-flifetime-dse): New.
gcc/
	* common.opt (-flifetime-dse): New.
gcc/cp/
	* decl.c (begin_destructor_body): Condition clobber on
	-flifetime-dse.

From-SVN: r220657
2015-02-12 15:28:41 -05:00
David Wohlferd 6dc6e7d061 invoke.texi (x86 Options [-masm=dialect]): Add cross-references to inline asm.
2015-02-10  David Wohlferd  <dw@LimeGreenSocks.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (x86 Options [-masm=dialect]): Add cross-references
	to inline asm.  List dialects in proper order.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r220605
2015-02-10 21:28:59 -05:00