Skip to content

Conversation

@peterschrammel
Copy link
Member

The Makefile now builds the tool wrapper script from tool-wrapper.inc
and tool-specific includes which define tool and executable names
as well as mappings from properties to tool options,
currently provided for CBMC and 2LS.

Copy link
Collaborator

@tautschnig tautschnig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've implementation suggestions via 2 extra commits, which should be squashed. Let me know what you think about my comments.

2ls.inc Outdated
OPTIONS["termination"]="--termination --competition-mode"
OPTIONS["overflow"]="--k-induction --signed-overflow-check --competition-mode"
OPTIONS["memsafety"]="--k-induction --pointer-check --memory-leak-check --bound\
s-check --competition-mode"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May I suggest to break this line at a whitespace?

For all of these: would it be bad idea to move --k-induction --competiton-mode into the run() function, at which point CBMC and 2LS would be using the same OPTIONS? Thus the entire OPTIONS declaration could be moved into the common file, and values could be overwritten when necessary?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's possible if $PROP is available in the the run() function so that I can distinguish between safety and termination.

2ls.inc Outdated
run()
{
$TOOL_BINARY --graphml-witness $LOG.witness $BIT_WIDTH $PROPERTY --function $\
ENTRY $BM >> $LOG.ok 2>&1
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, I would suggest to break the line at a whitespace.

Run the Makefile to build the tool wrapper script from tool-wrapper.inc
and tool-specific includes which define tool and executable names
as well as a run function, currently provided for CBMC and 2LS.
tool-wrapper.inc contains a mapping from SV-COMP properties to the
CPROVER property instrumentation options.
@peterschrammel
Copy link
Member Author

@tautschnig, I have squashed your Makefile improvements and moved the options block into the common wrapper script.

Copy link
Collaborator

@tautschnig tautschnig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@tautschnig tautschnig merged commit 483918a into diffblue:master Dec 3, 2016
@peterschrammel peterschrammel deleted the unified-script branch December 11, 2016 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants