intrinsic
해당 pragma 인수 목록에 지정 된 함수 호출을 내장 되도록 지정 합니다.
#pragma intrinsic( function1 [, function2, ...] )
설명
해당 내장 pragma 함수 동작이 알려진 컴파일러에 지시 합니다.컴파일러 함수를 호출 하 고 더 나은 성능에 발생 하는 경우 함수 호출 인라인 명령으로 바꾸지 않는 수 있습니다.
라이브러리 함수에 내장 형태는 다음과 같습니다.한 번에 내장 pragma 발생, 지정 된 내장 함수를 포함 하는 첫 번째 함수 정의에 적용 됩니다.소스 파일의 끝에 또는 모양에 효과 계속 한 함수 같은 내장 함수를 지정 하는 pragma입니다.내장 pragma를 함수 정의 외부에서 사용할 수 있습니다-글로벌 수준에 있습니다.
다음 기능 내장 형태를 가지 고 내장 형식을 지정할 때 사용 됩니다 /Oi:
|
|||
|
|||
|
내장 함수를 사용 하는 프로그램은 함수 호출의 오버 헤드가 필요는 없지만 추가 코드 생성으로 인해 많은 것 때문에 더 빠릅니다.
x86 Specific
_Disable 및 _ 활성화 내장 인터럽트를 비활성화/활성화 하려면 커널 모드 명령을 생성 하 고 커널 모드 드라이버에서 유용 하 게 사용할 수 있습니다.
예제
다음 코드 사용 하 여 명령줄에서 컴파일할 "cl-c-FAs sample.c" sample.asm으로 x 86을 설정 합니다 확인 하 고 CLI 및 STI 명령:
// pragma_directive_intrinsic.cpp
// processor: x86
#include <dos.h> // definitions for _disable, _enable
#pragma intrinsic(_disable)
#pragma intrinsic(_enable)
void f1(void) {
_disable();
// do some work here that should not be interrupted
_enable();
}
int main() {
}
끝 x 86 특정
아래에 있는 부동 소수점 함수는 실제로 내장 형태를 하지 않습니다.대신이 프로그램 스택에 넣지 않고 부동 소수점 칩에 직접 인수를 전달 하는 버전 들:
|
아래에 있는 부동 소수점 함수를 지정할 때 내장 형태를 가집니다 /Oi, /Og, 및 /fp:fast (또는 /og을 포함 하는 옵션: /Ox, /O1, 및 /O2):
|
|
|
사용할 수 있는 /fp: 엄격한 또는 /Za true 내장 부동 소수점 옵션의 생성을 재정의할 수 있습니다.이 경우에는 함수가 인수를 프로그램 스택에 넣지 않고 직접 부동 소수점 칩에 전달하는 라이브러리 루틴으로 만들어집니다.
참조 하십시오 # pragma 함수 에 대 한 정보와 예제 소스 텍스트 블록에 대 한 내장을 활성화/비활성화 하는 방법에 있습니다.