2016-06-30 14 views
0

Cortex-M4 기반의 프로세서 인 libgcc의 부동 소수점 구현에는 FPU가 없다. 대신 -lgcc 스위치를 사용 libgcc.o로 라이브러리에 내장 사용, 난 내 응용 프로그램에서 소수점 연산 기능을 부동의 소스 코드 구현을 사용하려면 대신 라이브러리의 전체를 추가하는 내 응용 프로그램에 필요한 기능으로 만 사용할 . 따라서 어느 누구도 이러한 기능이 거짓말을하는 곳에서 도움을받을 수 있습니다. "aeabi_dcmpeq"와 같은 "ieee754-df.S"에 이러한 함수가 있음을 알 수 있습니다. 이 함수는 모든 ARM 타겟에 대해 소프트 부동 소수점 및 일반용입니까? 그러나 이것은 그렇지 않습니다.관하여 libgcc 소프트 부동 소수점 기능 내가</p> <p>이 __aeabi_dcmpeq</p> <p>__aeabi_dcmplt</p> <p>__aeabi_dmul</p> <p>는 기본적으로, 부드러운 사용하려면 소프트 부동 소수점에 따라 이러한 기능의 소스 코드 구현을 찾으려면

+0

http://code.metager.de/source/xref/NetBSD/src/lib/libc/arch/arm/softfloat/

FreeBSD 구현 : http://web.mit.edu/freebsd/head/lib/libc/arm/aeabi/aeabi_double.c http://web.mit.edu/freebsd/head/lib/libc/arm/aeabi/ aeabi_asm_double.S – osgx

+0

implem을 사용하고 싶습니다. gcc 소스 코드 – user3674043

+0

에서 이러한 기능을 사용하려면 libgcc와 정적 또는 동적 링크를 사용합니까? 정적 연결은 사용 된 함수 만 유지합니다. – osgx

답변

0

기능은 NetBSD에있는 softfloat 구현이 http://code.metager.de/source/xref/gnu/gcc/libgcc/config/arm/ieee754-df.S

에 관하여 libgcc에 정의되어 있습니다 (NetBSD의/src에/lib 디렉토리/libc의/softfloat /)가 있습니다 http://code.metager.de/source/xref/NetBSD/src/lib/libc/arch/arm/softfloat/__aeabi_dcmplt.c

+0

나는 응용 프로그램을 구축하는 동안 나는 이러한 오류를 참조 IEEE754 - def.S에서이 기능을 "aeabi_dcmpeq"을 선택하고 내 응용 프로그램에 포함 ../src/ieee754-df.S:1096 : 오류 : 보라 필요한 등록 - - str lr, [sp, # - 8]! ' ../src/ieee754-df.S:1099 : 오류 : 엄지 손가락은 조건부 실행을 지원하지 않습니다 ../src/ieee754-df.S:1100 : 오류 : 엄지 손가락은 조건부 실행을 지원하지 않습니다. 내가 피질-M4를 위해 건물입니다으로 이러한 오류는 나를 유효한 것 같다. 그렇다면 어떻게 수정하여 cortex-m4/armv7e-m에 사용할 수 있습니까? GCC는 여러 아키텍처 및 내 위의 코멘트를 보았다 더 FPU – user3674043

+0

이없는 코어 텍스 M4/armv7e-m에 대한 정보를 조작하는 방법? – user3674043