Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!rice!uw-beaver!uw-june!dgb From: dgb@cs.washington.edu (David Bradlee) Newsgroups: comp.arch Subject: Re: i860(was Re: IBM RISC) Summary: use of T on i860 Message-ID: <10833@june.cs.washington.edu> Date: 22 Feb 90 23:36:15 GMT References: <8064@pt.cs.cmu.edu> <1990Feb20.031858.18512@Neon.Stanford.EDU> Organization: U of Washington, Computer Science, Seattle Lines: 19 In article <1990Feb20.031858.18512@Neon.Stanford.EDU>, gopi@goretex.Stanford.EDU (K. Gopinath) writes: > What use are the KR,KT & T regs? I tried coding for a loop with a stmt > d = d + a[i]*b[i]*c[i] but the non-orthogonalities just repeatedly > frustrate any way of keeping both +/* going at the same time (modulo > 2 mults and 1 add). These regs cannot be used like temps; there are > too many restrictions. One use for T is in an expression such as (a*b)+(c*d). You can overlap the 2 multiples and save the first in T, then add T directly to the result of the multiplier. KR and KI could be used to multiply by a loop invariant. I'm sure there are other uses. The i860 does have many non-orthogonalities which make it hard write code for and hard for the compiler to make choices between the different options. Dave Bradlee Department of Computer Science and Engineering, FR-35 University of Washington Seattle, WA 98195 dgb@cs.washington.edu