问题标签 [sunstudio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
65 浏览

linker - 以字节码形式使用指令时需要 -xarch=XXX 吗?

我有一个 x86 RDRAND 实现,如下所示。我对 RDSEED 有类似的实现。

发出的字节码是rdrand eax并且有能力的处理器会愉快地使用它们。Sun Studio 12.1 及更高版本支持 GCC 内联汇编并使用它们。

Sun 文档说我需要-xarch=avx_i提供 RDRAND(和 RDSEED -xarch=avx2_i)的 ISA。另请参阅Sun Studio 12.6 | -xarch x86 的标志

在这个用例中,我还需要添加-xarch=avx_i到我的链接器标志吗?RDRAND


万一这很重要,我们在运行时保护 CPU 功能并使用 Mapfile 来降低 ISA(因为运行时路径受到保护):

0 投票
0 回答
160 浏览

c++ - SunCC std::allocator 和 size_type max_size(size_type) const 成员函数?

我们使用一个自定义分配器来清零内存。没什么大不了的。它具有std::allocator中描述的类型和成员函数。

我最近将自定义分配器用于std::vector<T, A>(带A分配器),这是自定义分配器的新应用。它在 AIX、BSD、Linux、OSX 和 Windows 上测试正常。

在 Solaris 上进行测试导致编译失败。看起来 SunCC 需要一个size_type max_size(size_type) const成员函数:

从同一个文件中,有一个size_type max_size (size_type) const

在搜索有关 Sun 分配器的信息时,我没有找到有用的结果。

我的第一个问题是,这个成员函数是从哪里来的?它是 SunCC 特有的吗?它是早期 Rogue Wave 实施的遗迹吗?或者也许是别的什么?

我的第二个问题是,是否应该只为 SunCC 添加这个成员函数?或者我们应该使用一个选项来禁用它以实现可移植性?或者也许是别的什么?


以下是 Sun Studio 12.3 和 12.4 的编译结果:

以下是 Sun Studio 12.5 和 12.6 的编译结果:

0 投票
2 回答
55 浏览

c++ - developertudio12.6 CC on Solaris intel i386,编译器不显示错误或警告但失败

尝试在 Solaris intel i386 上使用 developertudio12.6 CC 编译 C++ 程序。编译器不显示错误或警告但失败。

可能会弄清楚为什么 CC 不显示任何警告或错误 - 可能出了什么问题?

使用 -verbose=template => 类似的输出,没有调试行使用 -# 或 verbose=diags=> 大量输出但没有错误行

/opt/developerstudio12.6/lib/compilers/stdlibfilt -stderr < /tmp/ccfe.1620226479.15666.02.err