130167 Commits

Author SHA1 Message Date
Kaushik Phatak
a4d6bf7e9f RL78 64bit double support added
From-SVN: r211017
2014-05-28 12:23:15 +00:00
Kaushik Phatak
9636088816 RL78 64bit double support added
From-SVN: r211016
2014-05-28 12:22:19 +00:00
Rainer Orth
3c698bf09b Centralise clearing hardware capabilities with Sun ld
gcc:
	* configure.ac ($gcc_cv_ld_clearcap): New test.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/sol2.opt (mclear-hwcap): New option.
	* config/sol2.h (LINK_CLEARCAP_SPEC): Define.
	* config/sol2-clearcap.map: Moved here from
	testsuite/gcc.target/i386/clearcap.map.
	* config/sol2-clearcapv2.map: Move here from
	gcc.target/i386/clearcapv2.map.
	* config/t-sol2 (install): Depend on install-clearcap-map.
	(install-clearcap-map): New target.
	* doc/invoke.texi (Option Summary, Solaris 2 Options): Document
	-mclear-hwcap.

	gcc/testsuite:
	* lib/clearcap.exp: New file.
	* gcc.dg/vect/vect.exp: Load clearcap.exp.
	Remove clearcap_ldflags handling.
	Call clearcap-init, clearcap-finish.
	* gcc.target/i386/i386.exp: Likewise.
	* gcc.target/i386/clearcap.map: Move to ../config/sol2-clearcap.map.
	* gcc.target/i386/clearcapv2.map: Move to
	../config/sol2-clearcapv2.map.
	* gcc.target/x86_64/abi/avx/abi-avx.exp: Likewise.
	* gcc.target/x86_64/abi/avx512f/abi-avx512f.exp: Likewise.

	libitm:
	* acinclude.m4 (LIBITM_CHECK_LINKER_HWCAP): Check for
	-mclear-hwcap instead.
	* configure: Regenerate.
	* clearcap.map: Remove.

From-SVN: r211014
2014-05-28 11:32:54 +00:00
Richard Biener
4c8bd90f9f hwint.h (*_HALF_WIDE_INT*): Move to ...
2014-05-28  Richard Biener  <rguenther@suse.de>

	* hwint.h (*_HALF_WIDE_INT*): Move to ...
	* wide-int.cc (HOST_BITS_PER_HALF_WIDE_INT, HOST_HALF_WIDE_INT):
	... here and remove the rest.
	* hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.

From-SVN: r211013
2014-05-28 11:07:48 +00:00
Richard Biener
a896172d19 re PR tree-optimization/61335 (wrong code with -O2 -fbounds-check)
2014-05-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61335
	* tree-vrp.c (vrp_visit_phi_node): If the compare of old and
	new range fails, drop to varying.

	* gfortran.dg/pr61335.f90: New testcase.

From-SVN: r211012
2014-05-28 11:07:06 +00:00
Olivier Hainque
49664873f8 vxworks.h (VXCPU_FOR_8548): New.
2014-05-28  Olivier Hainque  <hainque@adacore.com>

        * config/rs6000/vxworks.h (VXCPU_FOR_8548): New. Default to PPC85XX.
        (CPP_SPEC): Add entry for -mcpu=8548.
        * config/rs6000/vxworksae.h: Reinstate. Override VXCPU_FOR_8548.
        * config.gcc (powerpc-wrs-vxworksae, tm_file): Add back vxworksae.h.

From-SVN: r211011
2014-05-28 09:51:07 +00:00
Tom de Vries
b8c6a45ab7 -fuse-caller-save - Support in lra
2014-05-28  Tom de Vries  <tom@codesourcery.com>

	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
	* lra.c (initialize_lra_reg_info_element): Add init of
	actual_call_used_reg_set field.
	(lra): Call lra_create_live_ranges before lra_inheritance for
	-fuse-caller-save.
	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
	-fuse-caller-save.
	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
	instead of call_used_reg_set for -fuse-caller-save.
	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211010
2014-05-28 09:43:52 +00:00
Radovan Obradovic
dbe7d9e3ff -fuse-caller-save - Add documentation
2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
	gccoptlist.
	(@item -fuse-caller-save): New item.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r211009
2014-05-28 09:43:41 +00:00
Radovan Obradovic
5c989bbf87 -fuse-caller-save - Enable by default at O2 and higher
2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry with
	OPT_fuse_caller_save.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r211008
