llvm-ir

    1

    1답변

    do-while 양식의 루프를 LLVM IR의 while 양식의 루프로 변경하려면 어떻게합니까?

    6

    1답변

    LLVM 패스를 사용하여 입력 코드에 내장 함수를 추가했습니다. 본질적인 호출을 볼 수 있지만 코드를 대상 아키텍처 (x86_64)로 컴파일하는 방법을 알 수 없습니다. 나는 다음과 같은 명령을 실행 해요 : clang++ $(llvm-config --ldflags --libs all) ff.s -o foo 을하지만, 링커는 정의되지 않은 참조를 뿌려

    0

    2답변

    LLVM에서 LLVM IR을 통해 LLVM 패스에 몇 가지 명령어를 삽입하면 이전에 삽입 한 명령어의 결과를 사용하는 명령어를 삽입해야합니다. 삽입 된 명령어의 결과를 쓸모가없는 LLVM IR에 이미있는 변수에 저장합니다. 예컨대 제가 %result = add i32 4 3 % 및 결과가 후속 명령어에서 사용되지 않는 명령을 삽입 기울인다.

    3

    1답변

    나는 LLVM IR에 함수를 만들었습니다. 이제 반환 명령 return void을 만들고 싶습니다. 나는 기능이 ReturnInst::(LLVMContext &C, Value *retVal, BasicBlock *InsertAtEnd) 를 작성하지만해야 retVal 당신이 (너무 기본 값) RETVAL에 nullptr에 전달하는 경우가 return void

    3

    1답변

    LLVM IR에서 사용하고자하는 다른 cpp 파일에 정의 된 기능이 있습니다. 당신이 어떻게 그들을 사용하고 그들을 연결합니까 말해 줄 수 있습니까. 나는 다음과 같은 FunctionType *joinTy = FunctionType::get(voidTy, false); Function *join = Function::Create(joinTy, Functi

    1

    1답변

    LLVM에서 -indvars 패스를 사용하고 있습니다. 그것은 가능하다면 루프 카운터가 0에서 시작하도록합니다. 나는 간단한 루프를 위해 그것을 사용했지만 루프 카운트를 0으로 시작하지 않았다. 왜 그런가? 루프는 내가 다른 대부분의 패스는 이제 정규 루프에 대한 필요없이 작동하도록 만들어지기 때문에 -indvars 패스 지금 유도 변수를 정규화하지 않는

    2

    1답변

    LLVM 패스를 사용하여 명령을 삽입하는 동안 나는 다음과 같은 오류가 점점 오전 : Instruction does not dominate all uses! %add = add nsw i32 10, 2 %cmp3 = icmp ne i32 %a.01, %add Broken module found, compilation aborted! 나는 조각 인

    6

    1답변

    llvm-general-pure을 사용하여 LLVM language에있는 프로그램의 추상 구문 트리를 작성했습니다. provided pretty printer을 사용하여, 나는에서 LLVM의 언어에 대한 automatically generated parser있다처럼 의심스럽게 보이는 define i32 @main() { mainBlock: %n5

    1

    1답변

    다음은 설정입니다. 저는 LLVM으로 작업 중이며 나중에 분석을 위해 사용할 수있는 분석 결과가 필요합니다. 이러한 결과는 내가 생성 한 최종 .s 파일 (ARM 아키텍처)에서 볼 수 있어야합니다. 그런 다음 .s 파일에서이 결과를 사용하는 추가 분석을 수행하지만 ASM의 실제 구조에 종속 된 스크립트를 실행합니다 (그렇지 않으면 더 많은 LLVM 통과를

    1

    1답변

    LLVM 함수 패스를 쓰고 있습니다. 함수의 각 루프에 루프 패스를 호출하고 싶습니다. 그러나 함수 패스에서 루프 패스를 호출 할 수는 없습니다. 필요한 루프 패스에 대해 addRequired를 추가하면 해당 패스를 예약 할 수 없다는 오류가 발생합니다. 해결 방법은 무엇입니까?