Commit Graph

133580 Commits

Author SHA1 Message Date
Daniel Hellstrom
c7a6a6170d MAINTAINERS (write-after-approval): Add myself.
2014-10-24  Daniel Hellstrom  <daniel@gaisler.com>

	* MAINTAINERS (write-after-approval): Add myself.

From-SVN: r216626
2014-10-24 10:52:20 +02:00
Maxim Kuvyrkov
948cd9a565 Handle SCRATCH in decompose_address
* rtlanal.c (get_base_term): Handle SCRATCH.

From-SVN: r216624
2014-10-24 08:23:01 +00:00
Maxim Kuvyrkov
d205caad22 Disable max_issue when scheduling for register pressure
* haifa-sched.c (sched_init): Disable max_issue when scheduling for
	register pressure.

From-SVN: r216623
2014-10-24 08:22:49 +00:00
Maxim Kuvyrkov
8aec463b10 Remove cached_first_cycle_multipass_dfa_lookahead and cached_issue_rate
* haifa-sched.c (cached_first_cycle_multipass_dfa_lookahead,)
	(cached_issue_rate): Remove.  Use dfa_lookahead and issue_rate instead.
	(max_issue, choose_ready, sched_init): Update.

From-SVN: r216622
2014-10-24 08:22:37 +00:00
Maxim Kuvyrkov
b75ae7f422 Improve scheduler dumps of ready list
* sched-int.h (struct _haifa_insn_data:last_rfs_win): New field.
	* haifa-sched.c (INSN_LAST_RFS_WIN): New access macro.
	(rfs_result): Set INSN_LAST_RFS_WIN.  Update signature.
	(rank_for_schedule): Update calls to rfs_result to pass new parameters.
	(print_rank_for_schedule_stats): Print out elements of ready list that
	ended up on their respective places due to each of the sorting
	heuristics.
	(ready_sort): Update.
	(debug_ready_list_1): Improve printout for SCHED_PRESSURE_MODEL.
	(schedule_block): Update.

From-SVN: r216621
2014-10-24 08:22:24 +00:00
Maxim Kuvyrkov
4dd9ac6c94 Account for prologue spills in reg_pressure scheduling
* haifa-sched.c (sched_class_regs_num, call_used_regs_num): New static
	arrays.  Use sched_class_regs_num instead of ira_class_hard_regs_num.
	(print_curr_reg_pressure, setup_insn_reg_pressure_info,)
	(model_update_pressure, model_spill_cost): Use sched_class_regs_num.
	(model_start_schedule): Update.
	(sched_pressure_start_bb): New static function.  Calculate
	sched_class_regs_num.
	(schedule_block): Use it.
	(alloc_global_sched_pressure_data): Calculate call_used_regs_num.

From-SVN: r216620
2014-10-24 08:22:12 +00:00
Richard Biener
ef1ea28c3c Makefile.in (BUILD_CPPLIB): When in stage2+ use the host library and make sure to pull in the required...
2014-10-24  Richard Biener  <rguenther@suse.de>

	* Makefile.in (BUILD_CPPLIB): When in stage2+ use the
	host library and make sure to pull in the required libintl
	and libiconv dependencies.

From-SVN: r216619
2014-10-24 08:04:25 +00:00
Richard Biener
4cf03f6897 fold-const.c (fold_binary_loc): Fix copy-and-pasto.
2014-10-24  Richard Biener  <rguenther@suse.de>

	* fold-const.c (fold_binary_loc): Fix copy-and-pasto.

From-SVN: r216617
2014-10-24 07:57:51 +00:00
Markus Trippelsdorf
fa608e77c2 Fix bootstrap/PR63632
r216566 (r216568 for 4.9 branch) added %{fno-lto} to LINK_COMMAND_SPEC.
However the linker doesn't understand -fno-lto and errors out.
This causes an LTO/PGO bootstrap failure, because -fno-lto is used
during STAGEprofile.
Fixed by filtering out -fno-lto in collect2.c.

