platform/upstream/linaro-gcc.git
10 years ago2014-02-25 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Tue, 25 Feb 2014 20:34:44 +0000 (20:34 +0000)]
2014-02-25  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/60317
* params.def (PARAM_LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
* params.h (LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
* lra-assigns.c: Include params.h.
(spill_for): Use LRA_MAX_CONSIDERED_RELOAD_PSEUDOS as guard for
other reload pseudos considerations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208155 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/53808
jason [Tue, 25 Feb 2014 18:54:48 +0000 (18:54 +0000)]
PR lto/53808
* class.c (clone_function_decl): Call note_vague_linkage_fn for
defaulted virtual dtor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208153 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago DR 1286
jason [Tue, 25 Feb 2014 18:53:45 +0000 (18:53 +0000)]
DR 1286
PR c++/60328
* pt.c (get_underlying_template): Fix equivalence calculation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208152 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Doug Rupp <rupp@adacore.com>
charlet [Tue, 25 Feb 2014 16:16:27 +0000 (16:16 +0000)]
2014-02-25  Doug Rupp  <rupp@adacore.com>

* gcc-interface/Makefile.in (arm-linux):
(EH_MECHANISM): Use ARM unwinder (-arm)
(LIBGNAT_TARGET_PAIRS: Override defaults with a-exexpr-gcc.adb and
s-excmac-arm.ads.
(EXTRA_LIBGNAT_OBJS): Add raise-gcc.o
(EXTRA_GNATRTL_NONTASKING_OBJS): Add g-cppexc.o s-excmac.o.
(arm-wrs-vxworks): Add EH_MECHANISM=-gcc for kernel mode.
(EXTRA_LIBGNAT_OBJS): Add sigtramp-armvxw.o
Add dependencies for sigtramp-armvxw.o.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208150 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/trans.c (Pragma_to_gnu): Deal with Warning_As_Error.
charlet [Tue, 25 Feb 2014 16:14:58 +0000 (16:14 +0000)]
* gcc-interface/trans.c (Pragma_to_gnu): Deal with Warning_As_Error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208149 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:52:52 +0000 (15:52 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* rtsfind.adb (Is_RTE): Protect against entity with no scope
field (previously this call blew up on the Standard entity).
* sem_attr.adb (Analyze_Attribute, case Access): Remove
test for No_Abort_Statements, this is now handled in
Set_Entity_With_Checks.
* exp_ch6.adb, sem_ch10.adb, sem_ch4.adb, sem_ch8.adb, sem_res.adb:
Change name Set_Entity_With_Style_Check => Set_Entity_With_Checks.
* sem_util.ads, sem_util.adb: Change name Set_Entity_With_Style_Check =>
Set_Entity_With_Checks.
(Set_Entity_With_Checks): Add checks for No_Dynamic_Attachment,
Add checks for No_Abort_Statements.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb (Expand_Entry_Barrier): Add comment that call to
Check_Restriction is OK.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208148 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 25 Feb 2014 15:50:32 +0000 (15:50 +0000)]
2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Process_Full_View): Better error message when
the full view of  a private type without discriminants is an
unconstrained type.
* sem_ch7.adb (Uninstall_Declarations): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208147 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 25 Feb 2014 15:49:45 +0000 (15:49 +0000)]
2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp-armvxw.c: Also restore r0.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* errout.adb (Error_Msg_Internal): Warning_Msg_Char set
unconditionally (Set_Msg_Insertion_Warning): Warning_Msg_Char
set unconditionally.
* erroutc.adb (Get_Warning_Tag): Does not give a leading space
any more (Output_Msg_Text): Rewritten with new convention on
output of warnings that are treated as errors.
* erroutc.ads (Error_Msg_Object): Warn_Chr is always set even
if Warn is False.
* gnat_rm.texi: Updates to documentation on pragma
Warning_As_Error.
* warnsw.adb (Set_Dot_Warning_Switch): -gnatw.e should not
set Warning_Doc_Switch.
* lib-writ.ads: Add documentation note on ALI file generation
for C.
* exp_ch6.adb (Expand_Call): Remove check for No_Abort_Statements
(belongs in Sem).
* sem_attr.adb (Resolve_Attribute, case Access):
Abort_Task'Access violates the No_Abort_Statements restriction.
* sem_res.adb (Resolve_Call): Check restriction
No_Abort_Statements for call to Abort_Task or a renaming of it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208146 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:48:05 +0000 (15:48 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb (Array_Type_Declaration): Check for case of using
type name as index.
* lib.ads: Minor reformatting.
* einfo.ads: Minor reformatting.

2014-02-25  Doug Rupp  <rupp@adacore.com>

* sem_mech.adb (Set_Mechanisms): For convention Fortran on VMS
use Short_Descriptor(S) as the argument passing mechanism.

2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp-ppcvxw.c (CFI_COMMON_REGS): Also include r0.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* atree.ads (Warnings_Treated_As_Errors): New variable.
* errout.adb (Error_Msg_Internal): Set Warn_Err flag in
error object (Initialize): Initialize Warnings_As_Errors_Count
(Write_Error_Summary): Include count of warnings treated as errors.
* erroutc.adb (Warning_Treated_As_Error): New function.
(Matches): Function moved to outer level of package.
* erroutc.ads (Error_Msg_Object): Add Warn_Err flag.
(Warning_Treated_As_Error): New function.
* gnat_rm.texi: Document pragma Treat_Warning_As_Error.
* opt.adb: Add handling of Warnings_As_Errors_Count[_Config].
* opt.ads (Config_Switches_Type): Add entry for
Warnings_As_Errors_Count.
(Warnings_As_Errors_Count): New variable.
(Warnings_As_Errors): New array.
* par-prag.adb: Add dummy entry for Warning_As_Error.
* sem_prag.adb (Analyze_Pragma): Implement new pragma
Warning_As_Error.
* snames.ads-tmpl: Add entries for Warning_As_Error pragma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208145 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 25 Feb 2014 15:45:54 +0000 (15:45 +0000)]
2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp.h: Fix minor inaccuracy.

2014-02-25  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi: Added description of kill command.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi (Address_Clauses): Add a section discussing the
problem of address clauses causing unexpected initialization,
including the effect of Initialize_Scalars.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208144 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:35:36 +0000 (15:35 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* errout.adb: Various changes for better msgs for anonmous access
subprogram types.
* erroutc.ads, erroutc.adb (Buffer_Ends_With): Version with character
argument.
(Buffer_Remove): Version with character argument.
* sem_attr.adb (Resolve_Attribute, case Access): Better handling
of mismatching conventions for access-to-subprogram case.
* sem_prag.adb (Set_Convention_From_Pragma): Deal with anonymous
access types in record.
* sem_util.ads, sem_util.adb (Set_Convention): Handle anonymous access
types, including in records.

2014-02-25  Doug Rupp  <rupp@adacore.com>

* sigtramp-ppcvxw.c, sigtramp.h, sigtramp-armvxw.c: Comment
enhancements and corrections.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: New section "Conventions and Anonymous Access Types"

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208143 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:30:10 +0000 (15:30 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Update "Standard Library Routines" chapter to
include all 2012 packages.
Add section on pragma Reviewable.
* sem_ch5.adb (Diagnose_Non_Variable_Lhs): Avoid wrong msgs if
expander off.
* exp_ch9.ads, exp_dist.adb, exp_dist.ads: Minor reformatting.
* sem_ch6.adb (Assert_False): New function
(Check_Statement_Sequence): Call Assert_False to check for
pragma Assert (False) which is considered OK block of control
for function.
* snames.ads-tmpl (Name_False): New entry.

2014-02-25  Doug Rupp  <rupp@adacore.com>

* init.c (VxWorks Section): Enable sigtramp for ARM.
* sigtramp-armvxw.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208142 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:27:16 +0000 (15:27 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: First set of documentation additions for
predefined RM units.
* checks.adb: Minor reformatting.
* sem_elab.adb (Check_Task_Activation): Minor fix to error
message.
* sem_util.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208141 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Arnaud Charlet <charlet@adacore.com>
charlet [Tue, 25 Feb 2014 15:20:43 +0000 (15:20 +0000)]
2014-02-25  Arnaud Charlet  <charlet@adacore.com>

* usage.adb (Usage): Add help on -gnateC.
* switch-c.adb (Scan_Front_End_Switches): Add handling of -gnateC.
* opt.ads (Generate_CodePeer_Messages): New flag.
* gnat_ugn.texi: Document new switch -gnateC.

2014-02-25  Ben Brosgol  <brosgol@adacore.com>

* gnat_rm.texi: Corrected minor typos in Implementation Defined
Aspects.
* opt.ads: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208140 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:19:43 +0000 (15:19 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* binde.adb: Change messages to mention -gnatel instead of -gnatwl.
* gnat_ugn.texi: Update documentation of -gnatwl Add documentation
of -gnatel/-gnateL.
* opt.ads (Warn_Info_Messages): New flag.
* sem_elab.adb: Use Elab_Warnings, Elab_Info_Messages to control
messages.
* sem_prag.adb: Use Elab_Warnings, Elab_Info_Messages to control
messages.
* switch-m.ad, switch-c.adb: Recognize new -gnatel/EL switches.
* usage.adb: Add documentation of -gnatel/-gnateL Update
documentation of -gnatwl/-gnatwL.
* warnsw.adb: New handling of Elab_Warnings, Elab_Info_Messages
* warnsw.ads (Elab_Info_Messages): New field in Warning_Record

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208139 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:18:38 +0000 (15:18 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* einfo.ads, einfo.adb (Has_Shift_Operator): New flag.
* gnat_rm.texi: Document pragma Provide_Shift_Operators.
* interfac.ads: Minor code reorganization (add pragma
Compiler_Unit_Warning).
* par-prag.adb: Add dummy entry for Provide_Shift_Operators.
* sem_ch3.adb (Build_Derived_Numeric_Type): Copy
Has_Shift_Operator flag.
* sem_intr.adb (Check_Intrinsic_Subprogram): Make sure
Check_Shift is always called (Check_Shift): Set Has_Shift_Operator.
* sem_prag.adb: Implement pragma Provide_Shift_Operators.
* snames.ads-tmpl: Add entries for pragma Provide_Shift_Operators
Add entry for Name_Amount.
* checks.adb (Selected_Range_Checks): When checking for a null
range, make sure we use the base type, and not the subtype for
deciding a range is null.
* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Check
for suspicious loop bound which is outside the range of the
loop subtype.
* gnat_ugn.texi: Add documentation section "Determining the
Chosen Elaboration Order"
* sem_ch13.adb (UC_Entry): Add field Act_Unit
(Validate_Unchecked_Conversion): Store Act_Unit
(Validate_Unchecked_Conversions): Test Warnings_Off in Act_Unit
* treepr.adb: Minor reformatting.

2014-02-25  Arnaud Charlet  <charlet@adacore.com>

* usage.adb: Minor: fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208138 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:15:44 +0000 (15:15 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* lib.ads, s-bitops.adb, s-bitops.ads, s-conca5.adb, gnat_rm.texi,
s-conca5.ads, s-conca7.adb, s-conca7.ads, s-crc32.adb, s-crc32.ads,
s-conca9.adb, s-conca9.ads, g-dyntab.adb, s-crtl.ads, g-dyntab.ads,
s-excdeb.adb, s-addope.adb, s-addope.ads, s-carun8.adb, s-carun8.ads,
g-htable.adb, g-htable.ads, g-hesora.adb, g-hesora.ads, s-conca2.adb,
s-conca2.ads, a-comlin.adb, a-chlat1.ads, a-comlin.ads, errout.ads,
a-except.adb, s-conca4.adb, a-except.ads, s-conca4.ads, s-conca6.adb,
s-conca6.ads, g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads,
a-strhas.ads, restrict.adb, aspects.adb, aspects.ads, s-conca8.adb,
s-conca8.ads, back_end.adb, par-prag.adb, g-byorma.adb, g-byorma.ads,
a-elchha.adb, a-elchha.ads, g-speche.adb, g-speche.ads, s-casuti.adb,
s-assert.adb, s-casuti.ads, s-assert.ads, a-clrefi.adb, a-clrefi.ads,
s-conca3.adb, s-conca3.ads, a-ioexce.ads: Implement pragma
Compiler_Unit_Warning, change Compiler_Unit everywhere to
Compiler_Unit_Warning.

2014-02-25  Sergey Rybin  <rybin@adacore.com frybin>

* sem_prag.adb (Analyze_Depends_In_Decl_Part): Do not normalize
in ASIS mode aggregates that are used as aspect definitions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208137 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:11:39 +0000 (15:11 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, sem_util.adb, sem_util.ads, exp_ch6.adb: Minor
reformatting.

2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Freeze_Entity): If the return type of a function
is a limited view, and the non-limited view has not been seen yet,
defer freezing to some later point.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb: Minor reformatting.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* s-excdeb.ads, s-except.ads, s-exctab.adb, s-exctab.ads, s-finmas.ads,
s-htable.adb, s-htable.ads, s-imenne.adb, s-imenne.ads, s-imgenu.adb,
s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-memory-vms_64.adb,
s-memory-vms_64.ads, s-memory.adb, s-memory.ads, s-os_lib.adb,
s-os_lib.ads, s-parame.adb, s-parame.ads, s-purexc.ads, s-restri.adb,
s-restri.ads, s-rident.ads, s-secsta.adb, s-secsta.ads, s-soflin.adb,
s-soflin.ads, s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
s-sopco5.adb, s-sopco5.ads, s-spsufi.ads, s-stache.adb, s-stache.ads,
s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads, s-strcom.adb,
s-strcom.ads, s-strhas.adb, s-string.adb, s-string.ads, s-strops.adb,
s-strops.ads, s-ststop.adb, s-ststop.ads, s-traceb.adb, s-traceb.ads,
s-traent.adb, s-traent.ads, s-unstyp.ads, s-utf_32.adb, s-utf_32.ads,
s-wchcnv.adb, s-wchcnv.ads, s-wchcon.adb, s-wchcon.ads, s-wchjis.adb,
s-wchjis.ads, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_prag.adb,
snames.ads-tmpl: Change Compiler_Unit everywhere to
Compiler_Unit_Warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208135 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 25 Feb 2014 15:05:39 +0000 (15:05 +0000)]
2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Add_Or_Save_Precondition): New routine.
(Collect_Body_Postconditions_In_Decls): New routine.
(Collect_Body_Postconditions_Of_Kind): Factor out code. Handle
postcondition aspects or pragmas that appear on a subprogram
body stub.
(Collect_Spec_Preconditions): Factor out code. Handle
precondition aspects or pragmas that appear on a subprogram
body stub.
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): The analysis of
aspects that apply to a subprogram body stub is no longer delayed,
the aspects are analyzed on the spot.
(SPARK_Aspect_Error):
Aspects that apply to a subprogram declaration cannot appear in
a subunit.
* sem_ch10.adb Remove with and use clause for Sem_Ch13.
(Analyze_Proper_Body): Add local variable Comp_Unit. Unum
is now a local variable. Code cleanup. Analysis related to
the aspects of a subprogram body stub is now carried out by
Analyze_Subprogram_Body_Helper. Do not propagate the aspects
and/or pragmas of a subprogram body stub to the proper body
as this is no longer needed. Do not analyze the aspects of a
subprogram stub when the corresponding source unit is missing.
(Analyze_Protected_Body_Stub): Flag the illegal use of aspects
on a stub.
(Analyze_Task_Body_Stub): Flag the illegal use of
aspects on a stub.
(Optional_Subunit): Add local variable Unum.
* sem_ch13.adb (Insert_Delayed_Pragma): Do not analyze a generated
pragma when it applies to a subprogram body stub.
* sem_prag.adb (Analyze_Pragma): Pragmas Contract_Cases,
Depends and Global can now apply to a subprogram body stub as
long as it acts as its own spec.
(Analyze_Refined_Pragma):
Code reformatting. Refinement pragmas cannot apply to a subunit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208134 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 25 Feb 2014 15:03:23 +0000 (15:03 +0000)]
2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.ads Update the usage of flag
Uses_Sec_Stack. Uses_Sec_Stack now applies to E_Loop entities.
* exp_ch5.adb (Expand_Iterator_Loop): The temporary for a cursor
now starts with the letter 'C'. This makes reading expanded
code easier.
* exp_ch7.adb (Establish_Transient_Scope): Add local variable
Iter_Loop. Signal that an Ada 2012 iterator loop requires
secondary stack management when creating a transient scope for
an element reference.
* exp_util.adb (Process_Statements_For_Controlled_Objects):
When wrapping the statements of a loop, pass the E_Loop entity
to the wrapping machinery.
(Wrap_Statements_In_Block): Add
formal parameter Scop along with comment on usage. Add local
variables Block_Id, Block_Nod and Iter_Loop. Mark the generated
block as requiring secondary stack management when the block is
created inside an Ada 2012 iterator loop. This ensures that any
reference objects are reclaimed on each iteration of the loop.
* sem_ch5.adb (Analyze_Loop_Statement): Mark the generated block
tasked with the handling of container iterators as requiring
secondary stack management. This ensures that iterators are
reclaimed when the loop terminates or is exited in any fashion.
* sem_util.adb (Add_Block_Identifier): New routine.
(Find_Enclosing_Iterator_Loop): New routine.
* sem_util.ads (Add_Block_Identifier): New routine.
(Find_Enclosing_Iterator_Loop): New routine.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208133 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 15:02:01 +0000 (15:02 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* sinfo.ads: Minor reformatting.

2014-02-25  Tristan Gingold  <gingold@adacore.com>

* s-expllu.ads, s-expuns.ads, s-expmod.ads: Minor comment fix.

2014-02-25  Pascal Obry  <obry@adacore.com>

* sinput-l.adb, osint.adb, osint.ads: Add Prep_Suffix to factorize code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208132 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 25 Feb 2014 14:59:33 +0000 (14:59 +0000)]
2014-02-25  Tristan Gingold  <gingold@adacore.com>

* sem_ch10.adb: Minor comment fix.

2014-02-25  Bob Duff  <duff@adacore.com>

* s-tasdeb.adb: Misc cleanup of this package,
including printing addresses in hexadecimal.
(Write): Fix minor bug when taking 'Address of an empty string.

2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_Part_Of): Reject state refinement in a
public child unit when it does not refer to the abstract state
of a public ancestor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208131 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Yannick Moy <moy@adacore.com>
charlet [Tue, 25 Feb 2014 14:58:29 +0000 (14:58 +0000)]
2014-02-25  Yannick Moy  <moy@adacore.com>

* sem_prag.adb (Analyze_Pragma/Pragma_Validity_Checks): Ignore pragma
Validity_Checks in GNATprove and CodePeer modes.

2014-02-25  Pascal Obry  <obry@adacore.com>

* prj-attr.adb, projects.texi, snames.ads-tmpl: Add package Install's
Artifacts attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208130 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Yannick Moy <moy@adacore.com>
charlet [Tue, 25 Feb 2014 14:57:28 +0000 (14:57 +0000)]
2014-02-25  Yannick Moy  <moy@adacore.com>

* sem_prag.adb: Minor reformatting to get consistent messages.

2014-02-25  Robert Dewar  <dewar@adacore.com>

* checks.adb: Minor reformatting.
* sinfo.ads (Do_Range_Check): Document that this flag is never
passed to the back end.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208129 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Yannick Moy <moy@adacore.com>
charlet [Tue, 25 Feb 2014 14:55:43 +0000 (14:55 +0000)]
2014-02-25  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_prag.adb, sem_attr.adb,
sem_ch6.adb: Remove useless references to SPARK RM in error messages.

2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_res.adb (Appears_In_Check): New routine.
(Resolve_Entity_Name): Remove local variables Prev and
Usage_OK. Par is now a constant. Remove the parent chain traversal
as the placement of a volatile object with enabled property
Async_Writers and/or Effective_Reads must appear immediately
within a legal construct.

2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.adb (Apply_Selected_Range_Checks):
Alphabetize local constants and variables. Add comments.
Always insert a range check that requires runtime evaluation into
the tree.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208128 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Robert Dewar <dewar@adacore.com>
charlet [Tue, 25 Feb 2014 14:53:55 +0000 (14:53 +0000)]
2014-02-25  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb, sem_ch6.adb, par-ch3.adb: Minor reformatting.

2014-02-25  Bob Duff  <duff@adacore.com>

* s-tassta.adb (Finalize_Global_Tasks): Limit the number of loop
iterations while waiting for independent tasks to terminate;
if an independent task does not terminate, we do not want to
hang here. In that case, the thread will be terminated when the
process exits.
* s-taprop-linux.adb (Abort_Task): Fix Assert to allow for ESRCH.

2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Check_SPARK_Aspect_For_ASIS): New subprogram,
used to perform pre-analysis of the expression for SPARK
aspects that have a non-standard syntax, such as GLobal and
Initializes. The procedure applies to the original expression
in an aspect specification, prior to the analysis of the
corresponding pragma, in order to provide semantic information
for ASIS navigation purposes.
(Analyze_Global_In_Decl_List, Analyze_Initializes_In_Decl_Part):
Call new subprogram.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208127 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Yannick Moy <moy@adacore.com>
charlet [Tue, 25 Feb 2014 14:52:42 +0000 (14:52 +0000)]
2014-02-25  Yannick Moy  <moy@adacore.com>

* sem_prag.adb: Remove obsolete reference to SPARK RM in error message.

2014-02-25  Doug Rupp  <rupp@adacore.com>

* init.c (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE): Enable for ARM.
(__gnat_adjust_context_for_raise): Bump the PC by 2.

2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* par-ch3.adb (P_Basic_Declarative_Items): In the case of a
misplaced IS, add a statement sequence to improper body only if
one has not been parsed already.

2014-02-25  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Analyze_Attribute, case 'Update): Check for
mismatch when multidimensional array is updated with a single
index.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208126 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Yannick Moy <moy@adacore.com>
charlet [Tue, 25 Feb 2014 14:51:20 +0000 (14:51 +0000)]
2014-02-25  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb, sem_ch5.adb, sem_prag.adb, sem_attr.adb, errout.ads,
sem_ch6.adb: Mark most references to SPARK RM in error messages
for removal.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208125 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoCorrect ChangeLog entry
wschmidt [Tue, 25 Feb 2014 13:35:28 +0000 (13:35 +0000)]
Correct ChangeLog entry

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208124 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 25 Feb 2014 13:28:25 +0000 (13:28 +0000)]
2014-02-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/vector.md (*vector_ordered<mode>): Change split to
use canonical form for nor<mode>3.
(*vector_unordered<mode>): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208122 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/testsuite:
wschmidt [Tue, 25 Feb 2014 13:18:17 +0000 (13:18 +0000)]
gcc/testsuite:

