安騰(R) 處理器主題浮點載入指令

ldf

操作 字型慣例

指令型別 M

格式

(qp) ldffsz.fldtype.ldhint f1 = [r3] no_base_update_form

(qp) ldffsz.fldtype.ldhint f1 = [r3], r2 reg_base_update_form

(qp) ldffsz.fldtype.ldhint f1 = [r3], imm9 imm_base_update_form

(qp) ldf8.fldtype.ldhint f1 = [r3] integer_form, no_base_update_form

(qp) ldf8.fldtype.ldhint f1 = [r3], r2 integer_form, reg_base_update_form

(qp) ldf8.fldtype.ldhint f1 = [r3], imm9 integer_form, imm_base_update_form

(qp) ldf.fill.ldhint f1 = [r3] fill_form, no_base_update_form

(qp) ldf.fill.ldhint f1 = [r3], r2 fill_form, reg_base_update_form

(qp) ldf.fill.ldhint f1 = [r3], imm9 fill_form, imm_base_update_form


說明

GRr3 中的值指定的地址開始,從記憶體中讀取 fsz 個位元組組成的值。 此值隨後轉換成浮點暫存器格式放入 FR f1 fldtype 完成符指定特殊的載入操作。

對於 integer_form,載入 8 位元組值並放入 FR f1 的有效位欄位,而不必執行轉換。FR f1 的指數欄位設定為 2.063 (0x1003E) 的偏置指數,FR f1 的符號欄位設定為正 (0)。

對於 fill_form,載入 16 位元組值,且將適當的欄位放入 FR f1,而不必執行轉換。此指令用於重新載入轉存的暫存器。

在基址更新形式中,GR r3 中的值加到有符號的立即數 (imm9) 或 GR r2 中的值上,隨後結果放回 GR r3。載入之後便完成此基址暫存器的更新,且不影響載入地址。在 reg_base_update_form 中,如果設定 GR r2 對應的 NaT 位,則 GR r3 對應的 NaT 位也會設定為 1,且不觸發任何錯誤。

對於非推測性載入型別,如果與 GR r3 關聯的 NaT 位是 1,則執行“暫存器 NaT 使用”錯誤的處理。對於推測性載入與推測性高級載入,不觸發任何錯誤,而且會緩發異常。對於基址更新計算,如果與 GR r2 關聯的 NaT 位是 1,則與 GR r3 關聯的 NaT 位設定為 1,而且不觸發任何錯誤。

ldhint 修正符的值指定記憶體訪問的區域性。在基址更新形式中,會暗示預取提示。基址更新之後 GR r3 中的值指定的地址充當預取指定的快取線提示。此預取操作使用 ldhint 指定的區域性提示。預取與區域性提示不影響程式功能,在具體實現的版本中可能會被忽略。

在 no_base_update 形式中,GR r3 中的值不修改,並且不暗示任何預取提示。

PSR.mfl 與 PSR.mfh 位會進行更新,以反映 FR f1 的修改。

對於既非採用寫回策略的可快取頁、也非 NaTPage 的頁,引用它的 ldfe(10 位元組)指令的硬體支援是可選的。在不支援 ldfe 訪問的處理器型號上,試圖執行不支援的引用時,會觸發“不支援的數據引用”錯誤。此錯誤僅在常規、高級及檢查載入情形下產生。ldfe 的控制推測情形總是緩發“不支援的數據引用”錯誤。