2014-05-28 09:43:32 +00:00
Radovan Obradovic
c2ba7e7a62 -fuse-caller-save - Use collected register usage information
2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* df-scan.c (df_get_call_refs): Use get_call_reg_set_usage.
	* caller-save.c (setup_save_areas, save_call_clobbered_regs): Use
	get_call_reg_set_usage.
	* resource.c (mark_set_resources, mark_target_live_regs): Use
	get_call_reg_set_usage.
	* ira-int.h (struct ira_allocno): Add crossed_calls_clobbered_regs
	field.
	(ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS): Define.
	* ira-lives.c (process_bb_node_lives): Use get_call_reg_set_usage.
	Calculate ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	* ira-build.c (ira_create_allocno): Init
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	(create_cap_allocno, propagate_allocno_info)
	(propagate_some_info_from_allocno)
	(copy_info_to_removed_store_destinations): Handle
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	* ira-costs.c (ira_tune_allocno_costs): Use
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS to adjust costs.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r211007
2014-05-28 09:43:21 +00:00
Radovan Obradovic
27c07cc5d0 -fuse-caller-save - Collect register usage information
2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* cgraph.h (struct cgraph_rtl_info): Add function_used_regs
	and function_used_regs_valid fields.
	* final.c: Move include of hard-reg-set.h to before rtl.h to declare
	find_all_hard_reg_sets.
	(collect_fn_hard_reg_usage, get_call_fndecl, get_call_cgraph_rtl_info)
	(get_call_reg_set_usage): New function.
	(rest_of_handle_final): Use collect_fn_hard_reg_usage.
	* regs.h (get_call_reg_set_usage): Declare.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r211006
2014-05-28 09:43:11 +00:00
Georg-Johann Lay
ca48e5efae re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
gcc/
	PR libgcc/61152
	* config/dbx.h (License): Add Runtime Library Exception.
	* config/newlib-stdint.h (License): Same.
	* config/rtems.h (License): Same
	* config/initfini-array.h (License): Same
	* config/v850/v850.h (License): Same.
	* config/v850/v850-opts.h (License): Same
	* config/v850/rtems.h (License): Same.

From-SVN: r211004
2014-05-28 09:33:04 +00:00
Paolo Carlini
171fa27eb3 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* Fix typo in ChangeLog entry.

From-SVN: r211003
2014-05-28 08:59:32 +00:00
Georg-Johann Lay
92747f7d22 re PR target/61044 (Computed goto on AVR fails to use word-addressing)
PR target/61044
	* doc/extend.texi (Local Labels): Note that label differences are
	not supported for AVR.

From-SVN: r210999
2014-05-28 08:42:25 +00:00
Richard Sandiford
c8912e539b rtl.h (set_for_reg_notes): Declare.
2014-05-26  Richard Sandiford  <rdsandiford@googlemail.com>
            Olivier Hainque  <hainque@adacore.com>

        * rtl.h (set_for_reg_notes): Declare.
        * emit-rtl.c (set_for_reg_notes): New function.
        (set_unique_reg_note): Use it.
        * optabs.c (add_equal_note): Likewise


Co-Authored-By: Olivier Hainque <hainque@adacore.com>

From-SVN: r210998
2014-05-28 08:41:27 +00:00
Andrew Pinski
9c6ab05f6a aarch64.md (stack_protect_set_<mode>): Use <w> for the register in assembly template.
2014-05-27  Andrew Pinski  <apinski@cavium.com>

	* config/aarch64/aarch64.md (stack_protect_set_<mode>):
	Use <w> for the register in assembly template.
	(stack_protect_test): Use the mode of operands[0] for the
	result.
	(stack_protect_test_<mode>): Use <w> for the register
	in assembly template.

From-SVN: r210996
2014-05-27 18:24:53 -07:00
DJ Delorie
69c7a374a1 rx.c (add_vector_labels): New.
* config/rx/rx.c (add_vector_labels): New.
(rx_output_function_prologue): Call it.
(rx_handle_func_attribute): Don't require empty arguments.
(rx_handle_vector_attribute): New.
(rx_attribute_table): Add "vector" attribute.
* doc/extend.texi (interrupt, vector): Document new/changed
RX-specific attributes.

* config/rx/rx.c (rx_adjust_insn_length): Skip for non-insns.

From-SVN: r210995
2014-05-27 20:37:00 -04:00
GCC Administrator
fa07538edf Daily bump.
From-SVN: r210994
2014-05-28 00:17:19 +00:00
Ian Lance Taylor
25e4b0497b libgo/runtime: fix unused-result warning
Result of runtime_write is ignored, causing
an unused-result result warning (error in my
case, with -Werror=unused-result).

From-SVN: r210987
2014-05-27 22:01:21 +00:00
Eric Botcazou
b8aac16d88 * gnat.dg/aliasing1.adb (dg-final): Robustify pattern matching.
From-SVN: r210982
2014-05-27 20:37:09 +00:00
Eric Botcazou
5e67547dd5 double-int.c (div_and_round_double): Use the proper predicate to detect a negative quotient.
* double-int.c (div_and_round_double) <ROUND_DIV_EXPR>: Use the proper
	predicate to detect a negative quotient.

From-SVN: r210981
2014-05-27 20:30:18 +00:00
Marek Polacek
5c1bc275f4 re PR c/56724 (sub-optimal location in error)
PR c/56724
	* c-typeck.c (convert_arguments): Get location of a parameter.  Change
	error and warning calls to error_at and warning_at.  Pass location of
	a parameter to it.  Call warning_at with OPT_Wtraditional_conversion.
	(convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
	WARN_FOR_QUALIFIERS.  Pass expr_loc to those.

	* gcc.dg/pr56724-1.c: New test.
	* gcc.dg/pr56724-2.c: New test.
	* gcc.dg/wtr-conversion-1.c: Use -Wtraditional-conversion instead of
	-Wtraditional.
	* gcc.dg/dfp/wtr-conversion-1.c: Likewise.

From-SVN: r210980
2014-05-27 20:14:22 +00:00
Eric Botcazou
d378c07ebb fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2 to X CMP C2 -+ C1 transformation to...
* fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2
	to X CMP C2 -+ C1 transformation to EQ_EXPR/NE_EXPR.
	Add X - Y CMP 0 to X CMP Y transformation.
	(fold_binary_loc) <EQ_EXPR/NE_EXPR>: Remove same transformations.

From-SVN: r210979
2014-05-27 19:54:46 +00:00
Segher Boessenkool
3ce6c71537 stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT before printing.
* stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT
	before printing.

From-SVN: r210978
2014-05-27 20:33:57 +02:00
Steve Ellcey
112372291b mips.c: Add include of cgraph.h.
2014-05-27  Steve Ellcey  <sellcey@mips.com>

	* config/mips/mips.c: Add include of cgraph.h.

From-SVN: r210975
2014-05-27 15:59:31 +00:00
Richard Biener
4dd3be8165 vrp92.c: New testcase.
2014-05-27  Richard Biener  <rguenther@suse.de>

	* gcc.dg/tree-ssa/vrp92.c: New testcase.

From-SVN: r210974
2014-05-27 15:00:29 +00:00
Richard Biener
7ea7f668fc system.h (__STDC_FORMAT_MACROS): Define as very first thing.
2014-05-27  Richard Biener  <rguenther@suse.de>

	* system.h (__STDC_FORMAT_MACROS): Define as very first thing.

From-SVN: r210973
2014-05-27 13:36:29 +00:00
Marek Polacek
2ef321b15a re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)
PR testsuite/61319
	* c-c++-common/ubsan/float-cast.h: Conditionally define LLONG_MAX,
	LLONG_MIN, and ULLONG_MAX.

From-SVN: r210970
2014-05-27 11:41:45 +00:00
Georg-Johann Lay
c7eca9fe8a re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
PR libgcc/61152
	* config/arm/arm.h (License): Add note to COPYING.RUNTIME.
	* config/arm/arm-cores.def (License): Same.
	* config/arm/arm-opts.h (License): Same.
	* config/arm/aout.h (License): Same.
	* config/arm/bpabi.h (License): Same.
	* config/arm/elf.h (License): Same.
	* config/arm/linux-elf.h (License): Same.
	* config/arm/linux-gas.h (License): Same.
	* config/arm/netbsd-elf.h (License): Same.
	* config/arm/uclinux-eabi.h (License): Same.
	* config/arm/uclinux-elf.h (License): Same.
	* config/arm/vxworks.h (License): Same.

