1

私は2つのモジュールを一緒にリンクしています(KLEEですが、それは重要ではないと思います)が、データレイアウトが異なるように見えるため、llvmが文句を言います:

警告: 異なるデータ レイアウトの 2 つのモジュールをリンクしています!

私はそれらを見て、最初libkleeRuntimeIntrinsic.bcaに次のレイアウトを持っていることがわかりました

e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64

私自身client.bcが持っている間

e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-f128:128:128-n8:16:32:64

これらを比較したところ、後者はf128:128:128多すぎます。ドキュメントによると、 128ビット浮動小数点数のサポートを示しています。

これらは、同じバージョンの同じシステム上に構築され、llvm-gcc/ でリンク/アーカイブされましllvm-ldllvm-ar。すべての llvm バージョン 2.9 (私の llvm はDebug+Assertsモードで構成されています)。

この理由は何ですか? また、どうすれば 2 番目の ( client.bc) を同じ日のレイアウト (つまり、なしf128:128:128) にすることができますか?

4

0 に答える 0