;; Perhaps related:
(defun test-2013-0709-2 () (let ((a -1491588365) (b -3745511761)) (list (g1 a b) (g2 a b))))
(defun g1 (a b) (declare (type (integer -1869232508 -6939151) a)) (declare (type (integer -11466348357 -2645644006) b)) (declare (optimize (speed 1) (space 0) (safety 2) (debug 2) (compilation-speed 2))) (logand (lognand a -6) (* b -502823994)))
(defun g2 (a b) (logand (lognand a -6) (* b -502823994)))
;; In SBCL 1.1.9 (x86 64 Linux), ;; ;; (test-2013-0709-2) ==> (9223372037939105800 1084329992)
;; Perhaps related:
(defun test-2013-0709-2 ()
(let ((a -1491588365)
(b -3745511761))
(list (g1 a b) (g2 a b))))
(defun g1 (a b)
(compilation- speed 2)))
(declare (type (integer -1869232508 -6939151) a))
(declare (type (integer -11466348357 -2645644006) b))
(declare (optimize (speed 1) (space 0) (safety 2) (debug 2)
(logand (lognand a -6) (* b -502823994)))
(defun g2 (a b)
(logand (lognand a -6) (* b -502823994)))
;; In SBCL 1.1.9 (x86 64 Linux), 05800 1084329992)
;;
;; (test-2013-0709-2) ==> (92233720379391