0
타겟을 ARM 플랫폼으로 사용하여 GNU 어셈블러를 사용하여 일부 어셈블리 코드를 컴파일하려고합니다. 하지만 몇 가지 오류가 나타납니다. 나는 어셈블리 문법에 익숙하지 않다.GNU 어셈블러 컴파일 오류 '잘못된 피연산자 inline asm'
누구든지이 오류를 해결하는 방법을 알려 줄 수 있습니까?
error: invalid operand in inline asm: 'str ${2:Q}, $0
str ${2:R}, $1
이 컴파일 오류를 발생시킨 인라인 어셈블리 코드
은 여기에 있습니다 :static av_always_inline void AV_WN64(void *p, uint64_t v)
{
__asm__ ("str %Q2, %0 \n\t"
"str %R2, %1 \n\t"
: "=m"(*(uint32_t*)p), "=m"(*((uint32_t*)p+1))
: "r"(v));
}
불만을 제기하는 소스 행을 게시하십시오. – jcopenha
인라인 asm 코드는 ffmpeg, libavutil/arm/intreadwrite.h에서 제공됩니다. 위의 코드를 추가합니다. – ciphor