Lines Matching defs:Position
150 void skipNonTerminators(BlockPosition &Position, MBBInfo &Block);
151 void skipTerminator(BlockPosition &Position, TerminatorInfo &Terminator,
179 // Position describes the state immediately before Block. Update Block
180 // accordingly and move Position to the end of the block's non-terminator
182 void SystemZLongBranch::skipNonTerminators(BlockPosition &Position,
184 if (Log2(Block.Alignment) > Position.KnownBits) {
187 Position.Address +=
188 (Block.Alignment.value() - (uint64_t(1) << Position.KnownBits));
189 Position.KnownBits = Log2(Block.Alignment);
193 Position.Address = alignTo(Position.Address, Block.Alignment);
196 Block.Address = Position.Address;
199 Position.Address += Block.Size;
202 // Position describes the state immediately before Terminator.
203 // Update Terminator accordingly and move Position past it.
205 void SystemZLongBranch::skipTerminator(BlockPosition &Position,
208 Terminator.Address = Position.Address;
209 Position.Address += Terminator.Size;
211 Position.Address += Terminator.ExtraRelaxSize;
297 BlockPosition Position(Log2(MF->getAlignment()));
312 skipNonTerminators(Position, Block);
319 skipTerminator(Position, Terminators.back(), false);
326 return Position.Address;
361 BlockPosition Position(Log2(MF->getAlignment()));
363 skipNonTerminators(Position, Block);
365 skipTerminator(Position, *TI, true);
462 BlockPosition Position(Log2(MF->getAlignment()));
464 skipNonTerminators(Position, Block);
466 assert(Position.Address <= TI->Address &&
468 if (mustRelaxBranch(*TI, Position.Address))
470 skipTerminator(Position, *TI, false);