/feature (x64)

啟用一個或多個架構特性以產生 x64 程式碼。

注意

/feature:APX 支援為實驗性質,且可能有所變動。

語法

/feature:<arg>

Arguments

要啟用 x64 目標支援的一項或多項功能,請指定以下一項或多項功能參數:

特徵論證 Description 版本支援
APX 啟用 Intel APX(進階效能擴充)預覽支援。 使編譯器能針對多種 APX 功能,如擴展 General-Purpose 暫存器(EGPR)、新資料目的地(NDD)、No-Flags 更新(NF)、新的條件指令集(ISA)及優化暫存器儲存/還原操作。 欲了解更多資訊,請參閱 Intel 進階效能擴充(APX)。 MSVC 建置工具 14.51(預覽支援)

備註

範例用法:要啟用 APX,請指定 /feature:APX

/feature:APX 指定 時,定義以下預處理器巨集:__APX_F____CCMP____CF____EGPR____NDD____NF____PPX____PUSH2POP2____ZU__。 欲了解更多資訊,請參閱Microsoft專屬的預定義巨集

APX 擴充了 x64 架構,加入了新的暫存器和指令,這影響了編譯器如何產生呼叫、跨函式邊界保存狀態,以及釋放解構中繼資料。 以下文章將介紹 x64 的慣例並解開與 APX 相關的資訊:

  • 呼叫者/被呼叫者已儲存暫存器
    描述被叫方必須保留哪些暫存器,以及呼叫者在 x64 通話中負責儲存哪些暫存器。
  • SETJMP/長JMP
    說明非本地跳躍如何捕捉並還原 x64 上的非揮發性暫存器狀態,包括參與跳躍緩衝區的暫存器。
  • 登記器波動率與保存
    總結了 x64 軟體中揮發性與非揮發性通用、XMMYMMZMM、暫存器的慣例,以及被調用者必須遵守以維護這些慣例的規則。
  • 例外處理解開資訊 V3
    V3 解構資訊格式的預覽規範,用於描述 x64 程式碼的序言、尾聲及框架佈局,包括 APX 引入的擴展狀態。

在 Visual Studio 中設定 /feature 編譯程式選項

  1. 開啟專案的 [ 屬性頁 ] 對話框。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性
  2. 選取 [組態屬性]>[C/C++]>[命令列] 屬性頁。
  3. 附加選項 框中,加入 /feature:APX。 選取 [確定] 儲存您的變更。

若要以程式方式設定這個編譯器選項

另請參閱

/arch (x64)
/arch (最低 CPU 架構)
MSVC 編譯器選項
MSVC 編譯器命令列語法