Hi all,
when a page fault occurs, does the Instruction Register contain the actual instruction that caused the fault or the previous instruction? In the former case, how can I access it? I need the opcode + the operands (like source/target registers). I already have the memory address that the instruction tried to access.
I'm on ARM A9, so only load/store instructions can cause a page fault.
I know that I could also look at the address where my IP is pointing to and get the instruction from there, but I'm wondering which way would be easier/better.
Cheers, Josef
Hi,
On Fri Feb 02, 2018 at 14:32:08 +0100, Josef Stark wrote:
when a page fault occurs, does the Instruction Register contain the actual instruction that caused the fault or the previous instruction? In the former case, how can I access it? I need the opcode + the operands (like source/target registers). I already have the memory address that the instruction tried to access.
I'm on ARM A9, so only load/store instructions can cause a page fault.
I know that I could also look at the address where my IP is pointing to and get the instruction from there, but I'm wondering which way would be easier/better.
There is no register that contains the opcode of the instruction that caused a fault. You have to read the instruction yourself if you're interested in decoding the instruction.
Adam
l4-hackers@os.inf.tu-dresden.de