mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
use ImmutableCallSite for const-corrgoodness
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109503 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -153,13 +153,13 @@ void CodeMetrics::analyzeBasicBlock(const BasicBlock *BB) {
|
||||
if (isa<DbgInfoIntrinsic>(II))
|
||||
continue; // Debug intrinsics don't count as size.
|
||||
|
||||
CallSite CS = CallSite::get(const_cast<Instruction*>(&*II));
|
||||
ImmutableCallSite CS(cast<Instruction>(II));
|
||||
|
||||
// If this function contains a call to setjmp or _setjmp, never inline
|
||||
// it. This is a hack because we depend on the user marking their local
|
||||
// variables as volatile if they are live across a setjmp call, and they
|
||||
// probably won't do this in callers.
|
||||
if (Function *F = CS.getCalledFunction()) {
|
||||
if (const Function *F = CS.getCalledFunction()) {
|
||||
if (F->isDeclaration() &&
|
||||
(F->getName() == "setjmp" || F->getName() == "_setjmp"))
|
||||
callsSetJmp = true;
|
||||
|
Reference in New Issue
Block a user