문제

I'm working on an android project that involves native code and I'm trying to use the Kiss FFT library with the NDK. However, I'm having difficulty understanding the portion listed below of a makefile used by Kiss FFT. Can someone explain this to me?

I know that the first line defines the target kiss_fft.s and its prerequisites and that the next four lines are the recipe, of which line 3. and 4. are compiler commands. But I don't understand lines 2. and 5.

1. kiss_fft.s: kiss_fft.c kiss_fft.h _kiss_fft_guts.h
2.   [ -e kiss_fft.s ] && mv kiss_fft.s kiss_fft.s~ || true
3.   gcc -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -unroll-loops -dA -fverbose-asm 
4.   gcc -o kiss_fft_short.s -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -dA -fverbose-asm -DFIXED_POINT
5.   [ -e kiss_fft.s~ ] && diff kiss_fft.s~ kiss_fft.s || true

Any help would be greatly appreciated!

도움이 되었습니까?

해결책

Line 2. moves the assembly code (kiss_fft.s) to a backup file if it exists, otherwise returns a true status, so the next line will execute.

Line 5. shows you the differences between the previous assembler output from gcc and the current output, if there was previous output (moved into kiss_fft.s~ by step 2.).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top