私はこのQをTIの28xxDSPフォーラムに投稿しましたが、応答がなく、おそらくここの誰かが知っているかもしれないと考えました。
C呼び出し可能になるようにアセンブリで関数を書く方法を知っています。C呼び出し可能名前がのfoo()
場合、アセンブリ関数の名前は_foo()
です。
C ++を使用して、アセンブリでクラスメソッドを最適化する場合はどうなりますか?それ、どうやったら出来るの?私は唯一の主要な問題は次のとおりだと思います。
- ネーミング
- 「this」ポインタへのアクセス
- どういうわけかオフセットを知ることによってクラスメンバーにアクセスする
最後の2つについて心配したくない場合は、静的メンバー関数を記述して次のようにします。
class MyClass
{
int x;
static int _doSomething(int u); // implement this in assembly
public:
inline void doSomething() { x = _doSomething(x); }
// lightweight C++ wrapper to handle the class member / "this" pointer stuff
};