diff --git a/llvm/lib/Transforms/IPO/PartialSpecialization.cpp b/llvm/lib/Transforms/IPO/PartialSpecialization.cpp index 4e72d51c7d9f..d46879f5093f 100644 --- a/llvm/lib/Transforms/IPO/PartialSpecialization.cpp +++ b/llvm/lib/Transforms/IPO/PartialSpecialization.cpp @@ -83,10 +83,9 @@ SpecializeFunction(Function* F, Value::use_iterator i = ii; ++ii; User *U = *i; - if (isa(U) || isa(U)) { - CallSite CS(cast(U)); + CallSite CS(U); + if (CS) { if (CS.getCalledFunction() == F) { - SmallVector args; // Assemble the non-specialized arguments for the updated callsite. // In the process, make sure that the specialized arguments are