Bug 413634

Summary: ARMv8.1 arithmetic instructions are not supported
Product: [Developer tools] valgrind Reporter: ahashmi <assad.hashmi>
Component: vexAssignee: Julian Seward <jseward>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 3.14.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Bug Depends on:    
Bug Blocks: 414270    
Attachments: Patch implements and tests ARM v8.1 SIMD instructions

Description ahashmi 2019-10-30 14:44:09 UTC
SUMMARY
Scalar and vector forms of SQRDMLAH and SQRDMLSH are not supported.

STEPS TO REPRODUCE
Compile with -march=armv8.1-a and if the compiler generates SQRDMLAH and/or SQRDMLSH, valgrind will exit with unknown instruction error.
Comment 1 ahashmi 2019-12-12 19:33:17 UTC
Created attachment 124454 [details]
Patch implements and tests ARM v8.1 SIMD instructions

This patch adds support for AArch64 ARMv8.1 SIMD instructions:
SQRDMLAH <V><d>, <V><n>, <V><m>
SQRDMLAH <Vd>.<T>, <Vn>.<T>, <Vm>.<T>
SQRDMLAH <V><d>, <V><n>, <Vm>.<Ts>[<index>]
SQRDMLAH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>]
SQRDMLSH <V><d>, <V><n>, <V><m>
SQRDMLSH <Vd>.<T>, <Vn>.<T>, <Vm>.<T>
SQRDMLSH <V><d>, <V><n>, <Vm>.<Ts>[<index>]
SQRDMLSH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>]
Comment 2 Julian Seward 2019-12-27 14:36:32 UTC
Committed as a8c274d0682b7265af7a5a9c71251d48169c9dc9.
Thanks for the patch!