![]() |
1
1
如果删除一些操作数,比如只进行256位加法,您会注意到 禁用优化后,GCC希望将一个指针直接指向单独寄存器中的每个内存操作数 ,而不是为它们中的每一个发明相对于同一个基址的寻址模式。所以它的寄存器用完了。(见本章中间部分) Strange 'asm' operand has impossible constraints error 用于演示此功能的编译器输出。)
你可能想要
而且,这不需要“记忆”重击器;你不写任何记忆,你只通过
你也可以让编译器选择
顺便说一句,对于clang(但不是GCC),您根本不需要内联asm:使用
|
![]() |
Darky · 多重定义…c++vsCode[重复] 2 年前 |
![]() |
Ty Q. · 分段故障GLFW3/GLAD 2 年前 |
![]() |
Noè Murr · 如何获得C函数的基本编译二进制代码? 2 年前 |
![]() |
AvirukBasak · gcc中无return语句的尾部递归 2 年前 |
![]() |
hepl · gcc如何决定在创建可执行文件时使用dynamics库? 2 年前 |