leave SIGFPE alone
This commit is contained in:
parent
36861e70ac
commit
8a81dbe6fb
3 changed files with 3 additions and 122 deletions
|
@ -28,50 +28,18 @@
|
||||||
pushl r0
|
pushl r0
|
||||||
pushl r2
|
pushl r2
|
||||||
pushl r1
|
pushl r1
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+ ! catch floating point exception
|
|
||||||
calls $3,_m_a_i_n
|
calls $3,_m_a_i_n
|
||||||
movl $Im2,ap
|
movl $Im2,ap
|
||||||
movl r0,6(ap)
|
movl r0,6(ap)
|
||||||
chmk (ap)+
|
chmk (ap)+
|
||||||
halt
|
halt
|
||||||
|
|
||||||
.align 1
|
|
||||||
Isig8:
|
|
||||||
.data2 0x0000
|
|
||||||
pushl 8(ap)
|
|
||||||
movl (sp)+,ap
|
|
||||||
pushl Itab [ap]
|
|
||||||
jsb .trp
|
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+
|
|
||||||
ret
|
|
||||||
|
|
||||||
.sect .rom
|
|
||||||
Im1:
|
|
||||||
.data2 48
|
|
||||||
.data4 2
|
|
||||||
.data4 8
|
|
||||||
.data4 Isig8
|
|
||||||
|
|
||||||
Itab:
|
|
||||||
.data4 0
|
|
||||||
.data4 EIOVFL
|
|
||||||
.data4 EIDIVZ
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
.data4 EILLINS
|
|
||||||
.data4 EARRAY
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
|
|
||||||
.sect .data
|
.sect .data
|
||||||
Im2:
|
Im2:
|
||||||
.data2 1
|
.data2 1
|
||||||
.data4 1
|
.data4 1
|
||||||
.data4 0
|
.data4 0
|
||||||
|
.data2 0
|
||||||
.reghp:
|
.reghp:
|
||||||
.data4 __end
|
.data4 __end
|
||||||
.limhp:
|
.limhp:
|
||||||
|
|
|
@ -28,61 +28,18 @@
|
||||||
pushl r0
|
pushl r0
|
||||||
pushl r2
|
pushl r2
|
||||||
pushl r1
|
pushl r1
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+ ! catch floating point exception
|
|
||||||
calls $3,_m_a_i_n
|
calls $3,_m_a_i_n
|
||||||
movl $Im2,ap
|
movl $Im2,ap
|
||||||
movl r0,6(ap)
|
movl r0,6(ap)
|
||||||
chmk (ap)+
|
chmk (ap)+
|
||||||
halt
|
halt
|
||||||
|
|
||||||
.align 1
|
|
||||||
Isig8:
|
|
||||||
.data2 0x0000
|
|
||||||
pushl 8(ap)
|
|
||||||
movl $Im3,ap
|
|
||||||
chmk (ap)+ ! restore default handler
|
|
||||||
movl $Im5,ap
|
|
||||||
chmk (ap)+ ! get current signal mask
|
|
||||||
bicl3 $0x80,r0,Im4+6 ! and remove the 8th bit
|
|
||||||
movl $Im4,ap
|
|
||||||
chmk (ap)+ ! and
|
|
||||||
movl (sp)+,ap
|
|
||||||
pushl Itab [ap]
|
|
||||||
jsb .trp
|
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+
|
|
||||||
ret
|
|
||||||
|
|
||||||
.sect .data
|
.sect .data
|
||||||
Im1:
|
|
||||||
.data2 SYS_sigvec
|
|
||||||
.data4 3
|
|
||||||
.data4 8
|
|
||||||
.data4 Im1a
|
|
||||||
.data4 0
|
|
||||||
Im3:
|
|
||||||
.data2 SYS_sigvec
|
|
||||||
.data4 3
|
|
||||||
.data4 8
|
|
||||||
.data4 0
|
|
||||||
.data4 0
|
|
||||||
Im4:
|
|
||||||
.data2 SYS_sigsetmask
|
|
||||||
.data4 1
|
|
||||||
.data4 0
|
|
||||||
Im5:
|
|
||||||
.data2 SYS_sigblock
|
|
||||||
.data4 1
|
|
||||||
.data4 0
|
|
||||||
Im1a:
|
|
||||||
.data4 Isig8
|
|
||||||
.data4 0
|
|
||||||
.data4 0
|
|
||||||
Im2:
|
Im2:
|
||||||
.data2 1
|
.data2 1
|
||||||
.data4 1
|
.data4 1
|
||||||
.data4 0
|
.data4 0
|
||||||
|
.data2 0
|
||||||
.reghp:
|
.reghp:
|
||||||
.data4 __end
|
.data4 __end
|
||||||
.limhp:
|
.limhp:
|
||||||
|
@ -93,15 +50,3 @@ hol0:
|
||||||
.space 4
|
.space 4
|
||||||
.trpim:
|
.trpim:
|
||||||
.data4 0
|
.data4 0
|
||||||
Itab:
|
|
||||||
.data4 0
|
|
||||||
.data4 EIOVFL
|
|
||||||
.data4 EIDIVZ
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
.data4 EILLINS
|
|
||||||
.data4 EARRAY
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
|
|
|
@ -28,50 +28,18 @@
|
||||||
pushl r0
|
pushl r0
|
||||||
pushl r2
|
pushl r2
|
||||||
pushl r1
|
pushl r1
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+ ! catch floating point exception
|
|
||||||
calls $3,_m_a_i_n
|
calls $3,_m_a_i_n
|
||||||
movl $Im2,ap
|
movl $Im2,ap
|
||||||
movl r0,6(ap)
|
movl r0,6(ap)
|
||||||
chmk (ap)+
|
chmk (ap)+
|
||||||
halt
|
halt
|
||||||
|
|
||||||
.align 1
|
|
||||||
Isig8:
|
|
||||||
.data2 0x0000
|
|
||||||
pushl 8(ap)
|
|
||||||
movl (sp)+,ap
|
|
||||||
pushl Itab [ap]
|
|
||||||
jsb .trp
|
|
||||||
movl $Im1,ap
|
|
||||||
chmk (ap)+
|
|
||||||
ret
|
|
||||||
|
|
||||||
.sect .rom
|
|
||||||
Im1:
|
|
||||||
.data2 48
|
|
||||||
.data4 2
|
|
||||||
.data4 8
|
|
||||||
.data4 Isig8
|
|
||||||
|
|
||||||
Itab:
|
|
||||||
.data4 0
|
|
||||||
.data4 EIOVFL
|
|
||||||
.data4 EIDIVZ
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
.data4 EILLINS
|
|
||||||
.data4 EARRAY
|
|
||||||
.data4 EFOVFL
|
|
||||||
.data4 EFDIVZ
|
|
||||||
.data4 EFUNFL
|
|
||||||
|
|
||||||
.sect .data
|
.sect .data
|
||||||
Im2:
|
Im2:
|
||||||
.data2 1
|
.data2 1
|
||||||
.data4 1
|
.data4 1
|
||||||
.data4 0
|
.data4 0
|
||||||
|
.data2 0
|
||||||
.reghp:
|
.reghp:
|
||||||
.data4 __end
|
.data4 __end
|
||||||
.limhp:
|
.limhp:
|
||||||
|
|
Loading…
Reference in a new issue