This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

I am referring to IHI0035B Program Flow trace v1.1 . I had a question regarding PFT decompression if return stack is enabled

In analyze_atomheader() documentation

I see the following

   If return stack is enabled ,

--- If return stack is enabled and decoded instruction is an indirect branch, pop address,

instruction set state and security state off the top of the return stack and update

CurrentState with these values.

— If return stack is enabled and decoded instruction is a branch with link, push return

address, instruction set state and securitystate onto the top of the return stack

  During PFT decompression , the decompressor is supposed to maintain its own return stack right ?

Please let me know if my assumption below is correct:

If the decompressor encounters a branch with link, it should store the return address in its local return stack

If the PFT compressor generated an E Atom in lieu of an indirect branch , then the decompressor will find that the Address of the E Atom actually has an indirect branch instruction.

Here is where the decompressor refers to its return stack and gets the target address, since this 'special'  E Atom will not have any direct addresses.

Thanks,

Aneeket

0