| |||
| Home > 이미지 심볼 액세스 > $Super$$ 및 $Sub$$를 사용하여 심볼 정의 재정의 | |||
기존 심볼을 수정할 수 없는 경우가 있습니다. 예를 들어, 기존 심볼이 외부 라이브러리나 ROM 코드에 있는 경우에는 수정할 수 없습니다.
이런 경우 $Super$$ 및 $Sub$$ 패턴을
사용하여 기존 심볼을 패치할 수 있습니다.
예를 들어, foo() 함수의 정의를 패치하려면 다음 $Super$$foo() 및 $Sub$$foo()를 사용합니다.
$Super$$foo패치하지 않은 원래의 foo() 함수를 식별합니다. 원래 함수를 직접 호출하려면
이것을 사용합니다.
$Sub$$foo원래의 foo() 함수
대신 호출되는 새 함수를 식별합니다. 원래 함수 앞 또는 뒤에 처리를 추가하려면 이것을 사용합니다.
Example 4.6에는 ExtraFunc()와 foo()를
각각 호출하도록 수정된 레거시 함수 foo()가 나와 있습니다. 자세한 내용은 에
있는 ARM ELF 사양,install_directory\Documentation\Specifications\... aaelf.pdf를
참조하십시오.