On 2025-08-14 09:36, Jan Beulich wrote:
On 08.08.2025 23:40, Nicola Vetrini wrote:
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -437,6 +437,10 @@ write or not"
 # Series 13
 #

+-doc_begin="Consider the asm instruction to read an Arm system register to have no side effects." +-asm_properties+={"asm(any())&&child(text, ast_field(value,^mrs\\s+%0.*$))", {no_side_effect}}
+-doc_end

Is this actually strict enough to not allow multiple instructions in the asm(), where some of the others would yield side effects we actually need to respect?

Jan

Good point, I didn't think of that. As it is, there is only one MRS asm, so no worries here, but in general the remark is valid. The regex could be a bit stricter, though the real solution here would be to match the context in which this asm is present to limit the scope of the deviation. This does not make much sense for an asm property because the properties of an asm statement (at the level of granularity targeted by ECLAIR) can be derived mostly in isolation from the surrounding code.

Another improvement we are pursuing is allowing single effects in init-list-exprs, but it will take a bit of time to surface (i.e., next major release probably).

--
Nicola Vetrini, B.Sc.
Software Engineer
BUGSENG (https://bugseng.com)
LinkedIn: https://www.linkedin.com/in/nicola-vetrini-a42471253

Reply via email to