반응형
함수에서 "항상 __sub__((항상_sub)"은 무엇을 의미합니까?
다음 함수 정의를 찾았습니다.
static inline __attribute__((always_inline)) int fn(const char *s)
{
return (!s || (*s == '\0'));
}
그리고 나는 그 의미를 알고 싶습니다.inline __attribute__((always_inline))
?
자주 언급되는 것은gcc
에 대한 문서.always_inline
불완전합니다.
always_inline
속성 makesgcc
컴파일러:
- 무시
-fno-inline
(설명서에는 다음과 같이 나와 있습니다.) - 인라인 한계를 무시하고 상관없이 함수에 인라인을 적용합니다.또한 다음과 같은 기능을 인라인화합니다.
alloca
호출, 그것.inline
키워드는 절대 그렇지 않습니다. - 다음과 같이 표시된 경우 외부 연결이 있는 함수의 외부 정의를 생성하지 않습니다.
always_inline
.
위 정보의 출처는 gcc 소스 코드이므로 경고 없이 변경될 수 있습니다.
흥미로운 벤치마크는 성능입니다.
이는 최적화가 비활성화된 경우에도 컴파일러가 함수를 인라인화하도록 강제합니다.자세한 내용은 이 설명서를 참조하십시오.
언급URL : https://stackoverflow.com/questions/22767523/what-inline-attribute-always-inline-means-in-the-function
반응형
'prosource' 카테고리의 다른 글
판다가 문자열에서 'NA'를 NaN으로 해석하지 못하도록 합니다. (0) | 2023.07.22 |
---|---|
뷰에 구체화 뷰를 작성할 수 있습니까? (0) | 2023.07.22 |
JMS 메시지가 사용될 때까지 스프링 컨텍스트 유지 (0) | 2023.07.22 |
상태 점검을 위해 특정 데이터 소스를 모니터링하지 않음 (0) | 2023.07.22 |
python에서 stdout을 "nothing"으로 리디렉션 (0) | 2023.07.22 |