mirror of
https://github.com/FDOS/kernel.git
synced 2025-07-26 07:15:03 +02:00
Create init varieties for unsigned long helper functions.
An INITPATCH is used to make sure the correct symbols are used. The GCC kernel now shows the copyright string and boots a little further.
This commit is contained in:
parent
97003a8aca
commit
9b5b2e7d60
@ -889,23 +889,26 @@ __U4D:
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%ifdef gcc
|
%ifdef gcc
|
||||||
global ___udivsi3
|
%macro ULONG_HELPERS 1
|
||||||
___udivsi3: call ldivmodu
|
global %1udivsi3
|
||||||
|
%1udivsi3: call %1ldivmodu
|
||||||
ret 8
|
ret 8
|
||||||
|
|
||||||
global ___umodsi3
|
global %1umodsi3
|
||||||
___umodsi3: call ldivmodu
|
%1umodsi3: call %1ldivmodu
|
||||||
mov dx, cx
|
mov dx, cx
|
||||||
mov ax, bx
|
mov ax, bx
|
||||||
ret 8
|
ret 8
|
||||||
|
|
||||||
ldivmodu: LDIVMODU
|
%1ldivmodu: LDIVMODU
|
||||||
|
|
||||||
global ___ashlsi3
|
global %1ashlsi3
|
||||||
___ashlsi3: LSHLU
|
%1ashlsi3: LSHLU
|
||||||
|
|
||||||
global ___lshrsi3
|
global %1lshrsi3
|
||||||
___lshrsi3: LSHRU
|
%1lshrsi3: LSHRU
|
||||||
|
%endmacro
|
||||||
|
ULONG_HELPERS ___
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
times 0xd0 - ($-begin_hma) db 0
|
times 0xd0 - ($-begin_hma) db 0
|
||||||
@ -1146,3 +1149,7 @@ _TEXT_DGROUP dw DGROUP
|
|||||||
segment INIT_TEXT
|
segment INIT_TEXT
|
||||||
global _INIT_DGROUP
|
global _INIT_DGROUP
|
||||||
_INIT_DGROUP dw DGROUP
|
_INIT_DGROUP dw DGROUP
|
||||||
|
|
||||||
|
%ifdef gcc
|
||||||
|
ULONG_HELPERS _init_
|
||||||
|
%endif
|
||||||
|
@ -45,7 +45,7 @@ DIRSEP=/
|
|||||||
RM=rm -f
|
RM=rm -f
|
||||||
CP=cp
|
CP=cp
|
||||||
ECHOTO=echo>>
|
ECHOTO=echo>>
|
||||||
INITPATCH=@echo > /dev/null
|
INITPATCH=objcopy --redefine-sym ___umodsi3=_init_umodsi3 --redefine-sym ___udivsi3=_init_udivsi3 --redefine-sym ___ashlsi3=_init_ashlsi3 --redefine-sym ___lshrsi3=_init_lshrsi3
|
||||||
CLDEF=1
|
CLDEF=1
|
||||||
CLT=gcc -DDOSC_TIME_H -I../hdr -o $@
|
CLT=gcc -DDOSC_TIME_H -I../hdr -o $@
|
||||||
CLC=$(CLT)
|
CLC=$(CLT)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user