Hi:
Is there any plan for the implementation of AArch64 8.2A new instruction?

BR
Owen



发件人: Wuweijia
发送时间: 2019年2月14日 11:50
收件人: 'valgrind-users@lists.sourceforge.net' 
<valgrind-users@lists.sourceforge.net>
抄送: Fanbohao <fanbo...@huawei.com>
主题: [HELP] there is some unknown aarch64 fp16 instruction for valgrind 3.13 3.14

The source as below:

#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <arm_neon.h>


int process(){
    __fp16* zcb_hal16 = (__fp16*)malloc(100);
    zcb_hal16[0] = 0;

    float16x8_t vblkA0, vblkB0, vblkC0;
    vblkC0 = vfmaq_n_f16(vblkC0, vblkB0, vblkA0[0]);
    __asm __volatile("fmla     %[c0].8h, %[b0].8h, %[a0].h[0]" : [c0] 
"+w"(vblkC0) : [b0] "w"(vblkB0), [a0] "w"(vblkA0));
    return 0;
}

int main()
{
    printf("start...\n");
    process();
    printf("ok...\n");
    return 0;
}

The compile tool: clang 6
The compile args: clang ./test.cpp

The output as below:
localhost:~/workspace/neonfp16_test/jni # valgrind ./a.out
==9762== Memcheck, a memory error detector
==9762== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==9762== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==9762== Command: ./a.out
==9762==
start...
disInstr(arm64): unhandled instruction 0x1EE703E0
disInstr(arm64): 0001'1110 1110'0111 0000'0011 1110'0000
==9762== valgrind: Unrecognised instruction at address 0x4005f8.
==9762==    at 0x4005F8: process() (in /root/workspace/neonfp16_test/jni/a.out)
==9762==    by 0x4006C7: main (in /root/workspace/neonfp16_test/jni/a.out)

_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to