136952 Commits

Author SHA1 Message Date
Andreas Krebbel
d407bcf82b S/390: xfail ssa-dom-cse-2
gcc/testsuite:
	* gcc.dg/tree-ssa/ssa-dom-cse-2.c:

From-SVN: r221210
2015-03-05 09:58:32 +00:00
Andreas Krebbel
945db334f2 S/390: var-expand1 use default values for peel/unroll limits
gcc/testsuite/:
	* gcc.dg/var-expand1.c: Force max-completely-peel-times and
	max-unroll-times back to defaults for s390.

From-SVN: r221209
2015-03-05 09:56:42 +00:00
Paolo Carlini
9b864d18e8 2015-03-05 Paolo Carlini <paolo.carlini@oracle.com>
Fix last commit.

From-SVN: r221208
2015-03-05 09:21:39 +00:00
Paolo Carlini
512141f41a re PR c++/64665 (Overload resolution not working with std::initializer_list<std::string> and bool)
2015-03-05  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64665
	* g++.dg/cpp0x/initlist92.C: New.

From-SVN: r221207
2015-03-05 09:15:58 +00:00
Richard Biener
b162e1e749 re PR tree-optimization/65310 (vectorizer uses wrong alignment)
2015-03-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65310
	* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
	Properly preserve alignment of the base of the access.

	* gcc.dg/vect/pr65310.c: New testcase.

From-SVN: r221206
2015-03-05 09:14:01 +00:00
Paolo Carlini
637e43b8e1 re PR c++/64834 (Captured variable not available in unevaluated context in a lambda with auto argument)
2015-03-05  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64834
	* g++.dg/cpp1y/lambda-generic-uneval1.C: New.

From-SVN: r221205
2015-03-05 08:48:22 +00:00
Richard Biener
58ed456cb6 re PR ipa/65270 (issues with merging memory accesses from different code paths)
2015-03-05  Richard Biener  <rguenther@suse.de>

	PR ipa/65270
	* ipa-icf-gimple.c (func_checker::compare_memory_operand):
	Compare dependence info.

From-SVN: r221204
2015-03-05 08:43:13 +00:00
Richard Biener
b3406fa083 re PR middle-end/65233 (ICE (segfault) on arm-linux-gnueabihf and aarch64-linux-gnu)
2015-03-05  Richard Biener  <rguenther@suse.de>

	PR middle-end/65233
	* ipa-polymorphic-call.c: Include tree-ssa-operands.h and
	tree-into-ssa.h.
	(walk_ssa_copies): Revert last chage.  Instead do not walk
	SSA names registered for SSA update.

From-SVN: r221203
2015-03-05 08:37:40 +00:00
GCC Administrator
41616a5e38 Daily bump.
From-SVN: r221202
2015-03-05 00:16:12 +00:00
Jan Hubicka
fe75bd2069 re PR ipa/65270 (issues with merging memory accesses from different code paths)
PR ipa/65270
	* ipa-icf.c (sem_item::compare_cgraph_references): Compare
	vtable references for their containing type.
	(sem_function::equals_wpa): Compare TYPE_RESTRICT
	and type attributes.

From-SVN: r221199
2015-03-05 00:10:29 +00:00
Eric Botcazou
d10a61fbe8 fold-const.c (round_up_loc): Cast divisor to signed on all paths before negating it.
* fold-const.c (round_up_loc): Cast divisor to signed on all paths
	before negating it.
	* stor-layout.c (finalize_record_size): Revert latest change.

From-SVN: r221198
2015-03-04 22:33:41 +00:00
Andreas Tobler
8ed4390c3f t-freebsd64: Remove 32-bit soft-float multilibs.
2015-03-04  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/rs6000/t-freebsd64: Remove 32-bit soft-float multilibs.

From-SVN: r221197
2015-03-04 22:56:46 +01:00
Jan Hubicka
a6a543bfa8 cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite for correct comdat handling.
* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite
	for correct comdat handling.
	(cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
	Likewise.
	* cgraph.h (call_for_symbol_and_aliases): Fix formating.
	(used_from_object_file_p_worker): Remove.
	(cgraph_node::only_called_directly_or_alised): Add
	used_from_object_file_p.
	* ipa-inline-analysis.c (growth_likely_positive): Optimie.
	* ipa-inline-transform.c (can_remove_node_now_p_1): Use
	can_remove_if_no_direct_calls_and_refs_p.

From-SVN: r221193
2015-03-04 20:28:08 +00:00
Joseph Myers
d720e658eb * de.po: Update.
From-SVN: r221191
2015-03-04 17:45:00 +00:00
Markus Trippelsdorf
44d952440e re PR target/65261 (bootstrap-ubsan ppc64le: gcc/libcpp/lex.c:552:30: runtime error: load of misaligned address 0x01002172dfc6 for type 'const uchar', which requires 16 byte alignment)
Fix PR65261

Running bootstrap-ubsan on ppc64le shows many instances of:

  libcpp/lex.c:552:30: runtime error: load of misaligned address
  0x01001f31d37a for type 'const uchar', which requires 16 byte alignment

But the unaligned vector loads are intended in this case, because they
are preferable to forced-alignment on POWER8. So just silence the ubsan
errors.

2015-03-02  Markus Trippelsdorf  <markus@trippelsdorf.de>

include/
	PR target/65261
	* ansidecl.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro.

libcpp/
	PR target/65261
	* lex.c (search_line_fast): Silence ubsan errors.

From-SVN: r221190
2015-03-04 17:28:56 +00:00
Jonathan Wakely
b6584a72ac re PR libstdc++/64797 (22_locale/conversions/string/2.cc FAILs)
PR libstdc++/64797
	* include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
	incomplete multibyte sequences correctly.
	* include/std/codecvt (codecvt_utf8, codecvt_utf16,
	codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
	* src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
	Define constants.
	(is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
	Define convenience functions.
	(read_utf8_code_point): Return relevant constant to distinguish
	incomplete characters from invalid sequences.
	(read_utf16_code_point): Likewise. Check for invalid sequences.
	(ucs4_in, utf16_in): Use incomplete_mb_character constant.
	(utf16_out): Check for invalid sequences.
	(utf16_span): Fix condition.
	(ucs2_out): Use is_high_surrogate.
	(ucs2_in): Use incomplete_mb_character constant and fix condition.
	* testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
	* testsuite/22_locale/conversions/buffer/1.cc: New.
	* testsuite/22_locale/conversions/string/2.cc: Use char16_t and
	char32_t instead of wchar_t.
	* testsuite/22_locale/conversions/string/3.cc: New.

From-SVN: r221189
2015-03-04 17:19:55 +00:00
Arnaud Charlet
d50a26f2ba [multiple changes]
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* sem_warn.adb: Minor reformatting.
	* init.c: Minor tweaks.

2015-03-04  Dmitriy Anisimko  <anisimko@adacore.com>

	* a-coinho-shared.adb: Fix clear of already empty holder.

2015-03-04  Robert Dewar  <dewar@adacore.com>

	* exp_unst.adb (Check_Dynamic_Type): Ignore library level types.
	(Check_Uplevel_Reference_To_Type): Ignore call inside generic.
	(Note_Uplevel_Reference): Ignore call inside generic.
	(Note_Uplevel_Reference): Fix check for no entity field.
	(Unnest_Subprogram): Ignore call inside generic.
	(Find_Current_Subprogram): Use Defining_Entity, not Defining_Unit_Name.
	(Visit_Node): Ignore calls to Imported subprograms.
	(Visit_Node): Fix problem in finding subprogram body in some cases.
	(Add_Form_To_Spec): Use Defining_Entity, not Defining_Unit_Name.

From-SVN: r221188
2015-03-04 16:00:57 +01:00
Arnaud Charlet
58009744b5 [multiple changes]
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* einfo.adb (Is_ARECnF_Entity): Removed.
	(Last_Formal): Remove special handling of Is_ARECnF_Entity.
	(Next_Formal): Remove special handling of Is_ARECnF_Entity.
	(Next_Formal_With_Extras): Remove special handling of Is_ARECnF_Entity.
	(Number_Entries): Minor reformatting.
	* einfo.ads (Is_ARECnF_Entity): Removed.
	* exp_unst.adb (Unnest_Subprogram): Remove setting of
	Is_ARECnF_Entity.
	(Add_Extra_Formal): Use normal Extra_Formal circuit.
	* sprint.adb (Write_Param_Specs): Properly handle case where
	there are no source formals, but we have at least one Extra_Formal
	present.

2015-03-04  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Resolve_Record_Aggregate,
	Add_Discriminant_Values): If the value is a reference to the
	current instance of an enclosing type, use its base type to check
	against prefix of attribute reference, because the target type
	may be otherwise constrained.

From-SVN: r221187
2015-03-04 15:56:45 +01:00
Ian Lance Taylor
e0601c0df9 * go.test/go-test.exp (go-gc-tests): Skip nilptr test on s390*.
From-SVN: r221186
2015-03-04 14:54:33 +00:00
Nick Clifton
b68686bf5e rl78.h (enum reg_class): Remove real registers from General register class.
* config/rl78/rl78.h (enum reg_class): Remove real registers from
	General register class.
	* config/rl78/rl78-real.md: Replace general register constraints
	with real+virtual register constraints.

From-SVN: r221185
2015-03-04 14:54:15 +00:00
Andreas Krebbel
4b9f07ebf3 S/390: Fix check for builtins valid with -mhtm
* gcc/config/s390/s390.c (s390_expand_builtin): Exlude non-htm
	builtins from checking for -mhtm option.

From-SVN: r221184
2015-03-04 14:43:14 +00:00
Arnaud Charlet
85799cb98e [multiple changes]
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* atree.h: Add entries for Flag287-Flag309.
	* einfo.adb: Add (unused) flags Flag287-Flag309.

2015-03-04  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Collect_Interfaces, Collect): When gathering
	interfaces of ancestors, handle properly a subtype of a private
	extension.

From-SVN: r221183
2015-03-04 12:51:48 +01:00
Arnaud Charlet
47a6f66054 [multiple changes]
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* einfo.adb (Is_ARECnF_Entity): New flag (ARECnF is an extra formal).
	(Next_Formal): Don't return ARECnF formal.
	(Last_Formal): Don't consider ARECnF formal.
	(Next_Formal_With_Extras): Do consider ARECnF formal.
	* einfo.ads (Is_ARECnF_Entity): New flag (ARECnF is an extra formal).
	* exp_unst.adb (Create_Entities): Set Is_ARECnF_Entity flag.

2015-03-04  Javier Miranda  <miranda@adacore.com>

	* exp_ch6.adb (Expand_Simple_Function_Return): When the returned
	object is a class-wide interface object and we generate the
	accessibility described in RM 6.5(8/3) then displace the pointer
	to the object to reference the base of the object (to get access
	to the TSD of the object).

From-SVN: r221182
2015-03-04 11:27:59 +01:00
Paolo Carlini
550671691e re PR c++/64227 (Forwarding an argument of a function template to a generic lambda causes a compiler crash)
2015-03-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64227
	* g++.dg/cpp1y/lambda-generic-ice1.C: New.

From-SVN: r221181
2015-03-04 10:20:23 +00:00
Arnaud Charlet
203876fcae [multiple changes]
2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Abstract_State): Use routine
	Malformed_State_Error to issue general errors.
	(Analyze_Pragma): Diagnose a syntax error related to a state
	declaration with a simple option.
	(Malformed_State_Error): New routine.

