@@ -193,7 +193,7 @@ define({CALL_DIRECT},{
193
193
} )
194
194
195
195
J9CONST ( {TOC_SAVE_OFFSET} ,J9TR_cframe_currentTOC )
196
- define ( {SAVE_R13 } )
196
+ define ( {PRESERVE_R13_IN_C } )
197
197
define ( {GPR_SAVE_OFFSET} ,{eval ( J9TR_cframe_preservedGPRs+ ((( $1 ) - 13 ) * ALen )) } )
198
198
define ( {GPR_SAVE_SLOT} ,{GPR_SAVE_OFFSET ( $1 ) ( r1 ) } )
199
199
define ( {FPR_SAVE_OFFSET} ,{eval ( J9TR_cframe_preservedFPRs+ ((( $1 ) - 14 ) * 8 )) } )
@@ -379,7 +379,7 @@ define({RESTORE_R2_FOR_ALL},{laddr r2,JIT_GPR_SAVE_SLOT(2)})
379
379
define ( {SAVE_R29_FOR_ALL} )
380
380
define ( {RESTORE_R29_FOR_ALL} )
381
381
382
- define ( {SAVE_R13 } )
382
+ define ( {PRESERVE_R13_IN_C } )
383
383
J9CONST ( {CR_SAVE_OFFSET} ,J9TR_cframe_preservedCR )
384
384
define ( {GPR_SAVE_OFFSET} ,{eval ( J9TR_cframe_preservedGPRs+ ((( $1 ) - 13 ) * ALen )) } )
385
385
define ( {GPR_SAVE_SLOT} ,{GPR_SAVE_OFFSET ( $1 ) ( r1 ) } )
@@ -432,17 +432,13 @@ define({RESTORE_CR},{
432
432
433
433
ifdef ( {ASM_J9VM_ENV_DATA64} ,{
434
434
435
- define ( {SAVE_R13} ,{staddr r13 ,JIT_GPR_SAVE_SLOT ( 13 ) } )
436
- define ( {RESTORE_R13} ,{laddr r13 ,JIT_GPR_SAVE_SLOT ( 13 ) } )
437
- define ( {SAVE_R15} )
438
- define ( {RESTORE_R15} )
435
+ define ( {SAVE_R15_IF_NOT_VMTHREAD} )
436
+ define ( {RESTORE_R15_IF_NOT_VMTHREAD} )
439
437
440
438
} ,{
441
439
442
- define ( {SAVE_R13} )
443
- define ( {RESTORE_R13} )
444
- define ( {SAVE_R15} ,{staddr r15 ,JIT_GPR_SAVE_SLOT ( 15 ) } )
445
- define ( {RESTORE_R15} ,{laddr r15 ,JIT_GPR_SAVE_SLOT ( 15 ) } )
440
+ define ( {SAVE_R15_IF_NOT_VMTHREAD} ,{staddr r15 ,JIT_GPR_SAVE_SLOT ( 15 ) } )
441
+ define ( {RESTORE_R15_IF_NOT_VMTHREAD} ,{laddr r15 ,JIT_GPR_SAVE_SLOT ( 15 ) } )
446
442
447
443
} )
448
444
@@ -777,8 +773,7 @@ dnl No need to save/restore fp14-31 - the stack walker will never need to read
777
773
dnl or modify them (no preserved FPRs in the JIT private linkage).
778
774
779
775
define ( {SAVE_C_NONVOLATILE_REGS} ,{
780
- SAVE_R13
781
- SAVE_R15
776
+ SAVE_R15_IF_NOT_VMTHREAD
782
777
staddr r16 ,JIT_GPR_SAVE_SLOT ( 16 )
783
778
staddr r17 ,JIT_GPR_SAVE_SLOT ( 17 )
784
779
staddr r18 ,JIT_GPR_SAVE_SLOT ( 18 )
@@ -798,8 +793,7 @@ define({SAVE_C_NONVOLATILE_REGS},{
798
793
} )
799
794
800
795
define ( {RESTORE_C_NONVOLATILE_REGS} ,{
801
- RESTORE_R13
802
- RESTORE_R15
796
+ RESTORE_R15_IF_NOT_VMTHREAD
803
797
laddr r16 ,JIT_GPR_SAVE_SLOT ( 16 )
804
798
laddr r17 ,JIT_GPR_SAVE_SLOT ( 17 )
805
799
laddr r18 ,JIT_GPR_SAVE_SLOT ( 18 )
@@ -824,7 +818,7 @@ define({SAVE_ALL_REGS},{
824
818
} )
825
819
826
820
define ( {SAVE_PRESERVED_REGS} ,{
827
- SAVE_R15
821
+ SAVE_R15_IF_NOT_VMTHREAD
828
822
staddr r16 ,JIT_GPR_SAVE_SLOT ( 16 )
829
823
staddr r17 ,JIT_GPR_SAVE_SLOT ( 17 )
830
824
staddr r18 ,JIT_GPR_SAVE_SLOT ( 18 )
@@ -849,7 +843,7 @@ define({RESTORE_ALL_REGS},{
849
843
} )
850
844
851
845
define ( {RESTORE_PRESERVED_REGS} ,{
852
- RESTORE_R15
846
+ RESTORE_R15_IF_NOT_VMTHREAD
853
847
laddr r16 ,JIT_GPR_SAVE_SLOT ( 16 )
854
848
laddr r17 ,JIT_GPR_SAVE_SLOT ( 17 )
855
849
laddr r18 ,JIT_GPR_SAVE_SLOT ( 18 )
0 commit comments