[GSoC'16] Weekly Status - Zhengyang Liu

Dear llvm and sva community: This is to brief you the progress of SAFECode’s Memory Policy Hardening, for those who are interested to see the detailed proposal please consider [1] , for those who are interested to see the my working repository please consider [2]. During the previous weeks I have improved the robustness of bbac implementation in SAFECode. I conclude the work done during this week as follows: Testing: 1. Fixed a bug in SpecializeCMSCalls. CFIChecks pass, which happens before SpecializeCMSCalls, produces a global variable called TargetList. The TargetList contains the targets of the specified function call and it includes the declarations of __loadcheck and __storecheck. The specialize functions in SpecializeCMSCalls use a cast which only accepts the callinst of __loadcheck and __storecheck, these __users in the TargetList cause the crash. 2**.** Fixed a bug in ExactCheckOpt which will cause safecode crash if the target basic block has only one instruction. 3. Fixed a bug which caused the test failure of safecode/test/core/byval-001.c and byval-002.c. 4. Successfully generate the gzip and flex using safecode with bbac support. Currently i__t will produce some load/store error at runtime, I will check is that a true positive error this week. Plan for next week: 1. Discuss with my mentor Dr. John Criswell about the support of VLA size alloca. 2. Test the bbac implementation on other software and find if there is any bugs. Please provide any feedback/suggestion including for format of this email. I would also like to thanks my mentor John Criswell and other community members for providing quick help every time when I asked. Best regards, Zhengyang. [1] [2]

I am sorry for this mess, could you please delete this mail, I have uploaded a new report.

Best regards,

Zhengyang.