2014-02-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld-vsx.c: Don't use vec_all_eq.
* gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
* gcc.dg/vmx/ldl-vsx.c: Likewise.
* gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
* gcc.dg/vmx/merge-vsx.c: Likewise.
* gcc.dg/vmx/merge-vsx-be-order.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208120 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/55426
ktkachov [Tue, 25 Feb 2014 10:20:40 +0000 (10:20 +0000)]
PR target/55426
* config/arm/arm.h (CANNOT_CHANGE_MODE_CLASS): Allow 128 to 64-bit
conversions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208116 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
kyukhin [Tue, 25 Feb 2014 09:52:53 +0000 (09:52 +0000)]
gcc/
* common/config/i386/i386-common.c (OPTION_MASK_ISA_PREFETCHWT1_SET),
(OPTION_MASK_ISA_PREFETCHWT1_UNSET): New.
(ix86_handle_option): Handle OPT_mprefetchwt1.
* config/i386/cpuid.h (bit_PREFETCHWT1): New.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect
PREFETCHWT1 CPUID.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_PREFETCHWT1.
* config/i386/i386.c (ix86_target_string): Handle mprefetchwt1.
(PTA_PREFETCHWT1): New.
(ix86_option_override_internal): Handle PTA_PREFETCHWT1.
(ix86_valid_target_attribute_inner_p): Handle OPT_mprefetchwt1.
* config/i386/i386.h (TARGET_PREFETCHWT1), (TARGET_PREFETCHWT1_P):
  New.
