The jump to xref actions are good enough when you have a handful of cross-references but what if you have hundreds or thousands? For such cases, the Cross references view may be useful. You can open it using the corresponding item in the View > Open Subviews menu. IDA will gather cross-references to the current disassembly address and show them in a separate tab. It’s even possible to open several such views at the same time (for different addresses).
In some cases you may need to add a manual cross-reference, for example to fix up an obfuscated function’s control flow graph or add a call cross-reference from an indirect call instruction discovered by debugging. There are several ways to do it.
add_cref
and add_dref
. Use the XREF_USER
flag together with the xref type to ensure that your cross-reference is not deleted by IDA on reanalysis:add_cref(0x100897E8, 0x100907C0, fl_CN|XREF_USER)
add_dref(0x100A65CC, 0x100897E0, dr_O|XREF_USER)