标签: itanium

.NET上的x86/x64/ia64内存模型之间的差异

我正在寻找关于x86/x64/ia64上.NET CLR/JIT使用的内存模型之间差异的参考.我知道x86和ia64之间存在一些差异(指令重新排序,指令删除等),但我没有找到x86和x64之间差异的参考.

我有一个应用程序,旨在一些非常紧张的延迟数字,并且目前只能在x86上运行,也许在x64上运行(肯定不在ia64上).几个我想知道我是否可以依赖x86 JIT实现的一些工件并且在x64上仍然相对安全,或者我应该编程为更宽松的ia64 JIT(这将需要更多的字段是volitile并且内存屏障插入几个地方).

提前感谢任何指针.

.net 64-bit x86 itanium memory-model

5
推荐指数
1
解决办法
2672
查看次数

arm内存模型与ia64有何不同?

我必须在工作中处理许多多线程编程.具体来说,我想知道ARM内存模型与IA64的区别.两者都是非常弱的模型,但是我应该知道哪些具体的差异?我熟悉ia64,而不是手臂.

architecture arm itanium

5
推荐指数
1
解决办法
5233
查看次数

IA-64 中的“GP/功能地址对”是什么意思?

安腾 C++ ABI中的“GP/函数地址对”是什么意思?GP代表什么?

itanium abi

5
推荐指数
1
解决办法
644
查看次数

x64兼容C源

我想我知道我需要使用的#ifdefs在msvc和gcc上兼容x86-32和x86-64,见下文.这些平台是否完整?

#if defined(_MSC_VER)
#  if defined(_M_IA64) || defined(_M_X64)
#    define SIZEOF_SIZE_T 8
#    define SIZEOF_VOIDP  8
#  elif defined(_M_IX86)
#    define SIZEOF_SIZE_T 4
#    define SIZEOF_VOIDP  4
#  else
#    error "Unsupported MSVC platform"
#  endif
#elif defined(__GNUG__)
#  if defined(__x86_64__) || defined(__ia64__)
#    define SIZEOF_SIZE_T 8
#    define SIZEOF_VOIDP  8
#  elif defined(__i386__)
#    define SIZEOF_SIZE_T 4
#    define SIZEOF_VOIDP  4
#  else
#    error "Unsupported GCC platform"
#  endif
#endif
Run Code Online (Sandbox Code Playgroud)

从C程序员的角度来看,IA64和x86 64是否相同?

我也希望能够在Mac上编译.我要添加什么?

编辑:我不能使用sizeof(),因为我正在处理使用类似东西的不可触摸的遗留代码#if SIZEOF_VOIDP == …

c 64-bit portability itanium

0
推荐指数
1
解决办法
1769
查看次数

标签 统计

itanium ×4

64-bit ×2

.net ×1

abi ×1

architecture ×1

arm ×1

c ×1

memory-model ×1

portability ×1

x86 ×1