2015-03-04  Robert Dewar  <dewar@adacore.com>

	* a-strsup.adb (Super_Slice): Deal with super flat case.
	* einfo.ads: Minor reformatting.
	* s-imgdec.adb (Set_Decimal_Digits): Add comment about possibly
	redundant code.

2015-03-04  Claire Dross  <dross@adacore.com>

	* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
	a-cforse.ads, a-cofove.ads: Use Default_Initial_Condition on formal
	containers.

From-SVN: r221180
2015-03-04 11:01:40 +01:00
Arnaud Charlet
5264d0df90 Fix permission.
From-SVN: r221179
2015-03-04 10:59:38 +01:00
Arnaud Charlet
26f36fc9f6 [multiple changes]
2015-03-04  Ed Schonberg  <schonberg@adacore.com>

	* sem_warn.adb (Check_References): When checking for an unused
	in-out parameter of a class- wide type, use its type to determine
	whether it is private, in order to avoid a spurious warning when
	subprogram spec and body are in different units.

2015-03-04  Yannick Moy  <moy@adacore.com>

	* sem_attr.adb: Improve warning messages.

From-SVN: r221178
2015-03-04 10:58:41 +01:00
Robert Dewar
488f9623ba exp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest generic subprograms.
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* exp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest
	generic subprograms.
	* exp_unst.adb (Check_Dynamic_Type): Handle record types properly
	(Note_Uplevel_Reference): Ignore uplevel references to non-types
	(Get_Level): Consider only subprograms, not blocks.
	(Visit_Node): Set proper condition for generating ARECnF entity.
	Ignore indirect calls. Ignore calls to subprograms
	outside our nest.
	(Unnest_Subprogram): Minor changes in dealing with ARECnF entity.
	(Add_Form_To_Spec): Properly set Last_Entity field.
	(Unnest_Subprogram): Set current subprogram scope for analyze calls.
	Handle case of no uplevel refs in outer subprogram
	Don't mark uplevel entities as aliased.
	Don't deal with calls with no ARECnF requirement.

