Changeset 9580
- Timestamp:
- May 22, 2008, 4:11:31 PM (17 years ago)
- File:
-
- 1 edited
-
branches/ia32/compiler/X86/x862.lisp (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/ia32/compiler/X86/x862.lisp
r9560 r9580 757 757 (make-uarray-1 subtype size t 0 nil nil nil nil t nil)) 758 758 759 ;;; xxx x8632 changes?760 759 (defun x862-fixup-fwd-refs (afunc) 761 760 (dolist (f (afunc-inner-functions afunc)) … … 763 762 (let ((fwd-refs (afunc-fwd-refs afunc))) 764 763 (when fwd-refs 765 (let* ((native-x86 64-functions #-x8664-target nil766 #+x8664-target (eq *target-backend*767 *host-backend*))768 (v (if native-x86 64-functions764 (let* ((native-x86-functions #-x86-target nil 765 #+x86-target (eq *target-backend* 766 *host-backend*)) 767 (v (if native-x86-functions 769 768 (function-to-function-vector (afunc-lfun afunc)) 770 769 (afunc-lfun afunc))) … … 773 772 (dolist (ref fwd-refs) 774 773 (let* ((ref-fun (afunc-lfun ref))) 775 (do* ((i (if native-x86 64-functions774 (do* ((i (if native-x86-functions 776 775 (%function-code-words 777 776 (function-vector-to-function v)) … … 1560 1559 (:x8632 nil) 1561 1560 (:x8664 t)) 1562 (! box-fixnum node-dest s32-src) ;xxx might overflow on x86321561 (! box-fixnum node-dest s32-src) 1563 1562 (let* ((arg_z ($ *x862-arg-z*)) 1564 1563 (imm0 ($ *x862-imm0* :mode :s32))) … … 1676 1675 (if (eq type-keyword :simple-string) 1677 1676 (! u32->char target temp) 1678 (! box-fixnum target temp))))))) 1677 (target-arch-case 1678 (:x8632 1679 (if is-signed 1680 (x862-box-s32 seg target temp) 1681 (x862-box-u32 seg target temp))) 1682 (:x8664 1683 (! box-fixnum target temp))))))))) 1679 1684 (with-imm-target () idx-reg 1680 1685 (if index-known-fixnum … … 1699 1704 (if (eq type-keyword :simple-string) 1700 1705 (! u32->char target temp) 1701 (! box-fixnum target temp))))))))) 1706 (target-arch-case 1707 (:x8632 (if is-signed 1708 (x862-box-s32 seg target temp) 1709 (x862-box-u32 seg target temp))) 1710 (:x8664 (! box-fixnum target temp))))))))))) 1702 1711 (is-8-bit 1703 1712 (with-imm-target () temp … … 7841 7850 (with-additional-imm-reg () 7842 7851 (with-imm-target (ptr-reg) (offset-reg :s32) 7843 (with-additional-imm-reg () 7844 (with-imm-temps (ptr-reg) () 7845 (x862-copy-register seg fp-reg rnew) 7846 (! fixnum->signed-natural offset-reg roffset))) 7852 (with-imm-temps (ptr-reg) () 7853 (x862-copy-register seg fp-reg rnew) 7854 (! fixnum->signed-natural offset-reg roffset)) 7847 7855 (if double-p 7848 7856 (! mem-set-double-float fp-reg ptr-reg offset-reg)
Note:
See TracChangeset
for help on using the changeset viewer.
