@@ -402,27 +402,6 @@ class CodeGen final : public CodeGenInterface
402
402
403
403
FuncletFrameInfoDsc genFuncletInfo;
404
404
405
- #elif defined(TARGET_ARM64)
406
-
407
- // A set of information that is used by funclet prolog and epilog generation. It is collected once, before
408
- // funclet prologs and epilogs are generated, and used by all funclet prologs and epilogs, which must all be the
409
- // same.
410
- struct FuncletFrameInfoDsc
411
- {
412
- regMaskTP fiSaveRegs; // Set of callee-saved registers saved in the funclet prolog (includes LR)
413
- int fiFunction_CallerSP_to_FP_delta; // Delta between caller SP and the frame pointer in the parent function
414
- // (negative)
415
- int fiSP_to_FPLR_save_delta; // FP/LR register save offset from SP (positive)
416
- int fiSP_to_PSP_slot_delta; // PSP slot offset from SP (positive)
417
- int fiSP_to_CalleeSave_delta; // First callee-saved register slot offset from SP (positive)
418
- int fiCallerSP_to_PSP_slot_delta; // PSP slot offset from Caller SP (negative)
419
- int fiFrameType; // Funclet frame types are numbered. See genFuncletProlog() for details.
420
- int fiSpDelta1; // Stack pointer delta 1 (negative)
421
- int fiSpDelta2; // Stack pointer delta 2 (negative)
422
- };
423
-
424
- FuncletFrameInfoDsc genFuncletInfo;
425
-
426
405
#elif defined(TARGET_AMD64)
427
406
428
407
// A set of information that is used by funclet prolog and epilog generation. It is collected once, before
@@ -437,26 +416,7 @@ class CodeGen final : public CodeGenInterface
437
416
438
417
FuncletFrameInfoDsc genFuncletInfo;
439
418
440
- #elif defined(TARGET_LOONGARCH64)
441
-
442
- // A set of information that is used by funclet prolog and epilog generation.
443
- // It is collected once, before funclet prologs and epilogs are generated,
444
- // and used by all funclet prologs and epilogs, which must all be the same.
445
- struct FuncletFrameInfoDsc
446
- {
447
- regMaskTP fiSaveRegs; // Set of callee-saved registers saved in the funclet prolog (includes RA)
448
- int fiFunction_CallerSP_to_FP_delta; // Delta between caller SP and the frame pointer in the parent function
449
- // (negative)
450
- int fiSP_to_CalleeSaved_delta; // CalleeSaved register save offset from SP (positive)
451
- int fiCalleeSavedPadding; // CalleeSaved offset padding (positive)
452
- int fiSP_to_PSP_slot_delta; // PSP slot offset from SP (positive)
453
- int fiCallerSP_to_PSP_slot_delta; // PSP slot offset from Caller SP (negative)
454
- int fiSpDelta; // Stack pointer delta (negative)
455
- };
456
-
457
- FuncletFrameInfoDsc genFuncletInfo;
458
-
459
- #elif defined(TARGET_RISCV64)
419
+ #elif defined(TARGET_LOONGARCH64) || defined(TARGET_ARM64) || defined(TARGET_RISCV64)
460
420
461
421
// A set of information that is used by funclet prolog and epilog generation.
462
422
// It is collected once, before funclet prologs and epilogs are generated,
@@ -467,7 +427,6 @@ class CodeGen final : public CodeGenInterface
467
427
int fiFunction_CallerSP_to_FP_delta; // Delta between caller SP and the frame pointer in the parent function
468
428
// (negative)
469
429
int fiSP_to_CalleeSaved_delta; // CalleeSaved register save offset from SP (positive)
470
- int fiCalleeSavedPadding; // CalleeSaved offset padding (positive)
471
430
int fiSP_to_PSP_slot_delta; // PSP slot offset from SP (positive)
472
431
int fiCallerSP_to_PSP_slot_delta; // PSP slot offset from Caller SP (negative)
473
432
int fiSpDelta; // Stack pointer delta (negative)
@@ -658,13 +617,6 @@ class CodeGen final : public CodeGenInterface
658
617
659
618
#endif // defined(DEBUG)
660
619
661
- #ifdef TARGET_ARM64
662
- virtual void SetSaveFpLrWithAllCalleeSavedRegisters (bool value);
663
- virtual bool IsSaveFpLrWithAllCalleeSavedRegisters () const ;
664
- bool genSaveFpLrWithAllCalleeSavedRegisters;
665
- bool genForceFuncletFrameType5;
666
- #endif // TARGET_ARM64
667
-
668
620
// -------------------------------------------------------------------------
669
621
//
670
622
// End prolog/epilog generation
@@ -1272,7 +1224,6 @@ class CodeGen final : public CodeGenInterface
1272
1224
void genJmpMethod (GenTree* jmp);
1273
1225
BasicBlock* genCallFinally (BasicBlock* block);
1274
1226
#if defined(TARGET_LOONGARCH64) || defined(TARGET_RISCV64)
1275
- // TODO: refactor for LA.
1276
1227
void genCodeForJumpCompare (GenTreeOpCC* tree);
1277
1228
#endif
1278
1229
#if defined(TARGET_ARM64)
0 commit comments