From-SVN: r216613
2014-10-24 06:39:24 +00:00
Martin Liska
f1c859ee84 ipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes): Guard division by zero in dumps.
* ipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes): Guard
	division by zero in dumps.
	(sem_item_optimizer::merge_classes): Ditto.

From-SVN: r216612
2014-10-24 08:06:20 +02:00
Ian Lance Taylor
5eda5bad3c compiler: Use MPC library for complex numbers.
* go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
	mpc_t parameter instead of two mpfr_t parameters.

From-SVN: r216611
2014-10-24 05:01:50 +00:00
Ian Lance Taylor
3c76528636 compiler: Simplify making integer expressions.
Instead of always needing an mpz_t, add helper functions to
create an integer functions from signed or unsigned long
values.

From-SVN: r216610
2014-10-24 01:49:23 +00:00
GCC Administrator
7a149e7a51 Daily bump.
From-SVN: r216609
2014-10-24 00:16:51 +00:00
John David Anglin
63e7e854fc pa.c (pa_can_combine_p): Fix typo in last change.
* config/pa/pa.c (pa_can_combine_p): Fix typo in last change.

From-SVN: r216606
2014-10-23 23:33:34 +00:00
Ian Lance Taylor
ed98682725 * tree-vrp.c (extract_range_from_assert): Fix typo in comment.
From-SVN: r216605
2014-10-23 22:48:40 +00:00
Ian Lance Taylor
cffb3a8a43 * config/mep/mep.h (TARGET_HAS_F_SETLKW): Don't define.
From-SVN: r216604
2014-10-23 22:46:49 +00:00
Ian Lance Taylor
c96601d2a7 internal.h (backtrace_atomic_load_pointer): Fix to return void *.
* internal.h (backtrace_atomic_load_pointer) [no atomic or sync]:
	Fix to return void *.

From-SVN: r216603
2014-10-23 22:40:37 +00:00
Ian Lance Taylor
74cc54710d configure.ac: Disable the Go frontend on systems where it is known to not work.
* configure.ac: Disable the Go frontend on systems where it is known
	to not work.
	* configure: Regenerate.

From-SVN: r216602
2014-10-23 22:36:20 +00:00
François Dumont
fc3f28640a complexity.cc: Add missing test variable.
2014-10-23  François Dumont  <fdumont@gcc.gnu.org>

	* testsuite/25_algorithms/make_heap/complexity.cc: Add missing test
	variable.
	* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise and use
	log2. Now require cmath support.
	* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise and require
	normal mode.
	* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.

From-SVN: r216601
2014-10-23 22:03:49 +00:00
Jakub Jelinek
41b9329e73 re PR debug/63623 (Lots of functions get -fvar-tracking silently turned off unnecessarily)
PR debug/63623
	* var-tracking.c (stack_adjust_offset_pre_post_cb): New function.
	(stack_adjust_offset_pre_post): Use it through for_each_inc_dec,
	instead of only handling autoinc in dest if it is a MEM.
	(vt_stack_adjustments): Fix up formatting.

From-SVN: r216600
2014-10-23 23:58:41 +02:00
Jonathan Wakely
53b0f7471a re PR c++/63619 (warning: deleting ‘void*’ is undefined has no -W flag)
PR c++/63619

gcc/cp:
	PR c++/63619
	* decl2.c (delete_sanity): Use OPT_Wdelete_incomplete in warning.

gcc/testsuite:
	PR c++/63619
	* g++.dg/warn/Wdelete-incomplete-3.C: New.
	* g++.dg/warn/Wdelete-incomplete-4.C: New.

From-SVN: r216599
2014-10-23 22:07:49 +01:00
DJ Delorie
5cbc4e2a24 msp430.c (msp430_print_operand): 'x' modifier is independend of -mlarge.
* config/msp430/msp430.c (msp430_print_operand): 'x' modifier is
independend of -mlarge.
* config/msp430/constraints.md (Ys): Update comment.

From-SVN: r216598
2014-10-23 15:02:48 -04:00
Jonathan Wakely
13e72e8d16 status_cxx2011.xml: Update status.
* doc/xml/manual/status_cxx2011.xml: Update status.
	* doc/xml/manual/status_cxx2014.xml: Update TS status.

From-SVN: r216597
2014-10-23 17:55:23 +01:00
Evgeny Stupachenko
56873e1342 re PR target/63534 (Bootstrap failure on x86_64/i686-linux)
PR target/63534
	PR target/63618
gcc/
	* cse.c (delete_trivially_dead_insns): Consider PIC register is used
	while it is pseudo.
	* dse.c (deletable_insn_p): Likewise.
gcc/testsuite/
	* gcc.target/i386/pr63618.c: New test.

From-SVN: r216596
2014-10-23 16:52:11 +00:00
Marek Polacek
1bc5a4513e re PR c/63626 (Warning "inline function declared but never defined" output twice)
PR c/63626
	* c-decl.c (pop_scope): Don't print warning in external_scope.

	* gcc.dg/pr63626.c: New test.

From-SVN: r216595
2014-10-23 16:46:44 +00:00
Marek Polacek
59d7607aec c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR in unsigned type.
* c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
	in unsigned type.

	* c-c++-common/ubsan/undefined-2.c: New test.

From-SVN: r216593
2014-10-23 13:02:02 +00:00
Georg-Johann Lay
0c9ef7adf7 avr.c: Fix GNU coding rules and typos.
* config/avr/avr.c: Fix GNU coding rules and typos.
	* config/avr/avr.h: Dito.
	* config/avr/avr-c.c: Dito.
	* config/avr/avr.md: Dito.

From-SVN: r216592
2014-10-23 12:22:16 +00:00
Kirill Yukhin
e650a5685c AVX. Fix block absq emit for non AVX-512 targets.
gcc/
	* config/i386/sse.md (define_mode_iterator VI1248_AVX512VL_AVX512BW):
	New.
	(define_insn "*abs<mode>2"): Use VI1248_AVX512VL_AVX512BW mode
	iterator.
	(define_expand "abs<mode>2"): Ditto.

gcc/testsuite/
	* gcc.target/i386/pr63600.c: New.

From-SVN: r216591
2014-10-23 11:50:19 +00:00
Kirill Yukhin
c1b7a563e0 AVX-512. 81.1/n. Extend function_code' field tree_var_decl' structure.
gcc/
	* tree-core.h (tree_var_decl): Extend `function_code' field
	by one bit, move `regdecl_flag' field to ...
	(tree_decl_with_vis): Here.
	* tree.h (DECL_STATIC_CHAIN): Update struct name.

From-SVN: r216590
2014-10-23 11:44:12 +00:00
Rainer Orth
8bbc64707d Fix gcc.dg/ipa/ipa-icf-21.c on 32-bit Linux/x86.
* gcc.dg/ipa/ipa-icf-21.c: Add -msse2 to dg-options.

From-SVN: r216589
2014-10-23 11:32:55 +00:00
Arnaud Charlet
ad075b500f [multiple changes]
2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_eval.adb (Check_Non_Static_Context): Do not set
	Is_Machine_Number on a literal of a fixed-point type.

2014-10-23  Robert Dewar  <dewar@adacore.com>

	* mlib-prj.adb, sem_ch4.adb, exp_ch3.adb: Minor reformatting.

2014-10-23  Pierre-Marie Derodat  <derodat@adacore.com>

	* exp_dbug.ads: Update ___XA parallel type specification.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Copy_Array_Subtype_Attributes): Inherit the rep
	chain of the source type.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Minor
	reformatting of an error message.
	* sem_util.adb (Inherit_Rep_Item_Chain): Do not inherit a rep
	chain that has been inherited already.

From-SVN: r216588
2014-10-23 12:45:48 +02:00
Arnaud Charlet
e699b76e92 [multiple changes]
2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Expression_Function): Simplify analysis
	in generic context, and generate body in this case as well,
	to simplify ASIS traversals on the construct.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Complete_Object_Operation): Indicate that the
	scope of the operation (s) is referenced, to prevent spurious
	warnings about unused units.

