Lines Matching refs:LINUX

3 ; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=core2     | FileCheck %s -check-prefix=LINUX
4 …: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skylake | FileCheck %s -check-prefix=LINUX-SKL
5 …: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skx | FileCheck %s -check-prefix=LINUX-SKX
6 …: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=knl | FileCheck %s -check-prefix=LINUX-KNL
7 … < %s -mtriple=x86_64-unknown-linux-gnu -mattr=avx512bw | FileCheck %s -check-prefix=LINUX-AVX512BW
19 ; LINUX-LABEL: test1:
20 ; LINUX: # %bb.0: # %entry
21 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
23 ; LINUX-SKL-LABEL: test1:
24 ; LINUX-SKL: # %bb.0: # %entry
25 ; LINUX-SKL-NEXT: jmp memcpy@PLT # TAILCALL
27 ; LINUX-SKX-LABEL: test1:
28 ; LINUX-SKX: # %bb.0: # %entry
29 ; LINUX-SKX-NEXT: jmp memcpy@PLT # TAILCALL
31 ; LINUX-KNL-LABEL: test1:
32 ; LINUX-KNL: # %bb.0: # %entry
33 ; LINUX-KNL-NEXT: jmp memcpy@PLT # TAILCALL
35 ; LINUX-AVX512BW-LABEL: test1:
36 ; LINUX-AVX512BW: # %bb.0: # %entry
37 ; LINUX-AVX512BW-NEXT: jmp memcpy@PLT # TAILCALL
49 ; LINUX-LABEL: test2:
50 ; LINUX: # %bb.0: # %entry
51 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
53 ; LINUX-SKL-LABEL: test2:
54 ; LINUX-SKL: # %bb.0: # %entry
55 ; LINUX-SKL-NEXT: jmp memcpy@PLT # TAILCALL
57 ; LINUX-SKX-LABEL: test2:
58 ; LINUX-SKX: # %bb.0: # %entry
59 ; LINUX-SKX-NEXT: jmp memcpy@PLT # TAILCALL
61 ; LINUX-KNL-LABEL: test2:
62 ; LINUX-KNL: # %bb.0: # %entry
63 ; LINUX-KNL-NEXT: jmp memcpy@PLT # TAILCALL
65 ; LINUX-AVX512BW-LABEL: test2:
66 ; LINUX-AVX512BW: # %bb.0: # %entry
67 ; LINUX-AVX512BW-NEXT: jmp memcpy@PLT # TAILCALL
102 ; LINUX-LABEL: test3:
103 ; LINUX: # %bb.0: # %entry
104 ; LINUX-NEXT: movl $64, %edx
105 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
107 ; LINUX-SKL-LABEL: test3:
108 ; LINUX-SKL: # %bb.0: # %entry
109 ; LINUX-SKL-NEXT: vmovups (%rsi), %ymm0
110 ; LINUX-SKL-NEXT: vmovups 32(%rsi), %ymm1
111 ; LINUX-SKL-NEXT: vmovups %ymm1, 32(%rdi)
112 ; LINUX-SKL-NEXT: vmovups %ymm0, (%rdi)
113 ; LINUX-SKL-NEXT: vzeroupper
114 ; LINUX-SKL-NEXT: retq
116 ; LINUX-SKX-LABEL: test3:
117 ; LINUX-SKX: # %bb.0: # %entry
118 ; LINUX-SKX-NEXT: vmovups (%rsi), %ymm0
119 ; LINUX-SKX-NEXT: vmovups 32(%rsi), %ymm1
120 ; LINUX-SKX-NEXT: vmovups %ymm1, 32(%rdi)
121 ; LINUX-SKX-NEXT: vmovups %ymm0, (%rdi)
122 ; LINUX-SKX-NEXT: vzeroupper
123 ; LINUX-SKX-NEXT: retq
125 ; LINUX-KNL-LABEL: test3:
126 ; LINUX-KNL: # %bb.0: # %entry
127 ; LINUX-KNL-NEXT: vmovups (%rsi), %zmm0
128 ; LINUX-KNL-NEXT: vmovups %zmm0, (%rdi)
129 ; LINUX-KNL-NEXT: retq
131 ; LINUX-AVX512BW-LABEL: test3:
132 ; LINUX-AVX512BW: # %bb.0: # %entry
133 ; LINUX-AVX512BW-NEXT: vmovups (%rsi), %zmm0
134 ; LINUX-AVX512BW-NEXT: vmovups %zmm0, (%rdi)
135 ; LINUX-AVX512BW-NEXT: vzeroupper
136 ; LINUX-AVX512BW-NEXT: retq
143 ; LINUX-LABEL: test3_pgso:
144 ; LINUX: # %bb.0: # %entry
145 ; LINUX-NEXT: movl $64, %edx
146 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
179 ; LINUX-LABEL: test3_minsize:
180 ; LINUX: # %bb.0:
181 ; LINUX-NEXT: pushq $64
182 ; LINUX-NEXT: popq %rdx
183 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
185 ; LINUX-SKL-LABEL: test3_minsize:
186 ; LINUX-SKL: # %bb.0:
187 ; LINUX-SKL-NEXT: vmovups (%rsi), %ymm0
188 ; LINUX-SKL-NEXT: vmovups 32(%rsi), %ymm1
189 ; LINUX-SKL-NEXT: vmovups %ymm1, 32(%rdi)
190 ; LINUX-SKL-NEXT: vmovups %ymm0, (%rdi)
191 ; LINUX-SKL-NEXT: vzeroupper
192 ; LINUX-SKL-NEXT: retq
194 ; LINUX-SKX-LABEL: test3_minsize:
195 ; LINUX-SKX: # %bb.0:
196 ; LINUX-SKX-NEXT: vmovups (%rsi), %ymm0
197 ; LINUX-SKX-NEXT: vmovups 32(%rsi), %ymm1
198 ; LINUX-SKX-NEXT: vmovups %ymm1, 32(%rdi)
199 ; LINUX-SKX-NEXT: vmovups %ymm0, (%rdi)
200 ; LINUX-SKX-NEXT: vzeroupper
201 ; LINUX-SKX-NEXT: retq
203 ; LINUX-KNL-LABEL: test3_minsize:
204 ; LINUX-KNL: # %bb.0:
205 ; LINUX-KNL-NEXT: vmovups (%rsi), %zmm0
206 ; LINUX-KNL-NEXT: vmovups %zmm0, (%rdi)
207 ; LINUX-KNL-NEXT: retq
209 ; LINUX-AVX512BW-LABEL: test3_minsize:
210 ; LINUX-AVX512BW: # %bb.0:
211 ; LINUX-AVX512BW-NEXT: vmovups (%rsi), %zmm0
212 ; LINUX-AVX512BW-NEXT: vmovups %zmm0, (%rdi)
213 ; LINUX-AVX512BW-NEXT: vzeroupper
214 ; LINUX-AVX512BW-NEXT: retq
226 ; LINUX-LABEL: test3_minsize_optsize:
227 ; LINUX: # %bb.0:
228 ; LINUX-NEXT: pushq $64
229 ; LINUX-NEXT: popq %rdx
230 ; LINUX-NEXT: jmp memcpy@PLT # TAILCALL
232 ; LINUX-SKL-LABEL: test3_minsize_optsize:
233 ; LINUX-SKL: # %bb.0:
234 ; LINUX-SKL-NEXT: vmovups (%rsi), %ymm0
235 ; LINUX-SKL-NEXT: vmovups 32(%rsi), %ymm1
236 ; LINUX-SKL-NEXT: vmovups %ymm1, 32(%rdi)
237 ; LINUX-SKL-NEXT: vmovups %ymm0, (%rdi)
238 ; LINUX-SKL-NEXT: vzeroupper
239 ; LINUX-SKL-NEXT: retq
241 ; LINUX-SKX-LABEL: test3_minsize_optsize:
242 ; LINUX-SKX: # %bb.0:
243 ; LINUX-SKX-NEXT: vmovups (%rsi), %ymm0
244 ; LINUX-SKX-NEXT: vmovups 32(%rsi), %ymm1
245 ; LINUX-SKX-NEXT: vmovups %ymm1, 32(%rdi)
246 ; LINUX-SKX-NEXT: vmovups %ymm0, (%rdi)
247 ; LINUX-SKX-NEXT: vzeroupper
248 ; LINUX-SKX-NEXT: retq
250 ; LINUX-KNL-LABEL: test3_minsize_optsize:
251 ; LINUX-KNL: # %bb.0:
252 ; LINUX-KNL-NEXT: vmovups (%rsi), %zmm0
253 ; LINUX-KNL-NEXT: vmovups %zmm0, (%rdi)
254 ; LINUX-KNL-NEXT: retq
256 ; LINUX-AVX512BW-LABEL: test3_minsize_optsize:
257 ; LINUX-AVX512BW: # %bb.0:
258 ; LINUX-AVX512BW-NEXT: vmovups (%rsi), %zmm0
259 ; LINUX-AVX512BW-NEXT: vmovups %zmm0, (%rdi)
260 ; LINUX-AVX512BW-NEXT: vzeroupper
261 ; LINUX-AVX512BW-NEXT: retq
288 ; LINUX-LABEL: test4:
289 ; LINUX: # %bb.0: # %entry
290 ; LINUX-NEXT: movq 56(%rsi), %rax
291 ; LINUX-NEXT: movq %rax, 56(%rdi)
292 ; LINUX-NEXT: movq 48(%rsi), %rax
293 ; LINUX-NEXT: movq %rax, 48(%rdi)
294 ; LINUX-NEXT: movq 40(%rsi), %rax
295 ; LINUX-NEXT: movq %rax, 40(%rdi)
296 ; LINUX-NEXT: movq 32(%rsi), %rax
297 ; LINUX-NEXT: movq %rax, 32(%rdi)
298 ; LINUX-NEXT: movq 24(%rsi), %rax
299 ; LINUX-NEXT: movq %rax, 24(%rdi)
300 ; LINUX-NEXT: movq 16(%rsi), %rax
301 ; LINUX-NEXT: movq %rax, 16(%rdi)
302 ; LINUX-NEXT: movq (%rsi), %rax
303 ; LINUX-NEXT: movq 8(%rsi), %rcx
304 ; LINUX-NEXT: movq %rcx, 8(%rdi)
305 ; LINUX-NEXT: movq %rax, (%rdi)
306 ; LINUX-NEXT: retq
308 ; LINUX-SKL-LABEL: test4:
309 ; LINUX-SKL: # %bb.0: # %entry
310 ; LINUX-SKL-NEXT: vmovups (%rsi), %ymm0
311 ; LINUX-SKL-NEXT: vmovups 32(%rsi), %ymm1
312 ; LINUX-SKL-NEXT: vmovups %ymm1, 32(%rdi)
313 ; LINUX-SKL-NEXT: vmovups %ymm0, (%rdi)
314 ; LINUX-SKL-NEXT: vzeroupper
315 ; LINUX-SKL-NEXT: retq
317 ; LINUX-SKX-LABEL: test4:
318 ; LINUX-SKX: # %bb.0: # %entry
319 ; LINUX-SKX-NEXT: vmovups (%rsi), %ymm0
320 ; LINUX-SKX-NEXT: vmovups 32(%rsi), %ymm1
321 ; LINUX-SKX-NEXT: vmovups %ymm1, 32(%rdi)
322 ; LINUX-SKX-NEXT: vmovups %ymm0, (%rdi)
323 ; LINUX-SKX-NEXT: vzeroupper
324 ; LINUX-SKX-NEXT: retq
326 ; LINUX-KNL-LABEL: test4:
327 ; LINUX-KNL: # %bb.0: # %entry
328 ; LINUX-KNL-NEXT: vmovups (%rsi), %zmm0
329 ; LINUX-KNL-NEXT: vmovups %zmm0, (%rdi)
330 ; LINUX-KNL-NEXT: retq
332 ; LINUX-AVX512BW-LABEL: test4:
333 ; LINUX-AVX512BW: # %bb.0: # %entry
334 ; LINUX-AVX512BW-NEXT: vmovups (%rsi), %zmm0
335 ; LINUX-AVX512BW-NEXT: vmovups %zmm0, (%rdi)
336 ; LINUX-AVX512BW-NEXT: vzeroupper
337 ; LINUX-AVX512BW-NEXT: retq
355 ; LINUX-LABEL: test5:
356 ; LINUX: # %bb.0: # %entry
357 ; LINUX-NEXT: movabsq $7016996765293437281, %rax # imm = 0x6161616161616161
358 ; LINUX-NEXT: movq %rax, 8(%rdi)
359 ; LINUX-NEXT: movabsq $7016996765293437184, %rax # imm = 0x6161616161616100
360 ; LINUX-NEXT: movq %rax, (%rdi)
361 ; LINUX-NEXT: retq
363 ; LINUX-SKL-LABEL: test5:
364 ; LINUX-SKL: # %bb.0: # %entry
365 ; LINUX-SKL-NEXT: vmovups {{.*}}(%rip), %xmm0
366 ; LINUX-SKL-NEXT: vmovups %xmm0, (%rdi)
367 ; LINUX-SKL-NEXT: retq
369 ; LINUX-SKX-LABEL: test5:
370 ; LINUX-SKX: # %bb.0: # %entry
371 ; LINUX-SKX-NEXT: vmovups {{.*}}(%rip), %xmm0
372 ; LINUX-SKX-NEXT: vmovups %xmm0, (%rdi)
373 ; LINUX-SKX-NEXT: retq
375 ; LINUX-KNL-LABEL: test5:
376 ; LINUX-KNL: # %bb.0: # %entry
377 ; LINUX-KNL-NEXT: vmovups {{.*}}(%rip), %xmm0
378 ; LINUX-KNL-NEXT: vmovups %xmm0, (%rdi)
379 ; LINUX-KNL-NEXT: retq
381 ; LINUX-AVX512BW-LABEL: test5:
382 ; LINUX-AVX512BW: # %bb.0: # %entry
383 ; LINUX-AVX512BW-NEXT: vmovups {{.*}}(%rip), %xmm0
384 ; LINUX-AVX512BW-NEXT: vmovups %xmm0, (%rdi)
385 ; LINUX-AVX512BW-NEXT: retq
402 ; LINUX-LABEL: test6:
403 ; LINUX: # %bb.0: # %entry
404 ; LINUX-NEXT: movw $0, 8
405 ; LINUX-NEXT: movq $120, 0
406 ; LINUX-NEXT: retq
408 ; LINUX-SKL-LABEL: test6:
409 ; LINUX-SKL: # %bb.0: # %entry
410 ; LINUX-SKL-NEXT: movw $0, 8
411 ; LINUX-SKL-NEXT: movq $120, 0
412 ; LINUX-SKL-NEXT: retq
414 ; LINUX-SKX-LABEL: test6:
415 ; LINUX-SKX: # %bb.0: # %entry
416 ; LINUX-SKX-NEXT: movw $0, 8
417 ; LINUX-SKX-NEXT: movq $120, 0
418 ; LINUX-SKX-NEXT: retq
420 ; LINUX-KNL-LABEL: test6:
421 ; LINUX-KNL: # %bb.0: # %entry
422 ; LINUX-KNL-NEXT: movw $0, 8
423 ; LINUX-KNL-NEXT: movq $120, 0
424 ; LINUX-KNL-NEXT: retq
426 ; LINUX-AVX512BW-LABEL: test6:
427 ; LINUX-AVX512BW: # %bb.0: # %entry
428 ; LINUX-AVX512BW-NEXT: movw $0, 8
429 ; LINUX-AVX512BW-NEXT: movq $120, 0
430 ; LINUX-AVX512BW-NEXT: retq
449 ; LINUX-LABEL: PR15348:
450 ; LINUX: # %bb.0:
451 ; LINUX-NEXT: movb 16(%rsi), %al
452 ; LINUX-NEXT: movb %al, 16(%rdi)
453 ; LINUX-NEXT: movq (%rsi), %rax
454 ; LINUX-NEXT: movq 8(%rsi), %rcx
455 ; LINUX-NEXT: movq %rcx, 8(%rdi)
456 ; LINUX-NEXT: movq %rax, (%rdi)
457 ; LINUX-NEXT: retq
459 ; LINUX-SKL-LABEL: PR15348:
460 ; LINUX-SKL: # %bb.0:
461 ; LINUX-SKL-NEXT: movb 16(%rsi), %al
462 ; LINUX-SKL-NEXT: movb %al, 16(%rdi)
463 ; LINUX-SKL-NEXT: vmovups (%rsi), %xmm0
464 ; LINUX-SKL-NEXT: vmovups %xmm0, (%rdi)
465 ; LINUX-SKL-NEXT: retq
467 ; LINUX-SKX-LABEL: PR15348:
468 ; LINUX-SKX: # %bb.0:
469 ; LINUX-SKX-NEXT: movb 16(%rsi), %al
470 ; LINUX-SKX-NEXT: movb %al, 16(%rdi)
471 ; LINUX-SKX-NEXT: vmovups (%rsi), %xmm0
472 ; LINUX-SKX-NEXT: vmovups %xmm0, (%rdi)
473 ; LINUX-SKX-NEXT: retq
475 ; LINUX-KNL-LABEL: PR15348:
476 ; LINUX-KNL: # %bb.0:
477 ; LINUX-KNL-NEXT: movb 16(%rsi), %al
478 ; LINUX-KNL-NEXT: movb %al, 16(%rdi)
479 ; LINUX-KNL-NEXT: vmovups (%rsi), %xmm0
480 ; LINUX-KNL-NEXT: vmovups %xmm0, (%rdi)
481 ; LINUX-KNL-NEXT: retq
483 ; LINUX-AVX512BW-LABEL: PR15348:
484 ; LINUX-AVX512BW: # %bb.0:
485 ; LINUX-AVX512BW-NEXT: movb 16(%rsi), %al
486 ; LINUX-AVX512BW-NEXT: movb %al, 16(%rdi)
487 ; LINUX-AVX512BW-NEXT: vmovups (%rsi), %xmm0
488 ; LINUX-AVX512BW-NEXT: vmovups %xmm0, (%rdi)
489 ; LINUX-AVX512BW-NEXT: retq
505 ; LINUX-LABEL: addrspace256:
506 ; LINUX: # %bb.0:
507 ; LINUX-NEXT: movq %gs:(%rsi), %rax
508 ; LINUX-NEXT: movq %gs:8(%rsi), %rcx
509 ; LINUX-NEXT: movq %rcx, %gs:8(%rdi)
510 ; LINUX-NEXT: movq %rax, %gs:(%rdi)
511 ; LINUX-NEXT: retq
513 ; LINUX-SKL-LABEL: addrspace256:
514 ; LINUX-SKL: # %bb.0:
515 ; LINUX-SKL-NEXT: vmovups %gs:(%rsi), %xmm0
516 ; LINUX-SKL-NEXT: vmovups %xmm0, %gs:(%rdi)
517 ; LINUX-SKL-NEXT: retq
519 ; LINUX-SKX-LABEL: addrspace256:
520 ; LINUX-SKX: # %bb.0:
521 ; LINUX-SKX-NEXT: vmovups %gs:(%rsi), %xmm0
522 ; LINUX-SKX-NEXT: vmovups %xmm0, %gs:(%rdi)
523 ; LINUX-SKX-NEXT: retq
525 ; LINUX-KNL-LABEL: addrspace256:
526 ; LINUX-KNL: # %bb.0:
527 ; LINUX-KNL-NEXT: vmovups %gs:(%rsi), %xmm0
528 ; LINUX-KNL-NEXT: vmovups %xmm0, %gs:(%rdi)
529 ; LINUX-KNL-NEXT: retq
531 ; LINUX-AVX512BW-LABEL: addrspace256:
532 ; LINUX-AVX512BW: # %bb.0:
533 ; LINUX-AVX512BW-NEXT: vmovups %gs:(%rsi), %xmm0
534 ; LINUX-AVX512BW-NEXT: vmovups %xmm0, %gs:(%rdi)
535 ; LINUX-AVX512BW-NEXT: retq