[Info-vax] VMS Software Q1 '23 Update

John Reagan xyzzy1959 at gmail.com
Tue Jan 31 12:47:05 EST 2023


On Monday, January 30, 2023 at 7:32:10 PM UTC-5, Arne Vajhøj wrote:
> On 1/29/2023 11:16 PM, Dave Froble wrote: 
> > On 1/29/2023 7:17 PM, Arne Vajhøj wrote: 
> >> The Alpha architecture manual says that it only 
> >> supports: 
> >> - load D from memory 
> >> - convert from D to G 
> >> - do G math 
> >> - convert back from G to D 
> >> - store D in memory 
> >> which sort of operate on D float but loose 3 bits precision. 
> > 
> > Correct, that is how it's provided. 
> > 
> >> The alternative is software emulation, which will be able to do VAX 
> >> compatible D math but at a speed cost. 
> > 
> > Would you think it would do better than the loss of the 3 bits?  Not an 
> > issue most of the time.  However,  I'm aware of a few instances where 
> > things aren't so good.  I seem to recall the 5.9 to 6.0 range having an 
> > issue.
> I wonder what Basic on Itanium does and what Basic on x86-64 does / will do. 
> 
> Convert to T and do T math? Or software emulation?

Just like Itanium.  Convert G to T (same size exponent) or convert D to T (and round
3 bits); operate on the T; convert back to G (or D) as needed.  Nobody complained
on Itanium.

For VAX to Alpha, VEST/TIE would actually emulate all 56 bits of the D exponents.
VEST/TIE also emulated VAX H-float.  Native Alpha rounded 3 bits for D to G,
nobody complained.

For Alpha, most compilers went from F/D on VAX to F/G on Alpha.  However, BASIC
has stuck with D-floating for DOUBLE on Alpha and on Itanium.  At this point, we 
will probably continue that mapping (although I think they shouldn't have stuck with D
for all that time).  



More information about the Info-vax mailing list