* config/i386/i386.md (prefetch): Check TARGET_PREFETCHWT1
(*prefetch_avx512pf_<mode>_: Change into ...
 (*prefetch_prefetchwt1_<mode>: This.
* config/i386/i386.opt (mprefetchwt1): New.
* config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET1.
(_mm_prefetch): Handle intent to write.
* doc/invoke.texi (mprefetchwt1), (mno-prefetchwt1): Doccument.

gcc/testsuite/
* gcc.target/i386/avx-1.c: Update __builtin_prefetch.
* gcc.target/i386/prefetchwt1-1.c: New.
* g++.dg/other/i386-2.C: Add new option.
* g++.dg/other/i386-3.C: Ditto.
* gcc.target/i386/sse-12.c: Ditto.
* gcc.target/i386/sse-13.c: Update __builtin_prefetch, add new option.
* gcc.target/i386/sse-22.c: Add new option.
* gcc.target/i386/sse-23.c: Update __builtin_prefetch, add new option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208115 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoSkip gfortran.dg/erf_3.F90 and gfortran.dg/round_4.f90 on Solaris 9 (PR libfortran...
ro [Tue, 25 Feb 2014 09:27:25 +0000 (09:27 +0000)]
Skip gfortran.dg/erf_3.F90 and gfortran.dg/round_4.f90 on Solaris 9 (PR libfortran/59313, libfortran/58015)

PR libfortran/59313
* gfortran.dg/erf_3.F90: Skip on sparc*-*-solaris2.9*.

PR libfortran/58015
* gfortran.dg/round_4.f90: Skip on *-*-solaris2.9*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208114 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Richard Biener <rguenther@suse.de>
rguenth [Tue, 25 Feb 2014 08:59:10 +0000 (08:59 +0000)]
2014-02-25  Richard Biener  <rguenther@suse.de>

PR middle-end/60291
* emit-rtl.c (mem_attrs_htab): Remove.
(mem_attrs_htab_hash): Likewise.
(mem_attrs_htab_eq): Likewise.
(set_mem_attrs): Always allocate new mem-attrs when something
changed.
(init_emit_once): Do not allocate mem_attrs_htab.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208113 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-25 Richard Biener <rguenther@suse.de>
rguenth [Tue, 25 Feb 2014 08:57:42 +0000 (08:57 +0000)]
2014-02-25  Richard Biener  <rguenther@suse.de>

PR lto/60319
* lto-opts.c (lto_write_options): Output non-explicit conservative
-fwrapv, -fno-trapv and -fno-strict-overflow.
* lto-wrapper.c (merge_and_complain): Handle merging those options.
(run_gcc): And pass them through.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208112 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix PR c++/60311.
abutcher [Tue, 25 Feb 2014 06:44:53 +0000 (06:44 +0000)]
Fix PR c++/60311.

PR c++/60311
* parser.c (function_being_declared_is_template_p): Return false when
processing a template parameter list.
(cp_parser_parameter_declaration_clause): Don't set
auto_is_implicit_function_template_parm_p when processing a
template parameter list.

PR c++/60311
* g++.dg/cpp1y/pr60311.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208111 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * sel-sched.c (calculate_new_fences): New parameter ptime.
abel [Tue, 25 Feb 2014 06:41:08 +0000 (06:41 +0000)]
    * sel-sched.c (calculate_new_fences): New parameter ptime.
        Calculate it as a maximum over all fence cycles.
        (sel_sched_region_2): Adjust the call to calculate_new_fences.
        Print the final schedule timing when sched_verbose.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208110 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR rtl-optimization/60292
abel [Tue, 25 Feb 2014 06:35:09 +0000 (06:35 +0000)]
PR rtl-optimization/60292
* sel-sched.c (fill_vec_av_set): Do not reset target availability
bit fot the fence instruction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208109 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * calls.h: Fix typo in comment.
law [Tue, 25 Feb 2014 06:19:32 +0000 (06:19 +0000)]
* calls.h: Fix typo in comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208108 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix out-of-line definition of class template generic member functions.
abutcher [Tue, 25 Feb 2014 03:47:35 +0000 (03:47 +0000)]
Fix out-of-line definition of class template generic member functions.

* parser.c (synthesize_implicit_template_parm): Inject new template
argument list appropriately when a generic member function
of a class template is declared out-of-line.

* g++.dg/cpp1y/fn-generic-member-ool.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208107 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix PR c++/60065.
abutcher [Tue, 25 Feb 2014 03:47:24 +0000 (03:47 +0000)]
Fix PR c++/60065.

PR c++/60065
* parser.c (cp_parser_direct_declarator): Don't save and
restore num_template_parameter_lists around call to
cp_parser_parameter_declaration_list.
(function_being_declared_is_template_p): New predicate.
(cp_parser_parameter_declaration_list): Use
function_being_declared_is_template_p as predicate for
inspecting current function template parameter list length
rather than num_template_parameter_lists.

PR c++/60065
* g++.dg/cpp1y/pr60065.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208106 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/pa/pa.c (pa_output_move_double): Don't valididate when
danglin [Tue, 25 Feb 2014 00:48:47 +0000 (00:48 +0000)]
* config/pa/pa.c (pa_output_move_double): Don't valididate when
adjusting offsetable addresses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208101 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Tue, 25 Feb 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208100 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/60295
hubicka [Mon, 24 Feb 2014 22:58:44 +0000 (22:58 +0000)]
PR lto/60295
* lto.c (stream_out): Avoid parallel streaming with
-flto=jobserver until we are able to throttle it down
resonably.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208097 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60146
jason [Mon, 24 Feb 2014 22:17:43 +0000 (22:17 +0000)]
PR c++/60146
* pt.c (tsubst_omp_for_iterator): Don't let substitution of the
DECL_EXPR initialize a non-class iterator.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208094 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60312
jason [Mon, 24 Feb 2014 18:47:20 +0000 (18:47 +0000)]
PR c++/60312
* parser.c (cp_parser_template_type_arg): Check for invalid 'auto'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208092 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * sparseset.h (sparseset_pop): Fix the wrong index.
carrot [Mon, 24 Feb 2014 18:35:54 +0000 (18:35 +0000)]
* sparseset.h (sparseset_pop): Fix the wrong index.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208091 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 17:16:08 +0000 (17:16 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.ads: Update comment.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): Use sloc of
original defining identifiers in parameter specifications for
body. They may differ from parameter specification itself if a
list of identifiers appears in the tree and is expanded by parser.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* par-ch3.adb (P_Basic_Declarative_Items): If an improper body
appears in a list of basic declarations, complete the tree with
an empty statement list, to prevent cascaded errors and crashes
if semantic analysis is attempted.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208090 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 17:14:40 +0000 (17:14 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-sercom-mingw.adb (Open): Fix incorrect test for error return
value.
* erroutc.adb: Minor reformatting.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Clause_Syntax): Account
for a solitary input item in a dependency list.

2014-02-24  Yannick Moy  <moy@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Do not
use validity checks at all in GNATprove_Mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208089 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Robert Dewar <dewar@adacore.com>
charlet [Mon, 24 Feb 2014 17:13:34 +0000 (17:13 +0000)]
2014-02-24  Robert Dewar  <dewar@adacore.com>

* g-sercom-mingw.adb, g-sercom-linux.adb, sem_prag.adb, freeze.adb,
atree.adb, atree.ads: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208088 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 24 Feb 2014 17:07:48 +0000 (17:07 +0000)]
2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Contract): Do not enforce
global and dependence refinement when SPARK_Mode is off.
* sem_ch7.adb (Analyze_Package_Body_Contract): Do not enforce
state refinement when SPARK_Mode is off.
* sem_ch13.adb (Analyze_Aspect_Specifications): Add local
variable Decl. Insert the generated pragma for Refined_State
after a potential pragma SPARK_Mode.
* sem_prag.adb (Analyze_Depends_In_Decl_Part): Add local
constant Deps. Remove local variable Expr. Check the syntax
of pragma Depends when SPARK_Mode is off. Factor out the
processing for extra parenthesis around individual clauses.
(Analyze_Global_In_Decl_List): Items is now a constant. Check
the syntax of pragma Global when SPARK_Mode is off.
(Analyze_Initializes_In_Decl_Part): Check the syntax of pragma
Initializes when SPARK_Mode is off.
(Analyze_Part_Of): Check
the syntax of the encapsulating state when SPARK_Mode is off.
(Analyze_Pragma): Check the syntax of pragma Abstract_State when
SPARK_Mode is off. Move the declaration order check with respect
to pragma Initializes to the end of the processing. Do not verify
the declaration order for pragma Initial_Condition when SPARK_Mode
is off. Do not complain about a useless package refinement when
SPARK_Mode is off.
(Analyze_Refined_Depends_In_Decl_Part): Refs
is now a constant. Check the syntax of pragma Refined_Depends
when SPARK_Mode is off.
(Analyze_Refined_Global_In_Decl_Part):
Check the syntax of pragma Refined_Global when SPARK_Mode is off.
(Analyze_Refined_State_In_Decl_Part): Check the syntax of pragma
Refined_State when SPARK_Mode is off.
(Check_Dependence_List_Syntax): New routine.
(Check_Global_List_Syntax): New routine.
(Check_Initialization_List_Syntax): New routine.
(Check_Item_Syntax): New routine.
(Check_State_Declaration_Syntax): New routine.
(Check_Refinement_List_Syntax): New routine.
(Has_Extra_Parentheses): Moved to the top level of Sem_Prag.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208087 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Robert Dewar <dewar@adacore.com>
charlet [Mon, 24 Feb 2014 17:06:34 +0000 (17:06 +0000)]
2014-02-24  Robert Dewar  <dewar@adacore.com>

* a-tags.adb, s-os_lib.adb: Minor reformatting.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-sercom-mingw.adb, g-sercom-linux.adb (Raise_Error): Include
strerror message, not just numeric errno value.

2014-02-24  Doug Rupp  <rupp@adacore.com>

* raise-gcc.c (exception_class_eq): Make endian neutral.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* atree.ads, atree,adb (Copy_Separate_Tree): Remove Syntax_Only
flag, and reset Etype and Analyzed attributes unconditionally
when copying a tree that may be partly analyzed.
* freeze.adb: Change calls to Copy_Separate_Tree accordingly.
* sem_ch6.adb (Check_Inline_Pragma): If the Inline pragma appears
within a subprogram body and applies to it, remove it from the
body before making a copy of it, to prevent spurious errors when
analyzing the copied body.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208086 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix header.
charlet [Mon, 24 Feb 2014 17:04:26 +0000 (17:04 +0000)]
Fix header.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208085 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update
charlet [Mon, 24 Feb 2014 17:03:02 +0000 (17:03 +0000)]
* gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update
deps.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208084 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 17:01:19 +0000 (17:01 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.adb (Errno_Message): Do not depend on Integer'Image.
* s-oscons-tmplt.c: On VxWorks, include adaint.h only after
vxWorks.h has been included.  Also ensure that file attributes
related definitions are output even in cases where socket support
is not enabled.
* a-tags.adb: Code clean up.
* Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Use -iquote
instead of -I to add the main ada source directory to the header
search path, in order to avoid conflict between our own "types.h"
and VxWork's <types.h>.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* atree.ads, atree.adb (Copy_Separate_Tree): Add Syntax_Only parameter.
* debug.adb: Remove documentation of -gnatd.X, no longer used.
* freeze.adb (Wrap_Imported_Subprogram): Fixed and activated.

2014-02-24  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Improve documentation of gnatpp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208083 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 16:59:24 +0000 (16:59 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-stheme.adb, g-socthi-vms.adb, g-socthi-vms.ads,
g-socthi-vxworks.adb, g-socthi-vxworks.ads, g-stseme.adb,
g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi.adb,
g-socthi.ads, g-socket.adb (Host_Error_Message): Return a string, not
a chars_ptr, because on Windows this is a renaming of
Socket_Error_Message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208082 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Robert Dewar <dewar@adacore.com>
charlet [Mon, 24 Feb 2014 16:58:19 +0000 (16:58 +0000)]
2014-02-24  Robert Dewar  <dewar@adacore.com>

* a-direct.adb, sem_ch5.adb, a-cfdlli.adb, a-cfhase.adb, a-tags.adb,
s-filatt.ads, a-cforma.adb, sem_ch6.adb, g-socthi-mingw.adb,
a-cfhama.adb, a-cforse.adb, a-cofove.adb: Minor reformatting and code
reorganization.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Make sure
that the source directory containing s-oscons-tmplt.c is on the
include path, so that all internal header files are available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208081 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 24 Feb 2014 16:56:25 +0000 (16:56 +0000)]
2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the
domain of iteration is an attribute reference 'Old, this is an
Ada 2012 iterator and the loop must be rewritten as such.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208080 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 16:54:41 +0000 (16:54 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-fileio.adb (Errno_Message): Remove, use shared version from
s-os_lib instead.
* s-crtrun.ads, Makefile.rtl: Remove now unused unit.
* g-stseme (Socket_Error_Message): Reimplement in terms of new
s-os_lib function.
* g-socthi.ads, g-socthi.adb: Change profile of
Socket_Error_Message to return String to allow the above.
* g-socket.adb, g-socthi-mingw.adb, g-socthi-mingw.ads,
* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
* g-socthi-vxworks.ads: Update to account for the above profile
change.
* a-tags.adb: Use strlen builtin binding provided by s-crtl.
* s-crtl.ads (strncpy): New procedure.
* s-os_lib.adb (Copy_Attributes): Import just once (strncpy):
Use import from s-crtl.
* a-envvar.adb, osint.adb: Use imports of C runtime functions
from s-crtl instead of re-importing locally.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208079 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 24 Feb 2014 16:51:58 +0000 (16:51 +0000)]
2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Global_Item): Emit the
variable related checks concerning volatile objects only when
SPARK_Mode is on.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): use
Error_Msg_Ada_2012_Feature.

