public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
To: Andrew Pinski <quic_apinski@quicinc.com>
Cc: Evgeny Karpov <Evgeny.Karpov@microsoft.com>,
	"Richard Earnshaw (lists)" <Richard.Earnshaw@arm.com>,
	Andrew Pinski <pinskia@gmail.com>,
	Richard Sandiford <richard.sandiford@arm.com>,
	"gcc-patches@gcc.gnu.org" <gcc-patches@gcc.gnu.org>,
	"10walls@gmail.com" <10walls@gmail.com>,
	"mark@harmstone.com" <mark@harmstone.com>,
	Zac Walker <zacwalker@microsoft.com>,
	Ron Riddle <Ron.Riddle@microsoft.com>,
	Radek Barton <radek.barton@microsoft.com>
Subject: Re: [PATCH v1 08/13] aarch64: Add Cygwin and MinGW environments for AArch64
Date: Fri, 1 Mar 2024 17:10:17 +0400	[thread overview]
Message-ID: <7E41B6B1-7051-437D-8240-B49DE3966E47@linaro.org> (raw)
In-Reply-To: <332ff920-82a2-4ce3-a610-487512cd3f44@arm.com>

> On Feb 29, 2024, at 21:59, Richard Earnshaw (lists) <Richard.Earnshaw@arm.com> wrote:
> 
> On 29/02/2024 17:55, Andrew Pinski (QUIC) wrote:
>>> -----Original Message-----
>>> From: Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
>>> Sent: Thursday, February 29, 2024 9:46 AM
>>> To: Andrew Pinski (QUIC) <quic_apinski@quicinc.com>
>>> Cc: Evgeny Karpov <Evgeny.Karpov@microsoft.com>; Andrew Pinski
>>> <pinskia@gmail.com>; Richard Sandiford <richard.sandiford@arm.com>; gcc-
>>> patches@gcc.gnu.org; 10walls@gmail.com; mark@harmstone.com; Zac
>>> Walker <zacwalker@microsoft.com>; Ron Riddle
>>> <Ron.Riddle@microsoft.com>; Radek Barton <radek.barton@microsoft.com>
>>> Subject: Re: [PATCH v1 08/13] aarch64: Add Cygwin and MinGW
>>> environments for AArch64
>>> 
>>> WARNING: This email originated from outside of Qualcomm. Please be wary
>>> of any links or attachments, and do not enable macros.
>>> 
>>>> On Feb 29, 2024, at 21:35, Andrew Pinski (QUIC)
>>> <quic_apinski@quicinc.com> wrote:
>>>> 
>>>> 
>>>> 
>>>>> -----Original Message-----
>>>>> From: Evgeny Karpov <Evgeny.Karpov@microsoft.com>
>>>>> Sent: Thursday, February 29, 2024 8:46 AM
>>>>> To: Andrew Pinski <pinskia@gmail.com>
>>>>> Cc: Richard Sandiford <richard.sandiford@arm.com>; gcc-
>>>>> patches@gcc.gnu.org; 10walls@gmail.com; Maxim Kuvyrkov
>>>>> <maxim.kuvyrkov@linaro.org>; mark@harmstone.com; Zac Walker
>>>>> <zacwalker@microsoft.com>; Ron Riddle <Ron.Riddle@microsoft.com>;
>>>>> Radek Barton <radek.barton@microsoft.com>; Andrew Pinski (QUIC)
>>>>> <quic_apinski@quicinc.com>
>>>>> Subject: [PATCH v1 08/13] aarch64: Add Cygwin and MinGW environments
>>>>> for AArch64
>>>>> 
>>>>> Wednesday, February 28, 2024 2:00 AM
>>>>> Andrew Pinski wrote:
>>>>> 
>>>>>> What does this mean with respect to C++ exceptions? Or you using
>>>>>> SJLJ exceptions support or the dwarf unwinding ones without SEH
>>> support?
>>>>>> I am not sure if SJLJ exceptions is well tested any more in GCC either.
>>>>>> 
>>>>>> Also I have a question if you ran the full GCC/G++ testsuites and
>>>>>> what were the results?
>>>>>> If you did run it, did you use a cross compiler or the native
>>>>>> compiler? Did you do a bootstrap (GCC uses C++ but no exceptions
>>> though)?
>>>>> 
>>>>> As mentioned in the cover letter and the thread, the current
>>>>> contribution covers only the C scope.
>>>>> Exception handling is fully disabled for now.
>>>>> There is an experimental build with C++ and SEH, however, it is not
>>>>> included in the plan for the current contribution.
>>>>> 
>>>>> https://github.com/Windows-on-ARM-Experiments/mingw-woarm64-
>>> build
>>>>> 
>>>>>> If you run using a cross compiler, did you use ssh or some other
>>>>>> route to run the applications?
>>>>>> 
>>>>>> Thanks,
>>>>>> Andrew Pinski
>>>>> 
>>>>> GitHub Actions are used to cross-compile toolchains, packages and
>>>>> tests, and execute tests on Windows Arm64.
>>>> 
>>>> This does not answer my question because what you are running is just
>>> simple testcases and not the FULL GCC testsuite.
>>>> So again have you ran the GCC testsuite and do you have a dejagnu board to
>>> be able to execute the binaries?
>>>> I think without the GCC testsuite ran to find all of the known failures, you are
>>> going to be running into many issues.
>>>> The GCC testsuite includes many tests for ABI corner cases and many
>>> features that you will most likely not think about testing using your simple
>>> testcases.
>>>> In fact I suspect there will be some of the aarch64 testcases which will need
>>> to be modified for the windows ABI which you have not done yet.
>>> 
>>> Hi Andrew,
>>> 
>>> We (Linaro) have a prototype CI loop setup for testing aarch64-w64-
>>> mingw32, and we have results for gcc-c and libatomic -- see [1].
>>> 
>>> The results are far from clean, but that's expected.  This patch series aims at
>>> enabling C hello-world only, and subsequent patch series will improve the
>>> state of the port.
>>> 
>>> [1] https://ci.linaro.org/job/tcwg_gnu_mingw_check_gcc--master-woa64-
>>> build/6/artifact/artifacts/sumfiles/
>> 
>> Looking at these results, this port is not in any shape or form to be upstreamed right now. Even simple -g will cause failures.
>> Note we don't need a clean testsuite run but the patch series is not even allowing enabling hello world due to the -g not being able to used.
>> 
> 
> It seemed to me as though the patch was posted for comments, not for immediate inclusion.  I agree this isn't ready for committing yet, but neither should the submitters wait until it's perfect before posting it.
> 
> I think it's gcc-15 material, so now is about the right time to be thinking about it.

Hi Andrew,

I agree with Richard.  This patch series is large as is, and it has clear goals:
1. Enable aarch64-w64-mingw32 to compile C-language hello-world.
2. Not regress any other targets.

As far as I know, it achieves both, but both Microsoft and Linaro will do additional testing on x86_64-w64-mingw32 to confirm.

There are more features and fixes for aarch64-w64-mingw32 waiting in the development repos on github, but I don't see any point in cleaning them up and preparing for submission before this already-quiet-large patchset if reviewed.

Thank you,

--
Maxim Kuvyrkov
https://www.linaro.org


  reply	other threads:[~2024-03-01 13:10 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-21 17:47 [PATCH v1 00/13] Add aarch64-w64-mingw32 target Evgeny Karpov
2024-02-21 18:16 ` [PATCH v1 01/13] Introduce " Evgeny Karpov
2024-02-21 18:23   ` Andrew Pinski
2024-02-23 14:15     ` Evgeny Karpov
2024-02-23 22:02       ` Fangrui Song
2024-02-22 11:33   ` Richard Earnshaw (lists)
2024-02-21 18:26 ` [PATCH v1 00/13] Add " Maxim Kuvyrkov
2024-02-22 22:03   ` Evgeny Karpov
2024-02-21 18:26 ` [PATCH v1 02/13] aarch64: The aarch64-w64-mingw32 target implements Evgeny Karpov
2024-02-22 11:40   ` Richard Earnshaw (lists)
2024-02-23 14:22     ` Evgeny Karpov
2024-02-23 17:49       ` Richard Sandiford
2024-02-23 17:54         ` Andrew Pinski
2024-02-25 21:15           ` Mark Harmstone
2024-02-23 20:37         ` Martin Storsjö
2024-02-23 21:47           ` Evgeny Karpov
2024-02-23 21:32         ` Evgeny Karpov
2024-02-21 18:30 ` [PATCH v1 03/13] aarch64: Mark x18 register as a fixed register for MS ABI Evgeny Karpov
2024-02-22 11:55   ` Richard Earnshaw (lists)
2024-02-22 17:45     ` Andrew Pinski
2024-02-22 18:15       ` Iain Sandoe
2024-02-23 16:10       ` Jacek Caban
2024-02-26 16:34         ` Evgeny Karpov
2024-02-23 16:56     ` Richard Sandiford
2024-02-26 17:03       ` Evgeny Karpov
2024-02-26 16:07     ` Evgeny Karpov
2024-02-22 13:11   ` Richard Earnshaw (lists)
2024-02-22 15:06     ` [EXTERNAL] " Evgeny Karpov
2024-02-21 18:32 ` [PATCH v1 04/13] aarch64: Add aarch64-w64-mingw32 COFF Evgeny Karpov
2024-02-23 17:01   ` Richard Sandiford
2024-02-26 18:16     ` Evgeny Karpov
2024-02-21 18:34 ` [PATCH v1 05/13] Reuse MinGW from i386 for AArch64 Evgeny Karpov
2024-02-21 18:50   ` Andrew Pinski
2024-02-22 15:39     ` Evgeny Karpov
2024-02-21 21:34   ` rep.dot.nop
2024-02-22 11:11     ` Richard Earnshaw (lists)
2024-02-22 15:56       ` Evgeny Karpov
2024-02-23 20:59         ` Bernhard Reutner-Fischer
2024-02-22 17:54       ` Joseph Myers
2024-02-25 21:12       ` Mark Harmstone
2024-02-26  8:17         ` Bernhard Reutner-Fischer
2024-02-26 18:31           ` Evgeny Karpov
2024-02-21 18:35 ` [PATCH v1 06/13] Rename section and encoding functions from i386 which will be used in aarch64 Evgeny Karpov
2024-02-21 18:36 ` [PATCH v1 07/13] Exclude i386 functionality from aarch64 build Evgeny Karpov
2024-02-21 18:36 ` [PATCH v1 08/13] aarch64: Add Cygwin and MinGW environments for AArch64 Evgeny Karpov
2024-02-22 13:23   ` Richard Earnshaw (lists)
2024-02-25 18:52     ` Evgeny Karpov
2024-02-23 17:15   ` Richard Sandiford
2024-02-27 21:17     ` Evgeny Karpov
2024-02-28  1:00       ` Andrew Pinski
2024-02-29 16:45         ` Evgeny Karpov
2024-02-29 17:35           ` Andrew Pinski (QUIC)
2024-02-29 17:46             ` Maxim Kuvyrkov
2024-02-29 17:55               ` Andrew Pinski (QUIC)
2024-02-29 17:59                 ` Richard Earnshaw (lists)
2024-03-01 13:10                   ` Maxim Kuvyrkov [this message]
2024-02-29 18:32                 ` Evgeny Karpov
2024-02-28  2:12       ` NightStrike
2024-02-21 18:37 ` [PATCH v1 09/13] aarch64: Add SEH to machine_function Evgeny Karpov
2024-02-21 18:38 ` [PATCH v1 10/13] Rename "x86 Windows Options" to "Cygwin and MinGW Options" Evgeny Karpov
2024-02-22 13:32   ` Richard Earnshaw (lists)
2024-02-27 20:04     ` Evgeny Karpov
2024-02-21 18:39 ` [PATCH v1 11/13] aarch64: Build and add objects for Cygwin and MinGW for AArch64 Evgeny Karpov
2024-02-21 18:40 ` [PATCH v1 12/13] aarch64: Add aarch64-w64-mingw32 target to libatomic Evgeny Karpov
2024-02-21 18:40 ` [PATCH v1 13/13] Add aarch64-w64-mingw32 target to libgcc Evgeny Karpov
2024-02-22 13:36   ` Richard Earnshaw (lists)
2024-02-25 19:14     ` Evgeny Karpov
2024-02-22 13:39 ` [PATCH v1 00/13] Add aarch64-w64-mingw32 target Richard Earnshaw (lists)
2024-02-23 18:00   ` Richard Sandiford
2024-02-29 15:45     ` Evgeny Karpov
2024-02-27 20:32   ` Evgeny Karpov
2024-02-22 18:11 ` Mark Harmstone
2024-02-22 22:16   ` Evgeny Karpov
2024-02-26  1:29 ` NightStrike
2024-02-29 16:25   ` Evgeny Karpov
2024-02-29 18:09     ` NightStrike
2024-02-29 19:34 ` Evgeny Karpov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7E41B6B1-7051-437D-8240-B49DE3966E47@linaro.org \
    --to=maxim.kuvyrkov@linaro.org \
    --cc=10walls@gmail.com \
    --cc=Evgeny.Karpov@microsoft.com \
    --cc=Richard.Earnshaw@arm.com \
    --cc=Ron.Riddle@microsoft.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=mark@harmstone.com \
    --cc=pinskia@gmail.com \
    --cc=quic_apinski@quicinc.com \
    --cc=radek.barton@microsoft.com \
    --cc=richard.sandiford@arm.com \
    --cc=zacwalker@microsoft.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).