HikariObfuscator/Hikari

LLVM 8.0 release out

Closed this issue · 9 comments

Plus by transition to LLVM8 we are essentially two major versions ahead of Apple/Android LLVM, which probably will introduce even more compatibility issues

Spent some spare time reviewing the changelogs. LLVM 8.0 introduced some API breaking changes as well as a proposed although partially implemented full TypeSystem rewrite. It removed TerminatorInst which is already one thing that will prevent current code from compiling, although this one is relatively to fix. As such I purpose we wait until major compiler vendors like Apple/Google Android also jumps ship to LLVM7 before porting ours to 8

uaex commented

LLVM8, 开启BogusControlFlow, for循环转成switch后,state有一定几率初始化为跳出循环的Block对应的case值,导致for循环没走

@uaex BCF跟for循环有啥关系????

uaex commented

哦,还开启了Flattening,应该是Flattening的问题

@uaex 那就是平坦化,估计是他那个随机数发生器的问题。我这里私有的代码改的比较多不太好合并回上流,你自己看一下吧

@uaex 我自己这里随机数发生器是整个重构过的没这问题,你自己改一下吧

@cntrump @uaex 8我push了,提供了新的PRng实现