~oif-team/ubuntu/natty/qt4-x11/xi2.1

« back to all changes in this revision

Viewing changes to src/corelib/arch/powerpc/qatomic32.s

  • Committer: Bazaar Package Importer
  • Author(s): Adam Conrad
  • Date: 2005-08-24 04:09:09 UTC
  • Revision ID: james.westby@ubuntu.com-20050824040909-xmxe9jfr4a0w5671
Tags: upstream-4.0.0
ImportĀ upstreamĀ versionĀ 4.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
        .machine "ppc"
 
2
        .toc
 
3
        .csect .text[PR]
 
4
 
 
5
        .align 2
 
6
        .globl q_atomic_test_and_set_int
 
7
        .globl .q_atomic_test_and_set_int
 
8
        .csect q_atomic_test_and_set_int[DS],3
 
9
q_atomic_test_and_set_int:
 
10
        .long .q_atomic_test_and_set_int,TOC[tc0],0
 
11
        .csect .text[PR]
 
12
.q_atomic_test_and_set_int:
 
13
        lwarx  6,0,3
 
14
        cmpw   6,4
 
15
        bne-   $+20
 
16
        stwcx. 5,0,3
 
17
        bne-   $-16
 
18
        addi   3,0,1
 
19
        blr
 
20
        addi   3,0,0
 
21
        blr
 
22
LT..q_atomic_test_and_set_int:
 
23
        .long 0
 
24
        .byte 0,9,32,64,0,0,3,0
 
25
        .long 0
 
26
        .long LT..q_atomic_test_and_set_int-.q_atomic_test_and_set_int
 
27
        .short 25
 
28
        .byte "q_atomic_test_and_set_int"
 
29
        .align 2
 
30
 
 
31
        .align 2
 
32
        .globl q_atomic_test_and_set_ptr
 
33
        .globl .q_atomic_test_and_set_ptr
 
34
        .csect q_atomic_test_and_set_ptr[DS],3
 
35
q_atomic_test_and_set_ptr:
 
36
        .long .q_atomic_test_and_set_ptr,TOC[tc0],0
 
37
        .csect .text[PR]
 
38
.q_atomic_test_and_set_ptr:
 
39
        lwarx  6,0,3
 
40
        cmpw   6,4
 
41
        bne-   $+20
 
42
        stwcx. 5,0,3
 
43
        bne-   $-16
 
44
        addi   3,0,1
 
45
        blr
 
46
        addi   3,0,0
 
47
        blr
 
48
LT..q_atomic_test_and_set_ptr:
 
49
        .long 0
 
50
        .byte 0,9,32,64,0,0,3,0
 
51
        .long 0
 
52
        .long LT..q_atomic_test_and_set_ptr-.q_atomic_test_and_set_ptr
 
53
        .short 25
 
54
        .byte "q_atomic_test_and_set_ptr"
 
55
        .align 2
 
56
 
 
57
        .align 2
 
58
        .globl q_atomic_increment
 
59
        .globl .q_atomic_increment
 
60
        .csect q_atomic_increment[DS],3
 
61
q_atomic_increment:
 
62
        .long .q_atomic_increment,TOC[tc0],0
 
63
        .csect .text[PR]
 
64
.q_atomic_increment:
 
65
        lwarx  4,0,3
 
66
        addi   4,4,1
 
67
        stwcx. 4,0,3
 
68
        bne-   $-12
 
69
        mr     3,4
 
70
        blr
 
71
LT..q_atomic_increment:
 
72
        .long 0
 
73
        .byte 0,9,32,64,0,0,1,0
 
74
        .long 0
 
75
        .long LT..q_atomic_increment-.q_atomic_increment
 
76
        .short 18
 
77
        .byte "q_atomic_increment"
 
78
        .align 2
 
79
 
 
80
        .align 2
 
81
        .globl q_atomic_decrement
 
82
        .globl .q_atomic_decrement
 
83
        .csect q_atomic_decrement[DS],3
 
84
q_atomic_decrement:
 
85
        .long .q_atomic_decrement,TOC[tc0],0
 
86
        .csect .text[PR]
 
87
.q_atomic_decrement:
 
88
        lwarx  4,0,3
 
89
        subi   4,4,1
 
90
        stwcx. 4,0,3
 
91
        bne-   $-12
 
92
        mr     3,4
 
93
        blr
 
94
LT..q_atomic_decrement:
 
95
        .long 0
 
96
        .byte 0,9,32,64,0,0,1,0
 
97
        .long 0
 
98
        .long LT..q_atomic_decrement-.q_atomic_decrement
 
99
        .short 18
 
100
        .byte "q_atomic_decrement"
 
101
        .align 2
 
102
 
 
103
        .align 2
 
104
        .globl q_atomic_set_int
 
105
        .globl .q_atomic_set_int
 
106
        .csect q_atomic_set_int[DS],3
 
107
q_atomic_set_int:
 
108
        .long .q_atomic_set_int,TOC[tc0],0
 
109
        .csect .text[PR]
 
110
.q_atomic_set_int:
 
111
        lwarx  5,0,3
 
112
        stwcx. 4,0,3
 
113
        bne-   $-8
 
114
        mr     3,5
 
115
        blr
 
116
LT..q_atomic_set_int:
 
117
        .long 0
 
118
        .byte 0,9,32,64,0,0,2,0
 
119
        .long 0
 
120
        .long LT..q_atomic_set_int-.q_atomic_set_int
 
121
        .short 16
 
122
        .byte "q_atomic_set_int"
 
123
        .align 2
 
124
 
 
125
        .align 2
 
126
        .globl q_atomic_set_ptr
 
127
        .globl .q_atomic_set_ptr
 
128
        .csect q_atomic_set_ptr[DS],3
 
129
q_atomic_set_ptr:
 
130
        .long .q_atomic_set_ptr,TOC[tc0],0
 
131
        .csect .text[PR]
 
132
.q_atomic_set_ptr:
 
133
        lwarx  5,0,3
 
134
        stwcx. 4,0,3
 
135
        bne-   $-8
 
136
        mr     3,5
 
137
        blr
 
138
LT..q_atomic_set_ptr:
 
139
        .long 0
 
140
        .byte 0,9,32,64,0,0,2,0
 
141
        .long 0
 
142
        .long LT..q_atomic_set_ptr-.q_atomic_set_ptr
 
143
        .short 16
 
144
        .byte "q_atomic_set_ptr"
 
145
        .align 2
 
146
 
 
147
_section_.text:
 
148
        .csect .data[RW],3
 
149
        .long _section_.text
 
150