私はPowerPcのシステムコールの実装に取り組んでいます。私はいくつかのgcc関数をテストしましたが、それらはすべて機能しているようです(たとえば、sqrt sin cos pow printf malloc ...)
最近、printfに問題があることに気づきました。integer / charを出力する限りは正常に機能しますが、f%f /lfを印刷してfloat/doubleを出力しようとすると、プログラムがクラッシュします。(実行されるべきではない場所で実行されているようです)
私はmakefileをチェックしました、それは使用します:
# use soft float
CFLAGS += -msoft-float
プログラムを作成すると、多くのnof(フロートなし)ライブラリがリンクされているのを見ることができます。
gnu/powerpc-eabi/3pp.ronetix.powerpc-eabi/bin/../lib/gcc/powerpc-eabi/4.3.3/../../../../powerpc-eabi/lib/nof\libm.a)lib_a-s_sin.o
また、スタック/ヒープに十分なスペースがあるので、問題がないこともわかっています。 floatを印刷するときにprintfがクラッシュする理由はまだありますか?