"Writing an LLVM Pass" 웹 페이지에서 Hello 패스 예제를 시도하고있었습니다. 나는 아래 hello.c (GCC-4.2) 컴파일의 지시에 따라,하지만 난 컴파일 오류를 가지고 : 프로그램의 라인 INITIALIZE_PASS(Hello, "Hello", "Hello World Pass", false, false);
입니다llvm의 Hello pass 예제에 대한 컴파일 오류
Hello.cpp:20: error: expected identifier before string constant
Hello.cpp:20: error: expected ',' or '...' before string constant
Hello.cpp:20: error: expected constructor, destructor, or type conversion before ';' token
합니다. 프로그램은 다음과 같습니다 :
#include "llvm/Pass.h"
#include "llvm/Function.h"
#include "llvm/Support/raw_ostream.h"
using namespace llvm;
namespace {
struct Hello : public FunctionPass {
static char ID;
Hello() : FunctionPass(&ID) {}
virtual bool runOnFunction(Function &F) {
errs() << "Hello: " << F.getName() << "\n";
return false;
}
};
char Hello::ID = 0;
INITIALIZE_PASS(Hello, "Hello", "Hello World Pass", false, false);
}
아무도 도와 드릴까요? 고마워요!
최저
,다니엘
의 지침을 따르십시오 : [코드 예제를 LLVM 백엔드 프로그래밍을 학습] http://stackoverflow.com/questions/8776903/code-examples (-for-learning-llvm-backend-programming) –