2015-03-04  Robert Dewar  <dewar@adacore.com>

	* s-valrea.adb (Scan_Real): Remove redundant tests from scaling loops.
	* s-imgdec.adb (Set_Decimal_Digits): Remove redundant Max
	operation in computing LZ.
	* sem_attr.adb: Minor typo fix

From-SVN: r221177
2015-03-04 10:57:07 +01:00
Arnaud Charlet
b6a56408a6 [multiple changes]
2015-03-04  Robert Dewar  <dewar@adacore.com>

	* exp_ch7.adb: Minor reformatting.
	* exp_unst.adb (Build_Tables): Fix minor glitch for no separate
	spec case.
	* erroutc.adb (Delete_Msg): add missing decrement of info msg counter.

2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch6.adb (Build_Pragma_Check_Equivalent): Suppress
	references to formal parameters subject to pragma Unreferenced.
	(Suppress_Reference): New routine.
	* sem_attr.adb (Analyze_Attribute): Reimplement the analysis
	of attribute 'Old. Attributes 'Old and 'Result now share
	common processing.
	(Analyze_Old_Result_Attribute): New routine.
	(Check_Placement_In_Check): Removed.
	(Check_Placement_In_Contract_Cases): Removed.
	(Check_Placement_In_Test_Case): Removed.
	(Check_Use_In_Contract_Cases): Removed.
	(Check_Use_In_Test_Case): Removed.
	(In_Refined_Post): Removed.
	(Is_Within): Removed.
	* sem_warn.adb (Check_Low_Bound_Tested): Code cleanup.
	(Check_Low_Bound_Tested_For): New routine.

2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch3.adb (Expand_N_Object_Declaration):
	Generate a runtime check to test the expression of pragma
	Default_Initial_Condition when the object is default initialized.

From-SVN: r221176
2015-03-04 10:54:19 +01:00
James Greenhalgh
2322588a71 [AArch64 Testsuite Obvious] Disable ipa-icf for testcases with common test bodies
gcc/testsuite/

	* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Add
	-fno-ipa-icf to dg-options
	* gcc.target/aarch64/vect_saddl_1.c: Likewise.
	* gcc.target/aarch64/vect_smlal_1.c: Likewise.

From-SVN: r221175
2015-03-04 09:32:02 +00:00
Paolo Carlini
bd8b8b5cae re PR c++/64398 (decltype in different contexts with similar expressions triggers segfault in GCC)
2015-03-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64398
	* g++.dg/cpp0x/decltype62.C: New.

From-SVN: r221174
2015-03-04 08:32:23 +00:00
Jan Hubicka
670654ef11 tree-sra.c (convert_callers): Use call_for_symbol_and_aliases.
* tree-sra.c (convert_callers): Use call_for_symbol_and_aliases.
	(struct ipa_sra_check_caller_data): Add has_thunk field.
	(ipa_sra_check_caller): Check for thunk.
	(ipa_sra_preliminary_function_checks): Give up on function with
	thunks.
	(ipa_early_sra): Use call_for_symbol_and_aliases.

From-SVN: r221171
2015-03-04 05:00:49 +00:00
GCC Administrator
e7dbcbc38b Daily bump.
From-SVN: r221169
2015-03-04 00:16:12 +00:00
Kaz Kojima
ac841cf7d0 re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compiling protobuf on sh4)
PR target/65249
* config/sh/sh.md (symGOT_load): Use R0 reg for operands[2] when
  called for __stack_chk_guard symbol.

From-SVN: r221165
2015-03-03 23:51:55 +00:00
DJ Delorie
f6115d44cc rl78-real.md (*addqi_real): Allow SADDR types for inc/dec.
* config/rl78/rl78-real.md (*addqi_real): Allow SADDR types for
inc/dec.
(*addhi3_real): Likewise.
* config/rl78/rl78-virt.md (*inc<mode>3_virt): Additional
pattern to match incrementing memory.
* config/rl78/predicates.md (rl78_1_2_operand): New.
* config/rl78/rl78.c (rl78_force_nonfar_3): Allow far mem-mem if
it's the same and only mem.
(rl78_alloc_physical_registers_op2): If there's effectively only
one MEM, transcode it into HL.
(rl78_far_p): Reject addresses that aren't legitimate.

