On 2023-11-16 10:00 p.m., Jeff Law wrote:
I'm not seeing any obvious problems in the gcc testsuite.  It needs testing on 
packages that do extensive
floating point calculations.

OK, I'll focus on those.
THe more likely scenario is xmpy which is used for integer multiply, but the operands have to be moved into FP registers because the operation happens in the FPU.
There are lots of xmpyu instructions in cc1 and cc1plus.  For example,

  9fee8c:       08 03 02 5c     copy r3,ret0
  9fee90:       37 9c 00 20     ldo 10(ret0),ret0
  9fee94:       27 80 10 17     fldw 0(ret0),fr23
  9fee98:       08 03 02 5c     copy r3,ret0
  9fee9c:       37 9c 00 28     ldo 14(ret0),ret0
  9feea0:       27 80 10 16     fldw 0(ret0),fr22
  9feea4:       3a f6 47 18     xmpyu fr23,fr22,fr24
  9feea8:       2f c1 12 18     fstd fr24,-10(sp)
  9feeac:       0f c1 10 9c     ldw -10(sp),ret0
  9feeb0:       0f c9 10 9d     ldw -c(sp),ret1

There are 2169 xmpyu instructions in cc1plus in my current gcc bootstrap on 
linux.

Dave

--
John David Anglin  dave.ang...@bell.net

Reply via email to