[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [csmith-dev] Floating-point support in csmith
I haven't looked at the patch yet but will do so.
I agree that self-reliance is very good, but on the other hand reuse is
also good. So it comes down to the value added by boost vs. the costs.
On 11/14/15 2:17 AM, Xuejun Yang wrote:
First of all, I think we should hear from Jacek what are the dependencies and how hard is it to remove the dependencies.
John, on windows, it's more complicated than one command. Here is the page of instructions: http://www.boost.org/doc/libs/1_59_0/more/getting_started/windows.html#build-from-the-visual-studio-ide
The issue is really whether Csmith, as a lightweight project, should be self-contained thus maintain its portability. Csmith has a size of less than 1MB (when compressed), do we really want to force people to install a 65MB (when compressed) library in order to run Csmith, even though we are maybe using only one or two functions in it? What if people designing a new hardware platform want to test their compilers on it with Csmith? In theory we can do cross-generation, but a) it is not implemented yet; and b) cross-generation adds the cost of transferring test cases between a generating platform and an executing platform.
My concern is that for the short-term convenience of allowing a dependency on Boost, we are accumulating possible future troubles of configuration/distribution/deployment/packaging for every release of Csmith/Boost for every user. The troubles will aggregate if dependencies on more libraries are introduced later.
From: email@example.com [mailto:firstname.lastname@example.org] On Behalf Of John Regehr
Sent: Friday, November 13, 2015 3:52 PM
Subject: Re: [csmith-dev] Floating-point support in csmith
Xuejun, on Linux or OS X you just install boost in a couple of seconds using one command. Maybe there's a way to do this on Windows too.
My guess is that including some part of Boost in the Csmith distribution isn't easy or fun.
On 11/14/15 12:28 AM, Yang Chen wrote:
On 2015-11-13 14:53, Eric Eide wrote:
At one time, we used a Boost library to parsing command-line options.
(maybe with help from you/Yang?) removed that dependency by rewriting
the option-parsing code.
I think John did.
Anyway, I have to admit that I haven't looked to see how much code is
contained in the Boost libraries used by the code that uses intervals
to represent floats. So I don't know if it would be easy/make sense
to copy the relevant headers into the Csmith source tree or not.
My confession - same here. I guess that my paranoid-mode just got
turned on automatically when I sensed something that we might end up
with copying/extracting code from Boost library :)