Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Message-ID: <20011014043215.57603.qmail@web14504.mail.yahoo.com> Date: Sun, 14 Oct 2001 14:32:15 +1000 (EST) From: =?iso-8859-1?q?Danny=20Smith?= Subject: Re: GCC-3 additions To: cygwin-apps AT cygwin DOT com In-Reply-To: <20011013232846.A2364@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit --- Christopher Faylor wrote: > On Sun, Oct 14, 2001 at 12:53:28PM +1000, Danny Smith wrote: > >1) How important is Donn Terry's -fnative-struct feature. Merging his > >patchset from 2.95 into 3.0 branch is easy. Merging into 3.1 takes a > bit > >more work, with change to table-driven attributes, but getting there. > > I've been using -fnative-struct for all of my cygwin DLL builds > recently. Anecdotal evidence (from Earnie, maybe?) indicates that it > causes a noticeable speedup but I haven't really noticed anything > myself. > Nor have I. It only effects structs with multiple bitfields, though, and only in some cases. > >2) How important is fastcall calling convention to cygwin apps. I have > >been working with Eric Kohl on a patchset that he is keen to get into > mingw > >binaries. ReactOS project needs them for building MS-compat device > drivers. > > They involve changes in binutils (as, dlltool, ld) as well as gcc. > These > >are still WIP > > I'd like to have fastcall conventions. I think it is necessary if we > want > gcc to be a replacement for MSVC. > I'll need to think about that. Do I really want that? > Out of curiousity, how does fastcall differ from attribute ((regparm > (n)))? > Like stdcall, callee pops the stacks. In addition fastcall allocates the first two DWORD (SImode) or smaller arguments to ECX and EDX. MS fastcall symbols have decoration similar to stdcall but with leading @ eg @foo AT nn/_imp_ AT foo@nn (note no underscore between _imp_ and @) > Are there any other patches that need to be added to 3.1 to make it a > good Windows compiler? I know that the mingw/cygwin gcc 2.95.3 has a > lot of Mumit Khan additions. Are these patches either unneeded or > unnecessary for 3.1? > Mumit's C++ "class __declspec(dll[impex]port)foo" patches don't work as intended anymore. The bug has been reported here: http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg01299.html I am still not familiar enough with all the TREE business to even attempt to fix this. Mumit has advised me to seek out a C++ guru. The patches to use MS rule to override dllimport with dllexport when conflict are still needed. Danny http://briefcase.yahoo.com.au - Yahoo! Briefcase - Manage your files online.