[pypy-svn] r66857 - pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin
pedronis at codespeak.net
pedronis at codespeak.net
Sun Aug 16 16:49:43 CEST 2009
Author: pedronis
Date: Sun Aug 16 16:49:43 2009
New Revision: 66857
Added:
pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track2.s (contents, props changed)
pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track8.s (contents, props changed)
Log:
some more test cases for darwin too
Added: pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track2.s
==============================================================================
--- (empty file)
+++ pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track2.s Sun Aug 16 16:49:43 2009
@@ -0,0 +1,191 @@
+.globl _pypy_g_populate
+_pypy_g_populate:
+L2135:
+ subl $76, %esp
+ movl %esi, 64(%esp)
+ movl 80(%esp), %esi
+ movl %ebx, 60(%esp)
+ call L2175
+"L00000000060$pb":
+L2175:
+ popl %ebx
+ movl %edi, 68(%esp)
+ testl %esi, %esi
+ movl %ebp, 72(%esp)
+ jle L2169
+L2137:
+L2138:
+ movl L__LLstacktoobig_stack_base_pointer$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ leal 47(%esp), %edx
+ subl (%eax), %edx
+ movl L__LLstacktoobig_stack_min$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ cmpl (%eax), %edx
+ jl L2139
+ movl L__LLstacktoobig_stack_max$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ cmpl (%eax), %edx
+ jg L2139
+L2171:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ movl (%edi), %ebp
+ testl %ebp, %ebp
+ je L2172
+L2169:
+ movl 60(%esp), %ebx
+ movl 64(%esp), %esi
+ movl 68(%esp), %edi
+ movl 72(%esp), %ebp
+ addl $76, %esp
+ ret
+ .align 4,0x90
+L2139:
+ call L_LL_stack_too_big_slowpath$stub
+ ;; expected {76(%esp) | 60(%esp), 64(%esp), 68(%esp), 72(%esp) | 84(%esp)}
+ testl %eax, %eax
+ je L2171
+L2142:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ movl L_pypy_g_exceptions_RuntimeError_vtable$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %eax, (%edi)
+ movl (%edi), %ebp
+ movl L_pypy_g_exceptions_RuntimeError$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ testl %ebp, %ebp
+ movl %eax, 4(%edi)
+ jne L2169
+L2143:
+ .align 4,0x90
+L2172:
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000060$pb"(%ebx), %ebp
+ decl %esi
+ movl %esi, 28(%esp)
+ movl 12(%ebp), %edx
+ movl 80(%ebp), %eax
+ subl %edx, %eax
+ cmpl $15, %eax
+ jle L2144
+L2146:
+ leal 16(%edx), %eax
+ movl %edx, %ecx
+ movl $31, (%edx)
+ movl %eax, 12(%ebp)
+L2147:
+ movl L___gcnoreorderhack$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ movl 84(%esp), %esi
+ /* GCROOT %esi */
+ testl %ecx, %ecx
+ je L2169
+L2148:
+ movl L_pypy_g_pypy_translator_goal_gcbench_Node_vtable$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000060$pb"(%ebx), %ebp
+ movl $0, 8(%edx)
+ movl $0, 12(%edx)
+ movl %eax, 4(%edx)
+ movl %edx, 8(%esi)
+ movl 12(%ebp), %edx
+ movl 80(%ebp), %eax
+ subl %edx, %eax
+ cmpl $15, %eax
+ jle L2149
+L2151:
+ leal 16(%edx), %eax
+ movl $31, (%edx)
+ movl %eax, 12(%ebp)
+ movl %edx, %eax
+L2152:
+ /* GCROOT %esi */
+ testl %eax, %eax
+ je L2169
+L2153:
+ movl L_pypy_g_pypy_translator_goal_gcbench_Node_vtable$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl $0, 8(%edx)
+ movl $0, 12(%edx)
+ movl %eax, 4(%edx)
+ movl 8(%esi), %eax
+ movl %edx, 12(%esi)
+ movl %eax, 4(%esp)
+ movl 28(%esp), %eax
+ movl %eax, (%esp)
+ call _pypy_g_populate
+ ;; expected {76(%esp) | 60(%esp), 64(%esp), 68(%esp), 72(%esp) | %esi}
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %esi, %edx
+ /* GCROOT %edx */
+ movl (%eax), %esi
+ testl %esi, %esi
+ jne L2169
+L2154:
+ movl 12(%edx), %eax
+ movl %eax, 4(%esp)
+ movl 28(%esp), %eax
+ movl %eax, (%esp)
+ call _pypy_g_populate
+ ;; expected {76(%esp) | 60(%esp), 64(%esp), 68(%esp), 72(%esp) | }
+ jmp L2169
+L2144:
+ movl $16, 4(%esp)
+ xorl %esi, %esi
+ movl %ebp, (%esp)
+ call _pypy_g_SemiSpaceGC_try_obtain_free_space
+ ;; expected {76(%esp) | 60(%esp), 64(%esp), 68(%esp), 72(%esp) | 84(%esp)}
+
+ movl (%edi), %edx
+ testl %edx, %edx
+ je L2173
+L2164:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ xorl %ecx, %ecx
+ xorl %edx, %edx
+ movl (%eax), %eax
+ testl %eax, %eax
+ jne L2147
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000060$pb"(%ebx), %ebp
+ movl %esi, %edx
+ jmp L2146
+L2149:
+ movl $16, 4(%esp)
+ movl %ebp, (%esp)
+ call _pypy_g_SemiSpaceGC_try_obtain_free_space
+ ;; expected {76(%esp) | 60(%esp), 64(%esp), 68(%esp), 72(%esp) | %esi}
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ xorl %edx, %edx
+ movl (%edi), %ecx
+ testl %ecx, %ecx
+ je L2174
+L2157:
+ movl (%edi), %ecx
+ testl %ecx, %ecx
+ je L2160
+ movl L___gcnoreorderhack$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ xorl %eax, %eax
+ xorl %edx, %edx
+ jmp L2152
+L2173:
+L2162:
+ testb %al, %al
+ jne L2165
+L2166:
+ movl L_pypy_g_exceptions_MemoryError_vtable$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %eax, (%edi)
+ movl L_pypy_g_exceptions_MemoryError_1$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %eax, 4(%edi)
+ jmp L2164
+L2160:
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000060$pb"(%ebx), %ebp
+ movl L___gcnoreorderhack$non_lazy_ptr-"L00000000060$pb"(%ebx), %edi
+ jmp L2151
+L2174:
+L2155:
+ testb %al, %al
+ jne L2158
+L2159:
+ movl L_pypy_g_exceptions_MemoryError_vtable$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %eax, (%edi)
+ movl L_pypy_g_exceptions_MemoryError_1$non_lazy_ptr-"L00000000060$pb"(%ebx), %eax
+ movl %eax, 4(%edi)
+ jmp L2157
+L2165:
+ movl 12(%ebp), %esi
+ jmp L2164
+L2158:
+ movl 12(%ebp), %edx
+ jmp L2157
+ .align 4,0x90
Added: pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track8.s
==============================================================================
--- (empty file)
+++ pypy/branch/pyjitpl5/pypy/translator/c/gcc/test/darwin/track8.s Sun Aug 16 16:49:43 2009
@@ -0,0 +1,203 @@
+.globl _pypy_g_foo
+_pypy_g_foo:
+L1506:
+ subl $140, %esp
+ movl %esi, 128(%esp)
+ movl 144(%esp), %esi
+ movl %ebx, 124(%esp)
+ call L1534
+"L00000000044$pb":
+L1534:
+ popl %ebx
+ movl %edi, 132(%esp)
+ testl %esi, %esi
+ movl %ebp, 136(%esp)
+ jle L1529
+L1508:
+L1509:
+ movl L__LLstacktoobig_stack_base_pointer$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ leal 111(%esp), %edx
+ subl (%eax), %edx
+ movl L__LLstacktoobig_stack_min$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ cmpl (%eax), %edx
+ jl L1510
+ movl L__LLstacktoobig_stack_max$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ cmpl (%eax), %edx
+ jg L1510
+L1531:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000044$pb"(%ebx), %esi
+ movl (%esi), %ecx
+ testl %ecx, %ecx
+ je L1532
+L1529:
+ movl 124(%esp), %ebx
+ movl 128(%esp), %esi
+ movl 132(%esp), %edi
+ movl 136(%esp), %ebp
+ addl $140, %esp
+ ret
+ .align 4,0x90
+L1510:
+ call L_LL_stack_too_big_slowpath$stub
+ ;; expected {140(%esp) | 124(%esp), 128(%esp), 132(%esp), 136(%esp) | 148(%esp), 152(%esp), 156(%esp), 160(%esp), 164(%esp), 168(%esp)}
+ testl %eax, %eax
+ je L1531
+L1513:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000044$pb"(%ebx), %esi
+ movl L_pypy_g_exceptions_RuntimeError_vtable$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ movl %eax, (%esi)
+ movl (%esi), %ecx
+ movl L_pypy_g_exceptions_RuntimeError$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ testl %ecx, %ecx
+ movl %eax, 4(%esi)
+ jne L1529
+L1514:
+ .align 4,0x90
+L1532:
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000044$pb"(%ebx), %edi
+ movl 12(%edi), %edx
+ movl 80(%edi), %eax
+ subl %edx, %eax
+ cmpl $7, %eax
+ jle L1515
+L1517:
+ leal 8(%edx), %eax
+ movl $4, (%edx)
+ movl %eax, 12(%edi)
+ movl %edx, %edi
+L1518:
+ movl L___gcnoreorderhack$non_lazy_ptr-"L00000000044$pb"(%ebx), %esi
+ movl 168(%esp), %eax
+ movl 164(%esp), %ebp
+ /* GCROOT %eax */
+ /* GCROOT %ebp */
+ movl %eax, 48(%esp)
+ movl 152(%esp), %eax
+ /* GCROOT %eax */
+ movl %eax, 52(%esp)
+ movl 156(%esp), %eax
+ /* GCROOT %eax */
+ movl %eax, 56(%esp)
+ movl 160(%esp), %eax
+ /* GCROOT %eax */
+ movl %eax, 60(%esp)
+ movl 148(%esp), %eax
+ /* GCROOT %eax */
+ testl %edx, %edx
+ movl %eax, 64(%esp)
+ je L1529
+L1519:
+ movl L_pypy_g_src8_A_vtable$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ movl %eax, 4(%edi)
+ movl 144(%esp), %edx
+ movl %edi, 24(%esp)
+ movl %edi, 20(%esp)
+ movl %edi, 16(%esp)
+ decl %edx
+ movl %edx, 44(%esp)
+ movl %edi, 12(%esp)
+ movl %edi, 8(%esp)
+ movl %edi, 4(%esp)
+ movl %edx, (%esp)
+ call _pypy_g_foo
+ ;; expected {140(%esp) | 124(%esp), 128(%esp), 132(%esp), 136(%esp) | %edi, %ebp, 48(%esp), 52(%esp), 56(%esp), 60(%esp), 64(%esp)}
+ movl 56(%esp), %edx
+ /* GCROOT %edx */
+ movl %edx, 76(%esp)
+ movl 60(%esp), %edx
+ /* GCROOT %edx */
+ movl %edx, 80(%esp)
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000044$pb"(%ebx), %edx
+ /* GCROOT %ebp */
+ movl 48(%esp), %eax
+ movl %ebp, 72(%esp)
+ movl 52(%esp), %ebp
+ movl (%edx), %edx
+ /* GCROOT %eax */
+ /* GCROOT %ebp */
+ movl %eax, 68(%esp)
+ movl %edi, %eax
+ movl 64(%esp), %edi
+ /* GCROOT %eax */
+ /* GCROOT %edi */
+ testl %edx, %edx
+ jne L1529
+L1520:
+ movl %eax, 24(%esp)
+ movl %eax, 20(%esp)
+ movl %eax, 16(%esp)
+ movl %eax, 12(%esp)
+ movl %eax, 8(%esp)
+ movl %eax, 4(%esp)
+ movl 44(%esp), %eax
+ movl %eax, (%esp)
+ call _pypy_g_foo
+ ;; expected {140(%esp) | 124(%esp), 128(%esp), 132(%esp), 136(%esp) | %edi, %ebp, 68(%esp), 72(%esp), 76(%esp), 80(%esp)}
+ movl 68(%esp), %edx
+ movl 72(%esp), %eax
+ /* GCROOT %edx */
+ /* GCROOT %eax */
+ movl %edx, 84(%esp)
+ movl 80(%esp), %ecx
+ movl %eax, 88(%esp)
+ movl 76(%esp), %edx
+ movl %edi, %eax
+ /* GCROOT %edx */
+ /* GCROOT %ecx */
+ /* GCROOT %eax */
+ movl %edx, 92(%esp)
+ movl %ebp, %edx
+ /* GCROOT %edx */
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000044$pb"(%ebx), %esi
+ movl (%esi), %esi
+ testl %esi, %esi
+ jne L1529
+L1521:
+ movl %eax, 24(%esp)
+ movl 92(%esp), %eax
+ movl %edx, 20(%esp)
+ movl 84(%esp), %esi
+ movl 88(%esp), %edx
+ movl %ecx, 12(%esp)
+ movl %eax, 16(%esp)
+ movl 44(%esp), %eax
+ movl %esi, 4(%esp)
+ movl %edx, 8(%esp)
+ movl %eax, (%esp)
+ call _pypy_g_foo
+ ;; expected {140(%esp) | 124(%esp), 128(%esp), 132(%esp), 136(%esp) | }
+ jmp L1529
+ .align 4,0x90
+L1515:
+ movl $8, 4(%esp)
+ movl %edi, (%esp)
+ call _pypy_g_SemiSpaceGC_try_obtain_free_space
+ ;; expected {140(%esp) | 124(%esp), 128(%esp), 132(%esp), 136(%esp) | 148(%esp), 152(%esp), 156(%esp), 160(%esp), 164(%esp), 168(%esp)}
+ movl (%esi), %edx
+ xorl %ecx, %ecx
+ testl %edx, %edx
+ je L1533
+L1524:
+ movl L_pypy_g_ExcData$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ xorl %edx, %edx
+ xorl %edi, %edi
+ movl (%eax), %eax
+ testl %eax, %eax
+ jne L1518
+ movl L_pypy_g_pypy_rpython_memory_gc_semispace_SemiSpaceGC$non_lazy_ptr-"L00000000044$pb"(%ebx), %edi
+ movl %ecx, %edx
+ jmp L1517
+L1533:
+L1522:
+ testb %al, %al
+ jne L1525
+L1526:
+ movl L_pypy_g_exceptions_MemoryError_vtable$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ movl %eax, (%esi)
+ movl L_pypy_g_exceptions_MemoryError_1$non_lazy_ptr-"L00000000044$pb"(%ebx), %eax
+ movl %eax, 4(%esi)
+ jmp L1524
+L1525:
+ movl 12(%edi), %ecx
+ jmp L1524
+ .align 4,0x90
\ No newline at end of file
More information about the Pypy-commit
mailing list