delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/09/11/16:50:22

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
From: Tatsuro MATSUOKA <matsuoka AT mol DOT nagoya-u DOT ac DOT jp>
To: "John W. Eaton" <jwe AT bevo DOT che DOT wisc DOT edu>, dannysmith AT clear DOT net DOT nz
Cc: matsuoka AT nuce DOT nagoya-u DOT ac DOT jp, cygwin AT cygwin DOT com
Date: Wed, 12 Sep 2007 05:49:05 +0900
Subject: Re: gcc-dw2? or fast sjlj-exceptions EH
Reply-To: matsuoka AT nuce DOT nagoya-u DOT ac DOT jp
In-Reply-To: <18150.45851.316538.375920@segfault.lan>
References: <000001c7f3f6$e64897d0$276d65da AT THOMAS> <18150 DOT 45851 DOT 316538 DOT 375920 AT segfault DOT lan>
Message-Id: <20070912054905.177F7D98.matsuoka@mol.nagoya-u.ac.jp>
MIME-Version: 1.0
X-Mailer: nPOP Ver 1.0.9
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

"John W. Eaton" <jwe AT bevo DOT che DOT wisc DOT edu> wrote:
(2007/09/12 00:24)

| At http://www.cygwin.com/ml/cygwin/2007-09/msg00194.html
| 
| Tatsuro Matsuoka wrote:
| 
| > The best solution, I think, the speed of sjlj-exceptions EH on 
the 
| > cygwin is as fast as that of other platforms.
| > 
| 
| In the case of octave, I believe that the main cause of slowdown is 
the
| sjlj EH code generated in prologue of new()
| Does a no-throw override of libary version of these functions help ?


>Octave does not set up a new handler because it expects that a failed
>allocation will throw a std::bad_alloc exception.  Given that, it
>seems that the replacement for operator new that you posted would
>cause Octave to crash on a failed allocation, and that's not an
>acceptable solution for an interactive system like Octave.
>
>If we did install a new handler, could it throw a std::bad_alloc
>exception and still avoid the performance problem?  I don't see how,
>as it seems that would just be pushing the problem one function call
>level deeper but without any real change in the way things work.
>
>It's also not acceptable to install a new handler that doesn't throw
>an exception but just does a longjmp because then all the nice cleanup
>things that are supposed to happen with exception handling are
>bypassed when recovering from the failed allocation.

**********************************
Dear Prof. John W. Eaton
Thank you for your reply.

I cannot entirely understand your reply due to my limited knowledge.
It seems to be difficult to solve the problem by the Danny's 
suggestion.

My question is whether other possibilities to get fast sjlj-exception 
EH in the cygwin.
If there is no way to get the fast sjlj-exception EH, is it possible 
to handle the 'gcc-dw2'?
I know there is 'gcc-dw2' for 4.2.1 version of gcc in the mingw.

However I think the situation on the mingw and that on the cygwin is 
not the same.
In the cygwin, the good install manager that well treats total 
environments are established
but in the mingw there is no such complete system.  

If we would get the development environment, what I have to do is to 
select 'install' in the development category while in the mingw we 
have to install the msys, msysDTK and other tools required.

In the mingw, because the smart system does not exist, it is good 
that there are many selections.
While for the cygwin, the environmental system is totally arranged, 
the parallel existence of the compiler should be treated with the 
great care to avoid the confusion.

I can prepare the package of the 'gcc-dw2' if it will be allowed 
because I have already the gcc with the dwarf2 EH.  However it must 
be done after the discussions on this matter.  I think there will be 
the case that the 'gcc-dw2$B!G(B will be rejected to place in the cygwin 
packaging system.  

In that case, my purchase for the fast octave on the cygwin should be 
keep the trail and place the packages within the personal trial.

Thank you again here to Danny and jwe to reply the my comments.

Sincerely yours,

Tatsuro MATSUOKA     
     
   

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019