Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uwm.edu!bionet!agate!usenet.ins.cwru.edu!eagle!bach.lerc.nasa.gov!root From: fsset@bach.lerc.nasa.gov (Scott E. Townsend) Newsgroups: comp.sys.m88k Subject: Is the FPSR interlocked with the FPU pipe? Message-ID: <1991Apr24.200412.7483@eagle.lerc.nasa.gov> Date: 24 Apr 91 20:04:12 GMT Sender: news@eagle.lerc.nasa.gov Distribution: na Organization: Nasa Lewis Research Center ( Cleveland ) Lines: 20 Originator: root@bach.lerc.nasa.gov This sounds too strange to be true, but is it possible for the FPSR to return 'too fresh' data? Or put another way, why should the following two code fragments behave differently? #1 fdiv.ddd r8,r2,r4 fldcr r12,fcr62 ; fcr62 == FPSR bb1 0,r12,@L21 ; AFINX bit #2 fdiv.ddd r8,r2,r4 tb1 0,r0,0 ; trap not taken, but system 'synced' fldcr r12,fcr62 bb1 0,r12,@L21 This code is buried a bit, so I don't have the exact different results, but the behaviour _is_ different. Is it possible the fldcr gets whatever is 'current' rather than the result of the fdiv? (which will take a while) Please show me I'm sniffing glue!