2014-02-24  Jose Ruiz  <ruiz@adacore.com>

* s-rident.ads (Profile_Info): For Ravenscar, the restrictions
No_Local_Timing_Events and No_Specific_Termination_Handlers
must be set, according to the Ravenscar profile definition
in D.13(6/3).

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): If this is a
completion, freeze return type and its designated type if needed.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
'Address): When moving initialization statements to a freeze
entity, keep them under a single node (i.e. do not unwrap
expressions with actions), and set the Initialization_Statements
attribute again so that processing of a later pragma Import can
still remove them.

2014-02-24  Claire Dross  <dross@adacore.com>

* a-cfdlli.adb, a-cfdlli.ads, a-cfhama.adb, a-cfhama.ads,
a-cfhase.adb, a-cfhase.ads, a-cforma.adb, a-cforma.ads,
a-cforse.adb, a-cforse.ads, a-cofove.adb, a-cofove.ads: Rename
Left/Right to First_To_Previous/Current_To_Last.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* adaint.h (struct file_attributes): New component "error"
(__gnat_error_attributes): Accessor for the above.
* adaint.c (__gnat_error_attributes): New subprogram
(__gnat_stat): Fix returned value (expect errno value)
(__gnat_stat_to_attr): Add management of error component (set to
stat errno value, except for missing files where it is set to 0,
and exists is set to 0).
* osint.ads (File_Attributes_Size): Update per change above,
also clarify documentation.
* s-filatt.ads: New file, binding to file attributes related
functions.
* Makefile.rtl (s-filatt): New runtime unit.
* s-crtl.ads (strlen): Expose binding to GCC builtin (falls back
to library function if not available on target).
* s-os_lib.ads, s-os_lib.adb (Errno_Message): New subprogram.
* s-oscons-tmplt.c (SIZEOF_struct_file_attributes,
SIZEOF_struct_dirent_alloc): New constants.
* Make-generated.in (s-oscons.ads): Now requires adaint.h.
* a-direct.adb (Fetch_Next_Entry): Fix incorrect buffer sizes.
Perform appropriate error checking if stat fails (do not just
ignore existing files if stat fails)
* gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update
dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208078 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 24 Feb 2014 16:32:04 +0000 (16:32 +0000)]
2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Global_Item): Move the check concerning
the use of volatile objects as global items in a function to
the variable related checks section.
* sem_util.adb (Async_Readers_Enabled): Directly call
Has_Enabled_Property.
(Async_Writers_Enabled): Directly call Has_Enabled_Property.
(Effective_Reads_Enabled): Directly call Has_Enabled_Property.
(Effective_Writes_Enabled): Directly call Has_Enabled_Property.
(Has_Enabled_Property): Rename formal parameter State_Id to Item_Id.
Update the comment on usage. State_Has_Enabled_Property how handles
the original logic of the routine. Add processing for variables.
(State_Has_Enabled_Property): New routine.
(Variable_Has_Enabled_Property): New routine.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208077 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Robert Dewar <dewar@adacore.com>
charlet [Mon, 24 Feb 2014 16:30:08 +0000 (16:30 +0000)]
2014-02-24  Robert Dewar  <dewar@adacore.com>

