- for (BasicBlock::iterator II = BB->begin(), E = BB->end(); II != E;)
- if (CallInst *CI = dyn_cast<CallInst>(II++))
- if (Function *F = CI->getCalledFunction())
- if (F == GCWriteInt) {
+ for (BasicBlock::iterator II = BB->begin(), E = BB->end(); II != E; ++II)
+ if (IntrinsicInst *CI = dyn_cast<IntrinsicInst>(II))
+ if (Function *F = CI->getCalledFunction())
+ switch (F->getIntrinsicID()) {
+ case Intrinsic::gcwrite: