Simplify expressions in LLVM SSA -


there pass breaks constant gep expression out of instruction's operand own instruction, such nested gep expressions become explicit , easier work in subsequent passes.

now have similar problem. ssa phi instruction (link):

while.cond:                                       ; preds = %while.body, %entry   %n.0 = phi %struct.node* [ bitcast ({ %struct.node*, i32, [4 x i8] }* @n1 %struct.node*), %entry ], [ %13, %while.body ]   ... 

contains bitcast instruction (link) "inlined" operand. exists there pass allows me break ssa of given module basic instructions, "un-inlining" such nested expressions make them explicit ssa instructions?

i don't know of such pass.

however, looks me modifying safecode's breakconstantgeps pass should easy: change condition inserted worklist isa<phinode> instead of operand loop checking hasconstantgep.


Comments

Popular posts from this blog

Android layout hidden on keyboard show -

google app engine - 403 Forbidden POST - Flask WTForms -

c - Why would PK11_GenerateRandom() return an error -8023? -