Lines Matching +full:function +full:- +full:mask

1 //===-- StackMapLivenessAnalysis.cpp - StackMap live Out Analysis ----------===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
10 // the liveness for each basic block in a function and attaches the register
11 // live-out information to a stackmap or patchpoint intrinsic if present.
13 //===----------------------------------------------------------------------===//
32 "enable-patchpoint-liveness", cl::Hidden, cl::init(true),
43 /// a function and attaches the register live-out information to a patchpoint
46 /// This pass can be disabled via the -enable-patchpoint-liveness=false flag.
49 /// aformentioned intrinsic to function.
69 /// Calculate the liveness information for the given machine function.
73 /// Performs the actual liveness calculation for the function.
79 /// Create a register mask and initialize it with the registers from
87 INITIALIZE_PASS(StackMapLiveness, "stackmap-liveness",
104 /// Calculate the liveness information for the given machine function.
114 // Skip this function if there are no patchpoints to process. in runOnMachineFunction()
122 /// Performs the actual liveness calculation for the function.
125 // For all basic blocks in the function. in calculateLiveness()
153 uint32_t *Mask = createRegisterMask(MF); in addLiveOutSetToMI() local
154 MachineOperand MO = MachineOperand::CreateRegLiveOut(Mask); in addLiveOutSetToMI()
158 /// Create a register mask and initialize it with the registers from the
161 // The mask is owned and cleaned up by the Machine Function. in createRegisterMask()
162 uint32_t *Mask = MF.allocateRegMask(); in createRegisterMask() local
164 Mask[Reg / 32] |= 1U << (Reg % 32); in createRegisterMask()
166 // Give the target a chance to adjust the mask. in createRegisterMask()
167 TRI->adjustStackMapLiveOutMask(Mask); in createRegisterMask()
169 return Mask; in createRegisterMask()