[vector] RFR: Fix FMA intrinsic
Lupusoru, Razvan A
razvan.a.lupusoru at intel.com
Thu May 17 18:45:14 UTC 2018
The fix for fma looks fine. That said, it seems that you removed all vector opcodes from VectorNode::opcode. This is problematic because none of the other intrinsic implementations that call that method are updated to pass in opc instead of the "vopc".
- Create a second version of VectorNode::make that takes in vopc instead of opc. Update the version that takes in opc to simply call VectorNode::opcode and then your new version of VectorNode::make
- Update all intrinsic implementations to ensure that vopc is passed in to the second variant.
OR
- Update all calls to VectorNode::make to pass in opc instead of sopc/vopc.
I prefer the first variant. Thanks!
--Razvan
-----Original Message-----
From: panama-dev [mailto:panama-dev-bounces at openjdk.java.net] On Behalf Of Vladimir Ivanov
Sent: Thursday, May 17, 2018 1:04 AM
To: panama-dev at openjdk.java.net
Subject: [vector] RFR: Fix FMA intrinsic
http://cr.openjdk.java.net/~vlivanov/panama/vector/fma/webrev.00/
There are 2 bug being fixed:
(1) 3rd argument of a ternary operation is always null in intrinsified version;
(2) VectorNode::make() accepts vector ops, but misses Op_FmaVF/Op_FmaVD in ternary case. Instead of adding them into the list, I propose to always pass scalar ops into the methods and get rid of the special cases for vector ops.
Thanks!
Best regards,
Vladimir Ivanov
More information about the panama-dev
mailing list