Rev 1125 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1125 | Rev 1663 | ||
|---|---|---|---|
| Line 102... | Line 102... | ||
| 102 | 102 | ||
| 103 | /* |
103 | /* |
| 104 | * Save predicate registers |
104 | * Save predicate registers |
| 105 | */ |
105 | */ |
| 106 | mov loc2 = pr ;; |
106 | mov loc2 = pr ;; |
| - | 107 | st8 [in0] = loc2, 16;; /* Next fpu registers should be spilled to 16B aligned address */ |
|
| - | 108 | ||
| - | 109 | /* |
|
| - | 110 | * Save floating-point registers. |
|
| - | 111 | */ |
|
| - | 112 | stf.spill [in0] = f2, 16 ;; |
|
| - | 113 | stf.spill [in0] = f3, 16 ;; |
|
| - | 114 | stf.spill [in0] = f4, 16 ;; |
|
| - | 115 | stf.spill [in0] = f5, 16 ;; |
|
| - | 116 | ||
| - | 117 | stf.spill [in0] = f16, 16 ;; |
|
| - | 118 | stf.spill [in0] = f17, 16 ;; |
|
| - | 119 | stf.spill [in0] = f18, 16 ;; |
|
| - | 120 | stf.spill [in0] = f19, 16 ;; |
|
| - | 121 | stf.spill [in0] = f20, 16 ;; |
|
| - | 122 | stf.spill [in0] = f21, 16 ;; |
|
| 107 | st8 [in0] = loc2, 8 ;; |
123 | stf.spill [in0] = f22, 16 ;; |
| - | 124 | stf.spill [in0] = f23, 16 ;; |
|
| - | 125 | stf.spill [in0] = f24, 16 ;; |
|
| - | 126 | stf.spill [in0] = f25, 16 ;; |
|
| - | 127 | stf.spill [in0] = f26, 16 ;; |
|
| - | 128 | stf.spill [in0] = f27, 16 ;; |
|
| - | 129 | stf.spill [in0] = f28, 16 ;; |
|
| - | 130 | stf.spill [in0] = f29, 16 ;; |
|
| - | 131 | stf.spill [in0] = f30, 16 ;; |
|
| - | 132 | stf.spill [in0] = f31, 16 ;; |
|
| 108 | 133 | ||
| 109 | mov ar.unat = loc1 |
134 | mov ar.unat = loc1 |
| 110 | 135 | ||
| 111 | add r8 = r0, r0, 1 /* context_save returns 1 */ |
136 | add r8 = r0, r0, 1 /* context_save returns 1 */ |
| 112 | br.ret.sptk.many b0 |
137 | br.ret.sptk.many b0 |
| 113 | 138 | ||
| Line 185... | Line 210... | ||
| 185 | mov b5 = loc7 |
210 | mov b5 = loc7 |
| 186 | 211 | ||
| 187 | /* |
212 | /* |
| 188 | * Restore predicate registers |
213 | * Restore predicate registers |
| 189 | */ |
214 | */ |
| 190 | ld8 loc2 = [in0], 8 ;; |
215 | ld8 loc2 = [in0], 16 ;; |
| 191 | mov pr = loc2, ~0 |
216 | mov pr = loc2, ~0 |
| - | 217 | ||
| - | 218 | /* |
|
| - | 219 | * Restore floating-point registers. |
|
| - | 220 | */ |
|
| - | 221 | ldf.fill f2 = [in0], 16 ;; |
|
| - | 222 | ldf.fill f3 = [in0], 16 ;; |
|
| - | 223 | ldf.fill f4 = [in0], 16 ;; |
|
| - | 224 | ldf.fill f5 = [in0], 16 ;; |
|
| - | 225 | ||
| - | 226 | ldf.fill f16 = [in0], 16 ;; |
|
| - | 227 | ldf.fill f17 = [in0], 16 ;; |
|
| - | 228 | ldf.fill f18 = [in0], 16 ;; |
|
| - | 229 | ldf.fill f19 = [in0], 16 ;; |
|
| - | 230 | ldf.fill f20 = [in0], 16 ;; |
|
| - | 231 | ldf.fill f21 = [in0], 16 ;; |
|
| - | 232 | ldf.fill f22 = [in0], 16 ;; |
|
| - | 233 | ldf.fill f23 = [in0], 16 ;; |
|
| - | 234 | ldf.fill f24 = [in0], 16 ;; |
|
| - | 235 | ldf.fill f25 = [in0], 16 ;; |
|
| - | 236 | ldf.fill f26 = [in0], 16 ;; |
|
| - | 237 | ldf.fill f27 = [in0], 16 ;; |
|
| - | 238 | ldf.fill f28 = [in0], 16 ;; |
|
| - | 239 | ldf.fill f29 = [in0], 16 ;; |
|
| - | 240 | ldf.fill f30 = [in0], 16 ;; |
|
| - | 241 | ldf.fill f31 = [in0], 16 ;; |
|
| 192 | 242 | ||
| 193 | mov ar.unat = loc1 |
243 | mov ar.unat = loc1 |
| 194 | 244 | ||
| 195 | mov r8 = r0 /* context_restore returns 0 */ |
245 | mov r8 = r0 /* context_restore returns 0 */ |
| 196 | br.ret.sptk.many b0 |
246 | br.ret.sptk.many b0 |