I am not sure if this is correct, I tested it with an old project and looked in the .asm file.
Code
Interrupt PortF_INT0;
begin
PUSHALLREGS;
toggle(led1);
HandleEncoderInt_new;
HandleEncoderInt;
POPALLREGS;
end;
Gives this:(At the end of all register saving code there is still a call to SYSTEM.PUSHALLREGS, is that ok? It seems as it does it twice now..
Code
testproj.INTERRUPT_TCD1_INTOVF:
PUSH _ACCGLO
PUSH _ACCGHI
PUSH _ACCHLO
PUSH _ACCHHI
PUSH $_SAVERET
PUSH $_SAVERET1
PUSH $_SAVERET2
PUSH FLAGS
PUSH FLAGS2
PUSH _SYSTFLAGS
PUSH _BEEPTIMER
PUSH R11
PUSH R12
PUSH R13
PUSH R14
PUSH R15
PUSH _ACCB
PUSH _ACCA
PUSH _ACCALO
PUSH _ACCAHI
PUSH _ACCDLO
PUSH _ACCDHI
PUSH _ACCELO
PUSH _ACCEHI
PUSH _ACCFLO
PUSH _ACCFHI
PUSH _ACCBLO
PUSH _ACCBHI
PUSH _FRAMEPTR
PUSH _FPTRHI
PUSH _ACCCLO
PUSH _ACCCHI
IN _ACCBHI, SREG
PUSH _ACCBHI
.RETURNS -1
.BLOCK 1915
.LINE 1916
LDS _ACCA, testproj.ENABLE_OFFLINE_DRIVE
TST _ACCA
.BRANCH 3, testproj._L1934
BREQ testproj._L1934
.BLOCK 1916
.LINE 1917
CALL SYSTEM.PUSHALLREGS
.LINE 1919