mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-28 21:03:54 -06:00
Hexagon HVX (target/hexagon) semantics generator
Add HVX support to the semantics generator Acked-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
This commit is contained in:
parent
e3d143e98e
commit
144da35776
2 changed files with 46 additions and 0 deletions
|
@ -145,6 +145,9 @@ def compute_tag_immediates(tag):
|
|||
## P predicate register
|
||||
## R GPR register
|
||||
## M modifier register
|
||||
## Q HVX predicate vector
|
||||
## V HVX vector register
|
||||
## O HVX new vector register
|
||||
## regid can be one of the following
|
||||
## d, e destination register
|
||||
## dd destination register pair
|
||||
|
@ -180,6 +183,9 @@ def is_readwrite(regid):
|
|||
def is_scalar_reg(regtype):
|
||||
return regtype in "RPC"
|
||||
|
||||
def is_hvx_reg(regtype):
|
||||
return regtype in "VQ"
|
||||
|
||||
def is_old_val(regtype, regid, tag):
|
||||
return regtype+regid+'V' in semdict[tag]
|
||||
|
||||
|
@ -203,6 +209,13 @@ def need_ea(tag):
|
|||
def skip_qemu_helper(tag):
|
||||
return tag in overrides.keys()
|
||||
|
||||
def is_tmp_result(tag):
|
||||
return ('A_CVI_TMP' in attribdict[tag] or
|
||||
'A_CVI_TMP_DST' in attribdict[tag])
|
||||
|
||||
def is_new_result(tag):
|
||||
return ('A_CVI_NEW' in attribdict[tag])
|
||||
|
||||
def imm_name(immlett):
|
||||
return "%siV" % immlett
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue