Branch: refs/heads/master
Home: https://github.com/csmith-project/csmith
Commit: da550190c39123630069be526989e27c4e55f0ab
https://github.com/csmith-project/csmith/commit/da550190c39123630069be526989e27c4e55f0ab
Author: Xuejun Yang<jxyang@cs.utah.edu>
Date: 2011-07-11 (Mon, 11 Jul 2011)
Changed paths:
M src/Expression.h
A src/ExpressionAssign.cpp
A src/ExpressionAssign.h
A src/ExpressionComma.cpp
A src/ExpressionComma.h
M src/StatementAssign.h
M src/csmith.vcproj
Log Message:
-----------
add Comma operators and embedded assignments
Commit: 1eb4fd9f51e432c60cc5f6dcf358625cd1f21b96
https://github.com/csmith-project/csmith/commit/1eb4fd9f51e432c60cc5f6dcf358625cd1f21b96
Author: Xuejun Yang<jxyang@cs.utah.edu>
Date: 2011-07-11 (Mon, 11 Jul 2011)
Changed paths:
M src/CGContext.cpp
M src/Constant.cpp
M src/Constant.h
M src/DefaultRndNumGenerator.cpp
M src/Effect.cpp
M src/Expression.cpp
M src/Expression.h
M src/ExpressionAssign.cpp
M src/ExpressionAssign.h
M src/ExpressionComma.cpp
M src/ExpressionComma.h
M src/Fact.h
M src/FactMgr.cpp
M src/FactMgr.h
M src/FactPointTo.cpp
M src/FactPointTo.h
M src/FactUnion.cpp
M src/FactUnion.h
M src/Filter.cpp
M src/Function.cpp
M src/FunctionInvocation.cpp
M src/FunctionInvocationBinary.cpp
M src/FunctionInvocationUnary.cpp
M src/FunctionInvocationUser.cpp
M src/FunctionInvocationUser.h
M src/ProbabilityTable.h
M src/Statement.cpp
M src/StatementAssign.cpp
M src/StatementAssign.h
M src/StatementBreak.cpp
M src/StatementContinue.cpp
M src/StatementFor.cpp
M src/StatementIf.cpp
M src/Type.cpp
M src/Type.h
M src/Variable.cpp
M src/Variable.h
M src/VariableSelector.cpp
M src/VariableSelector.h
M src/VectorFilter.cpp
M src/VectorFilter.h
Log Message:
-----------
supporting side-effecting expressions and bug fixing for unions
1) add two more expression types: ExpressionAssign for embedded assignments; and ExpressionComma for comma expressions. Give them enough probability to show up in random programs (10% each for now)
2) allow pointer fields inside unions
3) expanded VectorFilter so it filter out candidates after looking up a ProbabilityTable. This is useful for choosing Expression/statement types where a random number is translated into a type based on pre-determined distributions.
4) expand the points-to analysis to accommodate the facts that a shallow copy of struct/unions could impact multiple pointers that are fields of copied structs.
5) expand the effect analysis to accommodate the facts that RHS of assignments could have side effect if it contains 1) function call, 2) embedded assignments, or 3) comma expressions.
6) to simplify points-to analysis, disallow an integer union field to be loop control variable if another field of the same union happens to be pointer
7) rename class "Table" to "TableEntry"
8) fix some bugs in analyzing read/write conflicts between union fields
9) add debugging code to the random number generator
10) kill some warnings barked by MSVC and gcc
11) clean up obsolete code
Commit: 3f833ee04a283ba63a16a4ed9f203e717bf9588a
https://github.com/csmith-project/csmith/commit/3f833ee04a283ba63a16a4ed9f203e717bf9588a
Author: Xuejun Yang<jxyang@cs.utah.edu>
Date: 2011-07-11 (Mon, 11 Jul 2011)
Changed paths:
M src/Statement.cpp
Log Message:
-----------
fix a typo
Commit: 4b68f633035c6feb7aa2d7f7ea287a1655251fb0
https://github.com/csmith-project/csmith/commit/4b68f633035c6feb7aa2d7f7ea287a1655251fb0
Author: Xuejun Yang<jxyang@cs.utah.edu>
Date: 2011-07-11 (Mon, 11 Jul 2011)
Changed paths:
M src/Makefile.am
M src/csmith.vcxproj
Log Message:
-----------
add two new classes: ExpressionAssign and ExpressionComma
Compare: https://github.com/csmith-project/csmith/compare/cc2cae0...4b68f63