diff options
author | tma <tma@edf5b092-35ff-0310-97b2-ce42778d08ea> | 2005-10-04 15:18:22 +0000 |
---|---|---|
committer | tma <tma@edf5b092-35ff-0310-97b2-ce42778d08ea> | 2005-10-04 15:18:22 +0000 |
commit | 1c7864f6d4380797b07c7149111066b61f69f689 (patch) | |
tree | 59057c26f97fdf846b0193e852eeea7e707a9e20 /code/tools/lcc/x86/win32/tst/array.sbk | |
parent | 91db83f0cc7c564ff6c853eeb4e790732dae81cd (diff) | |
download | ioquake3-aero-1c7864f6d4380797b07c7149111066b61f69f689.tar.gz ioquake3-aero-1c7864f6d4380797b07c7149111066b61f69f689.zip |
* Moved lcc and q3asm into code/tools
git-svn-id: svn://svn.icculus.org/quake3/trunk@134 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/tools/lcc/x86/win32/tst/array.sbk')
-rw-r--r-- | code/tools/lcc/x86/win32/tst/array.sbk | 240 |
1 files changed, 240 insertions, 0 deletions
diff --git a/code/tools/lcc/x86/win32/tst/array.sbk b/code/tools/lcc/x86/win32/tst/array.sbk new file mode 100644 index 0000000..d3f9f8f --- /dev/null +++ b/code/tools/lcc/x86/win32/tst/array.sbk @@ -0,0 +1,240 @@ +.486 +.model flat +extrn __fltused:near +extrn __ftol:near +public _main +_TEXT segment +_main: +push ebx +push esi +push edi +push ebp +mov ebp,esp +sub esp,60 +mov dword ptr (-8)[ebp],0 +L2: +mov dword ptr (-4)[ebp],0 +L6: +mov edi,dword ptr (-4)[ebp] +mov esi,dword ptr (-8)[ebp] +mov ebx,esi +sal ebx,4 +imul esi,esi,1000 +lea esi,[edi][esi] +mov dword ptr (_x)[ebx][edi*4],esi +L7: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L6 +mov edi,dword ptr (-8)[ebp] +mov esi,edi +sal esi,4 +lea esi,(_x)[esi] +mov dword ptr (_y)[edi*4],esi +L3: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L2 +call _f +add esp,0 +mov dword ptr (-8)[ebp],0 +L10: +mov edi,dword ptr (-8)[ebp] +mov esi,edi +sal esi,4 +lea esi,(-60)[ebp][esi] +mov dword ptr (-12)[ebp],esi +mov dword ptr (_y)[edi*4],esi +mov dword ptr (-4)[ebp],0 +L14: +mov edi,dword ptr (-4)[ebp] +lea edi,[edi*4] +mov esi,dword ptr (-12)[ebp] +mov ebx,dword ptr (-8)[ebp] +sal ebx,4 +mov ebx,dword ptr (_x)[ebx][edi] +mov dword ptr [esi][edi],ebx +L15: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L14 +L11: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L10 +lea edi,(_y) +push edi +lea edi,(-60)[ebp] +push edi +call _g +add esp,8 +mov eax,0 +L1: +mov esp,ebp +pop ebp +pop edi +pop esi +pop ebx +ret +public _f +_f: +push ebx +push esi +push edi +push ebp +mov ebp,esp +sub esp,8 +mov dword ptr (-8)[ebp],0 +L19: +mov dword ptr (-4)[ebp],0 +L23: +mov edi,dword ptr (-4)[ebp] +mov esi,dword ptr (-8)[ebp] +sal esi,4 +mov edi,dword ptr (_x)[esi][edi*4] +push edi +lea edi,(L27) +push edi +call _printf +add esp,8 +L24: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L23 +L20: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L19 +lea edi,(L28) +push edi +call _printf +add esp,4 +mov dword ptr (-8)[ebp],0 +L29: +mov dword ptr (-4)[ebp],0 +L33: +mov edi,dword ptr (-4)[ebp] +mov esi,dword ptr (-8)[ebp] +mov esi,dword ptr (_y)[esi*4] +mov edi,dword ptr [esi][edi*4] +push edi +lea edi,(L27) +push edi +call _printf +add esp,8 +L34: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L33 +L30: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L29 +lea edi,(L28) +push edi +call _printf +add esp,4 +mov eax,0 +L18: +mov esp,ebp +pop ebp +pop edi +pop esi +pop ebx +ret +public _g +_g: +push ebx +push esi +push edi +push ebp +mov ebp,esp +sub esp,8 +mov dword ptr (-8)[ebp],0 +L38: +mov dword ptr (-4)[ebp],0 +L42: +mov edi,dword ptr (-4)[ebp] +mov esi,dword ptr (-8)[ebp] +sal esi,4 +mov ebx,dword ptr (20)[ebp] +lea esi,[ebx][esi] +mov edi,dword ptr [esi][edi*4] +push edi +lea edi,(L27) +push edi +call _printf +add esp,8 +L43: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L42 +L39: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L38 +lea edi,(L28) +push edi +call _printf +add esp,4 +mov dword ptr (-8)[ebp],0 +L46: +mov dword ptr (-4)[ebp],0 +L50: +mov edi,dword ptr (-4)[ebp] +mov esi,dword ptr (-8)[ebp] +mov ebx,dword ptr (24)[ebp] +mov esi,dword ptr [ebx][esi*4] +mov edi,dword ptr [esi][edi*4] +push edi +lea edi,(L27) +push edi +call _printf +add esp,8 +L51: +inc dword ptr (-4)[ebp] +cmp dword ptr (-4)[ebp],4 +jl L50 +L47: +inc dword ptr (-8)[ebp] +cmp dword ptr (-8)[ebp],3 +jl L46 +lea edi,(L28) +push edi +call _printf +add esp,4 +mov eax,0 +L37: +mov esp,ebp +pop ebp +pop edi +pop esi +pop ebx +ret +_TEXT ends +extrn _printf:near +_TEXT segment +_TEXT ends +_DATA segment +public _y +align 4 +_y label byte +db 12 dup (0) +public _x +align 4 +_x label byte +db 48 dup (0) +_DATA ends +_TEXT segment +align 1 +L28 label byte +db 10 +db 0 +align 1 +L27 label byte +db 32 +db 37 +db 100 +db 0 +_TEXT ends +end |