assembler problem with gcc on Pyramid
Ken McDonell
kenj at yarra.oz.au
Tue Aug 7 11:43:37 AEST 1990
jonathan at comp.vuw.ac.nz (Jonathan) writes:
>In article <1990Aug5.034045.2636 at monu6.cc.monash.edu.au> rdt201x at monu6.cc.monash.edu.au (mr c.m. greif) writes:
[ stuff deleted ... see my earlier posting re. original problem ]
>The OSx 5.0 assembler seems to be saying that, on ISIS machines,
>the cvtfw and cvtfd instructions clobber their source operand, and
>that therefore the source operand of these instructions may not
>overlap the destination operand. I know how to fix GCC for
>these particular instructions. Follow-ups on the reported bug should
>be posted to gnu.gcc.bug.
>But I do not know if there are any other instructions that have
>similar restrictions on the ISIS architecture. Plausible candidates
>are cvtdw, cvtdf, and perhaps fixed-to-float conversions. ...
>... Can someone
>from Pyramid please answer this?
I'll try. The 6 instructions that are subject to source-destination
conflict are as follows ...
cvtwf
cvtwd
cvtfw
cvtfd
cvtdw
cvtdf
The conditions under which the conflict arises are
a. S1 class, (r1 equal to r2) or (rx non-zero and rx equal to r2), or
b. S2 class, (r1 non-zero or rx non zero) and
((r1 equals r2 and rx zero) or rx equals r2)
Hope this helps.
--
Ken McDonell E-mail: kenj at pyramid.com kenj at yarra.oz.au
Performance Analysis Group Phone: +61 3 820 0711
Pyramid Technology Corporation Disclaimer: I speak for me alone, of course.
More information about the Comp.sys.pyramid
mailing list