comp.lang.ada
 help / color / mirror / Atom feed
From: Duncan Sands <baldrick@free.fr>
To: comp.lang.ada@ada-france.org
Cc: Robert A Duff <bobduff@shell01.theworld.com>
Subject: Re: LLVM--Low Level Virtual Machine--and Ada
Date: Mon, 23 Jul 2007 09:47:51 +0200
Date: 2007-07-23T09:50:03+02:00	[thread overview]
Message-ID: <mailman.6.1185176858.3834.comp.lang.ada@ada-france.org> (raw)
In-Reply-To: <wccvecfb25a.fsf@shell01.TheWorld.com>

Hi Bob, thanks for your informative reply.

> Another problem is that some modern machines use DEP (which I think
> stands for "data execution prevention" or something like that).  DEP
> means the operating system prevents writeable data from being executed
> as code.  The purpose is to prevent certain kinds of security holes
> that are common in languages that don't do array-bounds checking.
> But DEP prevents trampolines from working, so users have to turn
> it off in order to run some Ada programs (such as the compiler).
> It's a pain because users get some mysterious error message
> when trampolines are used.

I'm not sure that this is a problem anymore: gcc uses a bunch of tricks
(eg: setting a flag on the program that notes it runs code on the stack)
to inform the operating system that the trampoline is kosher IIRC.  That
said, I haven't tried to implement any of this in LLVM yet, which is also
why I'm vague on the details.
 
> Another problem (I've heard) is that there's at least one machine
> supported by gcc where trampolines don't work.  I don't remember which
> machine, and I don't even know for sure that this is true.

All architectures currently supported by LLVM support trampolines in gcc.

Ciao,

Duncan.



  parent reply	other threads:[~2007-07-23  7:47 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-18  3:56 LLVM--Low Level Virtual Machine--and Ada Jerry
2007-07-18  7:24 ` Georg Bauhaus
2007-07-18  7:48 ` Duncan Sands
2007-07-19 14:30   ` Maxim Reznik
2007-07-19 14:56     ` Duncan Sands
     [not found]     ` <200707191656.27602.baldrick@free.fr>
2007-07-19 15:03       ` Duncan Sands
2007-07-19 21:30         ` Robert A Duff
2007-07-20  7:44           ` Duncan Sands
2007-07-20 14:06             ` Robert A Duff
2007-07-21 13:09               ` Tero Koskinen
2007-07-23  7:47               ` Duncan Sands [this message]
2007-07-24  2:12                 ` Randy Brukardt
2007-07-24  8:03                   ` Duncan Sands
2007-07-24  9:50                     ` Colin Paul Gloster
2007-07-24 10:47                       ` Markus E Leypold
2007-07-25 12:12                         ` Colin Paul Gloster
2007-07-25 12:59                           ` Markus E Leypold
2007-07-24 19:21                     ` Randy Brukardt
2007-07-24 19:36                       ` Duncan Sands
2007-07-24 19:58                         ` Randy Brukardt
2007-07-24 23:28                   ` Robert A Duff
2007-07-25  0:39                     ` Randy Brukardt
2007-07-25  2:00                       ` Robert A Duff
2007-07-25 13:14                         ` Duncan Sands
2007-07-21 22:04 ` anon
2007-07-22 13:22   ` Steve
2007-07-23 12:29   ` Colin Paul Gloster
2007-07-23 14:42     ` anon
2007-07-23 16:55       ` Markus E Leypold
2007-07-24 10:19       ` Colin Paul Gloster
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox