Subject: Re: shocking speed performance!
To: None <richard.earnshaw@arm.com>
From: None <kim@pvv.ntnu.no>
List: port-arm32
Date: 05/20/1999 14:15:40
> How can the system library efficiently implement atod or printf if it 
> doesn't understand the underlying format? 

Simple. Converting between text and floats is done by the math library,
which is changed.

> How can a compiler 
> (particularly a cross compiler) optimise "double x = 1.0 + 33.5" if it 
> doesn't know the rules for safe constant folding? 

That is the job of the + operator, which is changed.

> How can an assembler 
> (again, particularly a cross-assembler) generate the object implementation 
> for .double 5.0 if it doesn't know the binary representation?

By being told how.

> In the end, something has to know what the translation between the binary 
> and human formats are.  I accept that there are too many user programs 
> that abuse this ability to know; but many system programs *need* to know 
> this in order to function correctly.  There's no system call that will 
> tell a compiler that the size of a double is 8, it just has to know this.

Which is why I worked on changing the compiler.

Kim0