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
|
START_FILE
.pred.safe_across_calls p1-p5,p16-p63
.text
.align 16
.global opal_atomic_mb#
.proc opal_atomic_mb#
opal_atomic_mb:
.prologue
.body
mf
br.ret.sptk.many b0
;;
.endp opal_atomic_mb#
.align 16
.global opal_atomic_rmb#
.proc opal_atomic_rmb#
opal_atomic_rmb:
.prologue
.body
mf
br.ret.sptk.many b0
;;
.endp opal_atomic_rmb#
.align 16
.global opal_atomic_wmb#
.proc opal_atomic_wmb#
opal_atomic_wmb:
.prologue
.body
mf
br.ret.sptk.many b0
;;
.endp opal_atomic_wmb#
.align 16
.global opal_atomic_cmpset_acq_32#
.proc opal_atomic_cmpset_acq_32#
opal_atomic_cmpset_acq_32:
.prologue
.body
mov ar.ccv=r33;;
cmpxchg4.acq r32=[r32],r34,ar.ccv
;;
cmp4.eq p6, p7 = r32, r33
;;
(p6) addl r8 = 1, r0
(p7) mov r8 = r0
br.ret.sptk.many b0
;;
.endp opal_atomic_cmpset_acq_32#
.align 16
.global opal_atomic_cmpset_rel_32#
.proc opal_atomic_cmpset_rel_32#
opal_atomic_cmpset_rel_32:
.prologue
.body
mov ar.ccv=r33;;
cmpxchg4.rel r32=[r32],r34,ar.ccv
;;
cmp4.eq p6, p7 = r32, r33
;;
(p6) addl r8 = 1, r0
(p7) mov r8 = r0
br.ret.sptk.many b0
;;
.endp opal_atomic_cmpset_rel_32#
.align 16
.global opal_atomic_cmpset_acq_64#
.proc opal_atomic_cmpset_acq_64#
opal_atomic_cmpset_acq_64:
.prologue
.body
mov ar.ccv=r33;;
cmpxchg8.acq r32=[r32],r34,ar.ccv
;;
sxt4 r32 = r32
;;
cmp.eq p6, p7 = r33, r32
;;
(p6) addl r8 = 1, r0
(p7) mov r8 = r0
br.ret.sptk.many b0
;;
.endp opal_atomic_cmpset_acq_64#
.align 16
.global opal_atomic_cmpset_rel_64#
.proc opal_atomic_cmpset_rel_64#
opal_atomic_cmpset_rel_64:
.prologue
.body
mov ar.ccv=r33;;
cmpxchg8.rel r32=[r32],r34,ar.ccv
;;
sxt4 r32 = r32
;;
cmp.eq p6, p7 = r33, r32
;;
(p6) addl r8 = 1, r0
(p7) mov r8 = r0
br.ret.sptk.many b0
;;
.endp opal_atomic_cmpset_rel_64#
.align 16
.global opal_sys_timer_get_cycles#
.proc opal_sys_timer_get_cycles#
opal_sys_timer_get_cycles:
.prologue
.body
mov r8=ar.itc
br.ret.sptk.many b0
;;
.endp opal_sys_timer_get_cycles#
.ident "GCC: (GNU) 3.2.3 20030502 (Red Hat Linux 3.2.3-49)"
|