Changeset 9405
- Timestamp:
- May 7, 2008, 9:32:40 PM (17 years ago)
- File:
-
- 1 edited
-
branches/ia32/lib/ffi-darwinx8632.lisp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/ia32/lib/ffi-darwinx8632.lisp
r9385 r9405 106 106 (do* ((argvars argvars (cdr argvars)) 107 107 (argspecs argspecs (cdr argspecs)) 108 (delta 4 4) 109 (offset -4 (decf offset delta))) 108 (offset 8 (incf offset 4))) 110 109 ((null argvars) 111 110 (values (rlets) (lets) (dynamic-extent-names) (inits) rtype nil 4)) … … 113 112 (spec (car argspecs)) 114 113 (argtype (parse-foreign-type spec)) 115 (bits (require-foreign-type-bits argtype))) 114 (bits (require-foreign-type-bits argtype)) 115 (double nil)) 116 116 (if (typep argtype 'foreign-record-type) 117 117 (progn … … 121 121 (ecase (foreign-type-to-representation-type argtype) 122 122 (:single-float '%get-single-float) 123 (:double-float (incf offset 4) 124 '%get-double-float) 125 (:signed-doubleword (incf offset 4) 123 (:double-float (setq double t) '%get-double-float) 124 (:signed-doubleword (setq double t) 126 125 '%%get-signed-longlong) 127 126 (:signed-fullword '%get-signed-long) 128 127 (:signed-halfword '%get-signed-word) 129 128 (:signed-byte '%get-signed-byte) 130 (:unsigned-doubleword ( incf offset 4)129 (:unsigned-doubleword (setq double t) 131 130 '%%get-unsigned-longlong) 132 131 (:unsigned-fullword '%get-unsigned-long) … … 135 134 (:address '%get-ptr)) 136 135 ,stack-ptr 137 ,offset))))))))) 136 ,offset)))) 137 (when double (incf offset 4))))))) 138 138 139 139 (defun x86-darwin32::generate-callback-return-value (stack-ptr fp-args-ptr result return-type struct-return-arg)
Note:
See TracChangeset
for help on using the changeset viewer.
