ARM64 AESE指示创建一个Sigill
在Raspberry 4上,在编译和执行仅包含此指令的汇编文件时:
aese v0.16b, v1.16b
该程序由于Sigill而崩溃。这里有什么问题?不是所有ARM64处理器都可能支持AES指令集吗?
一些相关信息:
.arch Armv8-A+加密>
在文件开头添加。
$ uname -a
Linux raspberrypi 5.15.32-v8+ #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022 aarch64 GNU/Linux
$ cat /proc/cpuinfo
processor : 0
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 1
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 2
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 3
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
Hardware : BCM2835
Revision : c03115
Serial : 1000000005fa511b
Model : Raspberry Pi 4 Model B Rev 1.5
On a Raspberry 4, when compiling and executing an assembly file containing only this instruction:
aese v0.16b, v1.16b
the program crashes because of a SIGILL. What would be the problem here? Is it possible that not all ARM64 processors support the AES instruction set?
Some relevant informations:
.arch armv8-a+crypto
was added at the beginning of the file.
$ uname -a
Linux raspberrypi 5.15.32-v8+ #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022 aarch64 GNU/Linux
$ cat /proc/cpuinfo
processor : 0
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 1
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 2
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
processor : 3
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3
Hardware : BCM2835
Revision : c03115
Serial : 1000000005fa511b
Model : Raspberry Pi 4 Model B Rev 1.5
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Rasberry Pi 4不会实现加密指令集扩展名,因此任何尝试使用它们的尝试都会导致未定义的指令例外。
是的,绝对有可能,这是一个可选功能。
The Rasberry Pi 4 doesn't implement the crypto instruction set extensions, so any attempt to use them will result in an undefined instruction exception.
Yes definitely possible, it's an optional feature.