mirror of
https://github.com/emmansun/gmsm.git
synced 2025-05-10 19:16:18 +08:00
Updated Golang ppc64x asm Reference (markdown)
parent
464720b66b
commit
cb4a1d4502
@ -84,6 +84,7 @@
|
|||||||
- **LVX** "Load Vector Indexed". This instruction is used to load a vector from memory into a vector register. The **LVX** instructions on ppc64 require 16 byte alignment of the data. To avoid that requirement, data is loaded using **LXVD2X** with **VPERM** to reorder bytes correctly.
|
- **LVX** "Load Vector Indexed". This instruction is used to load a vector from memory into a vector register. The **LVX** instructions on ppc64 require 16 byte alignment of the data. To avoid that requirement, data is loaded using **LXVD2X** with **VPERM** to reorder bytes correctly.
|
||||||
- **LXVDSX** "Load Vector Doubleword Scalar Indexed". This instruction is used to load a doubleword (64-bit element) from memory into a vector register.从指定内存位置加载64位数据,将其存储到目标向量寄存器的lower half(byte index from 0-7)。
|
- **LXVDSX** "Load Vector Doubleword Scalar Indexed". This instruction is used to load a doubleword (64-bit element) from memory into a vector register.从指定内存位置加载64位数据,将其存储到目标向量寄存器的lower half(byte index from 0-7)。
|
||||||
- **LVXD2X** "Load Vector Doubleword 2 Indexed". This instruction is used to load two consecutive doublewords (64-bit elements) from memory into a vector register. 加载两个连续的64位数到目标向量寄存器。
|
- **LVXD2X** "Load Vector Doubleword 2 Indexed". This instruction is used to load two consecutive doublewords (64-bit elements) from memory into a vector register. 加载两个连续的64位数到目标向量寄存器。
|
||||||
|
- **LXVW4X** "Load Vector Word Indexed". It loads a vector of 4 words (16 bytes total, as each word is 4 bytes) from memory into a vector register.
|
||||||
|
|
||||||
### 示例(PPC64LE)
|
### 示例(PPC64LE)
|
||||||
用**LVXD2X**加载两个连续64位整数:
|
用**LVXD2X**加载两个连续64位整数:
|
||||||
@ -121,6 +122,7 @@ LVX (R4), V0
|
|||||||
## 存储向量寄存器中的数据到内存
|
## 存储向量寄存器中的数据到内存
|
||||||
- **STVX** "Store Vector Indexed". This instruction is used to store a vector from a vector register into memory.The **STVX** instructions on ppc64 require 16 byte alignment of the data. To avoid that requirement, data is stored using **STXVD2X** with **VPERM** to reorder bytes correctly.
|
- **STVX** "Store Vector Indexed". This instruction is used to store a vector from a vector register into memory.The **STVX** instructions on ppc64 require 16 byte alignment of the data. To avoid that requirement, data is stored using **STXVD2X** with **VPERM** to reorder bytes correctly.
|
||||||
- **STXVD2X** "Store Vector Doubleword 2 Indexed". This instruction is used to store two consecutive doublewords (64-bit elements) from a vector register into memory.
|
- **STXVD2X** "Store Vector Doubleword 2 Indexed". This instruction is used to store two consecutive doublewords (64-bit elements) from a vector register into memory.
|
||||||
|
- **STXVW4X** "Store Vector Word Indexed". It stores a vector of 4 words (16 bytes total, as each word is 4 bytes) from a vector register to memory.
|
||||||
|
|
||||||
## 判断相等
|
## 判断相等
|
||||||
- **VCMPEQUD** "Vector Compare Equal Unsigned Doubleword". This instruction is used to compare the corresponding doublewords (64-bit elements) in two vector registers for equality. The instruction compares the doublewords in the source registers for equality. If the doublewords are equal, the corresponding element in the result is set to all ones; otherwise, it is set to all zeros.
|
- **VCMPEQUD** "Vector Compare Equal Unsigned Doubleword". This instruction is used to compare the corresponding doublewords (64-bit elements) in two vector registers for equality. The instruction compares the doublewords in the source registers for equality. If the doublewords are equal, the corresponding element in the result is set to all ones; otherwise, it is set to all zeros.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user