* sinfo.ads, sem_ch12.adb, sem_res.adb, sem_ch4.adb, par-ch12.adb:
Minor reformatting.
* atree.ads, atree.adb (Node35): New function.
(Set_Node35): New procedure.
* debug.adb: Define new debug flag -gnatd.X.
* einfo.ads, einfo.adb (Import_Pragma): New field.
* freeze.adb (Wrap_Imported_Procedure): New procedure (not
really active yet, has to be activated with -gnatd.X.
* sem_prag.adb (Set_Imported): Set new Import_Pragma
field (Set_Imported): Don't set Is_Public (see
Freeze.Wrap_Imported_Subprogram)
* par-ch3.adb (P_Component_List): Handle unexpected null component.

2014-02-24  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb: Correct reference to SPARK RM in error messages.
* gnat_rm.texi: Correct documentation of attribute Update.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Reject container
iterator in older versions of Ada.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208076 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Gary Dismukes <dismukes@adacore.com>
charlet [Mon, 24 Feb 2014 16:01:26 +0000 (16:01 +0000)]
2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* sem_ch5.adb, sem_aux.ads, sem_ch12.adb, gnat_ugn.texi, par.adb,
par-ch12.adb: Change spelling 'parametrization' to 'parameterization'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208075 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 24 Feb 2014 15:57:59 +0000 (15:57 +0000)]
2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New attribute Generalized_Indexing, for
indexed_components that are instances of Ada 2012 container
indexing operations. Analysis and resolution of such nodes
is performed on the attribute, and the original source is
preserved for ASIS operations. If expansion is enabled, the
indexed component is replaced by the value of this attribute,
which is in a call to an Indexing aspect, in most case wrapped
in a dereference operation.
* sem_ch4.adb (Analyze_Indexed_Component): Create
Generalized_Indexing attribute when appropriate.
(Analyze_Call): If prefix is not overloadable and has an indexing
aspect, transform into an indexed component so it can be analyzed
as a potential container indexing.
(Analyze_Expression): If node is an indexed component with a
Generalized_ Indexing, do not re-analyze.
* sem_res.adb (Resolve_Generalized_Indexing): Complete resolution
of an indexed_component that has been transformed into a container
indexing operation.
(Resolve_Indexed_Component): Call the above when required.
(Resolve): Do not insert an explicit dereference operation on
an indexed_component whose type has an implicit dereference:
the operation is inserted when resolving the related
Generalized_Indexing.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208074 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Olivier Ramonat <ramonat@adacore.com>
charlet [Mon, 24 Feb 2014 15:56:14 +0000 (15:56 +0000)]
2014-02-24  Olivier Ramonat  <ramonat@adacore.com>

