Lines Matching refs:ATOM
7 …86-- -verify-machineinstrs -mcpu=atom -mattr=-sse2 | FileCheck %s --check-prefixes=X86,X86-ATOM
36 ; X86-ATOM-LABEL: add8:
37 ; X86-ATOM: # %bb.0:
38 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %ecx
39 ; X86-ATOM-NEXT: xorl %eax, %eax
40 ; X86-ATOM-NEXT: lock xaddb %al, (%ecx)
41 ; X86-ATOM-NEXT: # kill: def $al killed $al killed $eax
42 ; X86-ATOM-NEXT: nop
43 ; X86-ATOM-NEXT: nop
44 ; X86-ATOM-NEXT: retl
75 ; X86-ATOM-LABEL: or16:
76 ; X86-ATOM: # %bb.0:
77 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %ecx
78 ; X86-ATOM-NEXT: movzwl (%ecx), %eax
79 ; X86-ATOM-NEXT: .p2align 4, 0x90
80 ; X86-ATOM-NEXT: .LBB1_1: # %atomicrmw.start
81 ; X86-ATOM-NEXT: # =>This Inner Loop Header: Depth=1
82 ; X86-ATOM-NEXT: lock cmpxchgw %ax, (%ecx)
83 ; X86-ATOM-NEXT: jne .LBB1_1
84 ; X86-ATOM-NEXT: # %bb.2: # %atomicrmw.end
85 ; X86-ATOM-NEXT: retl
116 ; X86-ATOM-LABEL: xor32:
117 ; X86-ATOM: # %bb.0:
118 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %ecx
119 ; X86-ATOM-NEXT: movl (%ecx), %eax
120 ; X86-ATOM-NEXT: .p2align 4, 0x90
121 ; X86-ATOM-NEXT: .LBB2_1: # %atomicrmw.start
122 ; X86-ATOM-NEXT: # =>This Inner Loop Header: Depth=1
123 ; X86-ATOM-NEXT: lock cmpxchgl %eax, (%ecx)
124 ; X86-ATOM-NEXT: jne .LBB2_1
125 ; X86-ATOM-NEXT: # %bb.2: # %atomicrmw.end
126 ; X86-ATOM-NEXT: retl
257 ; X86-ATOM-LABEL: or128:
258 ; X86-ATOM: # %bb.0:
259 ; X86-ATOM-NEXT: pushl %ebp
260 ; X86-ATOM-NEXT: .cfi_def_cfa_offset 8
261 ; X86-ATOM-NEXT: .cfi_offset %ebp, -8
262 ; X86-ATOM-NEXT: leal (%esp), %ebp
263 ; X86-ATOM-NEXT: .cfi_def_cfa_register %ebp
264 ; X86-ATOM-NEXT: pushl %edi
265 ; X86-ATOM-NEXT: pushl %esi
266 ; X86-ATOM-NEXT: andl $-8, %esp
267 ; X86-ATOM-NEXT: leal -{{[0-9]+}}(%esp), %esp
268 ; X86-ATOM-NEXT: .cfi_offset %esi, -16
269 ; X86-ATOM-NEXT: .cfi_offset %edi, -12
270 ; X86-ATOM-NEXT: movl 8(%ebp), %esi
271 ; X86-ATOM-NEXT: movl 12(%ebp), %eax
272 ; X86-ATOM-NEXT: movl %esp, %ecx
273 ; X86-ATOM-NEXT: pushl $0
274 ; X86-ATOM-NEXT: pushl $0
275 ; X86-ATOM-NEXT: pushl $0
276 ; X86-ATOM-NEXT: pushl $0
277 ; X86-ATOM-NEXT: pushl %eax
278 ; X86-ATOM-NEXT: pushl %ecx
279 ; X86-ATOM-NEXT: calll __sync_fetch_and_or_16
280 ; X86-ATOM-NEXT: leal {{[0-9]+}}(%esp), %esp
281 ; X86-ATOM-NEXT: movl (%esp), %ecx
282 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %edx
283 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %eax
284 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %edi
285 ; X86-ATOM-NEXT: movl %eax, 8(%esi)
286 ; X86-ATOM-NEXT: movl %edi, 12(%esi)
287 ; X86-ATOM-NEXT: movl %ecx, (%esi)
288 ; X86-ATOM-NEXT: movl %esi, %eax
289 ; X86-ATOM-NEXT: movl %edx, 4(%esi)
290 ; X86-ATOM-NEXT: leal -8(%ebp), %esp
291 ; X86-ATOM-NEXT: popl %esi
292 ; X86-ATOM-NEXT: popl %edi
293 ; X86-ATOM-NEXT: popl %ebp
294 ; X86-ATOM-NEXT: .cfi_def_cfa %esp, 4
295 ; X86-ATOM-NEXT: retl $4
327 ; X86-ATOM-LABEL: and32:
328 ; X86-ATOM: # %bb.0:
329 ; X86-ATOM-NEXT: movl {{[0-9]+}}(%esp), %ecx
330 ; X86-ATOM-NEXT: movl (%ecx), %eax
331 ; X86-ATOM-NEXT: .p2align 4, 0x90
332 ; X86-ATOM-NEXT: .LBB5_1: # %atomicrmw.start
333 ; X86-ATOM-NEXT: # =>This Inner Loop Header: Depth=1
334 ; X86-ATOM-NEXT: lock cmpxchgl %eax, (%ecx)
335 ; X86-ATOM-NEXT: jne .LBB5_1
336 ; X86-ATOM-NEXT: # %bb.2: # %atomicrmw.end
337 ; X86-ATOM-NEXT: retl
353 ; X86-ATOM-LABEL: or32_nouse_monotonic:
354 ; X86-ATOM: # %bb.0:
355 ; X86-ATOM-NEXT: #MEMBARRIER
356 ; X86-ATOM-NEXT: nop
357 ; X86-ATOM-NEXT: nop
358 ; X86-ATOM-NEXT: nop
359 ; X86-ATOM-NEXT: nop
360 ; X86-ATOM-NEXT: nop
361 ; X86-ATOM-NEXT: nop
362 ; X86-ATOM-NEXT: retl
379 ; X86-ATOM-LABEL: or32_nouse_acquire:
380 ; X86-ATOM: # %bb.0:
381 ; X86-ATOM-NEXT: #MEMBARRIER
382 ; X86-ATOM-NEXT: nop
383 ; X86-ATOM-NEXT: nop
384 ; X86-ATOM-NEXT: nop
385 ; X86-ATOM-NEXT: nop
386 ; X86-ATOM-NEXT: nop
387 ; X86-ATOM-NEXT: nop
388 ; X86-ATOM-NEXT: retl
404 ; X86-ATOM-LABEL: or32_nouse_release:
405 ; X86-ATOM: # %bb.0:
406 ; X86-ATOM-NEXT: #MEMBARRIER
407 ; X86-ATOM-NEXT: nop
408 ; X86-ATOM-NEXT: nop
409 ; X86-ATOM-NEXT: nop
410 ; X86-ATOM-NEXT: nop
411 ; X86-ATOM-NEXT: nop
412 ; X86-ATOM-NEXT: nop
413 ; X86-ATOM-NEXT: retl
429 ; X86-ATOM-LABEL: or32_nouse_acq_rel:
430 ; X86-ATOM: # %bb.0:
431 ; X86-ATOM-NEXT: #MEMBARRIER
432 ; X86-ATOM-NEXT: nop
433 ; X86-ATOM-NEXT: nop
434 ; X86-ATOM-NEXT: nop
435 ; X86-ATOM-NEXT: nop
436 ; X86-ATOM-NEXT: nop
437 ; X86-ATOM-NEXT: nop
438 ; X86-ATOM-NEXT: retl
454 ; X86-ATOM-LABEL: or32_nouse_seq_cst:
455 ; X86-ATOM: # %bb.0:
456 ; X86-ATOM-NEXT: lock orl $0, (%esp)
457 ; X86-ATOM-NEXT: nop
458 ; X86-ATOM-NEXT: nop
459 ; X86-ATOM-NEXT: nop
460 ; X86-ATOM-NEXT: nop
461 ; X86-ATOM-NEXT: nop
462 ; X86-ATOM-NEXT: nop
463 ; X86-ATOM-NEXT: retl
563 ; X86-ATOM-LABEL: or128_nouse_seq_cst:
564 ; X86-ATOM: # %bb.0:
565 ; X86-ATOM-NEXT: pushl %ebp
566 ; X86-ATOM-NEXT: .cfi_def_cfa_offset 8
567 ; X86-ATOM-NEXT: .cfi_offset %ebp, -8
568 ; X86-ATOM-NEXT: leal (%esp), %ebp
569 ; X86-ATOM-NEXT: .cfi_def_cfa_register %ebp
570 ; X86-ATOM-NEXT: andl $-8, %esp
571 ; X86-ATOM-NEXT: leal -{{[0-9]+}}(%esp), %esp
572 ; X86-ATOM-NEXT: movl 8(%ebp), %eax
573 ; X86-ATOM-NEXT: movl %esp, %ecx
574 ; X86-ATOM-NEXT: pushl $0
575 ; X86-ATOM-NEXT: pushl $0
576 ; X86-ATOM-NEXT: pushl $0
577 ; X86-ATOM-NEXT: pushl $0
578 ; X86-ATOM-NEXT: pushl %eax
579 ; X86-ATOM-NEXT: pushl %ecx
580 ; X86-ATOM-NEXT: calll __sync_fetch_and_or_16
581 ; X86-ATOM-NEXT: leal {{[0-9]+}}(%esp), %esp
582 ; X86-ATOM-NEXT: movl %ebp, %esp
583 ; X86-ATOM-NEXT: popl %ebp
584 ; X86-ATOM-NEXT: .cfi_def_cfa %esp, 4
585 ; X86-ATOM-NEXT: retl
602 ; X86-ATOM-LABEL: or16_nouse_seq_cst:
603 ; X86-ATOM: # %bb.0:
604 ; X86-ATOM-NEXT: lock orl $0, (%esp)
605 ; X86-ATOM-NEXT: nop
606 ; X86-ATOM-NEXT: nop
607 ; X86-ATOM-NEXT: nop
608 ; X86-ATOM-NEXT: nop
609 ; X86-ATOM-NEXT: nop
610 ; X86-ATOM-NEXT: nop
611 ; X86-ATOM-NEXT: retl
627 ; X86-ATOM-LABEL: or8_nouse_seq_cst:
628 ; X86-ATOM: # %bb.0:
629 ; X86-ATOM-NEXT: lock orl $0, (%esp)
630 ; X86-ATOM-NEXT: nop
631 ; X86-ATOM-NEXT: nop
632 ; X86-ATOM-NEXT: nop
633 ; X86-ATOM-NEXT: nop
634 ; X86-ATOM-NEXT: nop
635 ; X86-ATOM-NEXT: nop
636 ; X86-ATOM-NEXT: retl