https://bugs.kde.org/show_bug.cgi?id=385411

--- Comment #12 from Julian Seward <jsew...@acm.org> ---
(In reply to Andreas Arnez from comment #10)
> Created attachment 116468 [details]
> Vector floating point support (v2)
> 
> Revised version of vector FP support.  This should address all the feedback
> from comment #7 and comment #9.  The fused vector multiply-add/sub is now
> implemented with two scalar multiply-add/sub operations.

Nicely done; looks pretty clean.  OK to land providing you fix the (very minor)
things below.


diff --git a/VEX/priv/guest_s390_defs.h b/VEX/priv/guest_s390_defs.h
index 3bfecbe31..d72cc9f6d 100644
--- a/VEX/priv/guest_s390_defs.h
+++ b/VEX/priv/guest_s390_defs.h
+      struct {
+         unsigned int op1 : 8;
+         unsigned int v1  : 4;
+         unsigned int v2  : 4;
etc

For new structs like this, I'd prefer you use the house type "UInt" rather
than "unsigned int".


+/* Check if "Single-Element-Control" bit is set.
s/if/if the


+static const HChar *
+s390_irgen_VCDG(UChar v1, UChar v2, UChar m3, UChar m4, UChar m5)
+{
+   vassert(m3 == 3);
(and the same assertion in various functions below).  The assertion
really checks that there is some logic error in the s390 front end,
right?  In particular you're sure that it won't fail even in the
case of unknown/undecodable instructions?


@@ -19357,6 +20039,18 @@ s390_decode_6byte_and_irgen(const UChar *bytes)
         unsigned int rxb : 4;
         unsigned int op2 : 8;
       } VRR;
+      struct {
+         unsigned int op1 : 8;

Same comment as above re UInt.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to