[PATCH] D26648: Clarify semantic of reserved registers.

Simon Dardis via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 15 04:30:29 PST 2016


sdardis added a comment.

@MatzeB Yes, we could rework the floating point register set definitions and instruction definitions to use difference register classes depending the floating point ABI used. Unfortunately this requires six register classes in that case, three for the no odd single precision case and 3 more for the case where odd single precisions are available. Those register classes would eliminate the need to reserve the odd registers for no-oddsp.

That's a non-trivial change which will take some time as other plumbing may need to be fixed/changed.

Some background:
The difficulty/delay arises in that MIPS has several different FPU configurations: 32bit FPUs supporting 64bit operations using a pair of single precision registers, and full 64bit FPUs. We have two floating pointing ABIs: nooddsp where the odd single precision registers are not to be used at all, and oddsp where all single precision registers can be used.


Repository:
  rL LLVM

https://reviews.llvm.org/D26648





More information about the llvm-commits mailing list