* gnat_rm.texi, gnat_ugn.texi: Replace Ada Compiler by Ada Development
Environment.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Constituent_Usage): Remove leading spaces in
error messages.
(Inconsistent_Mode_Error): Remove leading spaces in error messages.
Merge the expected and available mode errors.
(Report_Unused_Constituents): Remove leading spaces in error messages.
(Report_Unused_States): Remove leading spaces in error messages.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208073 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 24 Feb 2014 15:52:45 +0000 (15:52 +0000)]
2014-02-24  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb (Traverse_One): Refine categorization of statement
SCOs.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* aspects.ads, aspects.adb: Remove aspects Ada_2005 and Ada_2012,
Pure_05, Pure_12 and Preelaborate_05.
* gnat_rm.texi: Update accordingly.
* sem_prag.adb: Document one argument form of Ada_05/Ada_2005
pragmas Document one argument form of Ada_12/Ada_2012 pragmas
Recognize one argument form of these pragmas only in GNAT mode
(-gnatg).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208072 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 24 Feb 2014 15:49:39 +0000 (15:49 +0000)]
2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* s-dimmks.ads: Replace symbol for temperature, previously the
Greek letter Theta, by the ASCII @ sign.
* s-diflio.ads: ditto.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb: Minor code reorganization (use OR for boolean
variables).
* sem_ch3.adb, sem_prag.adb, freeze.adb: Minor reformatting.

