This is an archive of the discontinued LLVM Phabricator instance.

Use ImmutableStatepoint during statepoint lowering.
ClosedPublic

Authored by igor-laevsky on Feb 19 2015, 6:35 AM.

Details

Summary

This change is a first step towards lowering of an invoke statepoints. It moves statepoint lowering in a separate function 'LowerStatepoint' which uses ImmutableStatepoint instead of a CallInst. Also related utility functions are changed to receive ImmutableCallSite.

Diff Detail

Repository
rL LLVM

Event Timeline

igor-laevsky retitled this revision from to Use ImmutableStatepoint during statepoint lowering..
igor-laevsky updated this object.
igor-laevsky edited the test plan for this revision. (Show Details)
igor-laevsky added a reviewer: reames.
igor-laevsky set the repository for this revision to rL LLVM.
igor-laevsky added a subscriber: Unknown Object (MLST).
reames edited edge metadata.Feb 19 2015, 2:26 PM

LGTM w/comments addressed. Please make sure to rebase carefully since I saw at least one cleanup patch does this today.

include/llvm/IR/Statepoint.h
20 ↗(On Diff #20289)

Remove this please.

lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
665 ↗(On Diff #20289)

Comment isn't particularly helpful.

lib/CodeGen/SelectionDAG/StatepointLowering.cpp
307 ↗(On Diff #20289)

Is this over 80 lines? I can't tell in the diff. If so, reformat.

This revision was automatically updated to reflect the committed changes.