// Insert the call to abort
new CallInst(M->getOrInsertFunction("abort", Type::VoidTy, 0), "", CI);
break;
+
+ case Intrinsic::dbg_stoppoint:
+ case Intrinsic::dbg_region_start:
+ case Intrinsic::dbg_region_end:
+ case Intrinsic::dbg_func_start:
+ if (CI->getType() != Type::VoidTy)
+ CI->replaceAllUsesWith(Constant::getNullValue(CI->getType()));
+ break; // Simply strip out debugging intrinsics
}
assert(CI->use_empty() &&
if (getName() == alpha_intrinsics[i].name)
return alpha_intrinsics[i].id;
break;
+ case 'd':
+ if (getName() == "llvm.dbg.stoppoint") return Intrinsic::dbg_stoppoint;
+ if (getName() == "llvm.dbg.region.start")return Intrinsic::dbg_region_start;
+ if (getName() == "llvm.dbg.region.end") return Intrinsic::dbg_region_end;
+ if (getName() == "llvm.dbg.func.start") return Intrinsic::dbg_func_start;
+ break;
case 'l':
if (getName() == "llvm.longjmp") return Intrinsic::longjmp;
break;
// Insert the call to abort
new CallInst(M->getOrInsertFunction("abort", Type::VoidTy, 0), "", CI);
break;
+
+ case Intrinsic::dbg_stoppoint:
+ case Intrinsic::dbg_region_start:
+ case Intrinsic::dbg_region_end:
+ case Intrinsic::dbg_func_start:
+ if (CI->getType() != Type::VoidTy)
+ CI->replaceAllUsesWith(Constant::getNullValue(CI->getType()));
+ break; // Simply strip out debugging intrinsics
}
assert(CI->use_empty() &&
case Intrinsic::longjmp: NumArgs = 2; break;
case Intrinsic::sigsetjmp: NumArgs = 2; break;
case Intrinsic::siglongjmp: NumArgs = 2; break;
+
+ case Intrinsic::dbg_stoppoint: NumArgs = 4; break;
+ case Intrinsic::dbg_region_start:NumArgs = 1; break;
+ case Intrinsic::dbg_region_end: NumArgs = 1; break;
+ case Intrinsic::dbg_func_start: NumArgs = 1; break;
case Intrinsic::alpha_ctlz: NumArgs = 1; break;
case Intrinsic::alpha_cttz: NumArgs = 1; break;