2014-02-24  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi, projects.texi: Added the necessary conditionalization
so that references to gnatmem and ASIS tools do not appear in the FSF
edition of the GNAT User's Guide.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208071 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Yannick Moy <moy@adacore.com>
charlet [Mon, 24 Feb 2014 15:09:40 +0000 (15:09 +0000)]
2014-02-24  Yannick Moy  <moy@adacore.com>

* freeze.adb (Freeze_Entity): Do not issue warning
for pre/post being ignored on imported subprogram in GNATprove
mode.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, sem_ch5.adb, sem_type.adb, sem_res.adb, sem_attr.adb,
stand.ads, sem_eval.adb: Minor reformatting.

2014-02-24  Yannick Moy  <moy@adacore.com>

* sem_prag.adb: Minor rewording in error message.

2014-02-24  Johannes Kanig  <kanig@adacore.com>

* exp_util.adb (Expand_Subtype_From_Expr): Do not expand subtypes in
GNATprove_mode, gnat2why doesn't need nor use these types.

2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* exp_ch4.adb (Expand_N_Op_Expon): On the AAMP
target, in the case of signed integer exponentiation that uses a
run-time routine, always select the Exp_* versions, since overflow
checking is automatically done by AAMP arithmetic instructions.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications):
When the related context is a package instace, insert pragma
Abstract_State after all internally-generated renamings related
to the instance "header".

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Analyze Contract of abstract
subprograms.
* sem_disp.adb (Check_Dispatching_Context): A non-dispatching
call to an abstract subprogram is legal if it appears in a
pre/postcondition of another abstract operation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208070 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoTILE-Gx big endian support.
walt [Mon, 24 Feb 2014 15:08:00 +0000 (15:08 +0000)]
TILE-Gx big endian support.

/:
* configure.ac (tilepro-*-*) Change to tilepro*-*-*.
(tilegx-*-*): Change to tilegx*-*-*.
* configure: Regenerate.

contrib/:
* config-list.mk (LIST): Add tilegxbe-linux-gnu.

libcpp/:
* configure.ac: Change "tilepro" triplet to "tilepro*".
* configure: Regenerate.

libgcc/:
* config.host: Support "tilegx*" and "tilepro*" triplets.
* config/tilegx/sfp-machine32.h (__BYTE_ORDER): Handle big endian.
* config/tilegx/sfp-machine64.h (__BYTE_ORDER): Handle big endian.

gcc/:
* config.gcc (tilepro-*-*): Change to tilepro*-*-*.
(tilegx-*-linux*): Change to tilegx*-*-linux*; Support tilegxbe
triplet.
* common/config/tilegx/tilegx-common.c
(TARGET_DEFAULT_TARGET_FLAGS): Define.
* config/tilegx/linux.h (ASM_SPEC): Add endian_spec.
(LINK_SPEC): Ditto.
* config/tilegx/sync.md (atomic_test_and_set): Handle big endian.
* config/tilegx/tilegx.c (tilegx_return_in_msb): New.
(tilegx_gimplify_va_arg_expr): Handle big endian.
(tilegx_expand_unaligned_load): Ditto.
(tilegx_expand_unaligned_store): Ditto.
(TARGET_RETURN_IN_MSB): New.
* config/tilegx/tilegx.h (TARGET_DEFAULT): New.
(TARGET_ENDIAN_DEFAULT): New.
(TARGET_BIG_ENDIAN): Handle big endian.
(BYTES_BIG_ENDIAN): Ditto.
(WORDS_BIG_ENDIAN): Ditto.
(FLOAT_WORDS_BIG_ENDIAN): Ditto.
(ENDIAN_SPEC): New.
(EXTRA_SPECS): New.
* config/tilegx/tilegx.md (extv): Handle big endian.
(extzv): Ditto.
(insn_st<n>): Ditto.
(insn_st<n>_add<bitsuffix>): Ditto.
(insn_stnt<n>): Ditto.
(insn_stnt<n>_add<bitsuffix>):Ditto.
(vec_interleave_highv8qi): Handle big endian.
(vec_interleave_highv8qi_be): New.
(vec_interleave_highv8qi_le): New.
(insn_v1int_h): Handle big endian.
(vec_interleave_lowv8qi): Handle big endian.
(vec_interleave_lowv8qi_be): New.
(vec_interleave_lowv8qi_le): New.
(insn_v1int_l): Handle big endian.
(vec_interleave_highv4hi): Handle big endian.
(vec_interleave_highv4hi_be): New.
(vec_interleave_highv4hi_le): New.
(insn_v2int_h): Handle big endian.
(vec_interleave_lowv4hi): Handle big endian.
(vec_interleave_lowv4hi_be): New.
(vec_interleave_lowv4hi_le): New.
(insn_v2int_l): Handle big endian.
(vec_interleave_highv2si): Handle big endian.
(vec_interleave_highv2si_be): New.
(vec_interleave_highv2si_le): New.
(insn_v4int_h): Handle big endian.
(vec_interleave_lowv2si): Handle big endian.
(vec_interleave_lowv2si_be): New.
(vec_interleave_lowv2si_le): New.
(insn_v4int_l): Handle big endian.
* config/tilegx/tilegx.opt (mbig-endian): New option.
(mlittle-endian): New option.
* doc/install.texi: Document tilegxbe-linux.
* doc/invoke.texi: Document -mbig-endian and -mlittle-endian.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208069 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Sergey Rybin <rybin@adacore.com frybin>
charlet [Mon, 24 Feb 2014 15:07:09 +0000 (15:07 +0000)]
2014-02-24  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: Misc updates.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_prag.adb (Expand_Old): Set the type of the generated temporary.

2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* layout.adb (Layout_Variant_Record): Instantiate
Generic_Check_Choices and call Check_Choices before calling
Build_Discr_Checking_Funcs, since we need Others_Discrete_Choices
set to prevent generating incorrect discriminant-checking
functions for 'others' variants (functions that unconditionally
return True rather than accounting for the values covered by the
'others' choice).
* sem_eval.ads (Subtypes_Statically_Compatible): Add formal
Formal_Derived_Matching.
(Subtypes_Statically_Match): Add formal Formal_Derived_Matching.
* sem_eval.adb (Subtypes_Statically_Compatible): Pass new
Formal_Derived_Matching formal to Subtypes_Statically_Match.
(Subtypes_Statically_Match): Suppress the Object_Size matching
test in the case where Formal_Derived_Matching is True.
* sem_ch12.adb (Validate_Derived_Type_Instance): Pass
True for Formal_Derived_Matching_Formal on the call to
Subtypes_Statically_Compatible.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208068 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-24 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 24 Feb 2014 12:39:52 +0000 (12:39 +0000)]
2014-02-24  Martin Jambor  <mjambor@suse.cz>

PR ipa/60266
* ipa-cp.c (propagate_constants_accross_call): Bail out early if
there are no parameter descriptors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208067 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
abel [Mon, 24 Feb 2014 05:57:02 +0000 (05:57 +0000)]
gcc/

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * sched-rgn.c (haifa_find_rgns): Move the nr_regions_initial variable
    initialization to ...
    (sched_rgn_init): ... here.
    (schedule_region): Check for SCHED_PRESSURE_NONE earlier.

testsuite/

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * gcc.c-torture/compile/pr60268.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208066 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Mon, 24 Feb 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208065 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-23 David Holsgrove <david.holsgrove@xilinx.com>
eager [Sun, 23 Feb 2014 18:58:40 +0000 (18:58 +0000)]
2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/microblaze.md: Correct ashrsi_reg / lshrsi_reg names

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208061 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-23 Edgar E. Iglesias <edgar.iglesias@xilinx.com>
eager [Sun, 23 Feb 2014 18:53:47 +0000 (18:53 +0000)]
2014-02-23  Edgar E. Iglesias <edgar.iglesias@xilinx.com>

