| |||
Home > 컴파일러 명령 행 옵션 > 명령 행 옵션 > --split_sections | |||
이 옵션은 소스 파일에 있는 각 함수에 대해 ELF 섹션을 하나씩 생성하도록 컴파일러에 지시합니다.
출력 섹션에는 해당 섹션을 생성하는 함수의 이름에 접두사 i.가 추가된
형태로 이름이 지정됩니다.
별도의 섹션에 특정 데이터 항목 또는 구조체를 배치하려면 __attribute__((section(...)))를
사용하여 따로따로 만듭니다.
사용하지 않는 함수를 제거하려면 이 옵션보다는 링커 피드백 최적화를 사용하는 것이 좋습니다. 링커 피드백은 모든 섹션을 분할하는 오버헤드를 방지하여 더 작은 코드를 생성하기 때문입니다.
int f(int x)
{
return x+1;
}
--split_sections를 사용하여 이 코드를 컴파일하면 다음이 생성됩니다.
AREA ||i.f||, CODE, READONLY, ALIGN=2 f PROC ADD r0,r0,#1 BX lr ENDP