This is an archive of the discontinued LLVM Phabricator instance.

[XRay][Arm32] Reduce the portion of the stub and implement more staging for tail calls - in LLVM
ClosedPublic

Authored by rSerge on Jan 13 2017, 5:26 AM.

Details

Summary

This patch provides more staging for tail calls in XRay Arm32 . When the logging part of XRay is ready for tail calls, its support in the core part of XRay Arm32 may be as easy as changing the number passed to the handler from 1 to 2.
Coupled patch:

Diff Detail

Event Timeline

rSerge updated this revision to Diff 84285.Jan 13 2017, 5:26 AM
rSerge retitled this revision from to [XRay][Arm32] Reduce the portion of the stub and implement more staging for tail calls.
rSerge updated this object.
rSerge retitled this revision from [XRay][Arm32] Reduce the portion of the stub and implement more staging for tail calls to [XRay][Arm32] Reduce the portion of the stub and implement more staging for tail calls - in LLVM.Jan 13 2017, 5:27 AM
rSerge updated this object.
rSerge added reviewers: dberris, rengolin.
rSerge added subscribers: iid_iunknown, llvm-commits.
rSerge updated this revision to Diff 84297.Jan 13 2017, 6:46 AM

Removed the changes fixing Arm32 XRay (as they are in a separate patch https://reviews.llvm.org/D28624 ).

rengolin edited edge metadata.Jan 13 2017, 10:39 AM

Where is this used?

Where is this used?

This virtual function is called via a pointer to a base class in XRayInstrumentation.cpp : see the body of void XRayInstrumentation::prependRetWithPatchableExit(MachineFunction &MF, const TargetInstrInfo *TII).

dberris accepted this revision.Jan 24 2017, 8:00 PM

LGTM

This revision is now accepted and ready to land.Jan 24 2017, 8:00 PM
rSerge closed this revision.Jan 26 2017, 8:28 AM

Reached mainline in revision 293185.