Resync the GNU assembly to the MASM code.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@192 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
bbahnsen 2006-05-17 23:30:57 +00:00
parent 88758fe28d
commit 7962c48c97
4 changed files with 138 additions and 153 deletions

View File

@ -19,12 +19,11 @@
#
#------------------------------------------------------------------------------
.386:
.code:
.global _DivU64x32
_DivU64x32:
.global _InternalMathDivU64x32
_InternalMathDivU64x32:
movl 8(%esp),%eax
movl 12(%esp),%ecx
xorl %edx,%edx
@ -34,6 +33,3 @@ _DivU64x32:
divl %ecx
popl %edx
ret

View File

@ -19,21 +19,18 @@
#
#------------------------------------------------------------------------------
.686:
#.MODEL flat,C
.code:
.global _LShiftU64
_LShiftU64:
movb 12(%esp),%cl
xorl %eax,%eax
movl 4(%esp),%edx
testb $32,%cl
.global _InternalMathLShiftU64
_InternalMathLShiftU64:
movb 12(%esp), %cl
xorl %eax, %eax
movl 4(%esp), %edx
testb $32, %cl
cmovz %edx, %eax
cmovz 8(%esp), %edx
shldl %cl,%eax,%edx
shll %cl,%eax
cmovz 0x8(%esp), %edx
shld %cl,%eax,%edx
shl %cl, %eax
ret

View File

@ -19,18 +19,14 @@
#
#------------------------------------------------------------------------------
.386:
.code:
.global _MultU64x32
_MultU64x32:
.global _InternalMathMultU64x32
_InternalMathMultU64x32:
movl 12(%esp),%ecx
movl %ecx,%eax
imull 8(%esp),%ecx
mull 4(%esp)
mull 0x4(%esp)
addl %ecx,%edx
ret

View File

@ -19,21 +19,17 @@
#
#------------------------------------------------------------------------------
.686:
.code:
.global _RShiftU64
_RShiftU64:
.global InternalMathRShiftU64
_InternalMathRShiftU64:
movb 12(%esp),%cl
xorl %edx,%edx
movl 8(%esp),%eax
testb $32,%cl
cmovz %eax, %edx
cmovz 4(%esp), %eax
cmovz 0x4(%esp), %eax
shrdl %cl,%edx,%eax
shrl %cl,%edx
shr %cl,%edx
ret