본 연구는 컴파일러에 의해 생성된 프로시저의 수행 속도를 향상시키기 위한 방안으로 프롤로그의 최적화 알고리즘을 제안한다. 레지스터의 수가 많은 기계에서 반복 수행되는 프로시저의 경우, 프롤로그와 에필로그에서 실행되는 레지스터 저장 및 복원 명령어를 줄이는 것은 최적화의 주요 작업이 된다. IBM XL C 컴파일러에서 제공되는 에필로그 최적화는 실행 경로상의 레지스터 복원 명령어를 줄임으로써 프로시저의 성능 향상에 기여해왔으나, 프롤로그 최적화에 대한 구체적 알고리즘은 현재 제안되어 있지 않다. 본 연구가 제안하는 알고리즘에 의해 생성된 프롤로그는 각각의 실행 경로에 대해 최적화된 레지스터 저장 명령을 실행한다. 이는 프로시저 실행 경로상의 레지스터 저장 명령어를 줄이므로 프로시저의 실행 속도를 개선시킨다. 최적화 된 프롤로그를 갖는 프로시저가 바르게 실행되기 위해서는 다이아몬드 구조나 반복 구조 내부에 레지스터 저장 명령어 생성해서는 안된다. 그러므로, 본 연구는 다이아몬드 구조나 반복 구조 내부가 아닌 최적의 위치에 레지스터 저장 명령을 생성하는 알고리즘을 제안한다.