2014-10-23  Johannes Kanig  <kanig@adacore.com>

	* errout.adb (Error_Msg_Internal): Copy check flag, increment
	check msg count.
	* erroutc.adb (Delete_Msg) adjust check msg count.
	(Output_Msg_Text) handle check msg case (do nothing).
	(Prescan_Message) recognize check messages with severity prefixes.
	* errutil.adb (Error_Msg) handle check flag, adjust counter.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_eval.adb (Subtypes_Statically_Match): For a generic actual
	type, check for the presence of discriminants in its parent type,
	against the presence of discriminants in the context type.

2014-10-23  Tristan Gingold  <gingold@adacore.com>

	* adaint.c: __gnat_get_file_names_case_sensitive: Default is
	true on arm-darwin.

2014-10-23  Arnaud Charlet  <charlet@adacore.com>

	* pprint.adb (Expression_Image): Add handling of quantifiers.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* exp_pakd.adb (Expand_Packed_Element_Reference): If the
	prefix is a source entity, generate a reference to it before
	transformation, because rewritten node might not generate a
	proper reference, leading to spurious warnings.

2014-10-23  Tristan Gingold  <gingold@adacore.com>

	* init.c: Fix thinko in previous patch.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch3.adb (Decimal_Fixed_Point_Type_Declaration):
	Inherit the rep chain of the implicit base type.
	(Floating_Point_Type_Declaration): Inherit the rep chain of the
	implicit base type.
	(Ordinary_Fixed_Point_Type_Declaration): Inherit the rep chain of the
	implicit base type.
	(Signed_Integer_Type_Declaration): Inherit the rep chain of the
	implicit base type.
	* sem_util.ads, sem_util.adb (Inherit_Rep_Item_Chain): New routine.

2014-10-23  Pascal Obry  <obry@adacore.com>

	* g-regist.adb, g-regist.ads: Add support for reading 32bit or 64bit
	view of the registry.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch3.adb (Expand_N_Object_Declaration): If type is abstract,
	return without expanding expression, to prevent subsequent crash.
	* freeze.adb: better error message for illegal declaration.

From-SVN: r216587
2014-10-23 12:39:50 +02:00
Hristian Kirtchev
e776d44161 sysdep.c (__gnat_localtime_tzoff): Properly delimit the substring which represents the time zone on VxWorks.
2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sysdep.c (__gnat_localtime_tzoff): Properly delimit the
	substring which represents the time zone on VxWorks.

From-SVN: r216586
2014-10-23 12:33:06 +02:00
Arnaud Charlet
13fa2acbf0 [multiple changes]
2014-10-23  Vincent Celier  <celier@adacore.com>

	* gnatls.adb: If --RTS= was not used, check if there is a default
	runtime. If there is none, in verbose mode, indicate that the
	default runtime is not available and show only the current
	directory in the source and the object search paths.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Process_Formals): A thunk procedure with a
	parameter of a limited view does not need a freeze node.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch7.adb (Analyze_Package_Body_Helper):
	The logic which hides local entities from external
	visibility is now contained in routine Hide_Public_Entities.
	(Hide_Public_Entities): New routine. Object and subprogram
	renamings are now hidden from external visibility the same way
	objects are.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute): The prefix of attribute Elaborated
	does not require freezing, in particular if it denotes a generic
	function.

From-SVN: r216585
2014-10-23 12:27:00 +02:00
Arnaud Charlet
b04d926e21 [multiple changes]
2014-10-23  Yannick Moy  <moy@adacore.com>

	* sem_prag.adb (Analyze_Pragma/Pragma_Inline & Pragma_Inline_Always):
	Disable analysis in GNATprove mode.

2014-10-23  Arnaud Charlet  <charlet@adacore.com>

	* mlib-prj.adb: Remove obsolete references to libdecgnat (VMS only).

2014-10-23  Arnaud Charlet  <charlet@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Ignore style check
	pragmas in codepeer mode.

