1. 31 Jan, 2015 8 commits
  2. 30 Jan, 2015 27 commits
    • re PR rtl-optimization/64688 (internal compiler error: Max. number of generated… · 895ff86f
      re PR rtl-optimization/64688 (internal compiler error: Max. number of generated reload insns per insn is achieved (90))
      
      2015-01-30  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/64688
      	* lra-constraints.c (original_subreg_reg_mode): New.
      	(simplify_operand_subreg): Try to simplify subreg of const.  Use
      	original_subreg_reg_mode for it.
      	(swap_operands): Update original_subreg_reg_mode.
      	(curr_insn_transform): Set up original_subreg_reg_mode.
      
      2015-01-30  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/64688
      	* g++.dg/pr64688-2.C: New.
      
      From-SVN: r220297
      Vladimir Makarov committed
    • fuse-caller-save-rec.c: Require nonpic target. · 1c9cc1d3
      	* gcc.target/i386/fuse-caller-save-rec.c: Require nonpic target.
      	* gcc.target/i386/fuse-caller-save-xmm.c: Ditto.
      	* gcc.target/i386/fuse-caller-save.c: Ditto.
      	* gcc.target/i386/headmerge-1.c: Ditto.
      	* gcc.target/i386/headmerge-2.c: Ditto.
      	* gcc.target/i386/sibcall-6.c: Ditto.
      
      From-SVN: r220296
      Uros Bizjak committed
    • re PR target/64617 (ICE: Max. number of generated reload insns per insn is… · 3c954213
      re PR target/64617 (ICE: Max. number of generated reload insns per insn is achieved (90) with -ftree-vectorize -mavx512bw -march=slm)
      
      2015-01-30  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/64617
      	* lra-constraints.c (prohibited_class_reg_set_mode_p): New
      	function.
      	(process_alt_operands): Use it.
      	(curr_insn_transform): Check the optional reload pseudo class is
      	ok for the mode.
      
      2015-01-30  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/64617
      	* gcc.target/i386/pr64617.c: New test.
      
      From-SVN: r220294
      Vladimir Makarov committed
    • Always pass explicit location to fatal_error. · 40fecdd6
      The patch <https://gcc.gnu.org/ml/gcc-patches/2014-11/msg00698.html>
      adding an overload for fatal_error that passes an explicit location
      broke gcc.pot regeneration because xgettext cannot handle function
      overloads with the diagnostic string argument in different positions.
      
      As the desired direction is for all diagnostics to have explicit
      locations, this patch addresses the regression by removing the version
      of fatal_error that does not pass a location, passing explicit
      input_location everywhere (in the hope that those will incrementally
      be changed to other locations, much as with the addition of a location
      argument to pedwarn some time ago - a lot of cases aren't meaningfully
      associated with a source file so UNKNOWN_LOCATION may be better).
      
      Note that this patch does not attempt to fix any existing issues with
      these diagnostics (such as wrongly starting with capital letters or
      ending with '.' or '\n'); it just adds the input_location argument.
      
      Bootstrapped with no regressions for x86_64-unknown-linux-gnu (Go
      excluded).
      
      gcc:
      	* diagnostic.c (fatal_error (const char *, ...)): Remove function.
      	* diagnostic-core.h (fatal_error (const char *, ...)): Remove
      	prototype.
      	* toplev.h (init_asm_output): Update comment on use of
      	UNKNOWN_LOCATION with fatal_error.
      	* cgraph.c, collect-utils.c, collect2.c, config/arc/arc.c,
      	config/arc/arc.md, config/avr/avr.c, config/c6x/c6x.h,
      	config/darwin.c, config/host-darwin.c, config/i386/host-cygwin.c,
      	config/i386/intelmic-mkoffload.c, config/nios2/nios2.c,
      	config/nvptx/mkoffload.c, config/nvptx/nvptx.h,
      	config/rs6000/host-darwin.c, config/rs6000/rs6000.c,
      	config/s390/s390.c, gcc.c, gcov-io.h, gcov-tool.c, ggc-common.c,
      	ggc-page.c, graph.c, ipa-inline-analysis.c, ipa-reference.c,
      	lto-cgraph.c, lto-section-in.c, lto-streamer-in.c, lto-streamer.c,
      	lto-wrapper.c, objc/objc-act.c, opts.c, passes.c, plugin.c,
      	tlink.c, toplev.c, tree-streamer-in.c, varpool.c: All callers of
      	fatal_error changed to pass input_location as first argument.
      
      gcc/c-family:
      	* c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
      	to pass input_location as first argument.
      
      gcc/cp:
      	* class.c, except.c, parser.c, pt.c: All callers of fatal_error
      	changed to pass input_location as first argument.
      
      gcc/fortran:
      	* f95-lang.c, gfortranspec.c, trans-const.c, trans-expr.c: All
      	callers of fatal_error changed to pass input_location as first
      	argument.
      
      gcc/java:
      	* class.c, expr.c, jcf-parse.c, jvspec.c: All callers of
      	fatal_error changed to pass input_location as first argument.
      
      gcc/lto:
      	* lto-object.c, lto-symtab.c, lto.c: All callers of fatal_error
      	changed to pass input_location as first argument.
      
      libcc1:
      	* plugin.cc: All callers of fatal_error changed to pass
      	input_location as first argument.
      
      From-SVN: r220293
      Joseph Myers committed
    • compiler: Pass location to fatal_error. · 4811c44e
      The GCC function is changing.
      
      The error functions need to move to a compiler-indepent
      approach so that changes to the GCC functions are not a
      concern here.
      
      From-SVN: r220292
      Ian Lance Taylor committed
    • compiler: Add pkgpath symbol information to export data. · b4d216f6
      This adds the pkgpath symbol to the export data whenever it is
      needed--whenever the pkgpath symbol is not the obvious
      transformation of the pkgpath.  This lets us determine the
      correct symbol name for indirectly imported packages compiled
      with -fgo-prefix.
      
      From-SVN: r220291
      Ian Lance Taylor committed
    • a-assert.adb: Minor reformatting. · 622599c6
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* a-assert.adb: Minor reformatting.
      	* sem_ch13.adb: Minor comment clarification.
      	* types.ads: Minor comment update.
      	* sem_eval.adb (Real_Or_String_Static_Predicate_Matches): Avoid blow up
      	when we have a predicate that is nothing but an inherited dynamic
      	predicate.
      
      From-SVN: r220290
      Robert Dewar committed
    • Makefile.in (x86-vxworks): Update GCC_SPEC_FILES to include cert link spec. · 0d1476cb
      2015-01-30  Jerome Guitton  <guitton@adacore.com>
                     
      	* gcc-interface/Makefile.in (x86-vxworks): Update GCC_SPEC_FILES to     
      	include cert link spec.
      
      From-SVN: r220289
      Jerome Guitton committed
    • [multiple changes] · e5cabfac
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* einfo.ads: Minor comment fix.
      	* freeze.adb (Freeze_Profile): Add test for suspicious import
      	in pure unit.
      	* sem_prag.adb (Process_Import_Or_Interface): Test for suspicious
      	use in Pure unit is now moved to Freeze (to properly catch
      	Pure_Function exemption).
      
      2015-01-30  Bob Duff  <duff@adacore.com>
      
      	* sem_res.ads: Minor comment fix.
      	* sem_type.adb: sem_type.adb (Remove_Conversions): Need to
      	check both operands of an operator.
      
      2015-01-30  Yannick Moy  <moy@adacore.com>
      
      	* a-assert.ads, a-assert.adb: Mark package spec in SPARK. Set assertion
      	policy for Pre to Ignore.
      	(Assert): Add precondition.
      
      From-SVN: r220288
      Arnaud Charlet committed
    • sem_prag.adb (Process_Import_Or_Interface): Warn if used in Pure unit. · b7db1149
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb (Process_Import_Or_Interface): Warn if used in
      	Pure unit.
      	* s-valllu.ads (Scan_Raw_Long_Long_Unsigned): Clarify
      	documentation for some special cases of invalid attempts at
      	based integers.
      
      From-SVN: r220287
      Robert Dewar committed
    • [multiple changes] · 1db700c3
      2015-01-30  Gary Dismukes  <dismukes@adacore.com>
      
      	* errout.ads: Minor reformatting.
      
      2015-01-30  Yannick Moy  <moy@adacore.com>
      
      	* inline.adb (Process_Formals): Use the sloc of
      	the inlined node instead of the sloc of the actual parameter,
      	when replacing formal parameters by the actual one.
      
      2015-01-30  Arnaud Charlet  <charlet@adacore.com>
      
      	* g-expect.adb (Get_Command_Output): Use infinite timeout when
      	calling Expect.
      
      2015-01-30  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Analyze_Associations): If an in-parameter is
      	defaulted in an instantiation, add an entry in the list of actuals
      	to indicate the default value of the formal (as is already done
      	for defaulted subprograms).
      
      2015-01-30  Javier Miranda  <miranda@adacore.com>
      
      	* errout.adb (Error_Msg_PT): Minor error phrasing update.
      
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.adb (Warn_On_Known_Condition): Improve error message
      	for object case.
      
      2015-01-30  Pierre-Marie de Rodat  <derodat@adacore.com>
      
      	* exp_dbug.adb (Get_Encoded_Name): When
      	-fgnat-encodings=minimal, do not generate names for biased types.
      
      From-SVN: r220286
      Arnaud Charlet committed
    • re PR ada/64349 (Bootstrapping Ada fails on darwin(9|10).) · 1de83011
      2015-01-30  Tristan Gingold  <gingold@adacore.com>
      
      	PR ada/64349
      	* env.c: Move vxworks and darwin includes out of #ifdef IN_RTS.
      
      From-SVN: r220285
      Tristan Gingold committed
    • [multiple changes] · 2c6336be
      2015-01-30  Gary Dismukes  <dismukes@adacore.com>
      
      	* freeze.adb: Minor reformatting.
      
      2015-01-30  Javier Miranda  <miranda@adacore.com>
      
      	* errout.ads (Error_Msg_PT): Replace Node_Id by Entity_Id and
      	improve its documentation.
      	* errout.adb (Error_Msg_PT): Improve the error message.
      	* sem_ch6.adb (Check_Conformance): Update call to Error_Msg_PT.
      	(Check_Synchronized_Overriding): Update call to Error_Msg_PT.
      	* sem_ch3.adb (Check_Abstract_Overriding): Code cleanup.
      
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.adb (Warn_On_Known_Condition): Do special casing of
      	message for False case.
      
      2015-01-30  Doug Rupp  <rupp@adacore.com>
      
      	* s-vxwext-kernel.ads (Task_Cont): Remove imported subprogram body.
      	* s-vxwext-kernel.adb (Task_Cont): New subpprogram body specialized for
      	kernel.
      
      From-SVN: r220284
      Arnaud Charlet committed
    • [multiple changes] · 46413d9e
      2015-01-30  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_attr.adb (Declared_Within_Generic_Unit):
      	New function to test whether an entity is declared within the
      	declarative region of a given generic unit.
      	(Resolve_Attribute): For checking legality of subprogram'Access within
      	a generic unit, call new Boolean function Declared_Within_Generic_Unit
      	instead of simply comparing the results of Enclosing_Generic_Unit on
      	the prefix and access type.  Correct minor comment typos.
      
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* freeze.adb, exp_util.ads: Update comment.
      	* exp_util.adb, exp_ch3.adb: Minor code reorganization and reformatting.
      	* sem_util.adb: Minor: fix typo.
      
      From-SVN: r220283
      Arnaud Charlet committed
    • [multiple changes] · 48b0da2d
      2015-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute): Ensure that
      	the check concerning Refined_Post takes precedence over the
      	other cases.
      
      2015-01-30  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_prag.adb: Minor typo fixes and reformatting.
      
      From-SVN: r220282
      Arnaud Charlet committed
    • [Patch/libcpp] Change __ARM_NEON__ to __ARM_NEON in lex.c · 95d0610c
      2015-01-30  Szabolcs Nagy  <szabolcs.nagy@arm.com>
      
      	* lex.c (search_line_fast): Change __ARM_NEON__ to __ARM_NEON.
      
      From-SVN: r220281
      Szabolcs Nagy committed
    • Guard GCC version for a pragma ifdef. · 168be70b
      	* tree.h: Change GCC_VERSION >= 4004 to GCC_VERSION >= 4006
      	in #pragma GCC diagnostic guards.
      
      From-SVN: r220280
      Martin Liska committed
    • [multiple changes] · 760804f3
      2015-01-30  Yannick Moy  <moy@adacore.com>
      
      	* sem_attr.adb: Code clean up.
      
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* ali.adb (Scan_ALI): Set Serious_Errors flag in Unit record.
      	* ali.ads (Unit_Record): Add new field Serious_Errors.
      	* lib-writ.adb (Write_Unit_Information): Set SE (serious errors)
      	attribute in U line.
      	* lib-writ.ads: New attribute SE (serious erors) in unit line.
      
      2015-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb Update the usage of attributes Entry_Bodies_Array,
      	Lit_Indexes, Scale_Value, Storage_Size_Variable,
      	String_Literal_Low_Bound along associated routines and
      	Write_FieldX_Name.
      	(Pending_Access_Types): New routine.
      	(Set_Pending_Access_Types): New routine.
      	(Write_Field15_Name): Add an entry for Pending_Access_Types.
      	* einfo.ads Add new attribute Pending_Access_Types along
      	with usage in nodes.  Update the usage of attributes
      	Entry_Bodies_Array, Lit_Indexes, Scale_Value,
      	Storage_Size_Variable, String_Literal_Low_Bound.
      	(Pending_Access_Types): New routine along with pragma Inline.
      	(Set_Pending_Access_Types): New routine along with pragma Inline.
      	* exp_ch3.adb (Expand_Freeze_Array_Type): Add new local variable
      	Ins_Node. Determine the insertion node for anonynous access type
      	that acts as a component type of an array. Update the call to
      	Build_Finalization_Master.
      	(Expand_Freeze_Record_Type): Update
      	the calls to Build_Finalization_Master.
      	(Freeze_Type): Remove
      	local variable RACW_Seen. Factor out the code that deals with
      	remote access-to-class-wide types. Create a finalization master
      	when the designated type contains a private component. Fully
      	initialize all pending access types.
      	(Process_RACW_Types): New routine.
      	(Process_Pending_Access_Types): New routine.
      	* exp_ch4.adb (Expand_Allocator_Expression): Allocation no longer
      	needs to set primitive Finalize_Address.
      	(Expand_N_Allocator): Allocation no longer sets primitive
      	Finalize_Address.
      	* exp_ch6.adb (Add_Finalization_Master_Actual_To_Build_In_Place_Call):
      	Update the call to Build_Finalization_Master.
      	(Make_Build_In_Place_Call_In_Allocator): Allocation no longer
      	needs to set primitive Finalize_Address.
      	* exp_ch7.adb (Add_Pending_Access_Type): New routine.
      	(Build_Finalization_Master): New parameter profile. Associate
      	primitive Finalize_Address with the finalization master if the
      	designated type has been frozen, otherwise treat the access
      	type as pending. Simplify the insertion of the master and
      	related initialization code.
      	(Make_Finalize_Address_Body): Allow Finalize_Address for class-wide
      	abstract types.
      	(Make_Set_Finalize_Address_Call): Remove forlam parameter Typ.
      	Simplify the implementation.
      	* exp_ch7.ads (Build_Finalization_Master): New parameter profile
      	along with comment on usage.
      	(Make_Set_Finalize_Address_Call): Remove formal parameter Typ. Update
      	the comment on usage.
      	* exp_util.adb (Build_Allocate_Deallocate_Proc): Use routine
      	Finalize_Address to retrieve the primitive.
      	(Finalize_Address): New routine.
      	(Find_Finalize_Address): Removed.
      	* exp_util.ads (Finalize_Address): New routine.
      	* freeze.adb (Freeze_All): Remove the generation of finalization
      	masters.
      	* sem_ch3.adb (Analyze_Full_Type_Declaration): Propagate any
      	pending access types from the partial to the full view.
      
      From-SVN: r220279
      Arnaud Charlet committed
    • sem_disp.adb: Minor reformatting. · 3b506eef
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_disp.adb: Minor reformatting.
      	* sem_disp.ads: Documentation update.
      
      From-SVN: r220278
      Robert Dewar committed
    • re PR target/15184 (Direct access to byte inside word not working with -march=pentiumpro) · 089ad473
      	PR target/15184
      	* gcc.target/i386/pr15184-1.c: Compile for ia32 target only.
      	(dg-options): Remove -m32.
      	(dg-final): Scan for "movb %al" only.
      	* gcc.target/i386/pr15184-2.c: Ditto.
      
      From-SVN: r220277
      Uros Bizjak committed
    • sem_disp.adb (Is_Dynamically_Tagged): when applied to an entity or a function… · b6dd03dd
      sem_disp.adb (Is_Dynamically_Tagged): when applied to an entity or a function call, return True if type is class-wide.
      
      2015-01-30  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_disp.adb (Is_Dynamically_Tagged): when applied to an entity
      	or a function call, return True if type is class-wide.
      	* sem_res.adb (Resolve_Case_Expression, Resolve_If_Expression);
      	Apply RM 4.5.7 (17/3): all or none of the dependent expression
      	of a conditional expression must be dynamically tagged.
      
      From-SVN: r220276
      Ed Schonberg committed
    • re PR tree-optimization/64829 ([ARM] ICE at -O3 in vect_get_vec_def_for_stmt_copy) · 566d377a
      2015-01-30  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/64829
      	* tree-vect-patterns.c (vect_handle_widen_op_by_const): Do
      	not add a widening conversion pattern but hand off extra
      	widenings to callers.
      	(vect_recog_widen_mult_pattern): Handle extra widening produced
      	by vect_handle_widen_op_by_const.
      	(vect_recog_widen_shift_pattern): Likewise.
      	(vect_pattern_recog_1): Remove excess vertical space in dumping.
      	* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): Likewise.
      	(vect_init_vector_1): Likewise.
      	(vect_get_vec_def_for_operand): Likewise.
      	(vect_finish_stmt_generation): Likewise.
      	(vectorizable_load): Likewise.
      	(vect_analyze_stmt): Likewise.
      	(vect_is_simple_use): Likewise.
      
      	* gcc.dg/vect/pr64829.c: New testcase.
      
      From-SVN: r220275
      Richard Biener committed
    • [multiple changes] · 445e5888
      2015-01-30  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Analyze_Function_Return): In an extended return
      	statement, apply accessibility check to result object when there
      	is no initializing expression (Ada 2012 RM 6.5 (5.4/3))
      
      2015-01-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch4.adb (Analyze_If_Expression): Allow for non-standard
      	Boolean for case where ELSE is omitted.
      	* sem_res.adb: Minor reformatting.
      
      From-SVN: r220274
      Arnaud Charlet committed
    • * combine.c (try_combine): Fix typo in comment. · 8ec350ed
      From-SVN: r220273
      Jeff Law committed
    • re PR target/64580 (very high rs6000_stack_info() usage during LTO Firefox build on ppc64) · dd1c1f8c
      	PR target/64580
      	* config.rs6000/rs6000.c (compute_vrsave_mask): Reverse loop order.
      	(rs6000_stack_info): Add assert.
      	(rs6000_output_savres_externs): New function, split off from...
      	(rs6000_output_function_prologue): ... here.  Do not call it for
      	thunks.
      
      From-SVN: r220272
      Segher Boessenkool committed
    • compiler: Fix -fgo-prefix handling. · 2e29434d
      There was bug in the fix for PR 61880: it only worked fully
      correctly for code compiled with -fgo-pkgpath.  For code that
      used -fgo-prefix, or that used neither option, the '.'
      separating the prefix and the package name was converted to an
      underscore, which did not happen before.  This broke SWIG and
      any other code that expected specific symbol names.
      Fortunately all code compiled in libgo and all code compiled
      by the go tool uses -fgo-pkgpath, so this probably did not
      affect very many people.
      
      This is an incomplete fix that does not modify the package
      file format, for use on both mainline and the GCC 4.9 branch.
      A follow on patch will fully fix the problem.
      
      From-SVN: r220268
      Ian Lance Taylor committed
    • Daily bump. · 15b12729
      From-SVN: r220267
      GCC Administrator committed
  3. 29 Jan, 2015 5 commits