代码更改以在Solaris

时间:2015-10-13 20:48:42

标签: z3

我需要在Solaris 8上构建z3。我看了一下scoped_timer.cpp文件,这是唯一使用-D_LINUX_的地方,并且我可以在那里为Solaris获取正确的代码,保护它使用-D_SOLARIS_。此外,需要更改src / util / hwf.cpp以提供fma()和nearbyint()的定义,这些定义未在Solaris 8上定义。也可以通过定义fma(x,y,z)来定义)是x * y + z,但是然后会有两个舍入而不是一个,这是IEEE 754所要求的。这会为z3的目的带来问题吗?我还需要更改mk_util.py以设置Solaris的编译和链接选项。这似乎相当可行,因为我们在Solaris上使用g ++,因此编译选项将类似。链接选项可能需要额外的库。我愿意做一些腿部工作,但我可能需要帮助。有人愿意和我一起工作,这会是一个受欢迎的补充吗?

1 个答案:

答案 0 :(得分:0)

  

这会是一个受欢迎的补充吗?

我想我们可以在准备就绪时采取拉取请求(而不是模糊其他设置),并且至少有两个用户。 通常的条件适用于提取请求https://github.com/Z3Prover/z3/wiki/Contribution-Guidelines。 当然,您可以拥有自己的分支,而无需合并更改。

另一个问题可能是您机器上的字节顺序和 对内存对齐的限制可能会暴露进一步的可移植性问 您应该能够通过在z3test存储库(以及单元测试)下运行回归测试来查找问题。我们最近为ARM / PowerPC修复了一些与字节序相关的问题。