Language
Nim
Compiler
nim HEAD Version 1.1.1
Options
Raw compiler options
--asm
$ nim c ./prog.nim --asm
Hello
GAS LISTING /tmp/cci7DG79.s page 1
1 .file "@mprog.nim.c"
2 .intel_syntax noprefix
3 # GNU C11 (Ubuntu 5.4.0-6ubuntu1~16.04.11) version 5.4.0 20160609 (x86_64-linux-gnu)
4 # compiled by GNU C version 5.4.0 20160609, GMP version 6.1.0, MPFR version 3.1.4, MPC version 1.0.
5 # GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
6 # options passed: -I /opt/wandbox/nim-head/lib -I /home/jail
7 # -imultiarch x86_64-linux-gnu /home/jail/.cache/nim/prog_d/@mprog.nim.c
8 # -masm=intel -mtune=generic -march=x86-64
9 # -auxbase-strip /home/jail/.cache/nim/prog_d/@mprog.nim.c.o -g -w
10 # -fverbose-asm -fstack-protector-strong -Wformat -Wformat-security
11 # options enabled: -faggressive-loop-optimizations
12 # -fasynchronous-unwind-tables -fauto-inc-dec -fchkp-check-incomplete-type
13 # -fchkp-check-read -fchkp-check-write -fchkp-instrument-calls
14 # -fchkp-narrow-bounds -fchkp-optimize -fchkp-store-bounds
15 # -fchkp-use-static-bounds -fchkp-use-static-const-bounds
16 # -fchkp-use-wrappers -fcommon -fdelete-null-pointer-checks
17 # -fdwarf2-cfi-asm -fearly-inlining -feliminate-unused-debug-types
18 # -ffunction-cse -fgcse-lm -fgnu-runtime -fgnu-unique -fident
19 # -finline-atomics -fira-hoist-pressure -fira-share-save-slots
20 # -fira-share-spill-slots -fivopts -fkeep-static-consts
21 # -fleading-underscore -flifetime-dse -flto-odr-type-merging -fmath-errno
22 # -fmerge-debug-strings -fpeephole -fprefetch-loop-arrays
23 # -freg-struct-return -fsched-critical-path-heuristic
24 # -fsched-dep-count-heuristic -fsched-group-heuristic -fsched-interblock
25 # -fsched-last-insn-heuristic -fsched-rank-heuristic -fsched-spec
26 # -fsched-spec-insn-heuristic -fsched-stalled-insns-dep -fschedule-fusion
27 # -fsemantic-interposition -fshow-column -fsigned-zeros
28 # -fsplit-ivs-in-unroller -fstack-protector-strong -fstdarg-opt
29 # -fstrict-volatile-bitfields -fsync-libcalls -ftrapping-math
30 # -ftree-coalesce-vars -ftree-cselim -ftree-forwprop -ftree-loop-if-convert
31 # -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize
32 # -ftree-parallelize-loops= -ftree-phiprop -ftree-reassoc -ftree-scev-cprop
33 # -funit-at-a-time -funwind-tables -fverbose-asm -fzero-initialized-in-bss
34 # -m128bit-long-double -m64 -m80387 -malign-stringops
35 # -mavx256-split-unaligned-load -mavx256-split-unaligned-store
36 # -mfancy-math-387 -mfp-ret-in-387 -mfxsr -mglibc -mieee-fp
37 # -mlong-double-80 -mmmx -mno-sse4 -mpush-args -mred-zone -msse -msse2
38 # -mtls-direct-seg-refs -mvzeroupper
39
40 .text
41 .Ltext0:
42 .comm asmcode__y1wnuYq0ojmuzO6of1kOGg,8,8
43 .section .rodata
44 .align 16
47 TM__3gsRviFqqgOPGusKWyM6fw_3:
48 # Sup:
49 # len:
50 0000 05000000 .quad 5
50 00000000
51 # reserved:
52 0008 05000000 .quad 4611686018427387909
52 00000040
53 # data:
54 0010 48656C6C .string "Hello"
54 6F00
55 0016 0000 .zero 2
56 .globl TM__3gsRviFqqgOPGusKWyM6fw_2
GAS LISTING /tmp/cci7DG79.s page 2
57 .align 8
60 TM__3gsRviFqqgOPGusKWyM6fw_2:
61 0018 00000000 .quad TM__3gsRviFqqgOPGusKWyM6fw_3
61 00000000
62 .align 32
65 TM__3gsRviFqqgOPGusKWyM6fw_5:
66 # Sup:
67 # len:
68 0020 2D000000 .quad 45
68 00000000
69 # reserved:
70 0028 2D000000 .quad 4611686018427387949
70 00000040
71 # data:
72 0030 2F686F6D .string "/home/jail/.cache/nim/prog_d/@mprog.nim.c.asm"
72 652F6A61
72 696C2F2E
72 63616368
72 652F6E69
73 005e 0000 .zero 2
74 .text
76 TM__3gsRviFqqgOPGusKWyM6fw_4:
77 .LFB0:
78 .file 1 "/home/jail/.cache/nim/prog_d/@mprog.nim.c"
79 .loc 1 212 0
80 .cfi_startproc
81 0000 55 push rbp #
82 .cfi_def_cfa_offset 16
83 .cfi_offset 6, -16
84 0001 4889E5 mov rbp, rsp #,
85 .cfi_def_cfa_register 6
86 .loc 1 213 0
87 0004 488B0500 mov rax, QWORD PTR asmcode__y1wnuYq0ojmuzO6of1kOGg[rip] # D.2433, asmcode__y1wnuYq0ojmuzO6of1kOGg
87 000000
88 000b BE000000 mov esi, 0 #,
88 00
89 0010 4889C7 mov rdi, rax #, D.2433
90 0013 E8000000 call nimGCvisit #
90 00
91 .loc 1 214 0
92 0018 90 nop
93 0019 5D pop rbp #
94 .cfi_def_cfa 7, 8
95 001a C3 ret
96 .cfi_endproc
97 .LFE0:
100 nimFrame:
101 .LFB1:
102 .loc 1 215 0
103 .cfi_startproc
104 001b 55 push rbp #
105 .cfi_def_cfa_offset 16
106 .cfi_offset 6, -16
107 001c 4889E5 mov rbp, rsp #,
108 .cfi_def_cfa_register 6
109 001f 4883EC20 sub rsp, 32 #,
110 0023 48897DE8 mov QWORD PTR [rbp-24], rdi # s, s
GAS LISTING /tmp/cci7DG79.s page 3
111 .loc 1 216 0
112 0027 48C745F8 mov QWORD PTR [rbp-8], 0 # T1_,
112 00000000
113 .loc 1 218 0
114 002f 488B0500 mov rax, QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip] # D.2434, framePtr__HRfVMH3jYeBJz6Q6X9b6
114 000000
115 0036 4885C0 test rax, rax # D.2434
116 0039 750A jne .L9 #,
117 .loc 1 219 0
118 003b 48C745F8 mov QWORD PTR [rbp-8], 0 # T1_,
118 00000000
119 .loc 1 221 0
120 0043 EB17 jmp .L5 #
121 .L9:
122 .loc 1 218 0
123 0045 90 nop
124 .L4:
125 .loc 1 224 0
126 0046 488B0500 mov rax, QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip] # D.2434, framePtr__HRfVMH3jYeBJz6Q6X9b6
126 000000
127 004d 0FB74022 movzx eax, WORD PTR [rax+34] # D.2435, _7->calldepth
128 0051 83C001 add eax, 1 # D.2436,
129 0054 480FBFC0 movsx rax, ax # tmp96, D.2435
130 0058 488945F8 mov QWORD PTR [rbp-8], rax # T1_, tmp96
131 .L5:
132 .loc 1 227 0
133 005c 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp97, T1_
134 0060 89C2 mov edx, eax # D.2435, tmp97
135 0062 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp98, s
136 0066 66895022 mov WORD PTR [rax+34], dx # s_14(D)->calldepth, D.2435
137 .loc 1 228 0
138 006a 488B1500 mov rdx, QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip] # D.2434, framePtr__HRfVMH3jYeBJz6Q6X9b6
138 000000
139 0071 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp99, s
140 0075 488910 mov QWORD PTR [rax], rdx # s_14(D)->prev, D.2434
141 .loc 1 229 0
142 0078 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp100, s
143 007c 48890500 mov QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip], rax # framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw, tmp
143 000000
144 .loc 1 231 0
145 0083 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp101, s
146 0087 0FB74022 movzx eax, WORD PTR [rax+34] # D.2435, s_14(D)->calldepth
147 008b 663DD007 cmp ax, 2000 # D.2435,
148 008f 7507 jne .L10 #,
149 .loc 1 232 0
150 0091 E8000000 call callDepthLimitReached__mMRdr4sgmnykA9aWeM9aDZlw #
150 00
151 .loc 1 235 0
152 0096 EB01 jmp .L7 #
153 .L10:
154 .loc 1 231 0
155 0098 90 nop
156 .L7:
157 .loc 1 235 0
158 0099 90 nop
159 009a C9 leave
160 .cfi_def_cfa 7, 8
GAS LISTING /tmp/cci7DG79.s page 4
161 009b C3 ret
162 .cfi_endproc
163 .LFE1:
166 popFrame:
167 .LFB2:
168 .loc 1 236 0
169 .cfi_startproc
170 009c 55 push rbp #
171 .cfi_def_cfa_offset 16
172 .cfi_offset 6, -16
173 009d 4889E5 mov rbp, rsp #,
174 .cfi_def_cfa_register 6
175 .loc 1 236 0
176 00a0 488B0500 mov rax, QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip] # D.2437, framePtr__HRfVMH3jYeBJz6Q6X9b6
176 000000
177 00a7 488B00 mov rax, QWORD PTR [rax] # D.2437, _2->prev
178 00aa 48890500 mov QWORD PTR framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw[rip], rax # framePtr__HRfVMH3jYeBJz6Q6X9b6Ptw, D.2
178 000000
179 .loc 1 237 0
180 00b1 90 nop
181 00b2 5D pop rbp #
182 .cfi_def_cfa 7, 8
183 00b3 C3 ret
184 .cfi_endproc
185 .LFE2:
187 .section .rodata
188 .LC0:
189 0060 696E6352 .string "incRef"
189 656600
190 0067 00 .align 8
191 .LC1:
192 0068 2F6F7074 .string "/opt/wandbox/nim-head/lib/system/gc.nim"
192 2F77616E
192 64626F78
192 2F6E696D
192 2D686561
193 .text
195 incRef__AT1eRuflKWyTTBdLjEDZbgsystem:
196 .LFB3:
197 .loc 1 238 0
198 .cfi_startproc
199 00b4 55 push rbp #
200 .cfi_def_cfa_offset 16
201 .cfi_offset 6, -16
202 00b5 4889E5 mov rbp, rsp #,
203 .cfi_def_cfa_register 6
204 00b8 4883EC40 sub rsp, 64 #,
205 00bc 48897DC8 mov QWORD PTR [rbp-56], rdi # c, c
206 .loc 1 238 0
207 00c0 64488B04 mov rax, QWORD PTR fs:40 # tmp94,
207 25280000
207 00
208 00c9 488945F8 mov QWORD PTR [rbp-8], rax # D.2440, tmp94
209 00cd 31C0 xor eax, eax # tmp94
210 00cf 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC0 # FR_.procname,
210 00000000
211 00d7 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
GAS LISTING /tmp/cci7DG79.s page 5
211 00000000
212 00df 48C745E0 mov QWORD PTR [rbp-32], 0 # FR_.line,
212 00000000
213 00e7 66C745F0 mov WORD PTR [rbp-16], 0 # FR_.len,
213 0000
214 00ed 488D45D0 lea rax, [rbp-48] # tmp91,
215 00f1 4889C7 mov rdi, rax #, tmp91
216 00f4 E822FFFF call nimFrame #
216 FF
217 .loc 1 239 0
218 00f9 48C745E0 mov QWORD PTR [rbp-32], 184 # FR_.line,
218 B8000000
219 0101 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
219 00000000
220 .loc 1 240 0
221 0109 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp92, c
222 010d 488B00 mov rax, QWORD PTR [rax] # D.2438, c_9(D)->refcount
223 0110 4883C008 add rax, 8 # D.2439,
224 0114 4889C2 mov rdx, rax # D.2438, D.2439
225 0117 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp93, c
226 011b 488910 mov QWORD PTR [rax], rdx # c_9(D)->refcount, D.2438
227 .loc 1 241 0
228 011e E879FFFF call popFrame #
228 FF
229 .loc 1 242 0
230 0123 90 nop
231 0124 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp95, D.2440
232 0128 64483304 xor rax, QWORD PTR fs:40 # tmp95,
232 25280000
232 00
233 0131 7405 je .L13 #,
234 0133 E8000000 call __stack_chk_fail #
234 00
235 .L13:
236 0138 C9 leave
237 .cfi_def_cfa 7, 8
238 0139 C3 ret
239 .cfi_endproc
240 .LFE3:
242 .section .rodata
243 .LC2:
244 0090 75737254 .string "usrToCell"
244 6F43656C
244 6C00
245 .text
247 usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem:
248 .LFB4:
249 .loc 1 243 0
250 .cfi_startproc
251 013a 55 push rbp #
252 .cfi_def_cfa_offset 16
253 .cfi_offset 6, -16
254 013b 4889E5 mov rbp, rsp #,
255 .cfi_def_cfa_register 6
256 013e 4883EC50 sub rsp, 80 #,
257 0142 48897DB8 mov QWORD PTR [rbp-72], rdi # usr, usr
258 .loc 1 243 0
GAS LISTING /tmp/cci7DG79.s page 6
259 0146 64488B04 mov rax, QWORD PTR fs:40 # tmp93,
259 25280000
259 00
260 014f 488945F8 mov QWORD PTR [rbp-8], rax # D.2447, tmp93
261 0153 31C0 xor eax, eax # tmp93
262 .loc 1 244 0
263 0155 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC2 # FR_.procname,
263 00000000
264 015d 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
264 00000000
265 0165 48C745E0 mov QWORD PTR [rbp-32], 0 # FR_.line,
265 00000000
266 016d 66C745F0 mov WORD PTR [rbp-16], 0 # FR_.len,
266 0000
267 0173 488D45D0 lea rax, [rbp-48] # tmp91,
268 0177 4889C7 mov rdi, rax #, tmp91
269 017a E89CFEFF call nimFrame #
269 FF
270 .loc 1 245 0
271 017f 48C745C8 mov QWORD PTR [rbp-56], 0 # result,
271 00000000
272 .loc 1 246 0
273 0187 48C745E0 mov QWORD PTR [rbp-32], 130 # FR_.line,
273 82000000
274 018f 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
274 00000000
275 .loc 1 247 0
276 0197 488B45B8 mov rax, QWORD PTR [rbp-72] # D.2445, usr
277 019b 4883E810 sub rax, 16 # D.2445,
278 019f 488945C8 mov QWORD PTR [rbp-56], rax # result, D.2445
279 .loc 1 248 0
280 01a3 E8F4FEFF call popFrame #
280 FF
281 .loc 1 249 0
282 01a8 488B45C8 mov rax, QWORD PTR [rbp-56] # D.2446, result
283 .loc 1 250 0
284 01ac 488B55F8 mov rdx, QWORD PTR [rbp-8] # tmp94, D.2447
285 01b0 64483314 xor rdx, QWORD PTR fs:40 # tmp94,
285 25280000
285 00
286 01b9 7405 je .L16 #,
287 01bb E8000000 call __stack_chk_fail #
287 00
288 .L16:
289 01c0 C9 leave
290 .cfi_def_cfa 7, 8
291 01c1 C3 ret
292 .cfi_endproc
293 .LFE4:
295 .section .rodata
296 .LC3:
297 009a 72746C41 .string "rtlAddZCT"
297 64645A43
297 5400
298 .text
300 rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_3system:
301 .LFB5:
GAS LISTING /tmp/cci7DG79.s page 7
302 .loc 1 251 0
303 .cfi_startproc
304 01c2 55 push rbp #
305 .cfi_def_cfa_offset 16
306 .cfi_offset 6, -16
307 01c3 4889E5 mov rbp, rsp #,
308 .cfi_def_cfa_register 6
309 01c6 4883EC40 sub rsp, 64 #,
310 01ca 48897DC8 mov QWORD PTR [rbp-56], rdi # c, c
311 .loc 1 251 0
312 01ce 64488B04 mov rax, QWORD PTR fs:40 # tmp89,
312 25280000
312 00
313 01d7 488945F8 mov QWORD PTR [rbp-8], rax # D.2449, tmp89
314 01db 31C0 xor eax, eax # tmp89
315 01dd 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC3 # FR_.procname,
315 00000000
316 01e5 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
316 00000000
317 01ed 48C745E0 mov QWORD PTR [rbp-32], 0 # FR_.line,
317 00000000
318 01f5 66C745F0 mov WORD PTR [rbp-16], 0 # FR_.len,
318 0000
319 01fb 488D45D0 lea rax, [rbp-48] # tmp87,
320 01ff 4889C7 mov rdi, rax #, tmp87
321 0202 E814FEFF call nimFrame #
321 FF
322 .loc 1 252 0
323 0207 48C745E0 mov QWORD PTR [rbp-32], 196 # FR_.line,
323 C4000000
324 020f 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
324 00000000
325 .loc 1 253 0
326 0217 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp88, c
327 021b 4889C6 mov rsi, rax #, tmp88
328 021e BF000000 mov edi, OFFSET FLAT:gch__IcYaEuuWivYAS86vFMTS3Q+24 #,
328 00
329 0223 E8000000 call addZCT__Y66tOYFjgwJ0k4aLz4bc0Q #
329 00
330 .loc 1 254 0
331 0228 E86FFEFF call popFrame #
331 FF
332 .loc 1 255 0
333 022d 90 nop
334 022e 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp90, D.2449
335 0232 64483304 xor rax, QWORD PTR fs:40 # tmp90,
335 25280000
335 00
336 023b 7405 je .L18 #,
337 023d E8000000 call __stack_chk_fail #
337 00
338 .L18:
339 0242 C9 leave
340 .cfi_def_cfa 7, 8
341 0243 C3 ret
342 .cfi_endproc
343 .LFE5:
GAS LISTING /tmp/cci7DG79.s page 8
345 .section .rodata
346 .LC4:
347 00a4 64656352 .string "decRef"
347 656600
348 .text
350 decRef__AT1eRuflKWyTTBdLjEDZbg_2system:
351 .LFB6:
352 .loc 1 256 0
353 .cfi_startproc
354 0244 55 push rbp #
355 .cfi_def_cfa_offset 16
356 .cfi_offset 6, -16
357 0245 4889E5 mov rbp, rsp #,
358 .cfi_def_cfa_register 6
359 0248 4883EC40 sub rsp, 64 #,
360 024c 48897DC8 mov QWORD PTR [rbp-56], rdi # c, c
361 .loc 1 256 0
362 0250 64488B04 mov rax, QWORD PTR fs:40 # tmp98,
362 25280000
362 00
363 0259 488945F8 mov QWORD PTR [rbp-8], rax # D.2453, tmp98
364 025d 31C0 xor eax, eax # tmp98
365 025f 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC4 # FR_.procname,
365 00000000
366 0267 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
366 00000000
367 026f 48C745E0 mov QWORD PTR [rbp-32], 0 # FR_.line,
367 00000000
368 0277 66C745F0 mov WORD PTR [rbp-16], 0 # FR_.len,
368 0000
369 027d 488D45D0 lea rax, [rbp-48] # tmp93,
370 0281 4889C7 mov rdi, rax #, tmp93
371 0284 E892FDFF call nimFrame #
371 FF
372 .loc 1 257 0
373 0289 48C745E0 mov QWORD PTR [rbp-32], 201 # FR_.line,
373 C9000000
374 0291 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
374 00000000
375 .loc 1 258 0
376 0299 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp94, c
377 029d 488B00 mov rax, QWORD PTR [rax] # D.2451, c_10(D)->refcount
378 02a0 4883E808 sub rax, 8 # D.2452,
379 02a4 4889C2 mov rdx, rax # D.2451, D.2452
380 02a7 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp95, c
381 02ab 488910 mov QWORD PTR [rax], rdx # c_10(D)->refcount, D.2451
382 .loc 1 259 0
383 02ae 48C745E0 mov QWORD PTR [rbp-32], 202 # FR_.line,
383 CA000000
384 02b6 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
384 00000000
385 .loc 1 261 0
386 02be 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp96, c
387 02c2 488B00 mov rax, QWORD PTR [rax] # D.2451, c_10(D)->refcount
388 02c5 4883F807 cmp rax, 7 # D.2452,
389 02c9 771E ja .L23 #,
390 .loc 1 262 0
GAS LISTING /tmp/cci7DG79.s page 9
391 02cb 48C745E0 mov QWORD PTR [rbp-32], 203 # FR_.line,
391 CB000000
392 02d3 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
392 00000000
393 .loc 1 263 0
394 02db 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp97, c
395 02df 4889C7 mov rdi, rax #, tmp97
396 02e2 E8DBFEFF call rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_3system #
396 FF
397 02e7 EB01 jmp .L21 #
398 .L23:
399 .loc 1 261 0
400 02e9 90 nop
401 .L21:
402 .loc 1 266 0
403 02ea E8ADFDFF call popFrame #
403 FF
404 .loc 1 267 0
405 02ef 90 nop
406 02f0 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp99, D.2453
407 02f4 64483304 xor rax, QWORD PTR fs:40 # tmp99,
407 25280000
407 00
408 02fd 7405 je .L22 #,
409 02ff E8000000 call __stack_chk_fail #
409 00
410 .L22:
411 0304 C9 leave
412 .cfi_def_cfa 7, 8
413 0305 C3 ret
414 .cfi_endproc
415 .LFE6:
417 .section .rodata
418 .LC5:
419 00ab 6173676E .string "asgnRef"
419 52656600
420 .text
422 asgnRef:
423 .LFB7:
424 .loc 1 268 0
425 .cfi_startproc
426 0306 55 push rbp #
427 .cfi_def_cfa_offset 16
428 .cfi_offset 6, -16
429 0307 4889E5 mov rbp, rsp #,
430 .cfi_def_cfa_register 6
431 030a 4883EC50 sub rsp, 80 #,
432 030e 48897DB8 mov QWORD PTR [rbp-72], rdi # dest, dest
433 0312 488975B0 mov QWORD PTR [rbp-80], rsi # src, src
434 .loc 1 268 0
435 0316 64488B04 mov rax, QWORD PTR fs:40 # tmp99,
435 25280000
435 00
436 031f 488945F8 mov QWORD PTR [rbp-8], rax # D.2456, tmp99
437 0323 31C0 xor eax, eax # tmp99
438 0325 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC5 # FR_.procname,
438 00000000
GAS LISTING /tmp/cci7DG79.s page 10
439 032d 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
439 00000000
440 0335 48C745E0 mov QWORD PTR [rbp-32], 0 # FR_.line,
440 00000000
441 033d 66C745F0 mov WORD PTR [rbp-16], 0 # FR_.len,
441 0000
442 0343 488D45D0 lea rax, [rbp-48] # tmp89,
443 0347 4889C7 mov rdi, rax #, tmp89
444 034a E8CCFCFF call nimFrame #
444 FF
445 .loc 1 269 0
446 034f 48C745E0 mov QWORD PTR [rbp-32], 239 # FR_.line,
446 EF000000
447 0357 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
447 00000000
448 .LBB2:
449 .loc 1 272 0
450 035f 48837DB0 cmp QWORD PTR [rbp-80], 0 # src,
450 00
451 0364 7426 je .L30 #,
452 .loc 1 273 0
453 0366 48C745C0 mov QWORD PTR [rbp-64], 0 # T5_,
453 00000000
454 .loc 1 274 0
455 036e 488B45B0 mov rax, QWORD PTR [rbp-80] # tmp90, src
456 0372 4889C7 mov rdi, rax #, tmp90
457 0375 E8C0FDFF call usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem #
457 FF
458 037a 488945C0 mov QWORD PTR [rbp-64], rax # T5_, tmp91
459 .loc 1 275 0
460 037e 488B45C0 mov rax, QWORD PTR [rbp-64] # tmp92, T5_
461 0382 4889C7 mov rdi, rax #, tmp92
462 0385 E82AFDFF call incRef__AT1eRuflKWyTTBdLjEDZbgsystem #
462 FF
463 038a EB01 jmp .L26 #
464 .L30:
465 .loc 1 272 0
466 038c 90 nop
467 .L26:
468 .LBE2:
469 .loc 1 278 0
470 038d 48C745E0 mov QWORD PTR [rbp-32], 240 # FR_.line,
470 F0000000
471 0395 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
471 00000000
472 .LBB3:
473 .loc 1 281 0
474 039d 488B45B8 mov rax, QWORD PTR [rbp-72] # tmp93, dest
475 03a1 488B00 mov rax, QWORD PTR [rax] # D.2455, *dest_18(D)
476 03a4 4885C0 test rax, rax # D.2455
477 03a7 7429 je .L31 #,
478 .loc 1 282 0
479 03a9 48C745C8 mov QWORD PTR [rbp-56], 0 # T10_,
479 00000000
480 .loc 1 283 0
481 03b1 488B45B8 mov rax, QWORD PTR [rbp-72] # tmp94, dest
482 03b5 488B00 mov rax, QWORD PTR [rax] # D.2455, *dest_18(D)
GAS LISTING /tmp/cci7DG79.s page 11
483 03b8 4889C7 mov rdi, rax #, D.2455
484 03bb E87AFDFF call usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem #
484 FF
485 03c0 488945C8 mov QWORD PTR [rbp-56], rax # T10_, tmp95
486 .loc 1 284 0
487 03c4 488B45C8 mov rax, QWORD PTR [rbp-56] # tmp96, T10_
488 03c8 4889C7 mov rdi, rax #, tmp96
489 03cb E874FEFF call decRef__AT1eRuflKWyTTBdLjEDZbg_2system #
489 FF
490 03d0 EB01 jmp .L28 #
491 .L31:
492 .loc 1 281 0
493 03d2 90 nop
494 .L28:
495 .LBE3:
496 .loc 1 287 0
497 03d3 48C745E0 mov QWORD PTR [rbp-32], 241 # FR_.line,
497 F1000000
498 03db 48C745E8 mov QWORD PTR [rbp-24], OFFSET FLAT:.LC1 # FR_.filename,
498 00000000
499 .loc 1 288 0
500 03e3 488B45B8 mov rax, QWORD PTR [rbp-72] # tmp97, dest
501 03e7 488B55B0 mov rdx, QWORD PTR [rbp-80] # tmp98, src
502 03eb 488910 mov QWORD PTR [rax], rdx # *dest_18(D), tmp98
503 .loc 1 289 0
504 03ee E8A9FCFF call popFrame #
504 FF
505 .loc 1 290 0
506 03f3 90 nop
507 03f4 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp100, D.2456
508 03f8 64483304 xor rax, QWORD PTR fs:40 # tmp100,
508 25280000
508 00
509 0401 7405 je .L29 #,
510 0403 E8000000 call __stack_chk_fail #
510 00
511 .L29:
512 0408 C9 leave
513 .cfi_def_cfa 7, 8
514 0409 C3 ret
515 .cfi_endproc
516 .LFE7:
519 nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory:
520 .LFB8:
521 .loc 1 291 0
522 .cfi_startproc
523 040a 55 push rbp #
524 .cfi_def_cfa_offset 16
525 .cfi_offset 6, -16
526 040b 4889E5 mov rbp, rsp #,
527 .cfi_def_cfa_register 6
528 040e 4883EC30 sub rsp, 48 #,
529 0412 48897DE8 mov QWORD PTR [rbp-24], rdi # a, a
530 0416 8975E4 mov DWORD PTR [rbp-28], esi # v, v
531 0419 488955D8 mov QWORD PTR [rbp-40], rdx # size, size
532 .loc 1 292 0
533 041d 48C745F8 mov QWORD PTR [rbp-8], 0 # T1_,
GAS LISTING /tmp/cci7DG79.s page 12
533 00000000
534 .loc 1 293 0
535 0425 488B55D8 mov rdx, QWORD PTR [rbp-40] # D.2458, size
536 0429 8B4DE4 mov ecx, DWORD PTR [rbp-28] # tmp88, v
537 042c 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp89, a
538 0430 89CE mov esi, ecx #, tmp88
539 0432 4889C7 mov rdi, rax #, tmp89
540 0435 E8000000 call memset #
540 00
541 043a 488945F8 mov QWORD PTR [rbp-8], rax # T1_, tmp90
542 .loc 1 294 0
543 043e 90 nop
544 043f C9 leave
545 .cfi_def_cfa 7, 8
546 0440 C3 ret
547 .cfi_endproc
548 .LFE8:
551 nimZeroMem:
552 .LFB9:
553 .loc 1 295 0
554 .cfi_startproc
555 0441 55 push rbp #
556 .cfi_def_cfa_offset 16
557 .cfi_offset 6, -16
558 0442 4889E5 mov rbp, rsp #,
559 .cfi_def_cfa_register 6
560 0445 4883EC10 sub rsp, 16 #,
561 0449 48897DF8 mov QWORD PTR [rbp-8], rdi # p, p
562 044d 488975F0 mov QWORD PTR [rbp-16], rsi # size, size
563 .loc 1 295 0
564 0451 488B55F0 mov rdx, QWORD PTR [rbp-16] # tmp87, size
565 0455 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp88, p
566 0459 BE000000 mov esi, 0 #,
566 00
567 045e 4889C7 mov rdi, rax #, tmp88
568 0461 E8A4FFFF call nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory #
568 FF
569 .loc 1 296 0
570 0466 90 nop
571 0467 C9 leave
572 .cfi_def_cfa 7, 8
573 0468 C3 ret
574 .cfi_endproc
575 .LFE9:
578 initStackBottomWith:
579 .LFB10:
580 .loc 1 297 0
581 .cfi_startproc
582 0469 55 push rbp #
583 .cfi_def_cfa_offset 16
584 .cfi_offset 6, -16
585 046a 4889E5 mov rbp, rsp #,
586 .cfi_def_cfa_register 6
587 046d 4883EC10 sub rsp, 16 #,
588 0471 48897DF8 mov QWORD PTR [rbp-8], rdi # locals, locals
589 .loc 1 297 0
590 0475 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp87, locals
GAS LISTING /tmp/cci7DG79.s page 13
591 0479 4889C7 mov rdi, rax #, tmp87
592 047c E8000000 call nimGC_setStackBottom #
592 00
593 .loc 1 298 0
594 0481 90 nop
595 0482 C9 leave
596 .cfi_def_cfa 7, 8
597 0483 C3 ret
598 .cfi_endproc
599 .LFE10:
601 .globl PreMainInner
603 PreMainInner:
604 .LFB11:
605 .loc 1 300 0
606 .cfi_startproc
607 0484 55 push rbp #
608 .cfi_def_cfa_offset 16
609 .cfi_offset 6, -16
610 0485 4889E5 mov rbp, rsp #,
611 .cfi_def_cfa_register 6
612 .loc 1 301 0
613 0488 90 nop
614 0489 5D pop rbp #
615 .cfi_def_cfa 7, 8
616 048a C3 ret
617 .cfi_endproc
618 .LFE11:
620 .comm cmdCount,4,4
621 .comm cmdLine,8,8
622 .comm gEnv,8,8
623 .globl PreMain
625 PreMain:
626 .LFB12:
627 .loc 1 306 0
628 .cfi_startproc
629 048b 55 push rbp #
630 .cfi_def_cfa_offset 16
631 .cfi_offset 6, -16
632 048c 4889E5 mov rbp, rsp #,
633 .cfi_def_cfa_register 6
634 048f 4883EC10 sub rsp, 16 #,
635 .loc 1 306 0
636 0493 64488B04 mov rax, QWORD PTR fs:40 # tmp89,
636 25280000
636 00
637 049c 488945F8 mov QWORD PTR [rbp-8], rax # D.2460, tmp89
638 04a0 31C0 xor eax, eax # tmp89
639 .loc 1 308 0
640 04a2 48C745F0 mov QWORD PTR [rbp-16], OFFSET FLAT:PreMainInner # inner,
640 00000000
641 .loc 1 309 0
642 04aa E8000000 call systemDatInit000 #
642 00
643 .loc 1 310 0
644 04af 488D45F0 lea rax, [rbp-16] # tmp88,
645 04b3 4889C7 mov rdi, rax #, tmp88
646 04b6 E8AEFFFF call initStackBottomWith #
GAS LISTING /tmp/cci7DG79.s page 14
646 FF
647 .loc 1 311 0
648 04bb E8000000 call systemInit000 #
648 00
649 .loc 1 312 0
650 04c0 488B45F0 mov rax, QWORD PTR [rbp-16] # D.2459, inner
651 04c4 FFD0 call rax # D.2459
652 .loc 1 313 0
653 04c6 90 nop
654 04c7 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp90, D.2460
655 04cb 64483304 xor rax, QWORD PTR fs:40 # tmp90,
655 25280000
655 00
656 04d4 7405 je .L37 #,
657 04d6 E8000000 call __stack_chk_fail #
657 00
658 .L37:
659 04db C9 leave
660 .cfi_def_cfa 7, 8
661 04dc C3 ret
662 .cfi_endproc
663 .LFE12:
665 .globl NimMainInner
667 NimMainInner:
668 .LFB13:
669 .loc 1 315 0
670 .cfi_startproc
671 04dd 55 push rbp #
672 .cfi_def_cfa_offset 16
673 .cfi_offset 6, -16
674 04de 4889E5 mov rbp, rsp #,
675 .cfi_def_cfa_register 6
676 .loc 1 316 0
677 04e1 E8000000 call NimMainModule #
677 00
678 .loc 1 317 0
679 04e6 90 nop
680 04e7 5D pop rbp #
681 .cfi_def_cfa 7, 8
682 04e8 C3 ret
683 .cfi_endproc
684 .LFE13:
686 .globl NimMain
688 NimMain:
689 .LFB14:
690 .loc 1 319 0
691 .cfi_startproc
692 04e9 55 push rbp #
693 .cfi_def_cfa_offset 16
694 .cfi_offset 6, -16
695 04ea 4889E5 mov rbp, rsp #,
696 .cfi_def_cfa_register 6
697 04ed 4883EC10 sub rsp, 16 #,
698 .loc 1 319 0
699 04f1 64488B04 mov rax, QWORD PTR fs:40 # tmp89,
699 25280000
699 00
GAS LISTING /tmp/cci7DG79.s page 15
700 04fa 488945F8 mov QWORD PTR [rbp-8], rax # D.2462, tmp89
701 04fe 31C0 xor eax, eax # tmp89
702 .loc 1 321 0
703 0500 E8000000 call PreMain #
703 00
704 .loc 1 322 0
705 0505 48C745F0 mov QWORD PTR [rbp-16], OFFSET FLAT:NimMainInner # inner,
705 00000000
706 .loc 1 323 0
707 050d 488D45F0 lea rax, [rbp-16] # tmp88,
708 0511 4889C7 mov rdi, rax #, tmp88
709 0514 E850FFFF call initStackBottomWith #
709 FF
710 .loc 1 324 0
711 0519 488B45F0 mov rax, QWORD PTR [rbp-16] # D.2461, inner
712 051d FFD0 call rax # D.2461
713 .loc 1 325 0
714 051f 90 nop
715 0520 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp90, D.2462
716 0524 64483304 xor rax, QWORD PTR fs:40 # tmp90,
716 25280000
716 00
717 052d 7405 je .L40 #,
718 052f E8000000 call __stack_chk_fail #
718 00
719 .L40:
720 0534 C9 leave
721 .cfi_def_cfa 7, 8
722 0535 C3 ret
723 .cfi_endproc
724 .LFE14:
726 .globl main
728 main:
729 .LFB15:
730 .loc 1 327 0
731 .cfi_startproc
732 0536 55 push rbp #
733 .cfi_def_cfa_offset 16
734 .cfi_offset 6, -16
735 0537 4889E5 mov rbp, rsp #,
736 .cfi_def_cfa_register 6
737 053a 4883EC20 sub rsp, 32 #,
738 053e 897DFC mov DWORD PTR [rbp-4], edi # argc, argc
739 0541 488975F0 mov QWORD PTR [rbp-16], rsi # args, args
740 0545 488955E8 mov QWORD PTR [rbp-24], rdx # env, env
741 .loc 1 328 0
742 0549 488B45F0 mov rax, QWORD PTR [rbp-16] # tmp90, args
743 054d 48890500 mov QWORD PTR cmdLine[rip], rax # cmdLine, tmp90
743 000000
744 .loc 1 329 0
745 0554 8B45FC mov eax, DWORD PTR [rbp-4] # tmp91, argc
746 0557 89050000 mov DWORD PTR cmdCount[rip], eax # cmdCount, tmp91
746 0000
747 .loc 1 330 0
748 055d 488B45E8 mov rax, QWORD PTR [rbp-24] # tmp92, env
749 0561 48890500 mov QWORD PTR gEnv[rip], rax # gEnv, tmp92
749 000000
GAS LISTING /tmp/cci7DG79.s page 16
750 .loc 1 331 0
751 0568 E8000000 call NimMain #
751 00
752 .loc 1 332 0
753 056d 488B0500 mov rax, QWORD PTR nim_program_result[rip] # D.2463, nim_program_result
753 000000
754 .loc 1 333 0
755 0574 C9 leave
756 .cfi_def_cfa 7, 8
757 0575 C3 ret
758 .cfi_endproc
759 .LFE15:
761 .section .rodata
762 .LC6:
763 00b3 70726F67 .string "prog"
763 00
764 .LC7:
765 00b8 2F686F6D .string "/home/jail/prog.nim"
765 652F6A61
765 696C2F70
765 726F672E
765 6E696D00
766 .text
767 .globl NimMainModule
768 .hidden NimMainModule
770 NimMainModule:
771 .LFB16:
772 .loc 1 335 0
773 .cfi_startproc
774 0576 55 push rbp #
775 .cfi_def_cfa_offset 16
776 .cfi_offset 6, -16
777 0577 4889E5 mov rbp, rsp #,
778 .cfi_def_cfa_register 6
779 057a 4883EC40 sub rsp, 64 #,
780 .loc 1 335 0
781 057e 64488B04 mov rax, QWORD PTR fs:40 # tmp93,
781 25280000
781 00
782 0587 488945F8 mov QWORD PTR [rbp-8], rax # D.2466, tmp93
783 058b 31C0 xor eax, eax # tmp93
784 .LBB4:
785 .loc 1 338 0
786 058d 48C745C8 mov QWORD PTR [rbp-56], OFFSET FLAT:.LC6 # FR_.procname,
786 00000000
787 0595 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC7 # FR_.filename,
787 00000000
788 059d 48C745D0 mov QWORD PTR [rbp-48], 0 # FR_.line,
788 00000000
789 05a5 66C745E0 mov WORD PTR [rbp-32], 0 # FR_.len,
789 0000
790 05ab 488D45C0 lea rax, [rbp-64] # tmp90,
791 05af 4889C7 mov rdi, rax #, tmp90
792 05b2 E864FAFF call nimFrame #
792 FF
793 .loc 1 340 0
794 05b7 BF000000 mov edi, OFFSET FLAT:TM__3gsRviFqqgOPGusKWyM6fw_4 #,
GAS LISTING /tmp/cci7DG79.s page 17
794 00
795 05bc E8000000 call nimRegisterGlobalMarker #
795 00
796 .loc 1 342 0
797 05c1 48C745D0 mov QWORD PTR [rbp-48], 1 # FR_.line,
797 01000000
798 05c9 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC7 # FR_.filename,
798 00000000
799 .loc 1 343 0
800 05d1 BE010000 mov esi, 1 #,
800 00
801 05d6 BF000000 mov edi, OFFSET FLAT:TM__3gsRviFqqgOPGusKWyM6fw_2 #,
801 00
802 05db E8000000 call echoBinSafe #
802 00
803 .loc 1 344 0
804 05e0 48C745D0 mov QWORD PTR [rbp-48], 2 # FR_.line,
804 02000000
805 05e8 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC7 # FR_.filename,
805 00000000
806 .loc 1 345 0
807 05f0 BF000000 mov edi, OFFSET FLAT:TM__3gsRviFqqgOPGusKWyM6fw_5 #,
807 00
808 05f5 E8000000 call readFile__4PGnM9bWmsH0Nu7dnr3XzgA #
808 00
809 05fa 4889C6 mov rsi, rax #, D.2465
810 05fd BF000000 mov edi, OFFSET FLAT:asmcode__y1wnuYq0ojmuzO6of1kOGg #,
810 00
811 0602 E8FFFCFF call asgnRef #
811 FF
812 .loc 1 346 0
813 0607 48C745D0 mov QWORD PTR [rbp-48], 3 # FR_.line,
813 03000000
814 060f 48C745D8 mov QWORD PTR [rbp-40], OFFSET FLAT:.LC7 # FR_.filename,
814 00000000
815 .loc 1 347 0
816 0617 488D45F0 lea rax, [rbp-16] # tmp91,
817 061b BE080000 mov esi, 8 #,
817 00
818 0620 4889C7 mov rdi, rax #, tmp91
819 0623 E819FEFF call nimZeroMem #
819 FF
820 .loc 1 348 0
821 0628 488B0500 mov rax, QWORD PTR asmcode__y1wnuYq0ojmuzO6of1kOGg[rip] # D.2465, asmcode__y1wnuYq0ojmuzO6of1kOGg
821 000000
822 062f 4889C7 mov rdi, rax #, D.2465
823 0632 E8000000 call copyString #
823 00
824 0637 488945F0 mov QWORD PTR [rbp-16], rax # T1_, D.2465
825 .loc 1 349 0
826 063b 488D45F0 lea rax, [rbp-16] # tmp92,
827 063f BE010000 mov esi, 1 #,
827 00
828 0644 4889C7 mov rdi, rax #, tmp92
829 0647 E8000000 call echoBinSafe #
829 00
830 .loc 1 350 0
GAS LISTING /tmp/cci7DG79.s page 18
831 064c E84BFAFF call popFrame #
831 FF
832 .LBE4:
833 .loc 1 352 0
834 0651 90 nop
835 0652 488B45F8 mov rax, QWORD PTR [rbp-8] # tmp94, D.2466
836 0656 64483304 xor rax, QWORD PTR fs:40 # tmp94,
836 25280000
836 00
837 065f 7405 je .L44 #,
838 0661 E8000000 call __stack_chk_fail #
838 00
839 .L44:
840 0666 C9 leave
841 .cfi_def_cfa 7, 8
842 0667 C3 ret
843 .cfi_endproc
844 .LFE16:
846 .Letext0:
847 .file 2 "/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h"
848 .file 3 "/opt/wandbox/nim-head/lib/nimbase.h"
Exit Code:
0