2014-10-23  Gary Dismukes  <dismukes@adacore.com>

	* gnat_rm.texi: Minor syntax fix for pragma Annotate (missing ',').

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch12.adb (Inline_Instance_Body): Alphabetize
	local variables and constants. Add constants Save_SM and Save_SMP
	to capture SPARK_Mode-related attributes.  Compile the inlined
	body with the SPARK_Mode of the enclosing context.

2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* sinfo.adb (Elaboration_Boolean): Removed.
	(Set_Elaboration_Boolean): Removed.
	* sinfo.ads Remove attribute Elaboration_Boolean along with its
	occurrence in nodes.
	(Elaboration_Boolean): Removed along with pragma Inline.
	(Set_Elaboration_Boolean): Removed along with pragma Inline.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Constant_Redeclaration): Make error message more
	explicit on a deferred constant whose object_definition is an
	anonymous array.

2014-10-23  Vincent Celier  <celier@adacore.com>

	* gnatls.adb: Never call Targparm.Get_Target_Parameters.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Expression_Function): In a generic
	context do not create a body, and only pre-analyze the expression,
	which may include incomplete views.

From-SVN: r216584
2014-10-23 12:19:58 +02:00
Arnaud Charlet
3ad33e3395 [multiple changes]
2014-10-23  Robert Dewar  <dewar@adacore.com>

	* sem_type.adb: Minor code reorganization (use Nkind_In, Ekind_In).
	* sem_ch3.adb: Minor reformatting.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Analyze_Associations): If an actual for a formal
	object is a call to a parameterless expression function, add
	the function to the list of actuals to freeze.
	* freeze.adb (Check_Expression_Function): Create freeze nodes of
	outer types that may be references in the body of the expression.

From-SVN: r216583
2014-10-23 12:16:47 +02:00
Arnaud Charlet
580d40e8da [multiple changes]
2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_util.ads, checks.ads: Minor comment reformatting.

2014-10-23  Javier Miranda  <miranda@adacore.com>

	* sem_eval (Test_In_Range): Disable removal of range_check for
	VM targets.

2014-10-23  Robert Dewar  <dewar@adacore.com>

	* erroutc.adb (Validate_Specific_Warnings): Fix test for -W
	messages, which got disabled when we unconditionally added an
	asterisk at the start of the string.

2014-10-23  Vincent Celier  <celier@adacore.com>

	* gnatls.adb: Ensure that "gnatls -l" works even when there is
	no default runtime.

2014-10-23  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_ch3.adb (Build_Derived_Private_Type): When the parent is
	untagged and has discriminants, build the implicit full view after
	building the derived type. Capture original declaration and type
	here instead of...
	(Copy_And_Build): ...here.
	* sem_type.adb (Full_View_Covers): Handle the Underlying_Full_View.

From-SVN: r216582
2014-10-23 12:14:28 +02:00
Arnaud Charlet
2934b84ad8 [multiple changes]
2014-10-23  Hristian Kirtchev  <kirtchev@adacore.com>

	* checks.adb (Ensure_Valid): Update the subprogram
	profile. Propagate the contex attributes to Insert_Valid_Check.
	(Insert_Valid_Check): Update the subprogram profile. Propagate
	the attributes of the context to Duplicate_Subexpr_No_Checks.
	(Validity_Check_Range): Update the subprogram profile. Propagate
	the context attribute to Ensure_Valid.
	* checks.ads (Ensure_Valid): Update the subprogram profile
	along with the comment on usage.
	(Insert_Valid_Check): Update the subprogram profile along with the
	comment on usage.
	(Validity_Check_Range): Update the subprogram profile along with
	the comment on usage.
	* exp_util.adb (Build_Temporary): New routine.
	(Duplicate_Subexpr_No_Checks): Update the subprogram
	profile. Propagate the attributes of the context to Remove_Side_Effects.
	(Remove_Side_Effects): Update the subprogram profile. Update all calls
	to Make_Temporary to invoke Build_Temporary.
	* exp_util.ads (Duplicate_Subexpr_No_Checks): Update
	the subprogram profile along with the comment on usage.
	(Remove_Side_Effects): Update the subprogram profile along with
	the comment on usage.
	* sem_ch3.adb (Process_Range_Expr_In_Decl): Pass the subtype
	to the validity check machinery.  Explain the reason for this
	propagation.

