Searched refs:phi (Results 1 - 9 of 9) sorted by relevance
/art/compiler/sea_ir/debug/ |
H A D | dot_gen.cc | 165 void DotGenerationVisitor::Visit(PhiInstructionNode* phi) { argument 166 dot_text_ += "// PhiInstruction: \n" + phi->StringId() + 167 " [label=\"[" + phi->StringId() + "] PHI("; 168 dot_text_ += art::StringPrintf("%d", phi->GetRegisterNumber()); 171 ToDotSSAEdges(phi);
|
H A D | dot_gen.h | 58 void Visit(PhiInstructionNode* phi);
|
/art/compiler/sea_ir/code_gen/ |
H A D | code_gen.cc | 29 void CodeGenPrepassVisitor::Visit(PhiInstructionNode* phi) { argument 30 Region* r = phi->GetRegion(); 35 llvm::Type::getInt32Ty(*llvm_data_->context_), predecessors->size(), phi->StringId()); 36 llvm_data_->AddValue(phi, llvm_phi); 256 void CodeGenPostpassVisitor::Visit(PhiInstructionNode* phi) { argument 257 std::cout << "10. Instruction: Phi(" << phi->GetRegisterNumber() << ")" << std::endl; 258 Region* r = phi->GetRegion(); 262 // Prepass (CodeGenPrepassVisitor) should create the phi function value. 263 llvm::PHINode* llvm_phi = (llvm::PHINode*) llvm_data_->GetValue(phi); 267 std::vector<InstructionNode*>* defining_instructions = phi [all...] |
/art/compiler/dex/ |
H A D | mir_optimization.cc | 367 MIR* phi = FindPhi(tk_tk, if_true->ssa_rep->defs[0]); local 368 if ((phi != NULL) && (if_true->dalvikInsn.vA == if_false->dalvikInsn.vA)) { 430 if (phi->ssa_rep->num_uses == 2) { 431 mir->ssa_rep->defs[0] = phi->ssa_rep->defs[0]; 432 phi->dalvikInsn.opcode = static_cast<Instruction::Code>(kMirOpNop); 437 int* incoming = reinterpret_cast<int*>(phi->dalvikInsn.vB); 438 for (int i = 0; i < phi->ssa_rep->num_uses; i++) { 439 if (phi->ssa_rep->uses[i] == live_def) { 443 for (int i = 0; i < phi->ssa_rep->num_uses; i++) { 444 if (phi [all...] |
H A D | ssa_transformation.cc | 210 * TODO - evaluate whether phi will ever need to be inserted into exit 456 * The calculated result is used for phi-node pruning - where we only need to 457 * insert a phi node if the variable is live-in to the block. 493 /* Insert phi nodes to for each variable to the dominance frontiers */ 519 /* Calculate the phi blocks for each Dalvik register */ 552 * Insert a phi node for dalvik_reg in the phi_blocks if the Dalvik 562 /* Variable will be clobbered before being used - no need for phi */ 566 MIR *phi = local 568 phi->dalvikInsn.opcode = static_cast<Instruction::Code>(kMirOpPhi); 569 phi [all...] |
/art/compiler/sea_ir/ir/ |
H A D | visitor.h | 79 virtual void Traverse(PhiInstructionNode* phi) { } argument
|
H A D | sea.cc | 320 // Pass: Actually add phi-nodes to regions. 351 // Rename phi nodes defined in the current region. 379 // Fill in uses of phi functions in CFG successor regions. 596 PhiInstructionNode* phi = (*phi_it); local 597 int reg_no = phi->GetRegisterNumber(); 599 phi->RenameToSSA(reg_no, definition, predecessor_id);
|
/art/compiler/llvm/ |
H A D | gbc_expander.cc | 534 // Update the phi-instructions in the successor basic block 560 // Iterate every phi instructions in the succeeding basic block 565 llvm::PHINode *phi = llvm::dyn_cast<llvm::PHINode>(inst_iter); local 567 if (!phi) { 568 break; // Meet non-phi instruction. Done. 571 if (handler_phi[phi] == NULL) { 572 handler_phi[phi] = llvm::PHINode::Create(phi->getType(), 1); 576 llvm::PHINode* new_phi = irb_.CreatePHI(phi->getType(), rewrite_pair.size()); 581 new_phi->addIncoming(phi 627 llvm::PHINode *phi = llvm::dyn_cast<llvm::PHINode>(inst_iter); local 1826 llvm::PHINode* phi = irb_.CreatePHI(irb_.getJObjectTy(), 2); local 1881 llvm::PHINode* phi = irb_.CreatePHI(irb_.getJObjectTy(), 2); local 2112 llvm::PHINode* phi = irb_.CreatePHI(irb_.getJObjectTy(), 2); local 2278 llvm::PHINode* phi = irb_.CreatePHI(irb_.getJIntTy(), 3); local [all...] |
/art/compiler/dex/portable/ |
H A D | mir_to_gbc.cc | 1558 ::llvm::PHINode* phi = irb_->CreatePHI(phi_type, mir->ssa_rep->num_uses); local 1573 phi->addIncoming(GetLLVMValue(loc.orig_sreg), 1576 DefineValueOnly(phi, rl_dest.orig_sreg); 1590 ::llvm::Value* phi = GetLLVMValue(rl_dest.orig_sreg); local 1591 if (1) SetVregOnValue(phi, rl_dest.orig_sreg);
|
Completed in 785 milliseconds