I was able to intercept int n by setting up the SINT flag.
But my question is how to know the value of n (vector number)?
The manual does not tell how to do it. I tested by creating a custom int x and searched for x in VMCB and visible registers after #VMEXIT but could not find it.
I guess I could try to fetch the opcode from guest cs:ip, but then I have to write code to handle guest segmentation and paging, which is tedious. And I couldnot think of any reason why AMD does not give the vector number to the VMM after a software interrupt interception. Hope someone knows the answer.