File: track0.s

package info (click to toggle)
pypy 5.6.0%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 97,040 kB
  • ctags: 185,069
  • sloc: python: 1,147,862; ansic: 49,642; cpp: 5,245; asm: 5,169; makefile: 529; sh: 481; xml: 232; lisp: 45
file content (159 lines) | stat: -rw-r--r-- 2,934 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
_PyObject_Realloc:
LFB118:
	movq	%rbx, -32(%rsp)
LCFI86:
	movq	%rbp, -24(%rsp)
LCFI87:
	movq	%r12, -16(%rsp)
LCFI88:
	movq	%r13, -8(%rsp)
LCFI89:
	subq	$40, %rsp
LCFI90:
	movq	%rdi, %rbx
	testq	%rdi, %rdi
	je	L384
	movq	%rdi, %rbp
	andq	$-4096, %rbp
	movl	32(%rbp), %edx
	movl	_narenas(%rip), %eax
	cmpl	%eax, %edx
	jae	L360
	movq	_arenas(%rip), %rax
	mov	%edx, %edx
	movq	%rdi, %rcx
	subq	(%rax,%rdx,8), %rcx
	cmpq	$262143, %rcx
	ja	L360
	movl	36(%rbp), %ecx
	incl	%ecx
	leal	0(,%rcx,8), %r12d
	mov	%r12d, %eax
	cmpq	%rax, %rsi
	ja	L363
	leaq	0(,%rsi,4), %rdx
	sall	$4, %ecx
	leal	(%rcx,%r12), %eax
	mov	%eax, %eax
	cmpq	%rax, %rdx
	ja	L365
	movl	%esi, %r12d
L363:
	movq	%rsi, %rdi
	call	_PyObject_Malloc
	;; expected {40(%rsp) | 8(%rsp), 24(%rsp), 32(%rsp), %r14, %r15, 16(%rsp) | }
	testq	%rax, %rax
	je	L367
	mov	%r12d, %edx
	movq	%rbx, %rsi
	movq	%rax, %rdi
	call	_memcpy
	;; expected {40(%rsp) | 8(%rsp), 24(%rsp), 32(%rsp), %r14, %r15, 16(%rsp) | }
	movl	32(%rbp), %edx
	movl	_narenas(%rip), %eax
	cmpl	%eax, %edx
	jae	L369
	movq	_arenas(%rip), %rax
	mov	%edx, %edx
	movq	%rbx, %rcx
	subq	(%rax,%rdx,8), %rcx
	cmpq	$262143, %rcx
	jbe	L385
L369:
	movq	%rbx, %rdi
	call	_free
	;; expected {40(%rsp) | 8(%rsp), 24(%rsp), 32(%rsp), %r14, %r15, 16(%rsp) | }
	movq	%r13, %rbx
	jmp	L365
	.align 4,0x90
L360:
	testq	%rsi, %rsi
	jne	L386
	movl	$1, %esi
	movq	%rbx, %rdi
	call	_realloc
	;; expected {40(%rsp) | 8(%rsp), 24(%rsp), 32(%rsp), %r14, %r15, 16(%rsp) | }
	testq	%rax, %rax
	cmovne	%rax, %rbx
L365:
	movq	%rbx, %rax
	movq	8(%rsp), %rbx
	movq	16(%rsp), %rbp
	movq	24(%rsp), %r12
	movq	32(%rsp), %r13
	addq	$40, %rsp
	ret
	.align 4,0x90
L386:
	movq	%rbx, %rdi
	movq	8(%rsp), %rbx
	movq	16(%rsp), %rbp
	movq	24(%rsp), %r12
	movq	32(%rsp), %r13
	addq	$40, %rsp
	jmp	_realloc
L384:
	movq	%rsi, %rdi
	movq	8(%rsp), %rbx
	movq	16(%rsp), %rbp
	movq	24(%rsp), %r12
	movq	32(%rsp), %r13
	addq	$40, %rsp
	jmp	_PyObject_Malloc
L367:
	movq	%r13, %rbx
	jmp	L365
L385:
	movl	(%rbp), %esi
	testl	%esi, %esi
	je	L387
	movq	8(%rbp), %rax
	movq	%rax, (%rbx)
	movq	%rbx, 8(%rbp)
	testq	%rax, %rax
	je	L374
	movl	(%rbp), %eax
	decl	%eax
	movl	%eax, (%rbp)
	testl	%eax, %eax
	jne	L367
	movq	16(%rbp), %rdx
	movq	24(%rbp), %rax
	movq	%rax, 24(%rdx)
	movq	%rdx, 16(%rax)
	movq	_freepools(%rip), %rax
	movq	%rax, 16(%rbp)
	movq	%rbp, _freepools(%rip)
	movq	%r13, %rbx
	jmp	L365
L374:
	movl	(%rbp), %eax
	decl	%eax
	movl	%eax, (%rbp)
	testl	%eax, %eax
	je	L388
	movl	36(%rbp), %eax
	addl	%eax, %eax
	mov	%eax, %eax
	leaq	_usedpools(%rip), %rdx
	movq	(%rdx,%rax,8), %rax
	movq	24(%rax), %rdx
	movq	%rax, 16(%rbp)
	movq	%rdx, 24(%rbp)
	movq	%rbp, 24(%rax)
	movq	%rbp, 16(%rdx)
	movq	%r13, %rbx
	jmp	L365
L387:
	leaq	LC6(%rip), %rcx
	movl	$744, %edx
	leaq	LC7(%rip), %rsi
	leaq	___func__.207211(%rip), %rdi
	call	___assert_rtn
L388:
	leaq	LC6(%rip), %rcx
	movl	$783, %edx
	leaq	LC7(%rip), %rsi
	leaq	___func__.207211(%rip), %rdi
	call	___assert_rtn
LFE118: