2016-09-10 1 views

Antwort

1

Eine Assemblydatei (.s) enthält Maschinenanweisungen in einer für Menschen lesbaren Form, die als Assemblersprache bezeichnet wird. Eine Objektdatei enthält die gleichen Anweisungen in maschinenlesbarer, binärer Form. Assembly-Dateien können vom Assembler (as) in Objektdateien übersetzt werden.

Eine LLVM-Bitcodedatei (.bc) enthält LLVM-Anweisungen in binärer Form. Er kann vom LLVM-Compiler (llc) in Maschinencode übersetzt oder direkt mit dem LLVM-Interpreter (lli) ausgeführt werden.

Nicht in Ihrer Frage aufgeführt sind LLVM-Assembly-Dateien (.ll). Diese enthalten die gleichen Anweisungen wie Bitcodedateien, jedoch in lesbarer Form. Sie können mit dem LLVM-Assembler (llvm-as) in Bitcodedateien umgewandelt werden.

+0

Danke. Ich verstehe die meisten Teile deiner Antwort. Frage: Ist .bc eine sogenannte "Objektdatei"? – wad

+0

@wad Nein. Objektdateien haben die Erweiterung .o oder .obj und enthalten Maschinencode, während .bc-Dateien den LLVM-Bitcode enthalten. – sepp2k

Verwandte Themen