Lines Matching full:rf
1141 unsigned Index, const RuntimeFunction &RF) {
1142 assert(RF.Flag() == RuntimeFunctionFlag::RFF_Unpacked &&
1147 COFF, Section, Offset, RF.BeginAddress, FunctionAddress, FunctionOffset,
1152 COFF, Section, Offset + 4, RF.ExceptionInformationRVA(), XDataAddress,
1155 if (!RF.BeginAddress && !Function)
1157 if (!RF.UnwindData && !XDataRecord)
1209 unsigned Index, const RuntimeFunction &RF) {
1210 assert((RF.Flag() == RuntimeFunctionFlag::RFF_Packed ||
1211 RF.Flag() == RuntimeFunctionFlag::RFF_PackedFragment) &&
1216 COFF, Section, Offset, RF.BeginAddress, FunctionAddress, FunctionOffset,
1234 RF.Flag() == RuntimeFunctionFlag::RFF_PackedFragment);
1235 SW.printNumber("FunctionLength", RF.FunctionLength());
1236 SW.startLine() << "ReturnType: " << RF.Ret() << '\n';
1237 SW.printBoolean("HomedParameters", RF.H());
1238 SW.printNumber("Reg", RF.Reg());
1239 SW.printNumber("R", RF.R());
1240 SW.printBoolean("LinkRegister", RF.L());
1241 SW.printBoolean("Chaining", RF.C());
1242 SW.printNumber("StackAdjustment", StackAdjustment(RF) << 2);
1248 std::tie(GPRMask, VFPMask) = SavedRegisterMask(RF, /*Prologue=*/true);
1250 if (StackAdjustment(RF) && !PrologueFolding(RF))
1251 SW.startLine() << "sub sp, sp, #" << StackAdjustment(RF) * 4 << "\n";
1257 if (RF.C()) {
1270 if (RF.H())
1274 if (RF.Ret() != ReturnType::RT_NoEpilogue) {
1278 std::tie(GPRMask, VFPMask) = SavedRegisterMask(RF, /*Prologue=*/false);
1280 if (StackAdjustment(RF) && !EpilogueFolding(RF))
1281 SW.startLine() << "add sp, sp, #" << StackAdjustment(RF) * 4 << "\n";
1292 if (RF.H()) {
1293 if (RF.L() == 0 || RF.Ret() != ReturnType::RT_POP)
1298 if (RF.Ret() != ReturnType::RT_POP)
1299 SW.startLine() << RF.Ret() << '\n';
1308 const RuntimeFunctionARM64 &RF) {
1309 assert((RF.Flag() == RuntimeFunctionFlag::RFF_Packed ||
1310 RF.Flag() == RuntimeFunctionFlag::RFF_PackedFragment) &&
1315 COFF, Section, Offset, RF.BeginAddress, FunctionAddress, FunctionOffset,
1333 RF.Flag() == RuntimeFunctionFlag::RFF_PackedFragment);
1334 SW.printNumber("FunctionLength", RF.FunctionLength());
1335 SW.printNumber("RegF", RF.RegF());
1336 SW.printNumber("RegI", RF.RegI());
1337 SW.printBoolean("HomedParameters", RF.H());
1338 SW.printNumber("CR", RF.CR());
1339 SW.printNumber("FrameSize", RF.FrameSize() << 4);
1346 int IntSZ = 8 * RF.RegI();
1347 if (RF.CR() == 1)
1349 int FpSZ = 8 * RF.RegF();
1350 if (RF.RegF())
1352 int SavSZ = (IntSZ + FpSZ + 8 * 8 * RF.H() + 0xf) & ~0xf;
1353 int LocSZ = (RF.FrameSize() << 4) - SavSZ;
1355 if (RF.CR() == 2 || RF.CR() == 3) {
1366 } else if ((RF.CR() != 3 && RF.CR() != 2 && LocSZ > 0) || LocSZ > 512) {
1369 if (RF.H()) {
1373 if (RF.RegI() > 0 || RF.RegF() > 0 || RF.CR() == 1) {
1382 int FloatRegs = RF.RegF() > 0 ? RF.RegF() + 1 : 0;
1388 } else if (I == 0 && RF.RegI() == 0 && RF.CR() != 1) {
1396 if (RF.CR() == 1 && (RF.RegI() % 2) == 0) {
1397 if (RF.RegI() == 0)
1402 for (int I = (RF.RegI() + 1) / 2 - 1; I >= 0; I--) {
1403 if (I == (RF.RegI() + 1) / 2 - 1 && RF.RegI() % 2 == 1) {
1405 if (RF.CR() == 1) {
1431 if (RF.CR() == 2)