From-SVN: r221164
2015-03-03 16:57:40 -05:00
Aldy Hernandez
bf66b9b45c re PR c++/65295 ([C++1y] constexpr function causes ICE if it returns a local variable bigger than 16 bytes)
PR c++/65295
	* constexpr.c (cxx_eval_constant_expression): Remove assert in
	RESULT_DECL handling.

From-SVN: r221161
2015-03-03 18:14:24 +00:00
Iain Sandoe
71ca36ba7b re PR libstdc++/64883 (FAIL: 17_intro/headers/c++*/all_attributes.cc (test for excess errors) on x86_64-apple-darwin10)
2015-03-03  Iain Sandoe  <iain@codesourcery.com>

	PR libstdc++/64883
	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
	visibility for Darwin.
	* testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
	also deprecated.
	* testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.

From-SVN: r221160
2015-03-03 18:14:20 +00:00
Eric Botcazou
3a5c579a89 fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before negating it.
* fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before
	negating it.

	* tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message.

From-SVN: r221159
2015-03-03 17:56:07 +00:00
Max Filippov
590e26360c Implement call0 ABI for xtensa
call0 is an ABI that doesn't use register windows.

2015-03-03  Max Filippov  <jcmvbkbc@gmail.com>

gcc/
	* config/xtensa/constraints.md ("a" constraint): Include stack
	pointer in case of call0 ABI.
	("q" constraint): Make empty in case of call0 ABI.
	("D" constraint): Include stack pointer in case of call0 ABI.
	* config/xtensa/xtensa-protos.h (xtensa_set_return_address,
	xtensa_expand_epilogue, xtensa_regno_to_class): Add new function
	prototypes.
	* config/xtensa/xtensa.c (xtensa_callee_save_size): New
	variable.
	(xtensa_regno_to_class): Make it a local variable in the
	function xtensa_regno_to_class.
	(xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove
	macro, function prototype and implementation.
	(reg_nonleaf_alloc_order): Make it a local variable in the
	function order_regs_for_local_alloc.
	(xtensa_conditional_register_usage): New function.
	(TARGET_CONDITIONAL_REGISTER_USAGE): Define macro.
	(xtensa_valid_move): Allow direct moves to stack pointer
	register in call0 ABI.
	(xtensa_setup_frame_addresses): Only spill register windows in
	windowed ABI.
	(xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and
	call0 ABI respectively.
	(xtensa_function_arg_1): Only mark a7 register for copying in
	windowed ABI.
	(xtensa_call_save_reg): New function.
	(compute_frame_size): Add space for callee saved register
	storage to the frame size in call0 ABI.
	(xtensa_expand_prologue): Generate code to set up stack frame
	and save callee-saved registers in call0 ABI.
	(xtensa_expand_epilogue): New function.
	(xtensa_set_return_address): New function.
	(xtensa_return_addr): Calculate return address in call0 ABI.
	(xtensa_builtin_saveregs): Only mark a7 register for copying and
	emit copying code in windowed ABI.
	(order_regs_for_local_alloc): Add preferred register allocation
	order for non-leaf function in call0 ABI.
	(xtensa_static_chain): Add atatic chain passing for call0 ABI.
	(xtensa_asm_trampoline_template): Add trampoline generation for
	call0 ABI.
	(xtensa_trampoline_init): Add trampoline initialization for
	call0 ABI.
	(xtensa_conditional_register_usage, xtensa_regno_to_class): New
	functions.
	* config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro.
	(TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI.
	(CALL_USED_REGISTERS): Modify to encode both windowed and call0
	ABI call-used registers.
	(HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI.
	(INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in
	call0 ABI.
	(REG_CLASS_CONTENTS): Include all registers into the preferred
	reload registers set, adjust the set in the
	xtensa_conditional_register_usage.
	(xtensa_regno_to_class): Drop variable declaration.
	(REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class
	function.
	(WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI
	respectively.
	(FUNCTION_PROFILER): Add _mcount call for call0 ABI.
	(TRAMPOLINE_SIZE): Define trampoline size for call0 ABI.
	(RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI.
	(ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool
	location in call0 ABI.
	(EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing
	stack adjustment size when handling exception.
	(CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI.
	* config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New
	definitions.
	("return" pattern): Generate ret.n/ret in call0 ABI.
	("epilogue" pattern): Expand epilogue.
	("nonlocal_goto" pattern): Use default in call0 ABI.
	("eh_return" pattern): Move implementation to eh_set_a0_windowed,
	emit eh_set_a0_* depending on ABI.
	("eh_set_a0_windowed" pattern): Former eh_return pattern.
	("eh_set_a0_call0", "blockage"): New patterns.

libgcc/
	* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill,
	__xtensa_nonlocal_goto): Don't compile for call0 ABI.
	(__xtensa_sync_caches): Only use entry and retw in windowed ABI,
	use ret in call0 ABI.
	* config/xtensa/t-windowed: New file.
	* libgcc/config/xtensa/t-xtensa (LIB2ADDEH): Move to t-windowed.
	* libgcc/configure: Regenerated.
	* libgcc/configure.ac: Check if xtensa target is configured for
	windowed ABI and thus needs to use custom unwind code.

From-SVN: r221158
2015-03-03 17:44:01 +00:00
Jan Hubicka
d76b082e8a re PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)
PR ipa/65287
	* gcc.dg/ipa/pr65287.c: New test.

From-SVN: r221157
2015-03-03 17:33:22 +00:00
Martin Liska
6fb12821b3 re PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)
PR ipa/65287
	* ipa-icf.c (sem_variable::parse): Skip all alias variables.
	* gcc.dg/ipa/pr65287.c: New test.

From-SVN: r221156
2015-03-03 17:32:21 +00:00
Michael Meissner
a6a62c01b0 PR 65138/target
2015-03-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR 65138/target
	* config/rs6000/rs6000-tables.opt: Regenerate table.

From-SVN: r221155
2015-03-03 17:04:01 +00:00
Jeff Law
f2b86778c4 MAINTAINERS: Remove Paul Brook as a Fortran and ARM maintainer.
* MAINTAINERS: Remove Paul Brook as a Fortran and ARM
	maintainer.
	Remove Richard Henderson as a maintainer for the x86 port.

From-SVN: r221154
2015-03-03 09:41:55 -07:00
Renlin Li
0ab9eed62f [PATCH][DOC]Fix an obvious type in md.texi
2015-03-03  Renlin Li  <renlin.li@arm.com>

gcc/

	* doc/md.texi (@item ^): ChangeLog ? into ^.

From-SVN: r221152
2015-03-03 15:55:27 +00:00
H.J. Lu
a55bbe1365 Regenerate doc/tm.texi
* doc/tm.texi: Regenerated.

From-SVN: r221151
2015-03-03 07:52:07 -08:00
Max Filippov
2e612c470d Turn RETURN_ADDR_IN_PREVIOUS_FRAME into C expression
This allows a target to support both windowed and non-windowed ABI.

2015-03-03  Max Filippov  <jcmvbkbc@gmail.com>

gcc/
	* builtins.c (expand_builtin_return_addr): Add
	RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove
	surrounding #ifdef.
	* config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change
	definition to 1.
	* config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME):
	Likewise.
	* defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if
	undefined.
	* doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update
	paragraph.

From-SVN: r221150
2015-03-03 15:04:02 +00:00
Joern Rennecke
9dd44d1c80 MAINTAINERS (CPU Port Maintainers): Update my email address.
2015-03-03  Joern Rennecke  <gnu@amylaar.uk>

        * MAINTAINERS (CPU Port Maintainers): Update my email address.

From-SVN: r221149
2015-03-03 14:02:18 +00:00
Martin Jambor
ebde4f8e39 tree-sra.c (ipa_sra_check_caller_data): New type.
2015-03-03  Martin Jambor  <mjambor@suse.cz>
            Eric Botcazou  <ebotcazou@adacore.com>

gcc/
        * tree-sra.c (ipa_sra_check_caller_data): New type.
        (has_caller_p): Removed.
        (ipa_sra_check_caller): New function.
        (ipa_sra_preliminary_function_checks): Use it.

gcc/changelog/
        * gnat.dg/specs/pack12.ads: New test.



Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r221148
2015-03-03 14:58:15 +01:00
Martin Liska
21ce14d309 ICF: Use bit or instead of if branch.
* ipa-icf.c (sem_item_optimizer::merge_classes): Use bit or
	instead of if branch.

From-SVN: r221147
2015-03-03 12:10:57 +00:00
Martin Liska
3c031cbe7c re PR ipa/65282 (wrong code at -Os and above on x86_64-linux-gnu)
Fix PR ipa/65282.

	* gcc.dg/ipa/PR65282.c: New test.
	PR ipa/65282
	* ipa-icf.c (sem_variable::equals): Fix wrong condition.

From-SVN: r221146
2015-03-03 12:09:13 +00:00