On May 2, 2016, at 6:53 PM, Segher Boessenkool wrote:
On Mon, May 02, 2016 at 06:05:05PM -0400, Programmingkid wrote:
You know how you see messages about writing to missing registers like these:
OS 9.2] Trying to write invalid spr 0 (0x000) at 00f113c0 11:26:23.910 WARNING [Mac OS 9.2] Trying to read invalid spr 0 (0x000) at 00f113c8 11:26:24.055 WARNING [Mac OS 9.2] Trying to write privileged spr 955 (0x3bb) at 00f164b8 11:26:24.055 WARNING [Mac OS 9.2] Trying to write invalid spr 959 (0x3bf) at 00f16520 11:26:24.055 WARNING [Mac OS 9.2] Trying to read invalid spr 959 (0x3bf) at 00f16528 11:26:24.056 WARNING [Mac OS 9.2] Trying to write invalid spr 944 (0x3b0) at 00f1653c 11:26:24.056 WARNING [Mac OS 9.2] Trying to read invalid spr 944 (0x3b0) at 00f16544 11:26:24.056 WARNING [Mac OS 9.2] Trying to write invalid spr 951 (0x3b7) at 00f16550 11:26:24.056 WARNING [Mac OS 9.2] Trying to read invalid spr 951 (0x3b7) at 00f16558 11:26:24.204 WARNING [Mac OS 9.2] Trying to write privileged spr 955 (0x3bb) at 00f164b8 11:26:24.204 WARNING [Mac OS 9.2] Trying to write invalid spr 959 (0x3bf) at 00f16520 11:26:24.204 WARNING [Mac OS 9.2] Trying to read invalid spr 959 (0x3bf) at 00f16528 11:26:24.204 WARNING [Mac OS 9.2] Trying to write invalid spr 944 (0x3b0) at 00f1653c 11:26:24.204 WARNING [Mac OS 9.2] Trying to read invalid spr 944 (0x3b0) at 00f16544 11:26:24.205 WARNING [Mac OS 9.2] Trying to write invalid spr 951 (0x3b7) at 00f16550 11:26:24.205 WARNING [Mac OS 9.2] Trying to read invalid spr 951 (0x3b7) at 00f16558
Should these registers be implemented? Maybe Apple expected these registers to be available on their hardware.
It is probing if the hardware has these registers here. Nothing is wrong. We discussed this on irc for the gsoc thing...
944 Monitor Control Register 2 951 Breakpoint Address Mask Register1 955 Sampled Instruction Address 1 959 Sampled Data Address * PowerPC 604 only
944 = MMCR2 951 = BAMR 955 = SIAR 959 = SDAR (not just 604, fwiw -- where did you read that?)
http://www.nxp.com/files/32bit/doc/data_sheet/MPC604.pdf page 19
What is says: 604-specific—not defined by the PowerPC architecture
Yes. And 0 is MQ (a 601 thing), etc.
Some CPUs have slightly different names for the same thing (prefer SIA to SIAR, etc.; some have different things at the same SPR #. What OS9 is doing here isn't exactly correct, but it is what it is.
Thank you very much for clearing this up. I have a feeling what Apple did was not what the specifications would prefer.