diff options
author | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2021-02-13 21:26:15 +0000 |
---|---|---|
committer | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2021-02-13 21:26:15 +0000 |
commit | 7ef295282c08f9da319dd0907b0c87e3a2a72de0 (patch) | |
tree | 2ef237c65d45e53e9e364d487977f07246154990 /rtl/linux | |
parent | 9178c532bc9fe9c4c2bef2723dda0fa2baf06cf1 (diff) | |
download | fpc-7ef295282c08f9da319dd0907b0c87e3a2a72de0.tar.gz |
* arm-linux: sighnd.inc must check for CPUTHUMB and CPUTHUMB2
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@48670 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'rtl/linux')
-rw-r--r-- | rtl/linux/arm/sighnd.inc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/rtl/linux/arm/sighnd.inc b/rtl/linux/arm/sighnd.inc index 5a5fd3fd15..08fc516dc6 100644 --- a/rtl/linux/arm/sighnd.inc +++ b/rtl/linux/arm/sighnd.inc @@ -20,7 +20,7 @@ begin result:=@HandleErrorAddrFrame; end; -{$ifndef CPUTHUMB} +{$if not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} Procedure SignalToHandleErrorAddrFrame_ARM(Errno : longint;addr : CodePointer; frame : Pointer); nostackframe; assembler; asm {$if FPC_FULLVERSION >= 30200} @@ -38,7 +38,7 @@ asm pop {r0,r1,r2,pc} .text end; -{$endif not CPUTHUMB} +{$endif not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} {$if FPC_FULLVERSION >= 30200} Procedure SignalToHandleErrorAddrFrame_Thumb(Errno : longint;addr : CodePointer; frame : Pointer); nostackframe; assembler; @@ -57,9 +57,9 @@ asm mov lr, r0 pop {r0,r1,r2,pc} .text -{$ifndef CPUTHUMB} +{$if not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} .code 32 -{$endif CPUTHUMB} +{$endif not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} end; {$endif} @@ -102,13 +102,13 @@ begin ucontext^.uc_mcontext.arm_r1:=uContext^.uc_mcontext.arm_pc; ucontext^.uc_mcontext.arm_r2:=uContext^.uc_mcontext.arm_fp; {$if FPC_FULLVERSION >= 30200} -{$ifndef CPUTHUMB} +{$if not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} if (ucontext^.uc_mcontext.arm_cpsr and (1 shl 5))=0 then begin ucontext^.uc_mcontext.arm_pc:=ptruint(@SignalToHandleErrorAddrFrame_ARM); end else -{$endif not CPUTHUMB} +{$endif not(defined(CPUTHUMB)) and not(defined(CPUTHUMB2))} begin ucontext^.uc_mcontext.arm_pc:=ptruint(@SignalToHandleErrorAddrFrame_Thumb); end; |