* config/microblaze/microblaze.h: Remove SECONDARY_MEMORY_NEEDED
definition.

2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* gcc/testsuite/gcc.target/microblaze/others/mem_reload.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208059 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-23 David Holsgrove <david.holsgrove@xilinx.com>
eager [Sun, 23 Feb 2014 18:44:27 +0000 (18:44 +0000)]
2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* /config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
and define TARGET_ASM_OUTPUT_MI_THUNK and
TARGET_ASM_CAN_OUTPUT_MI_THUNK.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208057 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-23 David Holsgrove <david.holsgrove@xilinx.com>
eager [Sun, 23 Feb 2014 18:36:38 +0000 (18:36 +0000)]
2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/predicates.md: Add cmp_op predicate.
* config/microblaze/microblaze.md: Add branch_compare instruction
which uses cmp_op predicate and emits cmp insn before branch.
* config/microblaze/microblaze.c (microblaze_emit_compare): Rename
to microblaze_expand_conditional_branch and consolidate logic.
(microblaze_expand_conditional_branch): emit branch_compare
insn instead of handling cmp op separate from branch insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208055 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agognattools/
ebotcazou [Sun, 23 Feb 2014 16:30:11 +0000 (16:30 +0000)]
gnattools/
* Makefile.in (TOOLS_FLAGS_TO_PASS_CROSS): Robustify.
gcc/ada/
* gcc-interface/Make-lang.in (ADA_TOOLS_FLAGS_TO_PASS): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208053 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Sun, 23 Feb 2014 16:28:32 +0000 (16:28 +0000)]
2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_emit_le_vsx_move): Relax assert
to permit subregs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208052 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/utils2.c (build_simple_component_ref): Fix formatting.
ebotcazou [Sun, 23 Feb 2014 16:26:32 +0000 (16:26 +0000)]
* gcc-interface/utils2.c (build_simple_component_ref): Fix formatting.
Look through a conversion between original and packable version to get
the base object.
(build_component_ref): Rework comment and fix formatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208051 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc:
wschmidt [Sun, 23 Feb 2014 15:27:48 +0000 (15:27 +0000)]
gcc:

2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lve<VI_char>x): Replace
define_insn with define_expand and new define_insn
*altivec_lve<VI_char>x_internal.
(altivec_stve<VI_char>x): Replace define_insn with define_expand
and new define_insn *altivec_stve<VI_char>x_internal.
* config/rs6000/rs6000-protos.h (altivec_expand_stvex_be): New
prototype.
* config/rs6000/rs6000.c (altivec_expand_lvx_be): Document use by
lve*x built-ins.
(altivec_expand_stvex_be): New function.

gcc/testsuite:

2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/lde.c: New test.
* gcc.dg/vmx/lde-be-order.c: New test.
* gcc.dg/vmx/ste.c: New test.
* gcc.dg/vmx/ste-be-order.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208049 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sun, 23 Feb 2014 00:16:39 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208048 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/avr/avr.c (avr_can_eliminate): Allow elimination from
amylaar [Sat, 22 Feb 2014 20:24:08 +0000 (20:24 +0000)]
    * config/avr/avr.c (avr_can_eliminate): Allow elimination from
        ARG_POINTER_REGNUM
        to STACK_POINTER_REGNUM if !frame_pointer_needed.
        * config/avr/avr.c (ELIMINABLE_REGS): Add elimination from
        ARG_POINTER_REGNUM to STACK_POINTER_REGNUM.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208045 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR testsuite/60173
hp [Sat, 22 Feb 2014 16:58:06 +0000 (16:58 +0000)]
PR testsuite/60173
* lib/target-supports.exp
(check_effective_target_logical_op_short_circuit): Add cris-*-*
and crisv32-*-* to list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208044 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-22 Marc Glisse <marc.glisse@inria.fr>
glisse [Sat, 22 Feb 2014 10:24:11 +0000 (10:24 +0000)]
2014-02-22  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/60308
* include/bits/stl_deque.h (_Deque_base::_Deque_base(const
allocator_type&)): Remove redundant call to _M_initialize_map.
(deque::deque(const allocator_type&)): Initialize _Base with a
constructor that calls _M_initialize_map.

Partial revert:

2013-09-20  Marc Glisse  <marc.glisse@inria.fr>
PR libstdc++/58338
(_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
_M_initialize_map.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208041 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/58170
jason [Sat, 22 Feb 2014 05:50:12 +0000 (05:50 +0000)]
PR c++/58170
* parser.c (cp_parser_type_name): Always check dependency.
(cp_parser_type_specifier_seq): Call
cp_parser_parse_and_diagnose_invalid_type_name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208040 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sat, 22 Feb 2014 00:16:58 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208037 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-21 Janus Weil <janus@gcc.gnu.org>
janus [Fri, 21 Feb 2014 22:54:50 +0000 (22:54 +0000)]
2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60302
* check.c (gfc_check_c_f_pointer): Only clear 'size' if 'gfc_array_size'
is successful.

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60302
* gfortran.dg/c_f_pointer_shape_tests_6.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208033 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60108
jason [Fri, 21 Feb 2014 21:57:49 +0000 (21:57 +0000)]
PR c++/60108
* semantics.c (expand_or_defer_fn_1): Check DECL_DEFAULTED_FN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208030 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60185
jason [Fri, 21 Feb 2014 21:53:46 +0000 (21:53 +0000)]
PR c++/60185
* parser.c (cp_parser_default_argument): Clear
current_class_ptr/current_class_ref like tsubst_default_argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208029 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60252
jason [Fri, 21 Feb 2014 21:50:52 +0000 (21:50 +0000)]
PR c++/60252
* lambda.c (maybe_resolve_dummy): Check lambda_function rather
than current_binding_level.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208028 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60186
jason [Fri, 21 Feb 2014 21:49:05 +0000 (21:49 +0000)]
PR c++/60186
* typeck2.c (massage_init_elt): Call fold_non_dependent_expr_sfinae.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208027 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60187
jason [Fri, 21 Feb 2014 21:47:30 +0000 (21:47 +0000)]
PR c++/60187
* parser.c (cp_parser_enum_specifier): Call
check_for_bare_parameter_packs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208026 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/59347
jason [Fri, 21 Feb 2014 21:43:29 +0000 (21:43 +0000)]
PR c++/59347
* pt.c (tsubst_decl) [TYPE_DECL]: Don't try to instantiate an
erroneous typedef.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208025 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/60241
jason [Fri, 21 Feb 2014 21:41:16 +0000 (21:41 +0000)]
PR c++/60241
* pt.c (lookup_template_class_1): Update DECL_TEMPLATE_INSTANTIATIONS
of the partial instantiation, not the most general template.
(maybe_process_partial_specialization): Reassign everything on
that list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208024 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-02-21 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 21 Feb 2014 21:23:48 +0000 (21:23 +0000)]
2014-02-21  Vladimir Makarov  <vmakarov@redhat.com>

PR target/60298
* lra-constraints.c (inherit_reload_reg): Use lra_emit_move
instead of emit_move_insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208023 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 21:01:01 +0000 (21:01 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_vsumsws): Replace second
vspltw with vsldoi.
(reduc_uplus_v16qi): Use gen_altivec_vsumsws_direct instead of
gen_altivec_vsumsws.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/vsums.c: Check entire result vector.
* gcc.dg/vmx/vsums-be-order.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208021 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 20:46:52 +0000 (20:46 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208019 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 20:45:09 +0000 (20:45 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208018 138bc75d-0d04-0410-961f-82ee72b054a4