4.7.24.  __pld

이 내장 함수는 데이터 프리페치(예: PLD)를 컴파일러에서 생성한 명령어 스트림에 삽입합니다. 이를 통해 주소에서 데이터를 곧 로드할 것이라는 신호를 C 또는 C++ 프로그램에서 메모리 시스템으로 보낼 수 있습니다.

구문

void __pld(...)

인수 설명:

...

미리 가져올 메모리의 주소를 지정하는 포인터 또는 정수 인수의 임의 개수를 나타냅니다.

제한

타겟 아키텍처가 데이터 프리페치를 지원하지 않는 경우 이 내장 함수는 아무런 영향을 미치지 않습니다.

예제

extern int data1;
extern int data2;

volatile int* interrupt = (volatile int *)0x8000;
volatile int* uart = (volatile int *)0x9000;

void get(void)
{
    __pld(data1, data2);

    while (!*interrupt);

    *uart = data1;        // trigger uart as soon as interrupt occurs
    *(uart+1) = data2;
}

추가 참고

Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0348AK
Non-Confidential