Lines Matching +full:align +full:- +full:end
1 //===-- ARMBasicBlockInfo.h - Basic Block Information -----------*- C++ -*-===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
11 //===----------------------------------------------------------------------===//
27 /// UnknownPadding - Return the worst case padding that could result from
33 inline unsigned UnknownPadding(Align Alignment, unsigned KnownBits) { in UnknownPadding()
35 return Alignment.value() - (1ull << KnownBits); in UnknownPadding()
39 /// BasicBlockInfo - Information about the offset and size of a single
42 /// Offset - Distance from the beginning of the function to the beginning
53 /// Size - Size of the basic block in bytes. If the block contains
57 /// beginning of the block, or from an aligned jump table at the end.
60 /// KnownBits - The number of low bits in Offset that are known to be
64 /// Unalign - When non-zero, the block contains instructions (inline asm)
69 /// PostAlign - When > 1, the block terminator contains a .align
70 /// directive, so the end of the block is aligned to PostAlign bytes.
71 Align PostAlign;
82 if (Size & ((1u << Bits) - 1)) in internalKnownBits()
87 /// Compute the offset immediately following this block. If Align is
90 unsigned postOffset(Align Alignment = Align(1)) const {
92 const Align PA = std::max(PostAlign, Alignment);
93 if (PA == Align(1))
104 unsigned postKnownBits(Align Align = llvm::Align(1)) const {
105 return std::max(Log2(std::max(PostAlign, Align)), internalKnownBits());
121 isThumb = MF.getInfo<ARMFunctionInfo>()->isThumbFunction(); in ARMBasicBlockUtils()
135 return BBInfo[MBB->getNumber()].Offset; in getOffsetOf()
141 BBInfo[MBB->getNumber()].Size += Size; in adjustBBSize()
157 } // end namespace llvm