[GSoC'16] Weekly Status - July 25 - Zhengyang Liu

Dear LLVM and SVA community:

This is to brief you the progress of this week. Following is what I
finished this week.

1. Fix a bug [1]. This bug happens in poolcheckui_debug() and
poolcheck_debug() pool check functions. Because !(not) operator have
higher precedence than &&(logic and) operator, the original code will
make a wrong decision on the if statement.

2. Implemented a CastTo(Value *, Type *, Twine, BasicBlock *) utility
function[2]. Before this, there is only a CastTo(Value *, Type *, Twine,
Instruction *), which adds a cast instruction before the last argument
instruction. Since I need to insert many cast instructions on the last
of a basicblock in my following work, I implemented this simple CastTo

3. A new pass InlineBBRuntimeFunctions [3]. This pass inlines
boundscheckui_debug(), poolcheckui_debug(), poolregister_debug(),

4. A new pass InlineGetActualValue [4]. This pass inlines all
pck_getActualValue() calls.

5. Test the performance of current bbac implementation on gzip-1.8, by
compressing a 1024 MB random file.[5]

Best regards,