/// May contain several relocations for the same base/derived pair.
/// For example this could happen due to relocations on unwinding
/// path of invoke.
- std::vector<GCRelocateOperands> getRelocates(ImmutableStatepoint &IS);
+ std::vector<GCRelocateOperands> getRelocates();
#ifndef NDEBUG
/// Asserts if this statepoint is malformed. Common cases for failure
template <typename InstructionTy, typename ValueTy, typename CallSiteTy>
std::vector<GCRelocateOperands>
-StatepointBase<InstructionTy, ValueTy, CallSiteTy>::getRelocates(
- ImmutableStatepoint &IS) {
+StatepointBase<InstructionTy, ValueTy, CallSiteTy>::getRelocates() {
std::vector<GCRelocateOperands> Result;
- ImmutableCallSite StatepointCS = IS.getCallSite();
+ CallSiteTy StatepointCS = getCallSite();
// Search for relocated pointers. Note that working backwards from the
// gc_relocates ensures that we only get pairs which are actually relocated