Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

编译aarch64版本的IM_Conv_SIMD出现以下报错,请问有解决方法吗? #58

Open
Jony-2018 opened this issue Jun 19, 2024 · 4 comments

Comments

@Jony-2018
Copy link

报错

@DennisLiu1993
Copy link
Owner

DennisLiu1993 commented Jun 20, 2024 via email

@Jony-2018
Copy link
Author

感谢大佬抽空回复,我昨天找了GPT,他让我
将代码块修改成:

		int16x8_t SrcK_L = (int16x8_t)vmovl_u8(vget_low_u8(SrcK));
		int16x8_t SrcK_H = (int16x8_t)vmovl_u8(vget_high_u8(SrcK));
		int16x8_t SrcC_L = (int16x8_t)vmovl_u8(vget_low_u8(SrcC));
		int16x8_t SrcC_H = (int16x8_t)vmovl_u8(vget_high_u8(SrcC));

就能正常编译了,但是运行结果有问题,暂时不知道哪里的值需要更改
运行后粗匹配的iMatchSize和在Windows上的数量是一样的,但是最后输出的结果是空,而在Windows上输出的结果是匹配到3个目标
请问您有思路吗?

@DennisLiu1993
Copy link
Owner

DennisLiu1993 commented Jun 20, 2024 via email

@Jony-2018
Copy link
Author

在您的基础上修改

		int16x8_t SrcK_L = (int16x8_t)vmovl_u8(vget_low_u8(SrcK));
		int16x8_t SrcK_H = (int16x8_t)vmovl_u8(vget_high_u8(SrcK));
		int16x8_t SrcC_L = (int16x8_t)vmovl_u8(vget_low_u8(SrcC));
		int16x8_t SrcC_H = (int16x8_t)vmovl_u8(vget_high_u8(SrcC));

成功编译并结果正常,感谢大佬回复和帮助!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants