、唯一の三つの言葉で説明簡単に言うと、Yasmはモジュラーアセンブラプロジェクトですが、それは実際には複数の命令セット(現時点ではx86とAMD64)をサポートするためにゼロから設計Netwideアセンブラプロジェクトを完全に書き直し、あるGASとNASM構文の両方を受け入れるだけでなく、出力バイナリ、ELF64、ELF32、マッハ-O 64分の32ビット、COFF、RDOFF2およびWindows 64分の32ビットのオブジェクトformats.User見えるfeaturesUserに見える機能は、フル機能の解析を含むとNASMとGAS構文の字句、TASMの構文、64ビット整数定数のサポート、gettextをを使用して国際化のサポート、シンプルな2パスオプティマイザ、および64ビット(AMD64)命令セット·アーキテクチャーをサポートするための初期サポート、その&NBSPを使用して有効にすることができます。 “ -m AMD64”オプションまたは明示的な64ビットのオブジェクト形式の出力を選択すること。
それは、64ビットを可能にし、数学演算を含む高等整数の定数は、COFF、バイナリ、RDOFF2、ELF32、ELF64、Win32の、Win64のと同様に、64ビットおよび32ビットを含むオブジェクトフォーマットの広い範囲を、サポートしてマッハOオブジェクトファイルを出力する。さらに、それは、のCodeView、DWARF2とSTABSデバッグフォーマットをサポートし、UNIXおよびLinuxオペレーティングシステム上で動作するだけでなく、Microsoft WindowsとDOS.Internal featuresInternal特徴はre2cのツールで書かれているガスとNASM構文レクサー、recursive-が含まGASとNASM構文の両方の下降パーサ機能、アーキテクチャ固有の命令パーサ、などのstrdup、マージソートやstrcasecmpなどのポータブルと便利な機能の小さな集まり、だけでなく、フードfiles.Underアセンブラのテスト入力の標準セットとavailabilityTheプロジェクトは手動でのみ設定して、インストールの前に、プログラムをコンパイルするには、ユーザーを強制的にソースアーカイブとしてダウンロードできます。ソースアーカイブの最良の部分は、分布の特定のタイプのために設計され、事前に構築されたバイナリパッケージとは対照的に、それは、すべてのGNU / Linuxオペレーティングシステム上にインストールすることができることでます。
の何このリリースで新しいのです。
- のWin32、Win64の、MacOS Xの、およびUnix誘導体をターゲットにすることができます成熟したNASM-構文x86とAMD64アセンブラを使用します。李>
- ガス以外のGAS-構文アセンブラを使用する
- 新しいTASMのような構文またはフロントエンドを試してみる;
- DWARF2かのCodeViewのいずれかを使用してアセンブリソースレベルのデバッグがありますか? 8.0(VS 2005);
- (SEH)およびELF32 / ELF64スレッドローカルストレージ(TLS)を取り扱うのWin32 / Win64の構造化例外をサポートしているフリーソフトウェアアセンブラを持っている;
- 新しいAMD SSE5またはIntel AVX命令セットをターゲット;
- 安定性や機能セットの面でYasmの進捗状況を追跡する;
- 新しいリリースからYasmの発展に貢献します。
のあるどのバージョン0.7.2のの新しい:
- このリリースでは、追加の64ビットマッハ-O PICオリジナルではなく仕様で新たに指定されたAVX / AES命令のサポート、--prefixとグローバルに名前を付けるための--suffixオプション、およびサポートします。
- また、QUOT&用GOTPCREL再配置を生成し、相対WRTは..gotpc&QUOT。他のいくつかの修正と一緒に、すべての可能な場合にバイトサイズへの非厳格なプッシュを最適化します。
コメントが見つかりません