From-SVN: r210969
2014-05-27 11:37:49 +00:00
Jonathan Wakely
ecb249ddf2 re PR libstdc++/61329 (#include <regex> and _GLIBCXX_DEBUG causes multiple symbol definition.)
PR libstdc++/61329
	* include/bits/regex_automaton.tcc (_State_base::_M_print): Add
	inline specifier.
	(_State_base::_M_dot): Likewise.

From-SVN: r210968
2014-05-27 12:14:17 +01:00
Kyrylo Tkachov
7a10ea9f10 [ARM] Vectorise bswap* in aarch32.
* config/arm/neon.md (neon_bswap<mode>): New pattern.
	* config/arm/arm.c (neon_itype): Add NEON_BSWAP.
	(arm_init_neon_builtins): Handle NEON_BSWAP.
	Define required type nodes.
	(arm_expand_neon_builtin): Handle NEON_BSWAP.
	(arm_builtin_vectorized_function): Handle BUILTIN_BSWAP builtins.
	* config/arm/arm_neon_builtins.def (bswap): Define builtins.
	* config/arm/iterators.md (VDQHSD): New mode iterator.

	* lib/target-supports.exp (check_effective_target_vect_bswap):
	Specify arm*-*-* support.

From-SVN: r210967
2014-05-27 10:56:25 +00:00
Richard Biener
597f59975c tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Try using literal operands when comparing value-ranges failed.
2014-05-27  Richard Biener  <rguenther@suse.de>

	* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
	Try using literal operands when comparing value-ranges failed.

From-SVN: r210966
2014-05-27 10:32:39 +00:00
Richard Sandiford
f571b63f52 ira.c (commutative_operand): Adjust for change to recog_data.
gcc/
	* ira.c (commutative_operand): Adjust for change to recog_data.
	[Missing from previous commit.]

From-SVN: r210965
2014-05-27 10:23:20 +00:00
Richard Sandiford
4cc8d9d2df system.h (TEST_BIT): New macro.
gcc/
	* system.h (TEST_BIT): New macro.
	* recog.h (alternative_mask): New type.
	(ALL_ALTERNATIVES, ALTERNATIVE_BIT): New macros.
	(recog_data_d): Replace alternative_enabled_p array with
	enabled_alternatives.
	(target_recog): New structure.
	(default_target_recog, this_target_recog): Declare.
	(get_enabled_alternatives, recog_init): Likewise.
	* recog.c (default_target_recog, this_target_recog): New variables.
	(get_enabled_alternatives): New function.
	(extract_insn): Use it.
	(recog_init): New function.
	(preprocess_constraints, constrain_operands): Adjust for change to
	recog_data.
	* postreload.c (reload_cse_simplify_operands): Likewise.
	* reload.c (find_reloads): Likewise.
	* ira-costs.c (record_reg_classes): Likewise.
	* ira-lives.c (single_reg_class): Likewise.  Fix bug in which
	all alternatives after a disabled one would be skipped.
	(ira_implicitly_set_insn_hard_regs): Likewise.
	* ira.c (ira_setup_alts): Adjust for change to recog_data.
	* lra-int.h (lra_insn_recog_data): Replace alternative_enabled_p
	with enabled_alternatives.
	* lra.c (free_insn_recog_data): Update accordingly.
	(lra_update_insn_recog_data): Likewise.
	(lra_set_insn_recog_data): Likewise.  Use get_enabled_alternatives.
	* lra-constraints.c (process_alt_operands): Likewise.  Handle
	only_alternative as part of the enabled mask.
	* target-globals.h (this_target_recog): Declare.
	(target_globals): Add a recog field.
	(restore_target_globals): Restore this_target_recog.
	* target-globals.c: Include recog.h.
	(default_target_globals): Initialize recog field.
	(save_target_globals): Likewise.
	* reginfo.c (reinit_regs): Call recog_init.
	* toplev.c (backend_init_target): Likewise.

From-SVN: r210964
2014-05-27 10:06:22 +00:00
Richard Sandiford
9921417d94 gencodes.c (main): Make LAST_INSN_CODE higher than any insn code, rather than any named insn's code.
gcc/
	* gencodes.c (main): Make LAST_INSN_CODE higher than any insn code,
	rather than any named insn's code.

From-SVN: r210963
2014-05-27 10:05:55 +00:00
Uros Bizjak
d9f99ec416 getcwd.c: Include stdlib.h.
* intrinsics/getcwd.c: Include stdlib.h.

From-SVN: r210962
2014-05-27 11:15:52 +02:00
Uros Bizjak
0389fbb55b declare-simd-1.f90: Require vect_simd_clones effective target.
* testsuite/libgomp.fortran/declare-simd-1.f90: Require
	vect_simd_clones effective target.
	* testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.

From-SVN: r210961
2014-05-27 11:14:53 +02:00
Georg-Johann Lay
a5024e01c1 re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
PR libgcc/61152
	* config/arm/arm-opts.h (License): Add GCC Runtime Library Exception.
	* config/arm/arm-cores.def (License): Same.

From-SVN: r210959
2014-05-27 08:41:24 +00:00
Dominique d'Humieres
8e90d1866d re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)
2014-05-27  Dominique d'Humieres <dominiq@lps.ens.fr>

	PR testsuite/61319
	* c-c++-common/ubsan/float-cast-overflow-1.c: Make the sign of
	-nan optional.
	* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.

From-SVN: r210958
2014-05-27 10:36:37 +02:00
Paolo Carlini
ce76275442 2014-05-27 Paolo Carlini <paolo.carlini@oracle.com>
* Fix typo in the last ChangeLog entry.

From-SVN: r210957
2014-05-27 08:02:01 +00:00
Jan Hubicka
50efcce1d5 tree.h (decl_comdat_group): Declare.
* tree.h (decl_comdat_group): Declare.
	* cgraph.h (symtab_in_same_comdat_p): Move offline to ...
	* tree.c (decl_comdat_group): Here.

From-SVN: r210956
2014-05-27 04:18:38 +00:00
GCC Administrator
48f5146b1a Daily bump.
From-SVN: r210955
2014-05-27 00:17:17 +00:00
Uros Bizjak
68c1d586fa * ChangeLog-2013: Correct an old entry.
From-SVN: r210951
2014-05-26 23:49:19 +02:00
Uros Bizjak
d7a660468a ssa-fre-40.c: Cleanup fre1 tree dump.
* gcc.dg/tree-ssa/ssa-fre-40.c: Cleanup fre1 tree dump.

From-SVN: r210950
2014-05-26 23:07:58 +02:00
Janne Blomqvist
d74fd3c72b Introduce xrealloc, use it.
2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

	* libgfortran.h (xrealloc): New prototype.
	* runtime/memory.c (xrealloc): New function.
	* io/fbuf.c (fbuf_alloc): Use xrealloc.
	* io/list_read.c (push_char_default): Likewise.
	(push_char4): Likewise.

From-SVN: r210948
2014-05-26 23:56:45 +03:00
Tobias Burnus
b4fb1c2135 gfortran.texi (Project Status): Fix broken link.
2014-05-26  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (Project Status): Fix broken link.

From-SVN: r210946
2014-05-26 21:03:17 +02:00
Richard Sandiford
3e26c8f609 re PR rtl-optimization/61222 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu in decompose, at rtl.h:1456)
gcc/
	PR rtl-optimization/61222
	* combine.c (simplify_shift_const_1): When moving a PLUS outside
	the shift, truncate the PLUS operand to the result mode.

gcc/testsuite/
	PR rtl-optimization/61222
	* gcc.c-torture/compile/pr61222-1.c: New test.
	* gcc.c-torture/compile/pr61222-2.c: Likewise.

From-SVN: r210945
2014-05-26 18:50:55 +00:00
Uros Bizjak
cf0ff174cd pr61191.c: Fix dg-error directives.
* c-c++-common/cilk-plus/AN/pr61191.c: Fix dg-error directives.

From-SVN: r210944
2014-05-26 20:44:18 +02:00
Uros Bizjak
06a5ec8310 pr61278_1.c: Remove dg directives.
* gcc.dg/lto/pr61278_1.c: Remove dg directives.

From-SVN: r210939
2014-05-26 20:23:36 +02:00
Janne Blomqvist
ab75303f7d PR 61310 Rewrite implementation of CTIME and FDATE intrinsics.
2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/61310
	* intrinsics.texi (CTIME): Remove mention of locale-dependent
	behavior.

2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/61310
	* intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
	instead of strftime.
	(fdate): Use gf_ctime.
	(fdate_sub): Likewise.
	(ctime): Likewise.
	(ctime_sub): Likewise.

From-SVN: r210938
2014-05-26 21:17:13 +03:00