summaryrefslogtreecommitdiff
path: root/rtl/xtensa
diff options
context:
space:
mode:
authorpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-09-23 12:07:06 +0000
committerpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-09-23 12:07:06 +0000
commitc0a8b0c78fe7a06f398e8ef2f04c4dd7a8666ef4 (patch)
tree52faa38ee1c70166ffa30941c2617f18f6fa0d7b /rtl/xtensa
parente5c68ba390abfd45cedfc52bdff278306a358fd1 (diff)
downloadfpc-c0a8b0c78fe7a06f398e8ef2f04c4dd7a8666ef4.tar.gz
Fix problems in xtensa fpc_setjmp/fpc_longjmp for linux
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@46925 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'rtl/xtensa')
-rw-r--r--rtl/xtensa/setjump.inc7
1 files changed, 5 insertions, 2 deletions
diff --git a/rtl/xtensa/setjump.inc b/rtl/xtensa/setjump.inc
index 17bfb5723c..cfd5720dbe 100644
--- a/rtl/xtensa/setjump.inc
+++ b/rtl/xtensa/setjump.inc
@@ -55,16 +55,19 @@ procedure fpc_longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias
end;
{$else}
-function fpc_setjmp(var S : jmp_buf) : longint;assembler;[Public, alias : 'FPC_SETJMP']; compilerproc; external;
+
+function fpc_setjmp(var S : jmp_buf) : longint;assembler;[Public, alias : 'FPC_SETJMP']; compilerproc; nostackframe;
asm
entry a1,16
movi.n a2,0
end;
-procedure fpc_longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias : 'FPC_LONGJMP']; compilerproc; external;
+procedure fpc_longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias : 'FPC_LONGJMP']; compilerproc; nostackframe;
asm
entry a1,16
+ movi.n a2,1
+ movnez a2,value,value
end;
{$endif}