こんばんは。現在勉強しているライブラリでわからないところがあったので質問しました。
そのライブラリにこのようなコードがありました。
#if defined(__x86_64__) *(long *) ((char *) &ctx->cc + 56) = (long) func; *(long *) ((char *) &ctx->cc + 16) = (long) stack; #elif defined(__i386__) *(long *) ((char *) &ctx->cc + 48) = (long) func; *(long *) ((char *) &ctx->cc + 36) = (long) stack; #elif defined(__arm__) *(long *) ((char *) &ctx->cc + 32) = (long) func; *(long *) ((char *) &ctx->cc + 28) = (long) stack; #else #error "PCL: Unsupported setjmp/longjmp OSX CPU. Please report to <davidel@xmailserver.org>" #endif
この部分が動かす環境で場合分けしているということはわかるのですが、どのような目的で何をするコードなのかがわからないので、教えていただきたいです。
ちなみに勉強しているライブラリはこちらです。http://xmailserver.org/libpcl.html
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー