Skip to content

Using Cristal framework to implement a boolean constant propagation.

Notifications You must be signed in to change notification settings

YouLu/Cristal_ConstantChecker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Author : You Lu
Email: [email protected]

1.Booleans Propagation:
      The transfer functions I did are:
      		(1) LoadLiteralInstruction
      		(2) SourceVariableReadInstruction
      		(3) UnaryOperation
      		(4) CopyInstruction
      		(5) MethodCallInstruction
      		(6) BinaryOperation (== and !=)
      I added branch sensitivity to all of them.(I implemented all the transfer functions with branch sensitivity in the 
      written solutions you gave.) 
      I did the bonus part for conditional expression and return statement.  
2.Integer Propagation:
      I changed the lattice by adding an integer type to it, and implemented atLeastAsPrecise and join methods.
      I did LoadLiteralInstruction and CopyInstruction transfer functions.
      
Thanks.

About

Using Cristal framework to implement a boolean constant propagation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages