View Single Post
Old 09 February 2019, 18:48   #261
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,505
68030 short (type $a) bus error stack frame. When does it generate it? If documentation is true, it seems to be quite rare situation.

"For instruction faults, when the short format frame applies, the address of the pipe stage B word is the value in the program counter plus four, and the address of the stage C word is the value in the program counter plus two." And stack frame structure diagram says "PC: Next instruction" and "Execution Unit at Instruction Boundary"

Which would mean following conditions:

It can only happen if prefetch during previous instruction faults. (PC = next)
But only if word pointed by PC (next instruction) was successfully fetched. There is no field in stack frame that contains word at PC+0 ("stage D")

-> it can only happen if first word of next instruction is at MMU page - 2 and following page is invalid. This isn't that common (due to variable instruction sizes). There must be something more because it makes no sense to create shorter (faster) stack frame for rare situation.

Does any whdload qa test generate it?
Toni Wilen is offline  
 
Page generated in 0.04708 seconds with 11 queries