2014-03-14 70 views
0

我正在構建一套基於使用llvm-3.4,gcc-4.8的基於統一的別名分析的工具。 我收到一連串的錯誤指示: 「彙編信息:沒有這樣的指令:xbegin,xend,xabort等」 os是ubuntu服務器12.04。彙編程序消息:沒有這樣的指令xbegin

想知道發生了什麼?謝謝。

+0

這些是TSX指令,但我不確定發生了什麼。 – harold

回答

0

這些指令是僞指令,不是所有彙編器的標準。

我知道它們在MacOS下使用,但通常不在Linux下使用。

也許你不能在Linux下編譯代碼。

+0

我切換到Ubuntu的服務器13.10並沒有出現類似的問題。仍然不知道爲什麼...... – Sophie

0

您需要使用GCC選項-mrtm編譯您的代碼。

+0

這會影響C/C++中是否允許內在函數。這個問題是關於彙編程序甚至不認識asm指令,它不依賴於編譯器選項。 (使用'gcc -v'來查看編譯器/彙編器/鏈接器命令行,並注意'-march = skylake'或'-mrtm'不會向彙編器命令行添加額外選項。 –

+0

我遇到同樣的問題,我的gcc版本是Redhat 7.1上的5.3.0。錯誤是「錯誤:沒有這樣的指令,'xbegin .L52'」。 – egraldlo

+0

,它只適用於Haskell CPU? – egraldlo