2014-10-23  Robert Dewar  <dewar@adacore.com>

	* a-strsea.adb: Minor reformatting.

From-SVN: r216581
2014-10-23 12:11:21 +02:00
Arnaud Charlet
3fdb58e2eb [multiple changes]
2014-10-23  Thomas Quinot  <quinot@adacore.com>

	* bcheck.adb (Check_Consistent_SSO_Default): Exclude internal
	units from consistency check.
	* gnat_rm.texi (Default_Scalar_Storage_Order): Document that
	consistency check excludes run-time units.

2014-10-23  Ed Schonberg  <schonberg@adacore.com>

	* a-strsea.adb (Find_Token): Enable constraint checking in this
	procedure, so that even when compiling with checks suppressed, as is
	the case for the run-time, an exception is raised in this routine when
	the input meets the conditions described in RM 2005 A.4.3 (68/1).

From-SVN: r216580
2014-10-23 12:09:31 +02:00
Richard Biener
929315a917 Makefile.def: Add libcpp build module and dependencies.
2014-10-23  Richard Biener  <rguenther@suse.de>

	* Makefile.def: Add libcpp build module and dependencies.
	* configure.ac: Add libcpp build module.
	* Makefile.in: Regenerate.
	* configure: Likewise.

	gcc/
	* Makefile.in (BUILD_CPPLIB): Add.
	(build/genmatch$(build_exeext)): Use BUILD_CPPLIB, not CPPLIB.
	Drop LIBIBERTY.

From-SVN: r216579
2014-10-23 09:14:48 +00:00
Rainer Orth
282d3a81fa Fix gcc.dg/ipa/ipa-icf-2[18].c on Solaris
* gcc.dg/ipa/ipa-icf-21.c: Restrict to i?86-*-* x86_64-*-*.
	* gcc.dg/ipa/ipa-icf-28.c: Require init_priority.

From-SVN: r216578
2014-10-23 09:12:47 +00:00
Rainer Orth
1e98795b67 Fix gnu11 fallout on SPARC
* include/gc.h [(sparc || __sparc) && sun] (GC_INIT): Remove
	comment and definition.

From-SVN: r216577
2014-10-23 08:39:19 +00:00
Rainer Orth
f038cd81d1 Fix SPARC testsuite gnu11 fallout
* gcc.target/sparc/20001013-1.c (main): Declare int return.
	* gcc.target/sparc/mnofpu.c (e1e_rphy): Declare.
	* gcc.target/sparc/sparc-ret.c (toto): Declare.
	* gcc.target/sparc/ultrasp6.c (__assert, HSRate): Declare.
	* gcc.target/sparc/ultrasp8.c (__malloc_lock, __malloc_unlock):
	Declare.

From-SVN: r216576
2014-10-23 08:35:38 +00:00
Richard Biener
4d885a639e fold-const.c (fold_binary_loc): Preserve side-effects of X - X when simplifying to 0.
2014-10-22  Richard Biener  <rguenther@suse.de>

	* fold-const.c (fold_binary_loc): Preserve side-effects of
	X - X when simplifying to 0.
	* stor-layout.c (finish_bitfield_representative): Strip
	side-effects of evaluating the difference of two DECL_FIELD_OFFSET.

From-SVN: r216575
2014-10-23 08:25:55 +00:00
Ian Lance Taylor
a15d2ea8ad Commit old ChangeLog entry forgotten in commit of actual change.
PR go/55969
	* configure.ac: Disable libgo on some systems where it does not
	work.

