abi

    6

    1답변

    구조체를 반환하는 2 개의 C 함수를 비교했습니다. 우리는 ABI 레벨에서 큰 구조체가 첫 번째 함수 인수로서 포인터에 의한 전달이 될 것이라는 것을 알고 있습니다. struct S { int words[8]; }; struct S fsret() { struct S s; s.words[0] = 1; return s;

    4

    3답변

    wint_t 유형은 __WINT_TYPE__이 기본적으로 컴파일러에 이미 정의되어 있다는 것을 사용하여 stddef.h을 통해 wchar.h을 통해 설정됩니다. 그래서 우리는 wchar.h #undef __WINT_TYPE__ #define __WINT_TYPE__ wchar_t #define WEOF (-1) 그러나 this 주석의 시작에서 다음

    1

    1답변

    두 라이브러리의 호환성을 확인하기 위해 abi compliance checker을 사용하고 있습니다. 나는 주어진 오류가 점점 오전 : 사용 preparation, please wait ... ERROR: the input dump d1 is invalid 명령 : abi-compliance-checker -l libtest -old ABIv0.dum

    -1

    1답변

    SUBS R0, R0, #1과 같은 명령어로 호출자 함수에서 CPSR 레지스터를 변경한다고 가정합니다. 여기에서 R0이 정확히 1과 같으면 beq cpsr_test을 사용하여 함수를 호출하십시오. 호출 수신자 함수에서 플래그가 CPSR으로 설정되어 있습니까? 그러면 피 호출자 함수의 동작은 호출자의 영향을받습니다. 따라서 모든 프로그램이 함수 호출 (컨텍스

    1

    1답변

    Scientific Linux 컴퓨터에 GCC 6.2.0을 수동으로 설치했습니다. 는 C++ 응용 프로그램의 컴파일은 잘 보이지만 우리는 우리가 double ABI issue 알고 있지만 -D_GLIBCXX_USE_CXX11_ABI=0로 컴파일하는 것은 차이가 없습니다 시간 file.cpp:(.text+0x16cb): undefined reference t

    1

    1답변

    Android NDK를 통해 C/C++에 포함 된 Android 라이브러리 프로젝트가 있습니다. 모든 아키텍처에 대해 고유 코드를 작성하고 싶습니다. 내가 minSdkVersion을 21로 설정하면 모두 정상적으로 작동합니다. 그러나 minSdkVersion을 19로 설정하면 minSdkVersion (SDK 19)이 필요합니다. ARM64-v8a 버전은

    4

    1답변

    GCC/VC와 같이 많이 사용되는 구현은 다형성 객체의 첫 번째 size_t 공간을 포인터로 사용하여 vtable 구조를 가리 킵니다. 이것은 최신 C++ ABI의 일부입니까? RTTI 구현은 어떻습니까? C++ ABI는 구현 방법을 지정합니까? 감사합니다.

    0

    1답변

    어셈블리에 대해 읽었으며 어셈블리에서 호출 루틴의 규칙에 대해 읽었습니다 (특히 Linux). 레지스터 rdi, rsi, rdx, rcx, r8, r9에 xmm15 및 다른 파라미터와 다른 나머지 파라미터 역순 스택으로 푸시한다 - 는 제 8 부동 소수점 파라미터 xmm0 통해 전달되는 것을 특징으로한다. 8 개 이상의 부동 소수점 매개 변수와 6 개 이상

    8

    1답변

    인라인 함수에 대한 libC++ 가시성 매크로가 __forceinline 또는 __attribute__((__always_inline__)) 인라인 함수와 관련된 속성의 일부로 사용되는 이유를 정확히 알고 싶습니다. 배경에 대한 참조 : The libcxx visibility design document The definition of INLINE_VISI

    4

    1답변

    import std.range : cycle; void foo() pure @safe { cycle([1, 2]); } 오늘 나는 D 언어로 작성된 프로그램을 만났습니다. 간단한 함수로 시작하여 어셈블리 코드를 이해하려고합니다. the asm output on the D compiler explorer에서 가 : std.range.cycle