On 9/28/26 13:16, Paolo Bonzini wrote:
On Thu, Sep 24, 2026 at 5:17 PM Richard Henderson
<[email protected]> wrote:

On 9/23/26 10:30, Paolo Bonzini wrote:
+    case X86_EVEX_APX:
+    case X86_EVEX_APX_cmp:
+    case X86_EVEX_APX_pp2:
+    case X86_EVEX_APX_zu:
+        /* Only reached through EVEX map 4.  */
+        assert(!(s->prefix & PREFIX_VEX));
+        if (s->vex_l) {
+            goto illegal;
+        }
+        if ((s->prefix & PREFIX_EVEX) && !validate_evex_apx(s, decode)) {
+            return false;
+        }

They're only reached by map4, so surely

      assert(s->prefix & PREFIX_EVEX);

is more appropriate, and the subsequent test for evex moot.

No, validate_vex() is also invoked for non-VEX/EVEX instructions.

Of course.  But how do you get X86_EVEX_APX* from non EVEX paths?


r~

Reply via email to