From-SVN: r216573
2014-10-23 03:34:02 +00:00
Tim Shen
4d8384337f re PR libstdc++/63497 (std::regex can't handle [^class] correctly and cause runtime crash)
PR libstdc++/63497
	include/bits/regex_executor.h (_Executor::_M_word_boundary): Remove
	unused parameter.
	include/bits/regex_executor.tcc (_Executor::_M_dfs,
	_Executor::_M_word_boundary): Avoid dereferecing _M_current at _M_end
	or other invalid position.

From-SVN: r216572
2014-10-23 03:15:52 +00:00
GCC Administrator
a3317c9247 Daily bump.
From-SVN: r216571
2014-10-23 00:16:18 +00:00
Richard Biener
d8857ac603 re PR lto/63603 (Linking with -fno-lto still invokes LTO)
2014-10-22  Richard Biener  <rguenther@suse.de>
            Tobias Burnus <burnus@net-b.de>

        PR lto/63603
        * gcc.c (LINK_COMMAND_SPEC): Add %{fno-lto}.


Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r216566
2014-10-22 22:51:00 +02:00
Joseph Myers
693b297b72 Do not build soft-fp code at all for powerpc64-linux-gnu.
When I added support for using soft-fp in libgcc
<https://gcc.gnu.org/ml/gcc-patches/2006-03/msg00689.html>, libgcc
configuration was still done in the gcc/ directory, meaning that the
variables set in makefile fragments could not depend on the multilib
being built.  Thus, building the soft-fp code for powerpc64-linux-gnu
was disabled in the same way as had been done with fp-bit: the code
was built, but with #ifndef __powerpc64__ wrappers around it so that
the resulting objects were empty.

Now that libgcc configuration is done in the toplevel libgcc
directory, such uses of softfp_wrap_start / softfp_wrap_end are better
replaced by configure-time conditionals that determine whether to use
soft-fp for a given multilib.  This patch does so for
powerpc*-*-linux*.  The same would appear to apply to
powerpc*-*-freebsd* (using rs6000/t-freebsd64), but I have not made
any changes there.  t-ppc64-fp is also used by AIX targets, but they
don't use soft-fp anyway so the changes are of no consequence to them.

The same principle of replacing softfp_wrap_start / softfp_wrap_end
with configure-time conditionals also applies to
softfp_exclude_libgcc2, which was intended for cases where soft-fp is
being used on hard-float multilibs and so it is desirable on those
multilibs for a few functions to come from libgcc2.c rather than
soft-fp (but the soft-fp versions would be more efficient on
soft-float multilibs).  Now we have hardfp.c and t-hardfp, those are
better to use in that case, to minimize the size of the bulk of the
functions that are only present for ABI compatibility and should never
be called by newly compiled code.

I intend followup patches to switch 32-bit hard-float multilibs to use
t-hardfp as far as possible (for all non-libgcc2.c operations for
classic hard float; for all except __unord* for e500v2; for all SFmode
operations except __unordsf2 for e500v1).  After that will come making
the soft-fp operations, in the remaining cases for which they are
built because they are actually needed for code compiled by current
GCC, into compat symbols when building for glibc 2.19 or later, so
that the glibc versions (with exception and rounding mode support) get
used instead (2.19 or later is needed for all the functions to be
exported from glibc as non-compat symbols).  In turn, that is required
before implementing TARGET_ATOMIC_ASSIGN_EXPAND_FENV for soft-float
and e500, as that can only be properly effective when GCC-compiled
code is actually interoperating correctly with the exception and
rounding mode state used by <fenv.h> functions.

Tested with no regressions with cross to powerpc64-linux-gnu (in
addition, verified that stripped libgcc_s.so.1 is identical before and
after the patch).

	* config.host (powerpc*-*-linux*): Only use soft-fp for 32-bit
	configurations.
	* config/rs6000/t-ppc64-fp (softfp_wrap_start, softfp_wrap_end):
	Remove variables.

From-SVN: r216564
2014-10-22 18:29:14 +01:00
Dehao Chen
3d790fd870 auto-profile.c: Change order of header files.
gcc/ChangeLog:

2014-10-22  Dehao Chen  <dehao@google.com>

        * auto-profile.c: Change order of header files.

From-SVN: r216563
2014-10-22 17:11:17 +00:00