2016-10-21 8 views
0

void가 아닌 반환 형식의 함수를 void 반환 형식의 함수로 변환하는 기존 방법이 있습니까?LLVM IR을 사용하여 void가 아닌 반환 형식의 함수를 void 반환 형식으로 변환하는 방법

내 연구/최적화에서 제대로 작동하려면 void 반환 유형을 갖기 위해 (메인 외에) 내 프로그램의 모든 기능이 필요합니다.

구현이 반환 값에 대한 alloc을 만들고, 새 함수를 만들고, 인수에 alloc을 삽입하고, alloc에 ​​값을 저장 한 다음 함수가 완료되고 호출이 반환 된 후에 값을로드한다고 가정합니다. .

나는 누군가이 이미 수행해야합니다 : 그것은 모듈 패스와 같은 코드를 매우 간단 소리

답변

0

건배, 그림,하지만 당신은 그렇게 할 수있는 프로그램에 전체 가시성을 확보 할 필요가 . 이는 libC 함수를 호출 할 수 있음을 의미합니다 (예를 들어 LTO 링크의 일부로 구현하지 않은 경우).