점프 스레딩

Jump threading

컴퓨팅에서 점프 스레딩은 한 점프를 두 번째 점프로 직접 최적화하는 컴파일러 최적화다.만약 두 번째 조건이 첫 번째 조건의 부분집합이나 역행이라면, 그것은 제거될 수도 있고, 첫 번째 점프를 통해 실이 꿰어질 수도 있다.[1]이것은 컴파일러가 고정된 지점에 도착할 때까지 반복적으로 체인으로 연결된 점프를 따라 프로그램을 통과하는 한 번의 통과로 쉽게 이루어진다.

다음 유사 코드는 점프가 나사산 처리될 수 있는 시기를 나타낸다.

10. a = SomeNumber(); 20. 만약 a > 10 GOTO 50 ...50. 만약 a > 0 GOTO 100 ... 

50호선 점프는 20호선 점프를 하면 항상 취해진다.따라서 100번 라인이 점프에 도달할 수 있는 범위 내에 있는 한(또는 점프 크기는 중요하지 않음) 20번 라인의 점프는 100번 라인으로 직접 점프하도록 안전하게 수정될 수 있다.

참고 항목

참조

  1. ^ "Optimize Options - Using the GNU Compiler Collection (GCC)".