Files
OSACA/osaca/data/zen3.yml
Stephen Nicholas Swatman 2203517e8e Add IMUL instruction for Zen 3 architectures
This commit adds data on the IMUL (r, r) instruction on the AMD Zen 3
microarchitecture.
2023-08-12 19:40:44 +02:00

5528 lines
368 KiB
YAML

osaca_version: 0.4.10
micro_architecture: AMD Zen3
arch_code: ZEN3
isa: x86
load_latency: {gpr: 4.0, mm: 4.0, xmm: 4.0, ymm: 4.0}
load_throughput:
- {dst: gpr, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['11', '12', '13']]]}
- {dst: xmm, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['11', '12']]]}
- {dst: ymm, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['11', '12']]]}
load_throughput_default: [[1, ['11', '12']]]
store_throughput:
- {src: gpr, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['12', '13']]]}
- {src: xmm, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['4']], [1, ['13']]]}
- {src: ymm, base: gpr, index: "*", offset: "*", scale: "*", port_pressure: [[1, ['4']], [1, ['13']]]}
store_throughput_default: [1 ,['13']]
store_to_load_forward_latency: 0.0 # JH: according to Agner Fog "little or no penalty"
hidden_loads: false
ports: ['0', '1', '2', '3', DV0, DV1, '4', '5', '6', '7', '8', 8DV, '9', '10', '11', '12', '13']
port_model_scheme: |
+--------------------------------------------------------+ +----------------------------------------------------------------+
| [(0,2,4),(1,3,5)] 2x32 OoO scheduler | | [(6,11),(7,12),(8,13),(9,10)] 4x24 OoO scheduler |
+--------------------------------------------------------+ +----------------------------------------------------------------+
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/
+-------+ +-------+ +-------+ +-------+ +------+ +------+ +------+ +-----+ +-----+ +------+ +------+ +-----+ +-----+ +-----+
|AVX ALU| |AVX ALU| |AVX ALU| |AVX ALU| | ST | | F2I | | ALU | | ALU | | ALU | | ALU | |BRANCH| | AGU | | AGU | | AGU |
+-------+ +-------+ +-------+ +-------+ +------+ +------+ +------+ +-----+ +-----+ +------+ +------+ +-----+ +-----+ +-----+
+-------+ +-------+ +-------+ +-------+ +------+ +-----+ +-----+ +-----+ +-----+ +-----+
|AVX MUL| |AVX MUL| |AVX ADD| |AVX ADD| |BRANCH| | MUL | | DIV | | LD | | LD | | ST |
+-------+ +-------+ +-------+ +-------+ +------+ +-----+ +-----+ +-----+ +-----+ +-----+
+-------+ +-------+ +-------+ +-------+ +-----+ +-----+ +-----+ +-----+
|AVX FMA| |AVX FMA| | AVX | |AVX DIV| |SHIFT| |SHIFT| |intST| |intLD|
+-------+ +-------+ | SHUF | +-------+ +-----+ +-----+ +-----+ +-----+
+-------+ +-------+
| AVX |
| SHUF |
+-------+
instruction_forms:
##########################################
# assume all jmp instruction 0
- name: [jo, jno, js, jns, jp, jpe, jnp, jpo]
operands:
- class: identifier
throughput: 0.0
latency: 0.0
port_pressure: [[1, ['6', '10']]]
- name: [jc, jb, jae, jnb, jna, jbe, ja, jnbe]
operands:
- class: identifier
throughput: 0.0
latency: 0.0
port_pressure: [[1, ['6', '10']]]
- name: [je, jz, jne, jnz, jl, jnge]
operands:
- class: identifier
throughput: 0.0
latency: 0.0
port_pressure: [[1, ['6', '10']]]
- name: [jge, jnl, jle, jng, jg, jnle]
operands:
- class: identifier
throughput: 0.0
latency: 0.0
port_pressure: [[1, ['6', '10']]]
- name: jmp
operands:
- class: identifier
throughput: 0.0
latency: 0.0
port_pressure: [[1, ['6', '10']]]
##########################################
# assume all cmp's equal for now
- name: [cmp, cmpeqpd, cmpltpd, cmplepd, cmpunordpd, cmpneqpd, cmpnltpd, cmpnlepd, cmpordpd, cmpltps, cmpleps, cmpunordps, cmpneqps, cmpnltps, cmpnleps, cmpordps]
operands:
- class: register
name: '*'
- class: register
name: '*'
latency: 1.0
port_pressure: [[1, '6789']]
throughput: 0.25
uops: 1
- name: [cmp, cmpeqpd, cmpltpd, cmplepd, cmpunordpd, cmpneqpd, cmpnltpd, cmpnlepd, cmpordpd, cmpltps, cmpleps, cmpunordps, cmpneqps, cmpnltps, cmpnleps, cmpordps]
operands:
- class: immediate
imd: int
- class: register
name: gpr
latency: 1.0
port_pressure: [[1, '6789']]
throughput: 0.25
uops: 1
- name: [vcmppd, vcmpps, vcmpsd, vcmpss]
operands:
- class: immediate
imd: int
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 1.0
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: [vcmppd, vcmpps]
operands:
- class: immediate
imd: int
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 1.0
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: [vcmpltpd, vcmplepd, vcmpltps, vcmpleps]
operands:
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 1.0
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: [vcmpltpd, vcmplepd, vcmpltps, vcmpleps]
operands:
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 1.0
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
##########################################
- name: mov # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: mov # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: mov # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: mov # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: immediate # ./generate_mov_entries.py zen3
imd: int # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: mov # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: immediate # ./generate_mov_entries.py zen3
imd: int # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movabs # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: immediate # ./generate_mov_entries.py zen3
imd: int # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movapd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movapd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movapd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovapd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovapd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovapd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovapd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovapd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovapd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movaps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movaps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movaps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovaps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovaps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovaps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovaps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovaps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovaps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movddup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movddup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovddup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovddup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovddup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovddup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdq2q # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdqa # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdqa # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovdqa # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqa # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovdqa # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqa # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movdqu # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdqu # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movdqu # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovdqu # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqu # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqu # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovdqu # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqu # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovdqu # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movhlps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovhlps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movhpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovhpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movhpd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovhpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movhps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovhps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movhps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovhps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movlhps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovlhps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movlpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovlpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movlpd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 3 # ./generate_mov_entries.py zen3
- name: vmovlpd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movlps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovlps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movlps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 3 # ./generate_mov_entries.py zen3
- name: vmovlps # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movmskpd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovmskpd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovmskpd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movmskps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovmskps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovmskps # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movntdq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntdq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntdq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movntdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovntdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovntdqa # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movnti # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movntpd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntpd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntpd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movntps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovntps # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movntq # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [] # ./generate_mov_entries.py zen3
throughput: 0.0 # ./generate_mov_entries.py zen3
uops: 0 # ./generate_mov_entries.py zen3
- name: movq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovsd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movshdup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movshdup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovshdup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovshdup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovshdup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovshdup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsldup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsldup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsldup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsldup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsldup # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovsldup # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movss # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movss # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovss # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovss # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovss # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovss # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movsx # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsx # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsxd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [] # ./generate_mov_entries.py zen3
throughput: 0.0 # ./generate_mov_entries.py zen3
uops: 0 # ./generate_mov_entries.py zen3
- name: movsxd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsb # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsl # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsl # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movsq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movupd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movupd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movupd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovupd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovupd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovupd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovupd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovupd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovupd # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movups # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movups # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movups # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovups # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovups # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovups # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vmovups # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovups # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vmovups # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 0 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['4']], [1, ['13']]] # ./generate_mov_entries.py zen3
throughput: 1.0 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movzx # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzx # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzb # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzl # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzl # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '6789']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: movzq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmova # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmova # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovae # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovae # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovb # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovbe # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovbe # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovc # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovc # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmove # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmove # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovg # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovg # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovge # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovge # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovl # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovl # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovle # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovle # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovna # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovna # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnae # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnae # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnb # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnbe # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnbe # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnc # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnc # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovne # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovne # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovng # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovng # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnge # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnge # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnl # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnl # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovno # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovno # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnp # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnp # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovns # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovns # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnz # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovnz # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovo # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovo # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovp # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovp # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovpe # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovpe # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovpo # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovpo # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovs # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovs # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovz # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '69']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: cmovz # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 4 # ./generate_mov_entries.py zen3
port_pressure: [[1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.3333333333333333 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovmskb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovmskb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vpmovmskb # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovsxbw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovsxbw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: pmovsxbd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovsxbd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: pmovsxbq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovsxbq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: [vpmovsxbw, vpmovsxbd, vpmovsxbq, vpmovsxwd, vpmovsxwq, vpmovsxdq]
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 1
port_pressure: [[1, '12']]
throughput: 0.5
uops: 1
- name: [vpmovsxbw, vpmovsxbd, vpmovsxbq, vpmovsxwd, vpmovsxwq, vpmovsxdq] # with load
operands:
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
- class: register
name: xmm
latency: 5
port_pressure: [[1, '12'], [1, ['11', '12']]]
throughput: 0.5
uops: 2
- name: [vpmovsxbw, vpmovsxbd, vpmovsxbq, vpmovsxwd, vpmovsxwq, vpmovsxdq]
operands:
- class: register
name: xmm
- class: register
name: ymm
latency: 4
port_pressure: [[1, '0123'], [1, '1']]
throughput: 1.25
uops: 1
- name: [vpmovsxbw, vpmovsxbd, vpmovsxbq, vpmovsxwd, vpmovsxwq, vpmovsxdq] # with load
operands:
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
- class: register
name: ymm
latency: 8
port_pressure: [[1, '0123'], [1, '1'], [1, ['11', '12']]]
throughput: 0.5
uops: 2
- name: vpmovsxbd # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vpmovsxbd # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vpmovsxbq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vpmovsxbq # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: pmovzxbw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: pmovzxbw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vpmovzxbw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vpmovzxbw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: vpmovzxbw # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[1, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.25 # ./generate_mov_entries.py zen3
uops: 1 # ./generate_mov_entries.py zen3
- name: vpmovzxbw # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: ymm # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '12'], [1, ['11', '12']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movbe # with store # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
latency: 5 # ./generate_mov_entries.py zen3
port_pressure: [[1, '67'], [1, ['12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movbe # with load # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: memory # ./generate_mov_entries.py zen3
base: "*" # ./generate_mov_entries.py zen3
offset: "*" # ./generate_mov_entries.py zen3
index: "*" # ./generate_mov_entries.py zen3
scale: "*" # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: gpr # ./generate_mov_entries.py zen3
latency: 9 # ./generate_mov_entries.py zen3
port_pressure: [[1, '67'], [1, ['11', '12', '13']]] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
- name: movq2dq # ./generate_mov_entries.py zen3
operands: # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: mm # ./generate_mov_entries.py zen3
- class: register # ./generate_mov_entries.py zen3
name: xmm # ./generate_mov_entries.py zen3
latency: 1 # ./generate_mov_entries.py zen3
port_pressure: [[2, '0123']] # ./generate_mov_entries.py zen3
throughput: 0.5 # ./generate_mov_entries.py zen3
uops: 2 # ./generate_mov_entries.py zen3
##########################################
- name: push
operands:
- class: immediate
imd: int
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
- name: push
operands:
- class: register
name: gpr
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
- name: push
operands:
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
- name: pop
operands:
- class: immediate
imd: int
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
- name: pop
operands:
- class: register
name: gpr
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
- name: pop
operands:
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
latency: 10
port_pressure: [[1, ['12', '13']]]
throughput: 0.5
uops: 2
##########################################
- name: adc
operands:
- class: register
name: gpr
- class: register
name: gpr
latency: 1
port_pressure: [[1, '69']]
throughput: 0.5
uops: 1
- name: adc
operands:
- class: immediate
imd: int
- class: register
name: gpr
latency: 1
port_pressure: [[1, '69']]
throughput: 0.5
uops: 1
- name: add
operands:
- class: register
name: gpr
- class: register
name: gpr
latency: 1
port_pressure: [[1, '6789']]
throughput: 0.25
uops: 1
- name: add
operands:
- class: immediate
imd: int
- class: register
name: gpr
latency: 1
port_pressure: [[1, '6789']]
throughput: 0.25
uops: 1
- name: addpd
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: addps
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: vaddpd
operands:
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: vaddpd
operands:
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: addsd
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: addss
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '23']]
throughput: 0.5
uops: 1
- name: mulsd
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: mulss
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: rcpss
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: rcpps
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: vrcpss
operands:
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: vrcpps
operands:
- class: register
name: ymm
- class: register
name: ymm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: vrcpps
operands:
- class: register
name: xmm
- class: register
name: xmm
latency: 3
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: [shl, shr]
operands:
- class: immediate
imd: int
- class: register
name: gpr
latency: 1
port_pressure: [[1, '78']]
throughput: 0.5
uops: 1
- name: [shl, shr, sal, sar]
operands:
- class: register
name: gpr
latency: 1
port_pressure: [[1, '78']]
throughput: 0.5
uops: 1
- name: lea # with load # uops.info
operands: # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: gpr # uops.info
latency: 5 # uops.info
port_pressure: [[1, '6789'], [1, ['11', '12', '13']]] # uops.info
throughput: 0.3333333333333333 # uops.info
uops: 2 # uops.info
- name: sub # ibench
operands: # ibench
- class: immediate # ibench
imd: int # ibench
- class: register # ibench
name: gpr # ibench
latency: 1 # ibench
port_pressure: [[1, '6789']] # ibench
throughput: 0.25 # ibench
uops: 1 # ibench
- name: sub # ibench
operands: # ibench
- class: register # ibench
name: gpr # ibench
- class: register # ibench
name: gpr # ibench
latency: 1 # ibench
port_pressure: [[1, '6789']] # ibench
throughput: 0.25 # ibench
uops: 1 # ibench
- name: vaddps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '23']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vaddps # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 3 # ibench
port_pressure: [[1, '23']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vaddsd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '23']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vaddss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '23']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vdivpd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 13 # ibench
port_pressure: [[9, ['DV0', 'DV1']]] # ibench
throughput: 4.5 # ibench
uops: 9 # ibench
- name: vdivpd # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 13 # ibench
port_pressure: [[9, ['DV0', 'DV1']]] # ibench
throughput: 4.5 # ibench
uops: 9 # ibench
- name: vdivsd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 13 # ibench
port_pressure: [[9, ['DV0', 'DV1']]] # ibench
throughput: 4.5 # ibench
uops: 9 # ibench
- name: vdivss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 10 # ibench
port_pressure: [[7, ['DV0', 'DV1']]] # ibench
throughput: 3.5 # ibench
uops: 7 # ibench
- name: vdivps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 10 # ibench
port_pressure: [[7, ['DV0', 'DV1']]] # ibench
throughput: 3.5 # ibench
uops: 7 # ibench
- name: vdivps # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 10 # ibench
port_pressure: [[7, ['DV0', 'DV1']]] # ibench
throughput: 3.5 # ibench
uops: 7 # ibench
- name: [vfmadd213pd, vfmadd132pd, vfmadd231pd, vfnmadd213pd, vfnmadd132pd, vfnmadd231pd, vfmadd213ps, vfmadd132ps, vfmadd231ps, vfnmadd213ps, vfnmadd132ps, vfnmadd231ps] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmadd213pd, vfmadd132pd, vfmadd231pd, vfnmadd213pd, vfnmadd132pd, vfnmadd231pd, vfmadd213ps, vfmadd132ps, vfmadd231ps, vfnmadd213ps, vfnmadd132ps, vfnmadd231ps] # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmadd213sd, vfmadd132sd, vfmadd231sd, vfnmadd213sd, vfnmadd132sd, vfnmadd231sd, vfmadd213ss, vfmadd132ss, vfmadd231ss, vfnmadd213ss, vfnmadd132ss, vfnmadd231ss] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsub213pd, vfmsub132pd, vfmsub231pd, vfnmsub213pd, vfnmsub132pd, vfnmsub231pd, vfmsub213ps, vfmsub132ps, vfmsub231ps, vfnmsub213ps, vfnmsub132ps, vfnmsub231ps] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsub213pd, vfmsub132pd, vfmsub231pd, vfnmsub213pd, vfnmsub132pd, vfnmsub231pd, vfmsub213ps, vfmsub132ps, vfmsub231ps, vfnmsub213ps, vfnmsub132ps, vfnmsub231ps] # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsub213sd, vfmsub132sd, vfmsub231sd, vfnmsub213sd, vfnmsub132sd, vfnmsub231sd, vfmsub213ss, vfmsub132ss, vfmsub231ss, vfnmsub213ss, vfnmsub132ss, vfnmsub231ss] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsubadd213pd, vfmsubadd132pd, vfmsubadd231pd, vfnmsubadd213pd, vfnmsubadd132pd, vfnmsubadd231pd, vfmsubadd213ps, vfmsubadd132ps, vfmsubadd231ps, vfnmsubadd213ps, vfnmsubadd132ps, vfnmsubadd231ps] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsubadd213pd, vfmsubadd132pd, vfmsubadd231pd, vfnmsubadd213pd, vfnmsubadd132pd, vfnmsubadd231pd, vfmsubadd213ps, vfmsubadd132ps, vfmsubadd231ps, vfnmsubadd213ps, vfnmsubadd132ps, vfnmsubadd231ps] # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vfmsubadd213sd, vfmsubadd132sd, vfmsubadd231sd, vfnmsubadd213sd, vfnmsubadd132sd, vfnmsubadd231sd, vfmsubadd213ss, vfmsubadd132ss, vfmsubadd231ss, vfnmsubadd213ss, vfnmsubadd132ss, vfnmsubadd231ss] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 4 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vgatherdpd, vgatherqpd] # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 14 # uops.info
port_pressure: [[1, '01'], [1, '0123'], [1, '1'], [3, ['11']], [3, ['12']]] # uops.info
throughput: 3.0 # uops.info
uops: 9 # uops.info
- name: vgatherdpd # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 16 # uops.info
port_pressure: [[1, '01'], [3, '0123'], [3, '1'], [4, ['11']], [4, ['12']]] # uops.info
throughput: 4.0 # uops.info
uops: 14 # uops.info
- name: vgatherqpd # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 18 # uops.info
port_pressure: [[2, '01'], [2, '0123'], [2, '1'], [4, ['11']], [4, ['12']]] # uops.info
throughput: 4.0 # uops.info
uops: 14 # uops.info
- name: vgatherdps # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 16 # uops.info
port_pressure: [[1, '01'], [3, '0123'], [3, '1'], [4, ['11']], [4, ['12']]] # uops.info
throughput: 4.0 # uops.info
uops: 15 # uops.info
- name: vgatherqps # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 20 # uops.info
port_pressure: [[2, '0123'], [2, '1'], [3, ['11']], [3, ['12']]] # uops.info
throughput: 3.0 # uops.info
uops: 15 # uops.info
- name: vgatherdps # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 28 # uops.info
port_pressure: [[1, '01'], [7, '0123'], [7, '1'], [8, ['11']], [8, ['12']]] # uops.info
throughput: 8.0 # uops.info
uops: 31 # uops.info
- name: vgatherqps # with load # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: memory # uops.info
base: "*" # uops.info
offset: "*" # uops.info
index: "*" # uops.info
scale: "*" # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 18 # uops.info
port_pressure: [[2, '01'], [2, '0123'], [2, '1'], [4, ['11']], [4, ['12']]] # uops.info
throughput: 4.0 # uops.info
uops: 14 # uops.info
- name: mulpd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulpd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulpd # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vpmulld, vpmullw, vpmuldq, vpmulhw, vpmulhuw, vpmulhrsw] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '03']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: [vpmulld, vpmullw, vpmuldq, vpmulhw, vpmulhuw, vpmulhrsw] # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 3 # ibench
port_pressure: [[1, '03']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: mulps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulps # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulsd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulsd # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vmulss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: sqrtsd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 20 # ibench
port_pressure: [[18, ['DV0', 'DV1']]] # ibench
throughput: 9.0 # ibench
uops: 18 # ibench
- name: sqrtpd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 20 # ibench
port_pressure: [[17, ['DV0', 'DV1']]] # ibench
throughput: 8.5 # ibench
uops: 17 # ibench
- name: sqrtss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 14 # ibench
port_pressure: [[10, ['DV0', 'DV1']]] # ibench
throughput: 5.0 # ibench
uops: 10 # ibench
- name: sqrtps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 14 # ibench
port_pressure: [[10, ['DV0', 'DV1']]] # ibench
throughput: 5.0 # ibench
uops: 10 # ibench
- name: rsqrtps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: rsqrtss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 3 # ibench
port_pressure: [[1, '01']] # ibench
throughput: 0.5 # ibench
uops: 1 # ibench
- name: vsqrtpd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 20 # ibench
port_pressure: [[17, ['DV0', 'DV1']]] # ibench
throughput: 8.5 # ibench
uops: 17 # ibench
- name: vsqrtpd # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 20 # ibench
port_pressure: [[17, ['DV0', 'DV1']]] # ibench
throughput: 8.5 # ibench
uops: 17 # ibench
- name: vsqrtps # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 14 # ibench
port_pressure: [[10, ['DV0', 'DV1']]] # ibench
throughput: 5.0 # ibench
uops: 10 # ibench
- name: vsqrtps # ibench
operands: # ibench
- class: register # ibench
name: ymm # ibench
- class: register # ibench
name: ymm # ibench
latency: 14 # ibench
port_pressure: [[10, ['DV0', 'DV1']]] # ibench
throughput: 5.0 # ibench
uops: 10 # ibench
- name: vsqrtsd # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 20 # ibench
port_pressure: [[17, ['DV0', 'DV1']]] # ibench
throughput: 8.5 # ibench
uops: 17 # ibench
- name: vsqrtss # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 14 # ibench
port_pressure: [[10, ['DV0', 'DV1']]] # ibench
throughput: 5.0 # ibench
uops: 10 # ibench
##########################################
- name: [inc, dec] # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: vinsertf128 # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '1']] # asmbench
throughput: 1.0 # asmbench
uops: 1 # asmbench
- name: vinsertps # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: vinserti128 # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '1']] # asmbench
throughput: 1.0 # asmbench
uops: 1 # asmbench
- name: [vsubpd, vsubps] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vsubpd, vsubps] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vsubsd, vsubss] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [subsd, subss] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [subpd, subps] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vextractf128, vextracti128] # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vextractps # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: gpr # uops.info
latency: 6 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vpalignr # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '12']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vpalignr # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '12']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vperm2f128, vperm2i128] # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '1']] # asmbench
throughput: 1.0 # asmbench
uops: 1 # asmbench
- name: vpermd # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vpermq # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vpermps # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 8 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vpermpd # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: [vpermilps, vpermilpd] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpermilps, vpermilpd] # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vpermilps, vpermilpd] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpermilps, vpermilpd] # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [unpckhpd, unpckhps, unpcklpd, unpcklps] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vunpckhpd, vunpckhps, vunpcklpd, vunpcklps] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vunpckhpd, vunpckhps, vunpcklpd, vunpcklps] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '12']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vpcmpgtb, vpcmpgtw, vpcmpgtd, vpcmpgtq] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [vpcmpgtb, vpcmpgtw, vpcmpgtd, vpcmpgtq] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [vpcmpeqb, vpcmpeqw, vpcmpeqd] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: vpcmpeqq # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '01']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [vpcmpeqb, vpcmpeqw, vpcmpeqd] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: vpcmpeqq # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '01']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: [and, andn] # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [and, andn] # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [andnpd, andnps, andpd, andps] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [vpand, vpandn, vandps, vandpd, vandnps, vandnpd] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [vpand, vpandn, vandps, vandpd, vandnps, vandnpd] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: ret # docs
operands: [] # docs
latency: 1 # docs
port_pressure: [[1, ['6', '10']]] # docs
throughput: 0.5 # docs
uops: 1 # docs
- name: call # docs
operands: # docs
- class: identifier # docs
latency: 1 # docs
port_pressure: [[1, ['6', '10']], [1, '13']] # docs
throughput: 0.5 # docs
uops: 2 # docs
- name: test # uops.info
operands: # uops.info
- class: register # uops.info
name: gpr # uops.info
- class: register # uops.info
name: gpr # uops.info
latency: 1 # uops.info
port_pressure: [[1, '6789']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: test # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: gpr # uops.info
latency: 1 # uops.info
port_pressure: [[1, '6789']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: vptest # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vptest # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: [vtestpd, vtestps] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: [vtestpd, vtestps] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: [vxorps, vxorpd] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [vxorps, vxorpd] # asmbench
operands: # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
- class: register # asmbench
name: ymm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: vbroadcastsd # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vbroadcastss # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vbroadcastss # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '12']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpbroadcastb, vpbroadcastd, vpbroadcastq, vpbroadcastw] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '12']] # uops.info
throughput: 0.5 # uops.info
- name: [vpbroadcastb, vpbroadcastd, vpbroadcastq, vpbroadcastw] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0']] # uops.info
throughput: 1.0 # uops.info
uops: 1 # uops.info
- name: vpxor # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: vpxor # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: xor # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: xor # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: [xorps, xorpd] # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: pxor # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 1 # asmbench
port_pressure: [[1, '0123']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: vzeroupper # uops.info
operands: [] # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: vzeroall # uops.info
operands: [] # uops.info
latency: 1 # uops.info
port_pressure: [[24, '0123']] # uops.info
throughput: 6.00 # uops.info
uops: 1 # uops.info
- name: [cdq, cdqe, cltq] # docs
operands: [] # docs
latency: 1 # docs
port_pressure: [[1, '6789']] # docs
throughput: 0.25 # docs
uops: 1 # docs
- name: [vucomiss, vucomisd] # ibench
operands: # ibench
- class: register # ibench
name: xmm # ibench
- class: register # ibench
name: xmm # ibench
latency: 1 # ibench
port_pressure: [[1, '23'], [1, ['12', '13']]] # ibench
throughput: 0.5 # ibench
uops: 2 # ibench
- name: mul # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '7']] # asmbench
throughput: 1.0 # asmbench
uops: 1 # asmbench
- name: neg # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: not # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: or # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: or # asmbench
operands: # asmbench
- class: register # asmbench
name: gpr # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '6789']] # asmbench
throughput: 0.25 # asmbench
uops: 1 # asmbench
- name: rcl # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '78']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: rcr # asmbench
operands: # asmbench
- class: immediate # asmbench
imd: int # asmbench
- class: register # asmbench
name: gpr # asmbench
latency: 1 # asmbench
port_pressure: [[1, '78']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: rol # uopsinfo
operands: # uopsinfo
- class: immediate # uopsinfo
imd: int # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: ror # uopsinfo
operands: # uopsinfo
- class: immediate # uopsinfo
imd: int # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: ror # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: rol # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: [sar, sbb] # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: [sar, sbb] # uopsinfo
operands: # uopsinfo
- class: immediate # uopsinfo
imd: int # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: [shr, shl] # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
- class: register # uopsinfo
name: gpr # uopsinfo
latency: 1 # uopsinfo
port_pressure: [[1, '78']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: stc # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: # uopsinfo
latency: ~ # uopsinfo
port_pressure: [[1, '6789']] # uopsinfo
throughput: 0.25 # uopsinfo
uops: 1 # uopsinfo
- name: vcvtdq2pd # uopsinfo
operands: # uopsinfo
- class: register # uopsinfo
name: xmm # uopsinfo
- class: register # uopsinfo
name: xmm # uopsinfo
latency: 3 # uopsinfo
port_pressure: [[1, '23']] # uopsinfo
throughput: 0.5 # uopsinfo
uops: 1 # uopsinfo
- name: vcvtdq2pd # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 4 # uops.info
port_pressure: [[1, '1'], [1, '23']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtdq2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtdq2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtpd2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtpd2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtpd2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtpd2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtps2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtps2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtps2pd # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtps2pd # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 4 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtsd2si # docs
operands: # docs
- class: register # docs
name: xmm # docs
- class: register # docs
name: gpr # docs
latency: 9 # docs
port_pressure: [[1, '23'], [1, '4']] # docs
throughput: 1.0 # docs
uops: 2 # docs
- name: vcvtsd2ss # asmbench
operands: # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
- class: register # asmbench
name: xmm # asmbench
latency: 3 # asmbench
port_pressure: [[1, '23']] # asmbench
throughput: 0.5 # asmbench
uops: 1 # asmbench
- name: vcvtsi2sd # uops.info
operands: # uops.info
- class: register # uops.info
name: gpr # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 9 # uops.info
port_pressure: [[1, '3'], [1, '6789']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtsi2ss # uops.info
operands: # uops.info
- class: register # uops.info
name: gpr # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 9 # uops.info
port_pressure: [[1, '3'], [1, '6789']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvttpd2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvttpd2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvttps2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvttps2dq # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvttsd2si # docs
operands: # docs
- class: register # docs
name: xmm # docs
- class: register # docs
name: gpr # docs
latency: 9 # docs
port_pressure: [[1, '23'], [1, '4']] # docs
throughput: 1.0 # docs
uops: 2 # docs
- name: vcvttss2si # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: gpr # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23'], [1, '4']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtph2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtph2ps # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 4 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: vcvtps2ph # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 3 # uops.info
port_pressure: [[1, '23']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: vcvtps2ph # uops.info
operands: # uops.info
- class: immediate # uops.info
imd: int # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 6 # uops.info
port_pressure: [[1, '23'], [1, '1']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: [vcomiss, vcomisd] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 2 # uops.info
port_pressure: [[1, '23'], [1, '4']] # uops.info
throughput: 1.0 # uops.info
uops: 2 # uops.info
- name: [vpaddb, vpaddw, vpaddd, vpaddq] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpaddsb, vpaddsw, vpaddusb, vpaddusw] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpaddb, vpaddw, vpaddd, vpaddq] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpaddsb, vpaddsw, vpaddusb, vpaddusw] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpsubb, vpsubw, vpsubd, vpsubq] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpsubsb, vpsubsw, vpsubusb, vpsubusw] # uops.info
operands: # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpsubb, vpsubw, vpsubd, vpsubq] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpsubsb, vpsubsw, vpsubusb, vpsubusw] # uops.info
operands: # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpaddb, vpaddw, vpaddd, vpaddq] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpaddsb, vpaddsw, vpaddusb, vpaddusw] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpaddb, vpaddw, vpaddd, vpaddq] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpaddsb, vpaddsw, vpaddusb, vpaddusw] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpsubb, vpsubw, vpsubd, vpsubq] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpsubsb, vpsubsw, vpsubusb, vpsubusw] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: xmm # uops.info
- class: register # uops.info
name: xmm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpsubb, vpsubw, vpsubd, vpsubq] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '0123']] # uops.info
throughput: 0.25 # uops.info
uops: 1 # uops.info
- name: [vpsubsb, vpsubsw, vpsubusb, vpsubusw] # uops.info
operands: # uops.info
- class: identifier
- class: register # uops.info
name: ymm # uops.info
- class: register # uops.info
name: ymm # uops.info
latency: 1 # uops.info
port_pressure: [[1, '01']] # uops.info
throughput: 0.5 # uops.info
uops: 1 # uops.info
- name: [vpsllw, vpslld, vpsllq]
operands:
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 1
port_pressure: [[1, '12']]
throughput: 0.5
uops: 1
- name: [vpsllw, vpslld, vpsllq]
operands:
- class: immediate
imd: int
- class: register
name: xmm
- class: register
name: xmm
latency: 1
port_pressure: [[1, '12']]
throughput: 0.5
uops: 1
- name: [vpsllw, vpslld, vpsllq]
operands:
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 1
port_pressure: [[1, '12']]
throughput: 0.5
uops: 1
- name: [vpsllw, vpslld, vpsllq]
operands:
- class: immediate
imd: int
- class: register
name: ymm
- class: register
name: ymm
latency: 1
port_pressure: [[1, '12']]
throughput: 0.5
uops: 1
- name: [vpextrb, vpextrw, vpextrd, vpextrq]
operands:
- class: immediate
imd: int
- class: register
name: xmm
- class: register
name: gpr
latency: 6
port_pressure: [[1, '01'], [1, '1']]
throughput: 1.0
uops: 1
- name: [vblendvpd, vblendvps, vpblendvb] #asmbench
operands:
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 1
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: [vblendpd, vblendps, vpblendd, vpblendw] # asmbench
operands:
- class: immediate
imd: int
- class: register
name: xmm
- class: register
name: xmm
- class: register
name: xmm
latency: 1
port_pressure: [[1, '0123']]
throughput: 0.25
uops: 1
- name: [vblendpd, vblendps, vpblendd, vpblendw] # asmbench
operands:
- class: immediate
imd: int
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 1
port_pressure: [[1, '0123']]
throughput: 0.25
uops: 1
- name: [vblendvpd, vblendvps, vpblendvb] #asmbench
operands:
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
- class: register
name: ymm
latency: 1
port_pressure: [[1, '01']]
throughput: 0.5
uops: 1
- name: pdep
operands:
- class: register
name: gpr
- class: register
name: gpr
- class: register
name: gpr
latency: 3
port_pressure: [[1, '7']]
throughput: 1.0
- name: imul # uops.info
operands:
- class: register
name: gpr
- class: register
name: gpr
latency: 3
port_pressure: [[1, '7']]
throughput: 1.0
uops: 1