summary refs log tree commit diff stats
path: root/target/hexagon/hex_common.py
diff options
context:
space:
mode:
authorTaylor Simpson <tsimpson@quicinc.com>2022-09-20 01:07:46 -0700
committerTaylor Simpson <tsimpson@quicinc.com>2022-09-30 11:25:37 -0700
commite2be9a5c5f65a2cbde4915e29a112439177656d7 (patch)
tree6ee0c3f8eb2770fa923f7fc80afaf8d979bd8373 /target/hexagon/hex_common.py
parentb772528acbd4669a56c8bbc16d78f8f4335c1aa3 (diff)
downloadfocaccia-qemu-e2be9a5c5f65a2cbde4915e29a112439177656d7.tar.gz
focaccia-qemu-e2be9a5c5f65a2cbde4915e29a112439177656d7.zip
Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01]
We have found cases where pkt_has_store_s[01] is set incorrectly.
This leads to generating an unnecessary store that is left over
from a previous packet.

Add an attribute to determine if an instruction is a scalar store
The attribute is attached to the fSTORE macro (hex_common.py)
Update the logic in decode.c that sets pkt_has_store_s[01]

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220920080746.26791-4-tsimpson@quicinc.com>
Diffstat (limited to 'target/hexagon/hex_common.py')
-rwxr-xr-xtarget/hexagon/hex_common.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/target/hexagon/hex_common.py b/target/hexagon/hex_common.py
index c81aca8d2a..d9ba7df786 100755
--- a/target/hexagon/hex_common.py
+++ b/target/hexagon/hex_common.py
@@ -1,7 +1,7 @@
 #!/usr/bin/env python3
 
 ##
-##  Copyright(c) 2019-2021 Qualcomm Innovation Center, Inc. All Rights Reserved.
+##  Copyright(c) 2019-2022 Qualcomm Innovation Center, Inc. All Rights Reserved.
 ##
 ##  This program is free software; you can redistribute it and/or modify
 ##  it under the terms of the GNU General Public License as published by
@@ -75,6 +75,7 @@ def calculate_attribs():
     add_qemu_macro_attrib('fWRITE_P3', 'A_WRITES_PRED_REG')
     add_qemu_macro_attrib('fSET_OVERFLOW', 'A_IMPLICIT_WRITES_USR')
     add_qemu_macro_attrib('fSET_LPCFG', 'A_IMPLICIT_WRITES_USR')
+    add_qemu_macro_attrib('fSTORE', 'A_SCALAR_STORE')
 
     # Recurse down macros, find attributes from sub-macros
     macroValues = list(macros.values())