From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: References: Date: Mon, 16 Jan 2012 19:39:48 +0000 Message-ID: From: Charles Forsyth To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary=0015175caeb09bd5c104b6aa60cf Subject: Re: [9fans] assembly syntax in plan 9 Topicbox-Message-UUID: 5e001804-ead7-11e9-9d60-3106f5b1d025 --0015175caeb09bd5c104b6aa60cf Content-Type: text/plain; charset=UTF-8 They are compiling C++ which has language-visible exception handling instead. On 16 January 2012 19:03, Bakul Shah wrote: > How do you deal with longjmp? > > > On Jan 16, 2012, at 10:51 AM, Comeau At9Fans > wrote: > > On Mon, Jan 16, 2012 at 10:41 AM, Bakul Shah wrote: > >> A frame pointer is needed for C99's variable length arrays but not >> otherwise. Only an issue if ever plan9 C is extended to handle C99 or C1x. >> gcc has to do the right thing even with -fno-frame-pointer. >> > > What we do in problematic cases with Comeau is to generate code to arrange > for the allocation of the VLA on the heap. I'm not saying this is perfect, > but at least it gets the feature implementable and up and running as "a > portable implementation" versus perhaps not being able to implement it at > all on some platforms. > > --0015175caeb09bd5c104b6aa60cf Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable They are compiling C++ which has language-visible exception handling instea= d.

On 16 January 2012 19:03, Bakul Shah <= span dir=3D"ltr"><bakul@bitblocks= .com> wrote:
How do you dea= l with longjmp?


On Jan 16, 2012, at 10:51 AM,= Comeau At9Fans <comeauat9fans@gmail.com> wrote:

On Mon, Jan 16, 2012 at 10:41 AM, Bakul Shah = <bakul@bitblock= s.com> wrote:
A frame pointer is needed for C99's varia= ble length arrays but not otherwise. Only an issue if ever plan9 C is exten= ded to handle C99 or C1x. gcc has to do the right thing even with -fno-fram= e-pointer.

What we do in problematic cases with= Comeau is to generate code to arrange for the allocation of the VLA on the= heap. =C2=A0I'm not saying this is perfect, but at least it gets the f= eature implementable and up and running as "a portable implementation&= quot; versus perhaps not being able to implement it at all on some platform= s.

--0015175caeb09bd5c104b6aa60cf--