Unsafe Optimizations

Alexander Vrchoticky <vmars!alex@relay.EU.net>
Wed, 20 Jun 90 04:20:55 GMT

          From comp.compilers

Related articles
Unsafe Optimizations vmars!alex@relay.EU.net (Alexander Vrchoticky) (1990-06-20)
Unsafe optimizations worley@compass.com (1990-06-20)
Re: Unsafe Optimizations leech@homer.cs.unc.edu (1990-06-21)
Re: Unsafe optimizations cik@l.cc.purdue.edu (1990-06-21)
Re: Unsafe Optimizations davidh@dent.Berkeley.EDU (David S. Harrison) (1990-06-22)
| List of all articles for this month |

Newsgroups: comp.compilers
From: Alexander Vrchoticky <vmars!alex@relay.EU.net>
Date: Wed, 20 Jun 90 04:20:55 GMT
Organization: Compilers Central
Keywords: optimize

Alan Holub writes:
> [...] I strongly believe that if I know that an
> optimization is unsafe, and I understand the issues, and know that the
> optimization is safe in the CURRENT case, that I should be allowed to use
> that optimization if I want to. [...]


I believe that programmers (in general) know what they are doing. I do *not*
believe that programmers (in general) know what the compiler is doing. And I
am absolutely sure that This Is A Good Thing, because compilers change faster
than languages. Therefore programs relying on the inner workings of a
compiler are bound to become obsolete much faster than those relying solely
on the specified semantics of the programming language.


*If* a certain optimization is generally unsafe and *if* it is safe in the
current case and *if* we need the speed *then* we should go and hand-tune the
output of the compiler. No, I don't want to maintain code written that way.
Yes, I would always prefer it over code relying on the behavior of a certain
compiler, as it again relies solely on well-specified behavior (of the target
machine, in this case).


--
Alexander Vrchoticky Technical University Vienna, Dept. for Real-Time Systems
Tel: +43/222/58801-8168 Fax: +43/222/569149
e-mail: alex@vmars.at / alex@vmars.tuwien.ac.at / vmars!alex@relay.eu.net
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.