On Tue, Feb 27, 2024 at 1:18 PM Evgeny Karpov <evgeny.kar...@microsoft.com> wrote: > > SEH is not implemented yet and needs to be disabled in mingw/winnt.cc. > Disabling every SEH function that uses references to these macros might > trigger significant refactoring, and to avoid this, required macros are > defined with 0. It is needed only for compilation. A comment with an > explanation will be added.
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)? If you run using a cross compiler, did you use ssh or some other route to run the applications? Thanks, Andrew Pinski > > It looks like IL32P64 works. It has been tested on OpenSSL, OpenBLAS, > libjpeg-turbo, and FFmpeg packages. No issues have been detected with it. > > Correct, stack checking cannot be explicitly disabled by the user. It will be > interesting to know cases when it is needed. GCC uses stack probing only when > the stack size is exceeded; size optimization is not an option then. > > Regards, > Evgeny > > > -----Original Message----- > Friday, February 23, 2024 6:16 PM > Richard Sandiford wrote: > > > + > > +#undef TARGET_SEH > > +#define TARGET_SEH 0 > > + > > +#define SSE_REGNO_P(N) 0 > > +#define GENERAL_REGNO_P(N) 0 > > Could you add a comment to explain how these two macros are consumed? > What is the effect of saying that everything is neither a general register > nor an SSE register? > > > +#define SEH_MAX_FRAME_SIZE 0 > > > > +/* Windows64 continues to use a 32-bit long type. */ #undef > > +LONG_TYPE_SIZE #define LONG_TYPE_SIZE 32 > > Just curious: this is AFAIK the first IL32P64 ABI for AArch64. > Do things Just Work, including for things like arm_neon.h and other ACLE > header files? I'm pleasantly surprised if so :) > > I suppose this is more of a generic mingw/cygwin question, but does this mean > that stack checking cannot be explicitly disabled by a user who "knows what > they are doing"? > > Thanks, > Richard >