Changeset 6483
- Timestamp:
- May 9, 2007, 7:44:26 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/level-0/X86/x86-utils.lisp
r4955 r6483 120 120 (movq (% obj) (% prev)) 121 121 (movq (% obj) (% arg_z)) 122 (lea (@ (:^ @back-from-misc) (% fn)) (% ra0))123 122 (set-nargs 1) 124 (movq (% fun) (% fn)) 125 (jmp (% fn)) 126 (:tra @back-from-misc) 127 (recover-fn-from-ra0 @back-from-misc) 123 (:talign 4) 124 (call (% fun)) 125 (recover-fn-from-rip) 128 126 (getvheader obj imm1) 129 127 (movb (% imm1.b) (% imm0.b)) … … 166 164 (movq (% obj) (% arg_z)) 167 165 (set-nargs 1) 168 (lea (@ (:^ @back-from-cons) (% fn)) (% ra0)) 169 (movq (% fun) (% fn)) 170 (jmp (% fn)) 171 (:tra @back-from-cons) 172 (recover-fn-from-ra0 @back-from-cons) 166 (:talign 4) 167 (call (% fun)) 168 (recover-fn-from-rip) 173 169 (addq ($ (- x8664::cons.size x8664::fulltag-cons)) (% obj)) 174 170 (jmp @test) … … 246 242 (movq (% obj) (% arg_z)) 247 243 (movq (% obj) (% prev)) 248 (lea (@ (:^ @back-from-misc) (% fn)) (% ra0))249 244 (set-nargs 1) 250 (movq (% fun) (% fn)) 251 (jmp (% fn)) 252 (:tra @back-from-misc) 253 (recover-fn-from-ra0 @back-from-misc) 245 (:talign 4) 246 (call (% fun)) 247 (recover-fn-from-rip) 254 248 (getvheader obj imm1) 255 249 (movb (% imm1.b) (% imm0.b)) … … 294 288 (movq (% obj) (% prev)) 295 289 (set-nargs 1) 296 (lea (@ (:^ @back-from-cons) (% fn)) (% ra0)) 297 (movq (% fun) (% fn)) 298 (jmp (% fn)) 299 (:tra @back-from-cons) 300 (recover-fn-from-ra0 @back-from-cons) 290 (:talign 4) 291 (call (% fun)) 292 (recover-fn-from-rip) 301 293 (addq ($ (- x8664::cons.size x8664::fulltag-cons)) (% obj)) 302 294 (jmp @test) … … 351 343 (cmpb ($ x8664::fulltag-function) (%b imm0)) 352 344 (jne @ret) 353 (xchgq (% temp0)(% fn))354 345 (set-nargs 1) 355 (jmp (% fn))346 (jmp (% temp0)) 356 347 @bad 357 ( movq (@ 'no-class-error (% fn)) (% fname))348 (load-constant no-class-error fname) 358 349 (set-nargs 1) 359 (movq (% fn) (% xfn)) 360 (movq (@ x8664::symbol.fcell (% fname)) (% fn)) 361 (jmp (% fn)) 350 (jmp (@ x8664::symbol.fcell (% fname))) 362 351 @ret 363 352 (movq (% temp0) (% arg_z)) ; return frob from table
Note: See TracChangeset
for help on using the changeset viewer.