Static Value-Flow Analysis
Loading...
Searching...
No Matches
Macros
AbsExtAPI.cpp File Reference
#include "AE/Svfexe/AbsExtAPI.h"
#include "AE/Svfexe/AbstractInterpretation.h"
#include "WPA/Andersen.h"
#include "Util/Options.h"

Go to the source code of this file.

Macros

#define SSE_FUNC_PROCESS(LLVM_NAME, FUNC_NAME)
 

Macro Definition Documentation

◆ SSE_FUNC_PROCESS

#define SSE_FUNC_PROCESS (   LLVM_NAME,
  FUNC_NAME 
)
Value:
auto sse_##FUNC_NAME = [this](const CallICFGNode *callNode) { \
/* run real ext function */ \
const SVFVar* argVar = callNode->getArgument(0); \
const AbstractValue& argVal = mgr->getAbstractValue(argVar, callNode); \
if (!argVal.isInterval() && !argVal.isAddr()) return; \
u32_t rhs = argVal.getInterval().lb().getIntNumeral(); \
s32_t res = FUNC_NAME(rhs); \
const SVFVar* retVar = callNode->getRetICFGNode()->getActualRet(); \
mgr->updateAbstractValue(retVar, IntervalValue(res), callNode); \
return; \
}; \
func_map[#FUNC_NAME] = sse_##FUNC_NAME;
unsigned u32_t
Definition CommandLine.h:18
return(char *) p.buffer
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76
signed s32_t
Definition GeneralType.h:48