gpt4 book ai didi

c++ - MSVC 无法在 x86 上发送 16 字节对齐的函数参数

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:36:09 25 4
gpt4 key购买 nike

我正在使用 MSVC 来使用一些 SSE 内在函数。为了支持这一点,我将一些数据对齐到 16 字节边界。但是,既然我为 x86 而不是 x64 编译,MSVC 坚持认为我将函数参数对齐到 16 字节是非法的。但如果这是真的,那么怎么会有人将 SSE 数据类型作为函数参数发送呢?

那么如何在函数中发送 16 字节对齐的参数?

最佳答案

if that's true then how can anyone ever send SSE data types as function parameters?

你不能。 :)在 Microsoft 的 ABI 下,您必须通过引用或指针传递它。

一种解决方法可能是使用 fastcall显然,调用约定传递了 XMM 寄存器中的前几个 SSE 参数。

关于c++ - MSVC 无法在 x86 上发送 16 字节对齐的函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10484422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com