3
MSVCでlink-time code generation (LTCG)を使用している場合、CおよびC++言語の境界を越えてコードを最適化することは可能でしょうか?CおよびC++でリンク時間codegenでMSVCを最適化できますか?
たとえば、C関数をC++呼び出し側にインライン展開できますか?
MSVCでlink-time code generation (LTCG)を使用している場合、CおよびC++言語の境界を越えてコードを最適化することは可能でしょうか?CおよびC++でリンク時間codegenでMSVCを最適化できますか?
たとえば、C関数をC++呼び出し側にインライン展開できますか?
はい、私はただでそれを試してみました:解体された.cppに
extern "C" int foo();
printf("%d\r\n", foo());
:
int foo() { return 5; }
の.cファイルに
と
00007FF60F6F3935 mov edx,5
00007FF60F6F393A lea rcx,[string "%d" (07FF60F727FB4h)]
00007FF60F6F3941 call printf (07FF60F701E00h)
が動機とHTTPS ://stackoverflow.com/a/48030595/841108 –
私は非常に密接に関連する4つの質問に数分で尋ねられるのが不安です。 (これを含む完全なセットは、https://stackoverflow.com/questions/48030795/、https://stackoverflow.com/questions/48030786/、https://stackoverflow.com/questions/48030706/、https ://stackoverflow.com/questions/48030818/)。私は助けることはできませんが、4つのコンパイラのどれがそれを行うことができるかについての1つの質問が良いと感じています。それは「rep grubbing」の策略のように感じる。多分それは厳しいかもしれないが... –