From: anon@anon.org (anon)
Subject: Re: Stack checking in GNAT
Date: Sat, 17 Nov 2007 07:24:03 GMT
Date: 2007-11-17T07:24:03+00:00 [thread overview]
Message-ID: <nGw%i.107677$kj1.89290@bgtnsc04-news.ops.worldnet.att.net> (raw)
In-Reply-To: 874pfm2vgb.fsf@ludovic-brenta.org
If you compile using the option "-fstack-check", the statement
pragma Suppress ( Storage_Check ) ;
will NOT turn this feature off, the compile will still generate
calls to check the stack. Once the "-fstack-check" is enable, it
can only be disable by using a different compiler or recompiling
the GNAT1 aka GNAT1DRV.
So, making this option mandatory default is wrong.
Reasons:
In some college courses, some profs create an assignment
to test the performance of a number of languages using
the same algorithm. If GNAT has stack checking and the
others languages do not, (C in Linux will never have this
default because it will kill rebuilding the Linux Kernel)
it will only demonstrate to the students and prof that
Ada is a inefficient language to use. Which will decrease
the number of new students wanting to using Ada after that
class. And that will be one thing that will insure the
death of Ada.
Then there is Adacore reason for having some of the default
features the way they are, since the GNAT Ada is provided
as an academic compiler. First, Adacore states that the GPL
version of GNAT is for academic usage. Second, it helps
student by providing a Free complete Ada compiler, with a
few features that may need to be altered like "-gnato". Which
the student can either work around by writing better code or
modifying the compiler in an advance class. But if all of the
default features are fix then you basically have the GNAT PRO
compiler without the extra Run-Time Libraries. In this case,
Adacore could just shutdown the free source version or go out
of business. Note: They own the copyright to the GNAT Ada
compiler, so they can have all version pulled from the net.
Adjusting the stack check default option would destroy using
GNAT as the core compiler for Real-Time projects such as
RTEMS, or MaRTE which are primarily written in Ada. These
projects depends upon a number of factors to maximize the
execution speed of the code, as well as having full control of
the language checks. Forcing the stack check will slow the
code to the point, that users will just change to other free
real-time projects that are non Ada. Killing Ada for these
type of free projects.
Also which GNAT will be altered. The GNU GCC version only or
will this include the versions at sourceforge, and what about
the master copy at Adacore. If Adacore rejects these changes
what will happen on their next release. Will these changes
work or have to be reworked or be removed.
This type changes should for a personal, school, or company choice only,
never for implementation that is being used by many different group and
needs.
And as for making a comment to "http://gcc.gnu.org/bugzilla", Why?
This is not a BUG, but some people's desire to hurt the true nature of
Ada and Adacore's GPL GNAT compiler.
What we should be doing is to strengthen the GCC/GPL GNAT compiler
to be true "to the nature of Ada". And there are a number of fixes that
are needed.
In <874pfm2vgb.fsf@ludovic-brenta.org>, Ludovic Brenta <ludovic@ludovic-brenta.org> writes:
>Samuel Tardieu writes:
>> Ludovic> Also I am curious to know what would be the effect of
>> Ludovic> changing these flags in Debian.
>>
>> The effect would be disastrous for people handling bug reports from
>> Debian users submitted to http://gcc.gnu.org/bugzilla/ :)
>>
>> If you want to change a flag, I would suggest that you try to get it
>> changed in the GCC distribution rather than doing Debian specific
>> changes.
>
>OK. I have filed two new bug reports in GCC's bugzilla:
>
>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34117
>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34118
>
>If you support these requests, please post a comment in these bugs.
>The more supporters, the more likely it is that GCC maintainers will
>accept the change. I anticipate some opposition, too, along the lines
>of "it breaks backward compatibility" and "it is too CPU-intensive".
>
>--
>Ludovic Brenta.
next prev parent reply other threads:[~2007-11-17 7:24 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-09 22:25 ada compiler? Bill Cunningham
2007-11-09 22:39 ` anon
2007-11-09 22:59 ` Bill Cunningham
2007-11-09 23:28 ` anon
2007-11-09 23:50 ` Jeffrey R. Carter
2007-11-10 0:32 ` anon
2007-11-10 4:15 ` Jeffrey Creem
2007-11-10 5:08 ` tmoran
2007-11-10 6:12 ` anon
2007-11-10 8:35 ` tmoran
2007-11-10 20:20 ` anon
2007-11-10 22:15 ` Jeffrey Creem
2007-11-11 1:01 ` anon
2007-11-11 1:14 ` (see below)
2007-11-11 2:21 ` Georg Bauhaus
2007-11-11 4:08 ` Jeffrey R. Carter
2007-11-13 13:24 ` Ludovic Brenta
2007-11-14 7:00 ` Jacob Sparre Andersen
2007-11-14 9:15 ` Georg Bauhaus
2007-11-14 10:26 ` Ludovic Brenta
2007-11-14 12:25 ` Georg Bauhaus
2007-11-14 15:09 ` Ludovic Brenta
2007-11-14 16:03 ` Georg Bauhaus
2007-11-14 16:36 ` Ludovic Brenta
2007-11-14 17:39 ` Georg Bauhaus
2007-11-14 20:40 ` Ludovic Brenta
2007-11-15 9:59 ` Georg Bauhaus
2007-11-14 17:52 ` Georg Bauhaus
2007-11-16 1:07 ` Samuel Tardieu
2007-11-16 1:58 ` tmoran
2007-11-16 9:41 ` Stack checking in GNAT (was: ada compiler?) Ludovic Brenta
2007-11-16 10:56 ` Stack checking in GNAT Samuel Tardieu
2007-11-16 13:04 ` Ludovic Brenta
2007-11-17 7:24 ` anon [this message]
2007-11-29 0:32 ` Robert A Duff
2007-11-17 1:37 ` ada compiler? Randy Brukardt
2007-11-17 1:18 ` Randy Brukardt
2007-11-29 0:41 ` Robert A Duff
2007-11-14 21:31 ` Niklas Holsti
2007-11-17 1:50 ` Randy Brukardt
2007-11-14 18:33 ` anon
2007-11-12 5:13 ` anon
2007-11-11 14:15 ` Jeffrey Creem
2007-11-13 7:11 ` Martin Krischik
2007-11-13 8:47 ` anon
2007-11-13 9:34 ` to gnat make or not to gnat make (Was: ada compiler?) Martin Krischik
2007-11-13 22:46 ` anon
2007-11-13 23:14 ` to gnat make or not to gnat make Simon Wright
2007-11-14 9:21 ` to gnat make or not to gnat make (Was: ada compiler?) Georg Bauhaus
2007-11-13 22:41 ` ada compiler? Simon Wright
2007-11-17 2:07 ` Randy Brukardt
2007-11-17 7:51 ` anon
2007-11-17 9:00 ` Pascal Obry
2007-11-17 12:24 ` Ludovic Brenta
2007-11-19 21:35 ` Randy Brukardt
2007-11-10 15:03 ` (see below)
2007-11-12 16:38 ` Adam Beneschan
2007-11-13 3:16 ` John W. Kennedy
2007-11-13 16:46 ` Adam Beneschan
2007-11-10 3:07 ` Georg Bauhaus
2007-11-13 0:20 ` adaworks
2007-11-13 22:27 ` Simon Wright
2007-11-14 17:32 ` Britt Snodgrass
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox