최적화 마이크로프로그램 컴파일러 구성을 위한 레지스터 할당 알고리즘

본 논문에서는 고급 마이크로프로그래밍 언어로 작성된 마이크로프로그램의 각 변수들을 대상머신의 레지스터들에 효율적으로 할당하기 위한 마이크로프로그램의 레지스터 할당 알고리즘을 제안한다. 즉, 3주소코드 형식의 HLML-C 중간언어를 입력으로 받아 범용레지스터 변수들을 할당한다. 범용레지스터변수 할당 시 데이터 흐름을 분석하여 리던던트한 부가명령의 삽입을 제거함으로써 삽입되는 부가명령의 수를 최소화 시킨다. 본 알고리즘은 VAX-11/750(4.3 BSD UNIX)상의 C언어로 실현하고, 다양한 예의 마이크로프로그램에 적용하여 기존의 알고리즘의 결과와 비교, 검토함으로써 본 알고리즘의 효율성을 입증한다.